|Subject:||[Discuss-gnuradio] Still not working with 2 DBSRX... :(|
|Date:||Wed, 24 Oct 2007 14:29:31 -0400|
Wow. I'm still not able to get data out of my 2nd DBSRX. I have verified the board is good. I modified multi-antenna/multi-fft.py to use 2 DBSRX board and the 2rx 2tx fpga build. It works, and I can point the boards at different frequencies and see good data. So I know the hardware is working. Ergo, the problem is with my code, and I'm not sure what to do next. I've debugged this ad nauseum. I've verified that I setup r, n, gc1, gc2... all correctly. I rebuilt usrp_standard.cc with debugging info as well as db_dbs_rx.py. My code does the same things in setup. I think I'm setting up each dbsrx correctly. They return success on tune, and return successfully from all of the write_i2c commands. I'm using I2C_ADDR 0x67 for subdev A, and I2C_ADDR 0x65 for subdev B. I've changed those randomly and found that it correctly fails. So I'm fairly confident that the commands are getting down to the DBSRXs.|
When I call
usrp_standard_rx::make(0, decim=64, nchannels=2, mux=0x32103210, fpga_mode=0x00, fusb_block_size=0, fusb_nblocks=0, "std_2rxhb_2tx.rbf", "std.ihx")
it returns a valid usrp device, and when I query the number of channels, it says 2. But when I do a
dev->start(); followed by
nRead = dev->read(arr, buf_size, &bOverrun); and
I get perfect data for channel 0 (RXA) , but channel 1 (RXB) is just the noise floor. Loading it into Matlab and looking at the fft shows RXA is doing perfectly, while RXB has no signal magnitude. (This is when I point it at two known frequencies where both are looking at signals with good power... and even when I point them at the same frequency.) Using ASCII art...
FFT_RXA is like....
and FFT_RXB is just....
I'm brainstorming and I wonder if I setup RXB correctly, but haven't sent some command to gate the data through. Or if there is an additional step when using 2 channels that isn't documented. Any ideas of things I could look at?
Like I said, gnuradio is able to talk to both boards and get good data, but my C++ code isn't. I can only get good data from RXA. RXB is flat. (Well... there's low magnitude white noise, but no significant power.)
Am I missing a step? All was well until I added a second DBSRX to the system, and now I can't get data from that new board. <Homer Simpson> Save me Eric/Matt/anyone better at this than I! </Homer Simpson>
Windows Live Hotmail and Microsoft Office Outlook – together at last. Get it now!
|[Prev in Thread]||Current Thread||[Next in Thread]|