Discussion and technical support related to USRP, UHD, RFNoC
View all threadsHi everybody,
I'm experiencing an issue with my Ettus N200. I'm always having Underflow
errors even if the device is correctly connected to my Gbit ethernet. I'm
using the N200 as a transmitter. The sample rate is 1Msps, therefore, I
estimate a TX rate of about 1Msps * 32 = 32Mbps (considering a stream of
32bit samples). This rate should be completely affordable by the device.
Moreover, the ping delay between my PC and the N200 is about 1ms, that is a
very high value being the two ethernet cards directly connected.
I also did a test in the opposite direction, using the N200 as a spectrum
analyzer. I verified that it is capable of transmitting at least 600Mbps.
Is anybody experiencing the same issue? There is something I can do to find
the problem?
Obviously I am sure that the problem is not on my PC.
Thanks.
--
gaetano catalli
OK, so underflow error's are generated as a result of the transmit DSP being starved of new sample data from the transport.
It's an unusual error to see with the modest sample rates you are running at, the N200 includes 1MB of transmit buffer which tends to mask most transport glitches.
Here's a few general things to consider:
Your receive test of 600Mbps is good, that's a fairly solid indication that your current setup should be easily capable of supporting this transmit transport rate.
The ping test tells you nothing, other than inducing the presence of the USRP…ICMP packets are handled in S/W and not in the dedicated H/W used for the radio, 1mS response is typical.
You haven't said anything about the specific application you are using to transmit on the host, does it use a lot of CPU or memory resources such that the Host is struggling to keep up?
Are there other unrelated things running on the host at the same time that are competing for resources?
Have you tried something like the benchmark_rate application supplied with UHD? Try it with options like "benchmark_rate --tx_rate=1e6 --duration=10" , which helps us eliminate any issue specific to your user code. Does the underflow problem seem to change in severity proportional with the sample rate?
Have you made any adjustment to kernel parameters as is sometimes advised by warnings from UHD? Take a look at http://files.ettus.com/uhd_docs/manual/html/transport.html and specifically try some experimentation with the net.core.wmem_max value. Have you made any changes to the MTU value for the interface you are using?
Is the network path to the USRP a dedicated point to point link? Or does it go via switches and is it shared with other network traffic? Are there any anomalous values reported by the network device driver? For example using ifconfig, this is what it looks like when the host device driver can not occasionallly keep up with incoming packets (RX dropped count):
eth1 Link encap:Ethernet HWaddr 90:e2:ba:3a:a7:e8
inet addr:192.168.40.1 Bcast:192.168.40.255 Mask:255.255.255.0
inet6 addr: fe80::92e2:baff:fe3a:a7e8/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:8000 Metric:1
RX packets:1321975686 errors:0 dropped:75191 overruns:0 frame:0
TX packets:90907330 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:4091921295556 (4.0 TB) TX bytes:216363476620 (216.3 GB)
Is there anything else perhaps unusual about the network config? ethtool is a good resource…for example the USRP N200 does not support pause frames over ethernet.
There are some known issues with a few host ethernet controllers that typically show up in laptops, this thread discusses some of those affected: http://lists.ettus.com/pipermail/usrp-users_lists.ettus.com/2012-December/005825.html
And lastly for the network do try a different cable just in case there is hidden damage that makes it unreliable.
-Ian
On Oct 29, 2013, at 7:59 AM, Gaetano Catalli gaetano.catalli@gmail.com wrote:
Hi everybody,
I'm experiencing an issue with my Ettus N200. I'm always having Underflow errors even if the device is correctly connected to my Gbit ethernet. I'm using the N200 as a transmitter. The sample rate is 1Msps, therefore, I estimate a TX rate of about 1Msps * 32 = 32Mbps (considering a stream of 32bit samples). This rate should be completely affordable by the device. Moreover, the ping delay between my PC and the N200 is about 1ms, that is a very high value being the two ethernet cards directly connected.
I also did a test in the opposite direction, using the N200 as a spectrum analyzer. I verified that it is capable of transmitting at least 600Mbps. Is anybody experiencing the same issue? There is something I can do to find the problem?
Obviously I am sure that the problem is not on my PC.
Thanks.
--
gaetano catalli
USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com