[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Discuss-gnuradio] dbsrx question
From: |
David Caruth |
Subject: |
[Discuss-gnuradio] dbsrx question |
Date: |
Sun, 22 Oct 2006 22:31:31 -0700 (PDT) |
Hi All.
I've been trying to use the DBSRX daughterboard in slot A but am running into some trouble while reading the status bytes of the Maxim chip via i2c. The code I'm using to control the USRP is written in Visual C++ 2005, and I've been able to talk to the TVRX daughterboard with no problems. I added the c++ code to mimic the set_freq, set_gain, etc... commands in db_dbs_rx.py, and seem to be able to adjust the gain and bandwidth for the Maxim chip ok. The problem comes when I try to use the set_freq command, which does a read_i2c which returns the two status bytes as ints. I've done a side-by-side comparison with the python script running on the same machine under Windows XP where I monitor the register number and the value as commands are sent, and I see my code executing exactly the same as the python script usrp_fft.py, except that the status bytes returned by my code are 0, 127 as opposed to the
returned bytes in the python code of 8, 127. I don't think I'm doing anything dumb with char to int conversions either in my code. Because I get 0 for the first byte all the time, my while loop to set the adc_val continues until it returns false, and the frequency never gets set. The python script usrp_fft.py runs with no problems and I can set_freq just fine. I have searched this forum for i2c errors and dbs problems, but have not found anything like my problem. I'm sure I have the correct i2c address set as well. Any suggestions? Please don't suggest that I just use the python script... :)
Thanks a lot!
Do you Yahoo!?
Get on board. You're invited to try the new Yahoo! Mail.
- [Discuss-gnuradio] dbsrx question,
David Caruth <=