Skip to content
Alexey Shamrin edited this page Apr 18, 2014 · 5 revisions

Goal: lower middle "hill" in Spectrum mode.

  • Turn off osmo-trx.
  • Set analyser to Spectrum, span 1kHz.
  • Run host/build/utils/uhd_cal_tx_dc_offset_lms script from UHD (source) and note .csv file it writes:
uhd_cal_tx_dc_offset_lms --freq-start 940e6 --freq-stop 950e6
  • Take a look at .csv file, "real" and "imag" columns. Values should differ between rows at no more than 10 or so. Calculate averages for these columns. Write them down as I (real) and Q (imag). Yes, it's not a typo.
  • Edit umtrx_scripts/service/lms_tune.sh (source) to write I to send_lms_cmd 0x42 and Q to … 0x43. In hex!
  • Run lms_tune.sh 1 and check "hill" in analyzer, so that it becomes lower. Play with these I and Q values a little.
  • Write values to EEPROM. Some docs are at umtrx.org/hardware/calibration, but for single channel only. Commands to write values For the first channel of two channels:
cd /usr/local/share/uhd/utils
./usrp_burn_mb_eeprom --key tx1-vga1-dc-i --val <I goes here, in decimal>
./usrp_burn_mb_eeprom --key tx1-vga1-dc-q --val <Q goes here, in decimal>
  • After the above changes uhd_usrp_probe should start showing values (because they now differ from default values).
  • Run lms_tune.sh (commenting out 0x42 and 0x43 lines) to check that values from EEPROM are now getting used.
  • Do the check for second channel. TBD.

Clone this wiki locally