End-to-end testing flow for Jetson Orin Baseboard with In-Circuit Tester and Protoplaster
Published:
Topics: Open hardware, Open source tools
Antmicro’s engineering services for custom hardware design cover the entire development process, from prototypes and proof-of-concepts to complete products. Once the design is fully developed and verified, we typically help our customers kickstart a production batch with an Electronics Manufacturing Services (EMS) provider of choice. In any large-scale production, the yield factor is a critical aspect that needs to be taken into account.
Including In-Circuit Testing (ICT) in the fabrication process is a common practice employed by EMS vendors to ensure quality and identify faulty units early, so that they can be removed from the production batch and further inspected. ICT allows for automated testing at scale, especially if the test setup can be easily customized for various PCB designs and revisions.
In this article we describe our customizable open hardware ICT platform, which we’ll showcase using our Jetson Orin Baseboard as an example. The Jetson Orin Baseboard testing setup consists of 3 boards: a generic ICT Baseboard that can be reused in other setups, and a pair of Jetson Orin Baseboard-specific ICT Bottom and ICT Support boards. This setup is modular and reusable, a common theme in all of Antmicro’s designs.
The hardware setup is complemented by Antmicro’s Protoplaster framework for automated, repeatable and efficient testing.
ICT hardware setup
The modular ICT hardware setup outlined above includes a testbed (Bottom Board) which contains spring-loaded needle probes that make contact with the testpoints located on the device-under-test, i.e. in this example, Jetson Orin Baseboard. The needles are electrically connected to the control circuitry which can be orchestrated with a host unit such as a PC. The testbed also includes a 3D-printable frame and a mechanical lever which allow positioning and fastening the device-under-test above the needle probes. Additionally, the ICT Support Board helps ensure that the probes are aligned with Jetson Orin Baseboard’s testpoints. The testbed can be easily customized for any board variant and arrangement of the testpoints.

(For an interactive version of the diagram, visit the desktop version of the website)
The ICT Baseboard includes circuitry for performing low-level testing, such as a multi-channel analog-to-digital converter and a GPIO expander. Those parts are driven with an on-board USB protocol converter implemented with FTDI’s FT4232H. This converter also exposes general purpose communication buses such as SPI, I2C and UART which can be also used for performing higher-level interaction with the boards under test. The ADC, GPIO, UART, SPI and I2C interfaces from the ICT Baseboard are passed to the ICT Bottom board and then relayed to the appropriate needle test probes. In addition, an external power source for the device under test can be connected to the ICT baseboard.
In the case of the Jetson Orin Baseboard, the ICT Baseboard can use the GPIO expander to drive and probe the control signals which enable the DC/DC voltage regulators on the Jetson Orin Baseboard under test. Once the DC/DC regulators are enabled, an ADC located on the ICT Baseboard is used for probing the output voltages of the respective DC/DC regulators. This is a typical low-level board testing scenario that ensures the power distribution works properly, so there is no risk of damaging the Jetson SoM when it is installed on the board.
The low level ICT testing of the Jetson Orin Baseboard is complemented with configuring the on-board power handling circuitry. In particular, the SPI and I2C buses are used for configuring the on-board TPS65988DHRSHR USB-C Power Delivery controller with configuration firmware and reading a unique ID from that chip, which is then used for identifying the board that has been tested and signing the collected test results.
In order to streamline the process of testing several boards, the ICT Baseboard also includes a user button and two status LEDs that can be used to start and monitor the testing procedure.
You can explore the Jetson Orin Baseboard ICT setup on our System Designer portal where you’ll find interactive renders, component lists and Hardware Bills of Materials.
Testing with Protoplaster
Some years ago, Antmicro developed an open source framework called Protoplaster - a Python-based tool created to automate the procedure of functional testing of device prototypes and provide concise, human-readable system reports which has since been adopted in many new product introduction projects.
The initial use case behind Protoplaster was to help test all interfaces and functions of devices which had already been electrically verified to work on the basic level and could boot and run an OS such as Linux.
In such a use case, Protoplaster would integrate with a Board Support Packages to perform device-level testing and self-diagnostics. However, given its flexible nature, it can also be easily adopted to perform earlier stage, low-level ICT testing from an external host such as a PC with a USB connection to the ICT Baseboard. This lets us have common infrastructure for test execution, result collection and reporting.
In the described setup, ICT testing is performed via an FT4232 USB protocol converter that can be connected to a PC or embedded device. The idea was that the test scenario specified for each board should be composed of a series of unit tests that are modular and thus easy to maintain and reuse.
Following this approach, we created a series of ICT test scripts that use Protoplaster for ICT-based verification of the Jetson Orin Baseboard. We plan to expand the test script repository with other testing scenarios that would eventually target more boards from our portfolio of open hardware designs.
The test files for Protoplaster are designed to be board-agnostic - there’s no need to adjust the onboard device addresses or other board-specific configurations in the test code, as it’s all defined as properties in a YAML file.
For the purpose of testing the Jetson Orin Baseboard, we prepared a dedicated test configuration. This configuration includes 4 tests:
- DUT presence check
- power rail voltages check
- programming of the TPS65988 USB PD controller (reference designator
U6
on the Jetson Orin Baseboard) with the specified binary file - reading the unique identifier (UID) from the USB PD controller
For more detailed instructions about preparing, assembling the ICT setup and using it for testing the Jetson Orin Baseboard with Protoplaster, refer to the README.
Comprehensive testing and validation with Antmicro
The ICT platform combined with Protoplaster provides a fully open source and scalable solution for validating production batches of the devices we build for our customers, and can be tailored to any of Antmicro’s many open hardware designs. We develop our test platforms and tools with modularity and reusability in mind, making them easy to customize and incorporate into end-to-end flows for specific physical products in industries ranging from manufacturing, through medical, agriculture, aerospace to transportation.
Antmicro offers productization services, providing comprehensive testing and validation at every step of the way. If you’re interested in building your next product reliably and repeatably, including factory testing using a variant of the ICT setup presented here, or would like to learn more about our engineering services for automated hardware testing, device fleet management and more, don’t hesitate to contact us at contact@antmicro.com.