Skip to content
J jakes.cloud All projects
Back to projects
Test & Tooling Live

Analog Discovery 2 Automated Test Module

A custom hardware and software test system that automated diagnostics for reported-faulty Analog Discovery 2 units, reducing test time by 90% and eliminating the department's equipment backlog.

Python C++ KiCad Test Automation PCB Design
Prototype of the Analog Discovery 2 automated test module
Early prototype of the automated test setup.

Overview

The MSOE Electrical, Computer, and Biomedical Engineering Department needed a faster and more consistent way to evaluate Analog Discovery 2 units that had been reported as faulty. Manual diagnosis required significant bench time, and the number of units waiting to be tested had grown into a backlog.

I developed an automated test module that combined a purpose-built PCB with Python and C++ software. The system standardized the test setup, guided technicians through execution, captured measurements, and organized the resulting data for failure analysis.

From prototype to test fixture

The project began as a prototype used to define the required connections, validate the test approach, and identify the hardware needed for repeatable diagnostics. That work was then consolidated into a dedicated four-layer PCB designed in KiCad.

The custom board provided a consistent electrical and mechanical interface between the test software and the device under test. Moving from loose prototype wiring to a manufactured PCB reduced setup variation and made the system practical for repeated use by department technicians.

KiCad layout of the four-layer Analog Discovery 2 test module PCB
Four-layer PCB designed in KiCad for the automated test module.

Hardware bring-up and validation

I assembled and brought up the test hardware, then used oscilloscopes and logic analyzers to investigate hardware anomalies, validate signal integrity, and perform failure analysis. This process helped separate fixture issues from failures in the Analog Discovery 2 unit being tested and improved confidence in the automated results.

Assembled Analog Discovery 2 automated test module
Assembled test module used for repeatable device diagnostics.

Automated test software

The host-side software used Python and C++ to execute the diagnostic workflow and collect test data. Automating the sequence reduced hands-on test time while ensuring that each unit was evaluated with the same procedure and acceptance criteria.

I also collaborated on a Python-based graphical interface that made the system approachable for technicians with different levels of test experience. The GUI provided controls for running tests, graphed the collected results, and exported data for deeper failure analysis and record keeping.

Documentation and handoff

A useful test system also had to be understandable without its developer standing nearby. I created operating guides that documented test setup, execution, and result interpretation so technicians of varying skill levels could use the fixture with minimal training.

Outcome

The finished module turned a slow, manual bench procedure into a repeatable diagnostic workflow. It combined PCB design, hardware bring-up, instrument-based debugging, host software, data visualization, and technician documentation into a tool that solved an immediate operational problem for the ECBE Department.