From RedBoard Artemis ADC/FFT to a Standalone BJT Analyzer

Some four years ago I purchased my first RedBoard Artemis, mainly because I was impressed by the Apollo3’s promising mixed-signal capabilities, especially the 14-bit 1.2 MSPS ADC.

Since then, I have spent quite a bit of spare time learning the ins and outs of this little MCU. Some of my earlier posts have shown parts of that work, including dedicated DMA-controlled ADC sampling and DSP-enhanced FFT processing.

That work has now become the measurement core of a standalone instrument.

This project is a BJT NPN/PNP hybrid-parameter analyzer capable of measuring DC transistor parameters and 1 kHz small-signal h-parameters over a collector-current range of approximately 10 µA to 18 mA.

The Apollo3 handles the measurement-critical part:

  • dual ADC sampling using DMA (51.2 kS/s at 14 bit)
  • FFT processing
  • DSP-based coherent detection
  • RMS and phase extraction
  • serial measurement protocol
  • range switching and measurement sequencing

The user interface is handled by a small Raspberry Pi-driven touchscreen. The Raspberry Pi communicates with the RedBoard Artemis over UART and acts only as the HMI/supervisory controller. The deterministic measurement engine remains the Apollo3.

The analog side includes bias generation, NPN/PNP switching, collector/emitter drive circuitry, gain stages, calibration paths, and the test-signal circuitry required for true h-parameter measurement conditions.

I figured this community might appreciate the hard work and nerdy details involved in making something like this. This is simply a showcase of what the little 48 MHz Apollo3 core is capable of when pushed as a real embedded measurement/DSP engine, rather than only being used as a general-purpose microcontroller.

Awesome work! Apollo3 is a great IC, very cool to see you waded through its complexity to make something noteworthy