#![no_std] extern crate alloc; use alloc::vec::Vec; #[derive(Debug, Clone, PartialEq, PartialOrd, serde::Serialize, serde::Deserialize)] pub enum Uplink { Ping, } #[derive(Debug, Clone, PartialEq, PartialOrd, serde::Serialize, serde::Deserialize)] pub enum Downlink { Pong, Sensor(Sensor), } #[derive(Debug, Clone, PartialEq, PartialOrd, serde::Serialize, serde::Deserialize)] pub enum Sensor { Gas { temp_c: f32, pressure: f32, }, Lux { lux: f32, }, IMU { accel: na::Vector3, gyro: na::Vector3, }, Pdm(Vec), }