edgefirst-imu-3.0.0 is not a library.
EdgeFirst IMU
Inertial Measurement Unit (IMU) service for EdgeFirst Maivin platform using BNO08x sensors.
Overview
EdgeFirst IMU provides IMU sensor data from BNO08x sensors, publishing fused orientation and raw sensor data over Zenoh for robotics and edge AI applications.
Features
- BNO08x IMU sensor support via SPI
- Sensor fusion with quaternion and rotation vector outputs
- Real-time processing with Tracy profiling support
- Zenoh integration for distributed communication
- Configurable update rates for rotation, accelerometer, and gyroscope
Installation
From crates.io
From GitHub Releases
Download pre-built binaries from the releases page:
# For x86_64
# For ARM64 (Maivin)
From Source
Requirements
- Linux with SPI and GPIO support
- BNO08x IMU sensor hardware
- Rust 1.70 or later (for building from source)
Usage
Options
| Option | Environment Variable | Default | Description |
|---|---|---|---|
--device |
IMU_DEVICE |
/dev/spidev1.0 |
SPI device path |
--interrupt |
IMU_INTERRUPT |
IMU_INT |
GPIO interrupt pin name |
--reset |
IMU_RESET |
IMU_RST |
GPIO reset pin name |
--topic |
IMU_TOPIC |
imu |
Zenoh topic for IMU data |
--timeout |
IMU_TIMEOUT |
165 |
Message timeout in milliseconds |
--configure |
- | false |
Configure FRS records and exit |
--tracy |
- | false |
Enable Tracy profiling |
Testing
Documentation
For detailed documentation, visit EdgeFirst Documentation.
Contributing
See CONTRIBUTING.md for guidelines on contributing to this project.
License
Copyright 2025 Au-Zone Technologies Inc.
Licensed under the Apache License, Version 2.0. See LICENSE.txt for details.
Security
For security vulnerabilities, see SECURITY.md.