CircuitScout Aims to Automate the Painful Process of Probing Test Pads on Your PCBs
Just pop your KiCad design files into the browser-based interface and CircuitScout can automatically probe test points.
Students Fangzheng Liu and Thomas Juldo are working on a device designed to make it easier to test printed circuit boards, by automating the task as far as possible with probe positioning controlled from KiCad project files: the CircuitScout.
"CircuitScout is a DIY probe system designed to simplify the process of testing PCBs, by automatically probing desired signals," Liu explains of the device's purpose. "Through an intuitive web-based GUI, users can upload their KiCad files and have the system automatically navigate and probe their PCBs. With the help of CircuitScout, all you need to do are selecting signals from the schematic and checking the output."
The idea is simple: given a KiCad project file, the software knows the location of the test points. A dual-gantry CNC machine is used to position a pair of probes precisely on the PCB's test points, and a reading taken — presented in the web interface for validation against expected results. If there are multiple test points, the probes can be automatically repositioned; if there are multiple PCBs to test, simply swap the boards out and start the process afresh.
"The CircuitScout machine is a CNC machine (35×33×18cm) [around 13.8×13×7.1"] that features a dual-probe system designed for precise robotic probing of specific pads on PCBs," Liu explains. "The PCB to be tested is positioned and secured on the machine platform. Stepper motors are employed for precise XY-axis movement, while compact linear servos control the Z-axis motion of the two probes. The machine's controlling electronics [consist] of an [Espressif] ESP32-S2 module that is connected with six separate stepper motor/servo control modules, which we named the 'Coral' module."
These Coral modules — not to be confused with the Coral family of machine learning accelerators from Google — are placed, six to a machine, on a carrier board, where a seventh ESP32-S2 module interfaces with a computer running the graphical user interface (GUI) web server. "The GUI sends the coordinates of the desired pads to be probed and receives data on the status of each Coral module," Liu explains. "All Coral modules are connected to the [main] ESP32 through an I2C bus. The ESP32 can also use a wireless connection between the machine and the GUI."
Once given a project file, the GUI displays a 2D and optional 3D view of the board design, allowing the user to click on nets to be probed — with an option to automatically select suitable probe candidate pairs based on maximizing the distance between them, as a way to avoid the probes interfering with each other.
"A lot more work needs to be done to reach a product-like state," Liu admits of the project's status, "but the current priorities are the following: A lot more work needs to be done to reach a product-like state, but the current priorities are the following: improving the interactivity of the layout and schematics displays; redesign the probes to allow more [retraction] during movements [as there] is a chance of collision on PCBs with high components; reduce the bulkiness of the device to proportions closer to the PCB it is meant to probe."
More details on the project are available on Liu's Hackaday.io page, with hardware, software, and firmware sources published to GitHub under an unspecified open source license.