Analog Devices ADMX2001B LCR Measurement Software in Qt - Page 1
Forum section: electronics / testgear

author: Dagobert1
author_rank: Contributor
timestamp: September 19, 2025, 10:26:31 am
content: My software development for operating the ADMX2001b LCR board is ongoing and making further progress. The software is written in Qt and runs on Windows and Ubuntu. The calibration routines that process the measurement data from the reference components are now complete. I can import reference component measurements in CSV format for Keysight E4980A, Zurich Instruments MFIA, and Wayne Kerr. The format in the CSV file must include 1. Frequency, 2. Real(Z), and 3. Imag(Z). It was also a long search for components that meet the required quality for calibration. I am currently still waiting for delivery of very high-quality mica capacitors. I can measure components with my own Keysight E4980A and Zurich Instruments MFIA. To collect the measurement data for the Keysight E4980A, I wrote a program in Matlab that delivers the measurement data in the correct CSV format. Unfortunately, the Keysight E4980A only measures up to 2 MHz, and the Zurich Instruments MFIA only up to 5.1 MHz. I currently have no way to acquire measurement data for frequencies above 5.1 MHz, as the ADMX2001B can measure up to 10 MHz. I am happy to measure components for ADMX2001b calibration for interested parties. I've found that capacitances with values ​​of 1 pF, 10 pF, 100 pF, 1 nF, 10 nF, 100 nF, 1 µF, and 10 µF provide good coverage of the ADMX2001b measurement ranges. Calibration capacitors can be purchased from Keysight, but they cost as much as a car. Testing the various capacitors has shown that polypropylene (PP) film capacitors and mica capacitors deliver very good measurement results. I also found resistors from Mouser with an accuracy of 0.005% and an extremely good temperature coefficient of ±2 ppm/°C (e.g. Vishay Precision Group 1 kOhm Y00071K00000V0L). I can now use the calibration data to implement the calibration in conjunction with the ADMX2001b. Short and open calibration already work in the software. Load calibration is the next step. After that, I still need to rework the measurement data display. Currently, the PC communicates via a USB-UART adapter, and the Raspberry Pi communicates directly via the UART. For even faster measurements, SPI is recommended. I've ordered a corresponding USB-SPI adapter and would like to implement it in the software. The current priority is to be able to deliver a correct measurement value via the display, and for that to happen, the calibration must be fully functional.Currently, the PC communicates via a USB-UART adapter, and the Raspberry Pi communicates directly via the UART. For even faster measurements, SPI is recommended. I've ordered a corresponding USB-SPI adapter and would like to implement it in the software. The current priority is to be able to deliver a correct measurement value via the display, and for that to happen, the calibration must be fully functional.In the next few days I will add more pictures of the interface to Github (https://github.com/Nordlicht123/ADMX2001_LCR_Meter/wiki). I hope to have the software available soon. Only when you start working on a project do you realize how much effort it involves. I'll provide further information in this thread.

author: nimish
author_rank: Regular Contributor
timestamp: September 21, 2025, 01:42:15 am
content: Very cool. It's a screaming deal compared to all the other impedance analyzers.That said, I wonder what the ADMX2001B circuit actually looks like, since it doesn't seem like $1000 worth of parts on the AFE. Could probably cut the cost down even further even if you used the same first party components. Ditch the FPGA, since it just sweeps through the frequencies using the DDS chip, and then it takes the corresponding measurements over SPI from the ADAQ4003 modules, right? There's a few amps for the front end.

author: Dagobert1
author_rank: Contributor
timestamp: September 21, 2025, 08:56:40 am
content: The FPGA contains not only logic, but also a processor that processes all the measurement data and provides communication. The FPGA is the central element of the ADMX2001B. I once added up the components for the ADMX2001B and came up with about $400-$500.

author: nimish
author_rank: Regular Contributor
timestamp: September 29, 2025, 04:39:52 pm
content: Quote from: Dagobert1 on September 21, 2025, 08:56:40 amThe software and comms is something that could be open sourced and implemented on a much cheaper processor. It's an impedance analyzer, it has to drive the AFE by telling the DDS to sweep the frequencies, then has to read the SPI buses from the two ADCs, then do some basic math. Nothing in the module needs an expensive fpga except to act as a master for the SPI buses as far as I can tell. You could have that data streamed to high end MCU, a cheaper fpga, or anything that can handle multiple 75MHz spi buses, assuming both are driven in turbo mode at 2MSPS.That's 72Mbps, well within what could be sent immediately over USB 2.0 HS to a much more powerful processor that would do the actual analysis. Perhaps you could replace the 18 bit adcs with cheaper ones. The adaq4001 is only 4 dB worse in SINAD and is $10 cheaper.

author: Dagobert1
author_rank: Contributor
timestamp: October 10, 2025, 05:25:09 pm
content: We could discuss the hardware at length, but we have to take the ADMX2001 for granted. What's important to me is that we've got an interesting device from Analog Devices with excellent technical specifications. This is a great foundation to build on, and anyone can implement their ideas. My software continues to make progress. Most of the errors in the calibration routines have now been eliminated. Open and short calibration across all measurement ranges and frequencies have been implemented. Now I need to transfer the calibration data to the ADMX2001 and check if everything works as expected. Then I need to revise the measured value display. I hope to publish the first software on Github soon.

author: mawyatt
author_rank: Super Contributor
timestamp: October 10, 2025, 05:48:59 pm
content: This is certainly an interesting project, hats off to the effortThis ADMX2001B is quite intriguing, and with some good packaging and firmware should produce a really nice instrument.The calibration is the area we would be concerned with, as we have a Hioki IM3536 as a reference (this is the best we have in-house) and some self made/measured reference components. How many points is the calibration routine, and what are the minimum components required?Best

author: Dagobert1
author_rank: Contributor
timestamp: October 10, 2025, 08:28:56 pm
content: The Hioki IM3536 measures up to 8 MHz, which is already better than my Keysight E4980A (2 MHz) and my Zurich Instruments MFIA (5.1 MHz). If someone could provide me with a CSV file of the Hioki IM3536, I could expand my software accordingly. The CSV file should contain 1. frequency, 2. real part of the impedance, 3. imaginary part of the impedance.Currently, I've measured the components with 1000 points in the range from 20 Hz to 5.1 MHz. The calibration routine interpolates 41 points from 100 Hz to 5.1 MHz. Example: 100 Hz, 200 Hz ... 900 Hz, 1000 Hz, 2000 Hz ... High-quality mica capacitors (Jahre/Cornell Dubilier) and measuring resistors from Vishay Precision Group serve as component references. Ideal coverage of the ADMX2001B's measurement ranges is achieved with the following values: 1 pF, 10 pF, 100 pF, 1 nF, 10 nF, 100 nF, 1µF (Wima MKP4), 10µF (Wima MKP4). For the resistors, I use 1 ohm, 10 ohm, 100 ohm, 1 kOhm, 10 kOhm, 100 kOhm, 1 MOhm, and 10 MOhm. With the capacitances, the accuracy of the nominal capacitance is not important, but rather the stability of the capacitance. The calibration routine also processes data from inductors, but I think the inductance might be less stable with temperature.