Discussion and technical support related to USRP, UHD, RFNoC
View all threadsI am trying to create a simple gnuradio-companion flowgraph that uses a
Multi-USRP block to record all 4 channels from an X410 into data files on my
hard drive. I am struggling with the subdev specifications, and keep
getting syntax errors, and sometime receiver channel number errors. I'm
clearly not understanding how the X410 differs from the X310, which I have
used a lot in the past without any problems.
Does anybody have an example grc file that records all 4 channels from an
X410? Or could someone just tell me what the subdev specs should be in my
Multi-USRP block? It's my understanding that the X410 has 2 ZBX daughter
boards, and each ZBX daughter board has 2 channels. I thought it would be
easy to do this, but I can't seem to get it working.
Hi John,
Did you see this link
https://kb.ettus.com/USRP_X410/X440_Getting_Started_Guide#Subdev_Specifications
?
Rob
On Tue, Mar 18, 2025 at 10:49 AM Mann, John - 0662 - MITLL mannj@ll.mit.edu
wrote:
I am trying to create a simple gnuradio-companion flowgraph that uses a
Multi-USRP block to record all 4 channels from an X410 into data files on
my hard drive. I am struggling with the subdev specifications, and keep
getting syntax errors, and sometime receiver channel number errors. I’m
clearly not understanding how the X410 differs from the X310, which I have
used a lot in the past without any problems.
Does anybody have an example grc file that records all 4 channels from an
X410? Or could someone just tell me what the subdev specs should be in my
Multi-USRP block? It’s my understanding that the X410 has 2 ZBX daughter
boards, and each ZBX daughter board has 2 channels. I thought it would be
easy to do this, but I can’t seem to get it working…
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-leave@lists.ettus.com
Yes – I was aware of that. But I still don’t know what to put into the subdev string, because nothing seems to work.
I tried:
A:01
A:0 A:1
A:0,A:1
A:0 B:0
etc….
I think my problem must be something more basic that I am missing, that is why I’d like to see a working example.
John
ZjQcmQRYFpfptBannerEnd
Hi John,
Did you see this link https://kb.ettus.com/USRP_X410/X440_Getting_Started_Guide#Subdev_Specifications ?
Rob
On 18/03/2025 11:30, Mann, John - 0662 - MITLL wrote:
Yes – I was aware of that. But I still don’t know what to put into
the subdev string, because nothing seems to work.
I tried:
A:01
A:0 A:1
A:0,A:1
A:0 B:0
etc….
I think my problem must be something more basic that I am missing,
that is why I’d like to see a working example.
John
Try a subdev spec of:
A:0 A:1 B:0 B:1
Make sure you've set the source block to use 4 channels, also what
device address and args are you using?
Do you get any error messages? Please share them here.
Thanks Marcus,
Your recommended syntax seems to have fixed my syntax and channel number
errors. I thought the subdev specs were set for each daughter board, and
since each board has 2 channels, I had only been specifying 2 suibdevs for
each.
I was still getting this error:
File "/home/jo13815/./Record_4Chan_X410.py", line 60, in init
self.uhd_usrp_source_0.set_rx_agc(False, 0)
RuntimeError: RuntimeError: NotImplementedError: set_rx_agc() is not supported
on this radio!
After commenting out the set_rx_agc function calls, the script now seems to
run fine, and I get 4 data files. I still need to check out the files to make
sure they look correct, but they seem to be the correct size!
John
Try a subdev spec of:
A:0 A:1 B:0 B:1
Make sure you've set the source block to use 4 channels, also what device
address and args are you using?
Do you get any error messages? Please share them here.
On 18/03/2025 13:48, Mann, John - 0662 - MITLL wrote:
Thanks Marcus,
Your recommended syntax seems to have fixed my syntax and channel
number errors. I thought the subdev specs were set for each daughter
board, and since each board has 2 channels, I had only been specifying
2 suibdevs for each.
I was still getting this error:
File "/home/jo13815/./Record_4Chan_X410.py", line 60, in init
self.uhd_usrp_source_0.set_rx_agc(False, 0)
RuntimeError: RuntimeError: NotImplementedError: set_rx_agc() is not
supported on this radio!
After commenting out the set_rx_agc function calls, the script now
seems to run fine, and I get 4 data files. I still need to check out
the files to make sure they look correct, but they seem to be the
correct size!
John
If you leave that parameter at "Default" rather than explicitly
"Enabled" or "Disabled", the code to set the rx_agc won't
get generated.
Try a subdev spec of:
A:0 A:1 B:0 B:1
Make sure you've set the source block to use 4 channels, also what
device address and args are you using?
Do you get any error messages? Please share them here.