What CruciHiL solves
Firmware teams waste enormous time on two problems: Test authoring friction. Figuring out which signals a firmware component actually reads and writes takes days of reading code, tracing AUTOSAR RTE wrappers, and asking around. CruciHiL’scrucihil analyze command does this with static analysis and AI in minutes.
Hardware dependency. Tests can’t run until hardware is built, so regressions are caught late and fixes are expensive. CruciHiL’s virtual backend runs identical tests in CI with no hardware at all — on day one.
How it works
rig.can.send(...) and rig.can.expect(...) — never “socketcan” or “can0”. When you swap from a virtual backend to a PEAK CAN adapter, only the TOML changes. The test file is identical.
Key capabilities
Virtual-first CI
Every test runs against an in-process virtual backend before hardware exists. CI works on day one.
Zero test changes
Switch virtual → real hardware by changing one line in a TOML file. Test code is hardware-agnostic by design.
AI signal mapping
crucihil analyze maps AUTOSAR RTE and COM identifiers to DBC signal names using static analysis and AI.Python-native
Tests are async Python functions. No proprietary scripting language. Use your existing editor and CI toolchain.
MCP-connected
Claude, Copilot, and Cursor can query rigs, run tests, and explain failures through the built-in MCP server.
Open core
Self-hosted free up to two rigs. No vendor lock-in. Bring your own AI key.
Start here
Installation →
Install CruciHiL and run your first test in under five minutes.