Just another stab - set_pga() seems to be screwy. With a usrp_siggen.py looped back to usrp_oscope.py, not using set_pga and amplitude 16e3 there's a signal peaking at 500. However, use set_pga(0,n) (n=any value from 0 to 20) and the signal drops to about 300. Checking with
print self.usrp._read_9862(0,16) looks like we get 200 for any value of set_pga(0,n) Using the private method self.usrp._write_9862(0,16,255) and we get a peak 500 signal again. While 200 should be the max for 20db in .1db steps - it's stuck at 200. You can POKE (ha, showing my age there ;) values from 0 to 255 and get different signal levels. Also checked DAC A/B coarse gain and they look good at 192 for "Does not scale output current" and Rset on the schematic is 4k. Per the AD9860 manual, "Iout of the Tx channels is a function of the Rset resistor, the TxPGA setting, and the Coarse Goan Control setting. Also looks like broken information in the Register 16 docs, as they only show 6 bits with max gain scaling as 63. Bottom line, set_pga() seems to be broken on the tx side - but it's stuck at max gain anyway. --Chuck _______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio