Hey Chuck,
I have one of these rev 1 tvrx daughter boards too. Thanks for the effort!
Will you please post your code?
I tried the same trick at first, changed the dboard ID: no joy so changed it back.
Found the code and data sheet same as you and then struggled to set up a working build environment. By the time that was finally done I totally forgot about the 1st task.
Plus my son's cat died in his room. Ugh, the smell. We've stripped out the carpet and are painting and putting in hardwood floor. I really hate cats at this point.
Back on point, I think I see how to add another dboard object with code correction, ID = 0x03, and named "TVRX Rev1" if I can just get to it. Then contribute back to the UHD code base so it will be supported by default in the future.
Cheers,
Mark Napier
Date: Sat, 11 Jun 2016 22:10:15 -0400From: Chuck Swiger <address@hidden>To: address@hiddenSubject: [Discuss-gnuradio] vintage hardware support: tvrx rev 1 - MT4937DI5 3X7702Message-ID: <1465697415.2044.19.camel@localhost.localdomain>Content-Type: text/plain; charset="UTF-8"My own personal summer of code project (1st of hopefully many) was torestore support for my old TVRX Rev1 daughter board (id 0x0003 in thecurrent uhd code and was not TOO hard.Comparing the schematic http://files.ettus.com/schematics/tvrx/tvrx.pdfwith the board matches. Looking at the MT4937DI5 datasheethttp://swigerco.com/4937_DI5_MicroTune_TVRXr_DSA00488550.pdf thatcovers both the old 3X7702 with the 2nd downconverted to 5.75e6 ANDanother model with the 43.75e6 IF like the newer tvrx (id 0x0040) stillsupported in uhd/host/lib/usrp/dboard/db_tvrx.cpp Gain charts indb_tvrx.cpp match that manual, i2c commands sent out for set_freq matchthe registers, etc.Just changing the board id gets it recognized but just gets static,barely can make out a strong local fm station. There's another tvrx idhiding in an evil hack in uhd/host/lib/usrp/usrp1/dboard_iface.cpp thatneeds to be changed.Just changing the tvrx_if_freq won't work, as that really is the IF - wejust have to compensate for the 2nd converter and that's appearentlydone in the value returned by set_freq(double freq) - this works:comment out the if (tvrx_if_freq >= codec_rate/2) block as the DAC neversees that IF, and return _lo_freq - tvrx_if_freq + tvrx_2ndif_freq;Now it can get FM just fine, plus make fft plots like this again:http://swigerco.com/tvrx_atsc.jpgWhich reminds me the rev 3 turners have to compensate for invertedspectrum (being at 44.75Mhz with a 64Mhz clock). Have to fix that next.