|
From: | Cameron Matson |
Subject: | Re: correlation estimator causing flowgraph to hang: Return Code -15 |
Date: | Sun, 5 Jul 2020 10:07:38 -0500 |
Divide by zero would crash the block, and likely the whole flowgraph unless the error is getting caught somewhere. There's probably a thread hanging around until you manually kill the program, and then the error gets printed.I took a really quick look at uhd_packet_rx and packet_rx and it sure looks like you'd get zeros into corr_est. I did not take the time to set up and debug, though. Maybe you could verify that zeros are hitting that block, and that bypassing the block stops the crash. The flowgraph won't work right, but it's good info for a bug report if that's what's happening.On Fri, Jul 3, 2020 at 9:55 AM Cameron Matson <ncmatson95@gmail.com> wrote:Thanks for pointing that out Jeff. The way the usrp_packet_rx example works is with a multiply_const block just before the packet_rx (where the corr_est block lives) that by default is multiply by zero. So wouldn't we automatically get that /0?Is divide by zero a common cause for flowgraphs to freeze? Is that what return code -15 is?Thanks,CameronOn Thu, Jul 2, 2020 at 4:07 PM Jeff Long <willcode4@gmail.com> wrote:If work() can reach this line:with an all-zero signal, there could be a /0 error.On Thu, Jul 2, 2020 at 4:04 PM Cameron Matson <ncmatson95@gmail.com> wrote:Hi all,An update: I've noticed that when the flowgraph hangs it's usually because the correlation estimator block is outputting a relatively larger 'amp_est' tag (in my case this is normally a value < 1 but sometimes up to around 10. When it freezes it is usually > 50). If I then close the GUI tab the flowgraph doesn't actually finish until I hit the 'Kill' button in GRC. Only after that the terminal will print ">>>Done (return code -15)" I can't find anything on what that code might mean. Does anyone have any idea?Thanks,CameronOn Wed, Jul 1, 2020 at 5:31 PM Cameron Matson <ncmatson95@gmail.com> wrote:Hi all,I'm trying to send packet data from between two USRPs wirelessly using the slightly modified uhd_packet_tx/rx examples (attached). It appears that whenever the packet_rx block "finds" a correlation the entire flow graph hangs. I say "find" because in order to get any output from the correlation estimator block within packet_rx I have to set the threshold very low, so I'm not very confident that it's finding what it needs. I've tried playing around with the different encodings and header formats that are part of the example, but it doesn't seem to change anything.First question: what could be causing the rx flowgraph to hang? I know some of the downstream blocks in the packet_rx hier block use the tags the correlation estimator outputs.Second question: what are some things I can try to improve the detection in the first place?Thanks,Cameron
[Prev in Thread] | Current Thread | [Next in Thread] |