BareMetalTestLab is an open community and toolkit for automating testing, CI/CD, and firmware development for baremetal, embedded, and MCU platforms.
We develop and maintain:
- Self-hosted CI/CD solutions with hardware-in-the-loop (HIL) support
- Infrastructure for automated firmware flashing and hardware testing
- Utilities and scripts for lab benches, test frameworks, and hardware integration
- Documentation and best practices for embedded testing
Mission: To make automated testing and CI/CD for embedded and firmware projects accessible, flexible, and convenient for engineers worldwide.
Who is it for?
- Embedded/MCU/firmware developers and testers
- Lab and testbench engineers
- Anyone building automated hardware testing workflows
Featured Project:
- baremetal-ci-docker — A ready-to-use Docker environment for running self-hosted CI/CD pipelines with support for hardware flashing, J-Link, and automated embedded testing.
- ansible-collection-baremetal - Collection for automating baremetal tasks.
- bmlab-flash-toolkit - Python lib for flashing and testing embedded devices.
- bm-vscode-configs - Template for baremetal embedded projects, optimized for development and debugging in Visual Studio Code.
- blackmagic-esp32-c5 - Remote debugger from BlackMagic on ESP32-C5