Discussion and technical support related to USRP, UHD, RFNoC
View all threadsHi all,
I'm still having issues with a B210 with sample rates greater than 28MS/s.
At 28 I get a few overruns out of a million blocks of 1024 samples, but as
I sample faster, the number of overruns grow fast.
I have an AMD Ryzen 7 2700 (8 physical cores @ 3.2GHz), 16GB RAM, Gigabyte
GA-AB350N, Windows 10. The USB driver is from
http://files.ettus.com/binaries/misc/erllc_uhd_winusb_driver.zip .
I've tried adding "num_recv_frames=256" but I get an error:
Creating the usrp device with: num_recv_frames=256...
[INFO] [UHD] Win32; Microsoft Visual C++ version 14.0; Boost_106300;
UHD_3.11.0.1-37-g2c9087d1
[INFO] [B200] Detected Device: B210
[INFO] [B200] Operating over USB 3.
[ERROR] [USB] libusb_session_impl::libusb_event_handler_task:
LIBUSB_ERROR_CODE -1
I would have expected to be able to stream with barely any overrun at
56MS/s on that computer. I stream at that speed in dual channel on a
LimeSDR (in SC12 format).
Any advice on how to get better results?
Thanks.
On 07/24/2018 03:18 AM, RizThon via USRP-users wrote:
Hi all,
I'm still having issues with a B210 with sample rates greater than
28MS/s. At 28 I get a few overruns out of a million blocks of 1024
samples, but as I sample faster, the number of overruns grow fast.
I have an AMD Ryzen 7 2700 (8 physical cores @ 3.2GHz), 16GB
RAM, Gigabyte GA-AB350N, Windows 10. The USB driver is from
http://files.ettus.com/binaries/misc/erllc_uhd_winusb_driver.zip .
I've tried adding "num_recv_frames=256" but I get an error:
Creating the usrp device with: num_recv_frames=256...
[INFO] [UHD] Win32; Microsoft Visual C++ version 14.0; Boost_106300;
UHD_3.11.0.1-37-g2c9087d1
[INFO] [B200] Detected Device: B210
[INFO] [B200] Operating over USB 3.
[ERROR] [USB] libusb_session_impl::libusb_event_handler_task:
LIBUSB_ERROR_CODE -1
I would have expected to be able to stream with barely any overrun at
56MS/s on that computer. I stream at that speed in dual channel on a
LimeSDR (in SC12 format).
Any advice on how to get better results?
Thanks.
You cannot stream faster than about 30Msps from the B210 when in
dual-channel mode. This is a limitation of the data bus architecture on
the AD9371 chip, and not strictly a limitation of the B2xx FPGA.
FYI, we fixed a couple of sc12/8 related issues on our latest master
branch. As Marcus says, if you're doing dual channel on the B210, you
can only go to 30.72 Msps though.
-- M
On 07/24/2018 12:06 PM, Marcus D. Leech via USRP-users wrote:
On 07/24/2018 03:18 AM, RizThon via USRP-users wrote:
Hi all,
I'm still having issues with a B210 with sample rates greater than
28MS/s. At 28 I get a few overruns out of a million blocks of 1024
samples, but as I sample faster, the number of overruns grow fast.
I have an AMD Ryzen 7 2700 (8 physical cores @ 3.2GHz), 16GB
RAM, Gigabyte GA-AB350N, Windows 10. The USB driver is
from http://files.ettus.com/binaries/misc/erllc_uhd_winusb_driver.zip .
I've tried adding "num_recv_frames=256" but I get an error:
Creating the usrp device with: num_recv_frames=256...
[INFO] [UHD] Win32; Microsoft Visual C++ version 14.0; Boost_106300;
UHD_3.11.0.1-37-g2c9087d1
[INFO] [B200] Detected Device: B210
[INFO] [B200] Operating over USB 3.
[ERROR] [USB] libusb_session_impl::libusb_event_handler_task:
LIBUSB_ERROR_CODE -1
I would have expected to be able to stream with barely any overrun at
56MS/s on that computer. I stream at that speed in dual channel on a
LimeSDR (in SC12 format).
Any advice on how to get better results?
Thanks.
You cannot stream faster than about 30Msps from the B210 when in
dual-channel mode. This is a limitation of the data bus architecture on
the AD9371 chip, and not strictly a limitation of the B2xx FPGA.
USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com
I have used the b2x0 radios for some applications myself, we have had no
luck sampling much higher than 30MS/s. I think real-world USB3 speeds max
out around 100MB/s.
Will
Thanks Will, that matches my experience. At 28MS/s it tells me I need to
stream at 112MB/s.
You cannot stream faster than about 30Msps from the B210 when in
dual-channel mode. This is a limitation of the data bus architecture on the
AD9371 chip, and not strictly a limitation of the B2xx FPGA.
Sorry for the misunderstanding. On the B210, I'm in single channel, RX
only, and I start having overruns at 28MS/s.
I was just giving my experience with a Lime where I can stream in dual
channel, RX only, at 56MS/s. In that case though the Lime sends its data
back as SC12, meaning it can pack a bit more samples.
FYI, we fixed a couple of sc12/8 related issues on our latest master
branch. As Marcus says, if you're doing dual channel on the B210, you
can only go to 30.72 Msps though.
Should I play with the OTW format? Does the B210 handle SC12 (
https://files.ettus.com/manual/structuhd_1_1stream__args__t.html mentions Only
some devices for SC12).
I tried rx_samples_to_file.exe from
http://files.ettus.com/binaries/uhd/latest_release/Windows7/uhd_3.12.0.0-release_Win32_VS2014.exe
. If I choose SC8, then I can stream faster. It seems I can go up to 49MS/s
without error, over 20 seconds.
At 50MS/s and up I get an error
rx_samples_to_file.exe --null --time 20 --freq 2450e6 --gain 50 --spb 10000
--rate 50e6 --wirefmt sc8
[ERROR] [STREAMER] The receive packet handler caught a value exception.
ValueError: bad vrt header or packet fragment
Error: Receiver error: ERROR_CODE_BAD_PACKET
I modified the code to allow --wirefmt sc12, I also get an error, even at
28MS/s
[ERROR] [STREAMER] The receive packet handler caught a value exception.
ValueError: bad vrt header or packet fragment
but again I'm not sure if the B210 handles that format .
UHD 3.13 is just out, so I tried
http://files.ettus.com/binaries/uhd/uhd_003.013.000.000-release/Windows-7-x86_64/uhd_3.13.0.0-release_Win32_VS2014.exe
. I now get 2850 overruns at 28MS/s in SC16, while I'd get up to 5 with the
previous version. In SC8 I can go up to 40MS/s only, instead of 49. With
the x64 version I get similar results. So for now I reverted back to 3.12.
On 07/24/2018 11:42 PM, RizThon via USRP-users wrote:
I have used the b2x0 radios for some applications myself, we have
had no luck sampling much higher than 30MS/s. I think real-world
USB3 speeds max out around 100MB/s.
Will
Thanks Will, that matches my experience. At 28MS/s it tells me I need
to stream at 112MB/s.
You cannot stream faster than about 30Msps from the B210 when in
dual-channel mode. This is a limitation of the data bus
architecture on the AD9371 chip, and not strictly a limitation of
the B2xx FPGA.
Sorry for the misunderstanding. On the B210, I'm in single channel,
RX only, and I start having overruns at 28MS/s.
You can try using the "num_recv_frames" option in the device
argument--I'd suggest trying 128 and 256.
I'll also note that, near as I can tell, LimeSDR drivers dont' reliably
report overruns, so you may be getting them without knowing about it.
I was just giving my experience with a Lime where I can stream in dual
channel, RX only, at 56MS/s. In that case though the Lime sends its
data back as SC12, meaning it can pack a bit more samples.
FYI, we fixed a couple of sc12/8 related issues on our latest master
branch. As Marcus says, if you're doing dual channel on the B210, you
can only go to 30.72 Msps though.
Should I play with the OTW format? Does the B210 handle SC12
(https://files.ettus.com/manual/structuhd_1_1stream__args__t.html
mentions/Only some devices/for SC12).
I tried rx_samples_to_file.exe from
http://files.ettus.com/binaries/uhd/latest_release/Windows7/uhd_3.12.0.0-release_Win32_VS2014.exe
. If I choose SC8, then I can stream faster. It seems I can go up to
49MS/s without error, over 20 seconds.
At 50MS/s and up I get an error
rx_samples_to_file.exe --null --time 20 --freq 2450e6 --gain 50 --spb
10000 --rate 50e6 --wirefmt sc8
[ERROR] [STREAMER] The receive packet handler caught a value exception.
ValueError: bad vrt header or packet fragment
Error: Receiver error: ERROR_CODE_BAD_PACKET
I modified the code to allow --wirefmt sc12, I also get an error, even
at 28MS/s
[ERROR] [STREAMER] The receive packet handler caught a value exception.
ValueError: bad vrt header or packet fragment
but again I'm not sure if the B210 handles that format .
UHD 3.13 is just out, so I tried
http://files.ettus.com/binaries/uhd/uhd_003.013.000.000-release/Windows-7-x86_64/uhd_3.13.0.0-release_Win32_VS2014.exe
. I now get 2850 overruns at 28MS/s in SC16, while I'd get up to 5
with the previous version. In SC8 I can go up to 40MS/s only, instead
of 49. With the x64 version I get similar results. So for now I
reverted back to 3.12.
USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com
You can try using the "num_recv_frames" option in the device argument--I'd
suggest trying 128 and 256.
I get tons of errors right after seeing [INFO] [B200] Operating over
USB 3. Would
this explain why I can't seem to stream fast?
Here's what I get for 128
Creating the usrp device with: num_recv_frames=128...
[INFO] [UHD] Win32; Microsoft Visual C++ version 14.0; Boost_105900;
UHD_3.12.0.0-release
[INFO] [B200] Detected Device: B210
[INFO] [B200] Operating over USB 3.
[ERROR] [USB] libusb_session_impl::libusb_event_handler_task:
LIBUSB_ERROR_CODE -1
[...]
[ERROR] [USB] libusb_session_impl::libusb_event_handler_task:
LIBUSB_ERROR_CODE -1
[INFO] [B200] Initialize CODEC control...
[...]
With 256 the program crashes and I only see
Creating the usrp device with: num_recv_frames=256...
[INFO] [UHD] Win32; Microsoft Visual C++ version 14.0; Boost_105900;
UHD_3.12.0.0-release
[INFO] [B200] Detected Device: B210
[INFO] [B200] Operating over USB 3.
[ERROR] [USB] libusb_session_impl::libusb_event_handler_task:
LIBUSB_ERROR_CODE -1
[ERROR] [USB] libusb_sessi
Can this be a USB driver problem? I'm using the one from
http://files.ettus.com/binaries/misc/ dated 29-Mar-2016 19:52.
Can I run any test to make sure everything is fine (B210, drivers,
software)?
I'll also note that, near as I can tell, LimeSDR drivers dont' reliably
report overruns, so you may be getting them without knowing about it.
I always check the timestamps returned, so I'm pretty sure I only get very
few overruns with the Lime.
On 07/25/2018 01:56 AM, RizThon wrote:
You can try using the "num_recv_frames" option in the device
argument--I'd suggest trying 128 and 256.
I get tons of errors right after seeing [INFO] [B200] Operating over
USB 3. Would this explain why I can't seem to stream fast?
Here's what I get for 128
Creating the usrp device with: num_recv_frames=128...
[INFO] [UHD] Win32; Microsoft Visual C++ version 14.0; Boost_105900;
UHD_3.12.0.0-release
[INFO] [B200] Detected Device: B210
[INFO] [B200] Operating over USB 3.
[ERROR] [USB] libusb_session_impl::libusb_event_handler_task:
LIBUSB_ERROR_CODE -1
[...]
[ERROR] [USB] libusb_session_impl::libusb_event_handler_task:
LIBUSB_ERROR_CODE -1
[INFO] [B200] Initialize CODEC control...
[...]
With 256 the program crashes and I only see
Creating the usrp device with: num_recv_frames=256...
[INFO] [UHD] Win32; Microsoft Visual C++ version 14.0; Boost_105900;
UHD_3.12.0.0-release
[INFO] [B200] Detected Device: B210
[INFO] [B200] Operating over USB 3.
[ERROR] [USB] libusb_session_impl::libusb_event_handler_task:
LIBUSB_ERROR_CODE -1
[ERROR] [USB] libusb_sessi
Can this be a USB driver problem? I'm using the one from
http://files.ettus.com/binaries/misc/ dated 29-Mar-2016 19:52.
Can I run any test to make sure everything is fine (B210, drivers,
software)?
I'll also note that, near as I can tell, LimeSDR drivers dont'
reliably report overruns, so you may be getting them without
knowing about it.
I always check the timestamps returned, so I'm pretty sure I only get
very few overruns with the Lime.
Presuming you followed the instructions here for UHD installation:
https://files.ettus.com/manual/page_install.html
Everything should be fine.
I can't remember if we covered this or not. Are you externally-powering
the B210? Some USB ports don't quite provide enough power.
On Wed, Jul 25, 2018 at 10:57 PM Marcus D. Leech mleech@ripnet.com wrote:
Presuming you followed the instructions here for UHD installation:
https://files.ettus.com/manual/page_install.html
Everything should be fine.
Yes I installed
http://files.ettus.com/binaries/uhd/latest_release/Windows7/uhd_3.12.0.0-release_Win32_VS2014.exe
as well as the driver
http://files.ettus.com/binaries/misc/erllc_uhd_winusb_driver.zip
In the device manager, I see it under USRPs / Ettus Research LLC B200/B210
I can't remember if we covered this or not. Are you externally-powering
the B210? Some USB ports don't quite provide enough power.
I only tried it bus-powered.
Unfortunately it seems my power supply doesn't work well. When I plug it,
the power led turns on then off. If I then connect the USB, it's still off.
What's the min/max voltage I can use? Maybe I can use a different power
supply.
Thanks.
On 07/25/2018 12:18 PM, RizThon wrote:
On Wed, Jul 25, 2018 at 10:57 PM Marcus D. Leech <mleech@ripnet.com
mailto:mleech@ripnet.com> wrote:
Presuming you followed the instructions here for UHD installation:
https://files.ettus.com/manual/page_install.html
Everything should be fine.
Yes I installed
http://files.ettus.com/binaries/uhd/latest_release/Windows7/uhd_3.12.0.0-release_Win32_VS2014.exe
as well as the driver
http://files.ettus.com/binaries/misc/erllc_uhd_winusb_driver.zip
In the device manager, I see it under /USRPs / Ettus Research LLC
B200/B210/
I can't remember if we covered this or not. Are you
externally-powering the B210? Some USB ports don't quite provide
enough power.
I only tried it bus-powered.
Unfortunately it seems my power supply doesn't work well. When I plug
it, the power led turns on then off. If I then connect the USB, it's
still off.
What's the min/max voltage I can use? Maybe I can use a different
power supply.
Thanks.
Use a 5-6V supply capable of 2 or 3 amps.
Used to have to compile the driver for the lime in debug mode to get
underrun reporting. Though I believe they may have changed some of that
recently.
On Tue, Jul 24, 2018, 23:57 Marcus D. Leech via USRP-users <
usrp-users@lists.ettus.com> wrote:
On 07/24/2018 11:42 PM, RizThon via USRP-users wrote:
I have used the b2x0 radios for some applications myself, we have had no
luck sampling much higher than 30MS/s. I think real-world USB3 speeds max
out around 100MB/s.
Will
Thanks Will, that matches my experience. At 28MS/s it tells me I need to
stream at 112MB/s.
You cannot stream faster than about 30Msps from the B210 when in
dual-channel mode. This is a limitation of the data bus architecture on the
AD9371 chip, and not strictly a limitation of the B2xx FPGA.
Sorry for the misunderstanding. On the B210, I'm in single channel, RX
only, and I start having overruns at 28MS/s.
You can try using the "num_recv_frames" option in the device argument--I'd
suggest trying 128 and 256.
I'll also note that, near as I can tell, LimeSDR drivers dont' reliably
report overruns, so you may be getting them without knowing about it.
I was just giving my experience with a Lime where I can stream in dual
channel, RX only, at 56MS/s. In that case though the Lime sends its data
back as SC12, meaning it can pack a bit more samples.
FYI, we fixed a couple of sc12/8 related issues on our latest master
branch. As Marcus says, if you're doing dual channel on the B210, you
can only go to 30.72 Msps though.
Should I play with the OTW format? Does the B210 handle SC12 (
https://files.ettus.com/manual/structuhd_1_1stream__args__t.html mentions Only
some devices for SC12).
I tried rx_samples_to_file.exe from
http://files.ettus.com/binaries/uhd/latest_release/Windows7/uhd_3.12.0.0-release_Win32_VS2014.exe
. If I choose SC8, then I can stream faster. It seems I can go up to 49MS/s
without error, over 20 seconds.
At 50MS/s and up I get an error
rx_samples_to_file.exe --null --time 20 --freq 2450e6 --gain 50 --spb
10000 --rate 50e6 --wirefmt sc8
[ERROR] [STREAMER] The receive packet handler caught a value exception.
ValueError: bad vrt header or packet fragment
Error: Receiver error: ERROR_CODE_BAD_PACKET
I modified the code to allow --wirefmt sc12, I also get an error, even at
28MS/s
[ERROR] [STREAMER] The receive packet handler caught a value exception.
ValueError: bad vrt header or packet fragment
but again I'm not sure if the B210 handles that format .
UHD 3.13 is just out, so I tried
http://files.ettus.com/binaries/uhd/uhd_003.013.000.000-release/Windows-7-x86_64/uhd_3.13.0.0-release_Win32_VS2014.exe
. I now get 2850 overruns at 28MS/s in SC16, while I'd get up to 5 with the
previous version. In SC8 I can go up to 40MS/s only, instead of 49. With
the x64 version I get similar results. So for now I reverted back to 3.12.
USRP-users mailing listUSRP-users@lists.ettus.comhttp://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com
USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com