The crate has two hardware modes selected at compile time.
Default builds enable the simulate feature and construct fake I2C, GPIO, PCA9685, camera, Hailo, and gamepad components. This keeps local development possible without robot hardware.
cargo build --bins
cargo run --bin manual
cargo run --bin autonomousIn this mode, hw_probe exits with a message explaining that it only supports real-hardware Linux builds.
Linux builds with --no-default-features construct Raspberry Pi-oriented hardware modules:
- PCA9685 on I2C bus 1 at address
0x40 - GPIO through the Linux Raspberry Pi implementation
- RealSense camera implementation
- Hailo vdevice implementation
- gamepad input through
gilrs
cargo build --release --bins --no-default-features
./target/release/hw_probehw_probe checks I2C, PCA9685, GPIO, RealSense, Hailo, and gamepad access and prints a per-device result. Passing hw_probe is an environment check, not a guarantee that all runtime tuning is correct.
Real hardware builds are intentionally unsupported on non-Linux targets.