discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Reliable "virtual RF channel" between two grc applications (UDP Sour


From: Marcus Müller
Subject: Re: Reliable "virtual RF channel" between two grc applications (UDP Source/Sink?)
Date: Wed, 22 Apr 2020 20:08:50 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0

Use zeromq; that should do just fine, and if the default TCP transport feels like too much overhead, you can try the ipc:// transport, iirc.

Best regards,
Marcus

On 22/04/2020 19.40, Lukas Haase wrote:
Hi,

Before going to hardware (and since my HW access is limited in Corona times) I want to build my 
"TRX1" with a behavioral model of "TRX2" (TRX2 will eventually be a simple 
hardware TRX on PCB, TRX1 a more signal processing heavy gnuradio application).

I thought UDP Source/Sink over localhost is the way to go but this works very 
unreliably here.

For TRX1 I use (simple demo):

   Signal Source (fs=5MHz, f=1MHz) --> Throttle (5MHz) --> UDP Sink 
(127.0.0.1:1235)
                                                        |
                                                         \-----> |
                                                                 | QT GUI Time 
Sink
                       UDP Source (127.0.0.1:1234) ------------> |

For TRX2 I use (simple demo):

   UDP Source (127.0.0.1:1235) --> Throttle (5MHz) --> MultiplyConst (2) --> 
UDP Sink (127.0.0.1:1234)


I start TRX2 first and then TRX1. Initially this simple demo worked well with 
default values (payload_size=1500-20, sendnullpkt=false) but frequently I got 
the following error messages (from both TRX1 and TRX2):

   Too much data; dropping packet.

This surprised me a lot because it's localhost which should be insanely fast. I 
run USRP with 200 MSps (10Gbe) on the same machine without a single packet drop!
Well, I checked the MTU of lo is not 1500 but 65536. Still baffled how this can 
happen with a ridiculously low sampe_rate=5M, I set payload_size=65516.
Now the error is largely gone. However, here and there I get a new nasty error 
message:

   ERROR: send error: send_to: Message too long

This only seems to happen for TRX2.
After this error I have to restart both flowgraphs.
Unfortunately this only happens with more complicated stuff implemented within 
TRX1/TRX2 and not reproducibly.


Has anyone done something like this before and has a recommendation for a 
reliable setup?
Is UDP Source/Sink over localhost even the best way to go?

Best,
Lukas





Attachment: smime.p7s
Description: S/MIME Cryptographic Signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]