Run firmware regression tests on every commit — ARM Cortex-M, RISC-V, Xtensa, any MCU. Cycle-accurate. Reproducible. Parallel. No benches, no cables, no flaky tests. $0 per seat.
Same firmware, same cycle-exact result every run. No cable jitter, no power noise, no "ghost bug" race conditions. Bugs reproduce in CI, not just on Friday afternoons.
~6,000× wall-clock speedup means a 30-minute suite runs in seconds. Spawn 50 concurrent jobs across hardware variants. No queueing for the one rig in the lab.
Every run produces a JSON result + VCD trace + UART log + cycle-by-cycle PC history. Diff traces between commits to find regressions instantly.
Add the LabWired GitHub Action to any repo with a Rust or C firmware target. Push a commit — see the simulation run. JUnit XML for your CI dashboard, JSON for your custom tooling.
name: Firmware Regression
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build firmware
run: cargo build --release --target thumbv7m-none-eabi
- name: Run LabWired simulation
uses: w1ne/labwired/.github/actions/labwired-test@main
with:
script: tests/firmware-regression.yaml
output_dir: test-results
env:
LABWIRED_API_KEY: ${{ secrets.LABWIRED_API_KEY }}
- name: Upload artifacts
if: always()
uses: actions/upload-artifact@v4
with:
name: labwired-results
path: test-results/
| LabWired CI | Wokwi CI | Renode | HIL bench | |
|---|---|---|---|---|
| Multi-arch cycle-accurate | ✓ | ~ | ✓ | ✓ |
| VCD trace per run | ✓ | — | ✓ | ~ |
| Parallel concurrency | unlimited | per plan | self-host | 1 per bench |
| Setup time | < 1 s | < 1 s | hours | 2–4 hours |
| Per-seat capex | $0 | $0 | $0 | $10k–$100k |
| Determinism guarantee | cycle-exact | best-effort | cycle-exact | flaky |
| VS Code timeline | ✓ | ✓ | ✓ | — |
| Fault injection | roadmap | — | ✓ | manual |
| Open-source core | ✓ | — | ✓ | n/a |
Wokwi is great for prototyping and IoT. Renode is best-in-class for low-level peripheral fidelity on the desktop. Our wedge: cycle-accurate STM32 with a zero-setup browser playground and drop-in CI. The right answer for any embedded team that ships firmware — STM32, RP2040, ESP32, nRF52, RISC-V dev kits, custom Cortex-M SoCs.
Start with the open-source CLI on your own GitHub Actions runner. Bring us in when you want a custom firmware build pipeline, custom assertions, hosted sim runs, or a real engineer staring at the regression with you.
labwired-cli for local + CI runslabwired-lab-template GitHub repo templateWe're onboarding embedded teams to the closed beta. Drop your email and we'll get you a hands-on walkthrough on your repo.