I tried the previously suggested patch that checked the str_len of the
message
before unmaking the packet but errors still occurred. I noticed that
when
printing the size fo packet out the errors occur when the str_len is
exactly
equal to 4095. There is no reason it should be that length as I am only
periodically sending short ping packets. I have yet to figure out why it
is
mistaking the message length. Anyone have any ideas?
Thomas,
What do you mean that the receiver couldnt handle the sender speed?
Where were
the sleeps put in?
Thanks,
Dave
From: Thomas H. [email protected]
To: William C. [email protected]; David B.
[email protected]
Cc: [email protected]
Sent: Wed, April 27, 2011 8:39:26 AM
Subject: AW: [Discuss-gnuradio] Tunnel.py exception
Hello William, Hello David,
i had this problem too.
I changed my tunnel.py to understand mac better into a simple program
which
sends a packet and when the receiver gets the packet the receiver sends
an
acknowledge back.
After a short time period the exception was thrown.
I found out that the gnu which is the receiver cannot handle the speed
of the
sender – gnu so the exception was raised. I inserted some time.sleep()’s
in the
sender and the exception was gone.
Kind Regards
Von:[email protected]
[mailto:[email protected]] Im Auftrag
von
William C.
Gesendet: Donnerstag, 21. April 2011 16:40
An: David B.
Cc: [email protected]
Betreff: Re: [Discuss-gnuradio] Tunnel.py exception
I’ve recently been using tunnel.py for 1/2 hr tests with no problems.
I’m using
the basic_tx/rx boards with a low frequency (5 MHz) and 1 Mbit datarate.
On Thu, Apr 21, 2011 at 10:31 AM, David B.
[email protected] wrote:
I am working with two USRPS wired connection with 25 dB attenuator
between them
so I didnt expect to much corruption of the packets.
The error seems to occur quicker at lower bit rates for some reason ,
like
around after 10s of minutes for below 250 kbps and more like after an
hour or
more for 1 Mbps. Unfortunatly this makes it unusable for longer
duration lower
bandwidth tests until I find a way to fix the problem.
Has anyone else had this problem with tunnel.py?
Thanks,
Dave
From:Tom R. [email protected]
To: David B. [email protected]
Cc: [email protected]
Sent: Thu, April 21, 2011 10:22:39 AM
Subject: Re: [Discuss-gnuradio] Tunnel.py exception
On Wed, Apr 20, 2011 at 9:25 AM, David B. [email protected]
wrote:
I am running tunnel.py on gnuradio 3.3.0 . It run successfully for a
while but
after a period of time (around an hour) the following exception prints
out:
Rx: ok = True len(payload) = 82
Tx: len(payload) = 82
Exception in thread Thread-1:
Traceback (most recent call last):
File “/usr/lib64/python2.6/threading.py”, line 525, in
__bootstrap_inner
self.run()
File
“/usr/local/lib64/python2.6/site-packages/gnuradio/blks2impl/pkt.py”,
line 162, in run
ok, payload = packet_utils.unmake_packet(msg.to_string(),
int(msg.arg1()))
File
“/usr/local/lib64/python2.6/site-packages/gnuradio/packet_utils.py”,
line
183, in unmake_packet
payload_with_crc = dewhiten(whitened_payload_with_crc,
whitener_offset)
File
“/usr/local/lib64/python2.6/site-packages/gnuradio/packet_utils.py”,
line
95, in dewhiten
return whiten(s, o) # self inverse
File
“/usr/local/lib64/python2.6/site-packages/gnuradio/packet_utils.py”,
line
91, in whiten
z = sa ^ random_mask_vec8[o:len(sa)+o]
ValueError: shape mismatch: objects cannot be broadcast to a single
shape
After this exception the receive chain seems to stop working. I am still
able to
transmit but no receive packets are recorded.
Anyone have any clue what could be causing this issue?
Thanks,
Dave
I think that the problem is when the receiver thinks it has a
zero-length packet
(that is, something gets screwed up with the header and it sees 0’s
there). I’m
not positive that this is the real problem, but I’d say it has something
to do
with a packet getting corrupted in a particular way that’s causing this
to
happen.
We would need to put some protections into the unmake_packet to handle
this as a
dropped packet and then continue, once we find the exact problem.
Tom