|
From: | Jared Jensen |
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 fwrite(arr,1,nRead, USRPfid); 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> Jared Windows Live Hotmail and Microsoft Office Outlook – together at last. Get it now! |
[Prev in Thread] | Current Thread | [Next in Thread] |