Start here
EmbeddedCI has two parts. The BenchPod runs your tests on real hardware — flashing, power, UART, sensor emulation, and analog capture, driven from pytest or CI. EmbeddedCI Build is the cloud build pipeline that turns your source into firmware or images. Pick the track you need; most teams use both.
BenchPod (hardware-in-the-loop)
Test firmware on a real board — locally or over the cloud from CI. This is our main product.
EmbeddedCI Build
A separate cloud pipeline that turns source into a reproducible firmware or Linux build. Independent of the BenchPod.
Quickstart: a HIL test
The fastest path is the pytest library: install it, wire one board to a pod, and point a test at it.
pip install pytest embeddedci # point a test at a pod on your LAN, a serial port, or a cloud device: pytest --benchpod-connection=192.168.1.213 --benchpod-firmware=build/app.elf
Without a connection the hardware fixtures skip, so the suite stays green on runners with no pod. For a guided walkthrough, see the article Your First HIL Test in 15 Minutes.
New to hardware CI?
The Resources hub explains the concepts — what a BenchPod is, recording and replaying analog signals, running CI from GitHub Actions, and a DIY HIL series if you'd rather build your own rig.