This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

LMX2594EVM boards (SV601308)

Other Parts Discussed in Thread: LMX2594EVM, USB2ANY, LMX2594, LMX2820

Dear Sirs,

Good morning.

After assembling the LMX2594EVM kit, connecting the boards to the relevant instrumentation, and installing the GUI, we noticed that the input boxes for entering the configuration values do not enable at all. It seems as if there is some sort of incompatibility between the firmware versions of the LMX2594EVM boards (SV601308) + SV601349 and the TICS Pro GUI v1.7.7.1. We have made several attempts and searched the internet for any useful information, but to date, we have not been able to resolve the issue.

Could you provide any helpful suggestions?

Looking forward to your kind attention to this matter, I remain

Yours sincerely, Luca Mucchi

  • Hello Luca, 
    Typically when you launch TICSpro and the USB2ANY firmware is outdated the user will be hit with a message asking them to update USB2ANY firmware. 

    Can you try reinstalling TICSpro and see if you get the "update firmware" option upon connection? 

    Regards, 

    Vicente 

  • Good evening Vincent, I followed your instructions aforementioned  and I reinstalled TICSpro. Unfortunately, I haven't received (hit) any messages regarding the firmware update!
    The issue persists. Do you have any other ideas to suggest? Best regards, Luca.

  • Hi Luca, 
    When you connect the reference pro board to LMX2594EVM via 10 pin ribbon cable, does TICSpro recognize it? 

    www.ti.com/.../snau210b.pdf

    Regards, 

    Vicente 

  • Luca, it sounds to me like the issue is that none of the configuration boxes are showing up anywhere in the GUI, preventing you from entering register settings and PLL configuration, similar to the images below.

    Expected:

    Instead seeing:

    Is this correct?

    This is a bug in 1.7.7.1 with parsing the text value of the controls on the GUI, and is fixed in 1.7.7.2 (newly available on the web as of last week). 

  • Dear Derek, thank you for suggesting the installation of TICS Pro version 1.7.7.2. Everything is now working smoothly.

    I take this opportunity to ask for your advice on creating an RFoutA sweep from 800 MHz to 1200 MHz with a SPAN of 400 MHz and a Delta_FREQUENCY resolution of 100 KHz.

    We are considering the implementation of a look-up table that, via USB, sends the necessary parameters to the evaluation board line by line.

    This way, we could continuously generate the sweep from FR_Start = 800 MHz to FR_STOP = 1200 MHz, repeatedly performing this sweep to feed and reconstruct the S21 parameter (Lorentzian function) of a cylindrical resonant. What do you think? Can you provide some guidance?

    Afterward, we will move on to creating a board for measuring S21 on two resonators. Best regards, Luca 

  • Luca,

    The team is out of office for the US holiday, please expect a response by tomorrow.

    Thanks,

    Kadeem

  • This is kind of tedious to achieve in LMX2594, because there are a number of limitations on both the N-divider value and the channel divider value that complicate the size of the lookup table and add extra time to the programming sequence. It's definitely doable, but I'd first point you toward LMX2820 instead of LMX2594.

    Instant Calibration table in LMX2820 greatly simplifies the requirements for frequency hopping, since you only need to write three or four registers total to frequency hop (PLL_N = 0 or 1, PLL_NUM = 1, INSTCAL_PLL_NUM = 1, R0 to trigger the jump = 1), for around 2.5µs total SPI time. Critically, with LMX2820, you no longer require a lookup table: the frequency sweep is a trivial incrementing exercise.

    With LMX2594, for each frequency update you need to write the numerator and potentially one or more of the N-divider, channel divider, PFD delay compensation, and full assist calibration registers. In many cases you only need a single register write which in principle is nearly six times faster than LMX2820 per hop best case (LMX2594 SPI is about 2x faster than LMX2820 SPI). The worst case register write time occurs at the 937.5MHz output crossover boundary, where you must simultaneously update the N-divider, numerator, channel divider, all three full assist calibration registers, and PFD_DLY_SEL, resulting in seven register writes, or around 2.4µs total SPI time - similar to the worst case LMX2820 time.

    I've suggested LMX2820 since the implementation of a lookup table is very straightforward with that device, but LMX2594 is perfectly capable of your use case as long as you observe the frequency limitations of the dividers and the VCO ranges. These will occur at:

    • The VCO boundaries you'll cross (8600MHz, 9800MHz, and 10800MHz)
    • The channel divider boundary (when the output transitions across the 937.5MHz boundary) - this is also the PFD_DLY_SEL boundary
    • The crossover points where new CAPCODE or DACISET values becomes a better fit than the previous values

    The first two boundaries are easy to handle. The CAPCODE/DACISET changes are more subjective, and operate on a per-part basis (you could forego the per-part component, but only with partial assist, which will add several µs to your lock time). You could build an interpolating lookup table by naturally allowing the device to calibrate to each of the desired frequencies in your range, if you don't mind storing that much data and spending that much time getting coefficients out of the LMX2594; in practice, 4001 values should only take a few hours to collect, and unless you're extremely memory-constrained, storing a 16kB lookup table isn't a big deal. You could also greatly compress the total number of table values by taking fewer data points (perhaps every 5MHz as suggested by the datasheet) and interpolating between those points instead.

    TICS Pro does include some automation functions (see C:\Program Files (x86)\Texas Instruments\TICS Pro\TICSPro_TCP.py) which might help simplify the lookup table data collection.

  • Many thanks Mr. Payne for your prompt answer!