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.

LMX2572EVM: Using linux with the EVM

Part Number: LMX2572EVM
Other Parts Discussed in Thread: LMX2572, USB2ANY

Hi, I need to control the LMX2572EVM via a linux machine.  The TICS pro is only available on windows.  I have also seen LMX2572_PLL.py which appears to be importing windows related files.

Is there a way to control the EVM via linux?

Thank you

  • Hello Saied,

    We don't have a linux solution at this time, sorry. Linux support for TICS Pro is on our development roadmap, but it's at least one year out.

    Regards,

    Derek Payne

  • Thank you for your response Derek.  Do you know what the USB communication protocol is, perhaps I can develop my own driver to upload the registers.

  • Saied,

    The USB2ANY has its own DLL for exposing the communication API, and although I am not 100% sure about this, I believe it references Windows USB libraries and thus isn't portable (this is something we're working on for linux release). However, the LMX2572 has a header on the board for SPI communication from the USB2ANY, and it's just normal SPI. You could substitute any kind of SPI controller that supports 24-bit SPI, from FTDI to Raspberry Pi Pico. There are plenty of options.

    Theoretically you could also reuse a lot of the LMX2572_PLL.py file as well:

    • Comment out imports or inject your own fake imports to eliminate conflicts with .NET-specific code (recommend aliasing UpdateStatusBar as print function)
    • Parse the LMX2572.ini file bits section to get register positions, lengths, offsets, etc.
    • Create a class that exposes .iValue (integer), .dValue (float), and .sValue (string) properties, and potentially links to registers
      • Register-backed classes would trigger register writes as a side effect of updating their .iValue property
      • Could add something like a SetValue(x) function which emulates GUI interaction by assigning x to the appropriate property for its type and calling the control's associated _Update() function

    Regards,

    Derek Payne

  • Thank you for the detail Derek