//! Shared actuator message types
//!
//! This module contains common actuator command and status message types.
use crate::messages::Message;
use serde::{Deserialize, Serialize};
/// Twist (velocity command) message
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct Twist {
pub linear: f32,
pub angular: f32,
}
impl Message for Twist {}
/// Motor status message
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct MotorStatus {
pub timestamp: u64,
pub left_motor_rpm: f32,
pub right_motor_rpm: f32,
pub battery_voltage: f32,
pub temperature_c: f32,
}
impl Message for MotorStatus {}