From 2ee3615dcdc2693eb4ce0006c1d004e0502f8457 Mon Sep 17 00:00:00 2001 From: Empire Phoenix Date: Fri, 1 May 2026 10:45:54 +0200 Subject: [PATCH] switch fertilizer to extra 1 --- Software/MainBoard/rust/src/hal/mod.rs | 9 ++------ Software/MainBoard/rust/src/hal/v4_hal.rs | 10 ++++---- Software/MainBoard/rust/src/main.rs | 23 +++++++++++++------ .../MainBoard/rust/src/webserver/post_json.rs | 4 ++-- 4 files changed, 24 insertions(+), 22 deletions(-) diff --git a/Software/MainBoard/rust/src/hal/mod.rs b/Software/MainBoard/rust/src/hal/mod.rs index 2123160..a1b69e3 100644 --- a/Software/MainBoard/rust/src/hal/mod.rs +++ b/Software/MainBoard/rust/src/hal/mod.rs @@ -164,7 +164,7 @@ pub trait BoardInteraction<'a> { async fn get_mptt_voltage(&mut self) -> FatResult; async fn get_mptt_current(&mut self) -> FatResult; async fn can_power(&mut self, state: bool) -> FatResult<()>; - async fn extra2(&mut self, enable: bool) -> FatResult<()>; + async fn extra1(&mut self, enable: bool) -> FatResult<()>; async fn backup_config(&mut self, config: &PlantControllerConfig) -> FatResult<()>; async fn read_backup(&mut self) -> FatResult; @@ -176,12 +176,7 @@ pub trait BoardInteraction<'a> { } /// Return the last known firmware build timestamps per sensor, set during detect_sensors. - fn get_sensor_build_minutes( - &self, - ) -> ( - [Option; PLANT_COUNT], - [Option; PLANT_COUNT], - ) { + fn get_sensor_build_minutes(&self) -> ([Option; PLANT_COUNT], [Option; PLANT_COUNT]) { ([None; PLANT_COUNT], [None; PLANT_COUNT]) } diff --git a/Software/MainBoard/rust/src/hal/v4_hal.rs b/Software/MainBoard/rust/src/hal/v4_hal.rs index d9e5362..18a30fb 100644 --- a/Software/MainBoard/rust/src/hal/v4_hal.rs +++ b/Software/MainBoard/rust/src/hal/v4_hal.rs @@ -484,11 +484,11 @@ impl<'a> BoardInteraction<'a> for V4<'a> { Ok(()) } - async fn extra2(&mut self, enable: bool) -> FatResult<()> { + async fn extra1(&mut self, enable: bool) -> FatResult<()> { if enable { - self.extra2.set_high(); + self.extra1.set_high(); } else { - self.extra2.set_low(); + self.extra1.set_low(); } Ok(()) } @@ -652,9 +652,7 @@ impl<'a> BoardInteraction<'a> for V4<'a> { } } - fn get_sensor_build_minutes( - &self, - ) -> ([Option; PLANT_COUNT], [Option; PLANT_COUNT]) { + fn get_sensor_build_minutes(&self) -> ([Option; PLANT_COUNT], [Option; PLANT_COUNT]) { (self.sensor_a_build_minutes, self.sensor_b_build_minutes) } } diff --git a/Software/MainBoard/rust/src/main.rs b/Software/MainBoard/rust/src/main.rs index 7619bff..e8d9bc3 100644 --- a/Software/MainBoard/rust/src/main.rs +++ b/Software/MainBoard/rust/src/main.rs @@ -722,8 +722,10 @@ pub async fn do_secure_pump( let elapsed_minutes = (current_time.timestamp() - last_fertilizer) / 60; if elapsed_minutes >= plant_config.fertilizer_cooldown_min as i64 { - info!("Starting fertilizer pump for {} seconds (last fertilizer was {} minutes ago)", - plant_config.fertilizer_s, elapsed_minutes); + info!( + "Starting fertilizer pump for {} seconds (last fertilizer was {} minutes ago)", + plant_config.fertilizer_s, elapsed_minutes + ); log( LogMessage::FertilizerApplied, plant_config.fertilizer_s as u32, @@ -731,16 +733,23 @@ pub async fn do_secure_pump( &elapsed_minutes.to_string(), "", ); - board.board_hal.extra2(true).await?; + board.board_hal.extra1(true).await?; Timer::after_millis(plant_config.fertilizer_s as u64 * 1000).await; - board.board_hal.extra2(false).await?; + board.board_hal.extra1(false).await?; info!("Fertilizer pump stopped"); // Store the current time as last fertilizer time - board.board_hal.get_esp().store_last_fertilizer_time(plant_id, current_time); + board + .board_hal + .get_esp() + .store_last_fertilizer_time(plant_id, current_time); } else { - let remaining_minutes = plant_config.fertilizer_cooldown_min as i64 - elapsed_minutes; - info!("Skipping fertilizer (cooldown: {} minutes remaining)", remaining_minutes); + let remaining_minutes = + plant_config.fertilizer_cooldown_min as i64 - elapsed_minutes; + info!( + "Skipping fertilizer (cooldown: {} minutes remaining)", + remaining_minutes + ); } } diff --git a/Software/MainBoard/rust/src/webserver/post_json.rs b/Software/MainBoard/rust/src/webserver/post_json.rs index 2c133f7..3cfb7f1 100644 --- a/Software/MainBoard/rust/src/webserver/post_json.rs +++ b/Software/MainBoard/rust/src/webserver/post_json.rs @@ -109,9 +109,9 @@ where T: Read + Write, { let mut board = BOARD_ACCESS.get().await.lock().await; - board.board_hal.extra2(true).await?; + board.board_hal.extra1(true).await?; embassy_time::Timer::after_millis(1000).await; - board.board_hal.extra2(false).await?; + board.board_hal.extra1(false).await?; Ok(None) }