diff --git a/Software/MainBoard/rust/src/main.rs b/Software/MainBoard/rust/src/main.rs index baa2dae..33abb63 100644 --- a/Software/MainBoard/rust/src/main.rs +++ b/Software/MainBoard/rust/src/main.rs @@ -84,12 +84,6 @@ enum WaitType { MqttConfig, } -#[derive(Serialize, Deserialize, Debug, PartialEq)] -struct Solar { - current_ma: u32, - voltage_ma: u32, -} - impl WaitType { fn blink_pattern(&self) -> u64 { match self { @@ -1047,7 +1041,7 @@ async fn publish_mppt_state( ) -> FatResult<()> { let current = board.board_hal.get_mptt_current().await?; let voltage = board.board_hal.get_mptt_voltage().await?; - let solar_state = Solar { + let solar_state = mqtt::Solar { current_ma: current.as_milliamperes() as u32, voltage_ma: voltage.as_millivolts() as u32, }; diff --git a/Software/MainBoard/rust/src/mqtt.rs b/Software/MainBoard/rust/src/mqtt.rs index 1abd60e..3828790 100644 --- a/Software/MainBoard/rust/src/mqtt.rs +++ b/Software/MainBoard/rust/src/mqtt.rs @@ -31,6 +31,12 @@ pub struct PumpInfo { pub flow_ml: f32, } +#[derive(Serialize, Debug, PartialEq)] +pub struct Solar { + pub current_ma: u32, + pub voltage_ma: u32, +} + static MQTT_CONNECTED_EVENT_RECEIVED: AtomicBool = AtomicBool::new(false); static MQTT_ROUND_TRIP_RECEIVED: AtomicBool = AtomicBool::new(false); pub static MQTT_STAY_ALIVE: AtomicBool = AtomicBool::new(false);