mecha10-controllers 0.1.48

Control algorithms and controllers for the Mecha10 robotics framework
Documentation
[package]
description = "Control algorithms and controllers for the Mecha10 robotics framework"
edition.workspace = true
license.workspace = true
name = "mecha10-controllers"
repository.workspace = true
version.workspace = true

[features]
default = []
# Enable GPIO support for hardware motor controllers (L298N, etc.)
gpio = ["mecha10-drivers-motor/gpio"]
# Enable MPU6050 IMU controller (requires I2C hardware)
mpu6050 = ["dep:embedded-hal", "dep:linux-embedded-hal", "dep:mpu6050", "dep:serde_json"]

[dependencies]
mecha10-core = { version = "0.1", path = "../core" }
mecha10-drivers-motor = { version = "0.1", path = "../drivers/motor" }

async-trait = "0.1"
serde = { version = "1.0", features = ["derive"] }
thiserror = "2.0"
tracing = "0.1"

# MPU6050 dependencies (optional, behind feature flag)
# Note: mpu6050 0.1.x requires embedded-hal 0.2.x, so we use linux-embedded-hal 0.3.x
embedded-hal = { version = "0.2", optional = true }
linux-embedded-hal = { version = "0.3", optional = true }
mpu6050 = { version = "0.1", optional = true }
serde_json = { version = "1.0", optional = true }

[dev-dependencies]
tokio = { version = "1.40", features = ["macros", "rt-multi-thread"] }