From 45121917955407a52126ab37c58d81fafb6523ef Mon Sep 17 00:00:00 2001 From: Hubald Verzijl Date: Wed, 6 Aug 2025 12:48:00 +0200 Subject: [PATCH] Included LED RPC. --- src/client.rs | 29 ++++------------------------- src/main.rs | 17 ++++++----------- 2 files changed, 10 insertions(+), 36 deletions(-) diff --git a/src/client.rs b/src/client.rs index 923a904..8ee1757 100644 --- a/src/client.rs +++ b/src/client.rs @@ -5,8 +5,7 @@ use postcard_rpc::{ }; use std::convert::Infallible; use bioz_icd_rs::{ - AccelRange, BadPositionError, PingEndpoint, GetUniqueIdEndpoint, Rgb8, SetAllLedEndpoint, - SetSingleLedEndpoint, SingleLed, StartAccel, StartAccelerationEndpoint, + AccelRange, PingEndpoint, GetUniqueIdEndpoint, SetGreenLedEndpoint, StartAccel, StartAccelerationEndpoint, StopAccelerationEndpoint, }; @@ -73,31 +72,11 @@ impl WorkbookClient { Ok(id) } - pub async fn set_rgb_single( + pub async fn set_green_led( &self, - position: u32, - r: u8, - g: u8, - b: u8, - ) -> Result<(), WorkbookError> { - self.client - .send_resp::(&SingleLed { - position, - rgb: Rgb8 { r, g, b }, - }) - .await? - .flatten() - } - - pub async fn set_all_rgb_single( - &self, - r: u8, - g: u8, - b: u8, + frequency: f32, ) -> Result<(), WorkbookError> { - self.client - .send_resp::(&[Rgb8 { r, g, b }; 24]) - .await?; + self.client.send_resp::(&frequency).await?; Ok(()) } diff --git a/src/main.rs b/src/main.rs index 59a4008..722451a 100644 --- a/src/main.rs +++ b/src/main.rs @@ -49,19 +49,14 @@ async fn main() { let ping = client.ping(idx).await.unwrap(); println!("Got: {ping}."); } - ["rgb", pos, r, g, b] => { - let (Ok(pos), Ok(r), Ok(g), Ok(b)) = (pos.parse(), r.parse(), g.parse(), b.parse()) - else { - panic!(); + ["led", freq] => { + let Ok(freq) = freq.parse() else { + println!("Bad freq: {freq} Hz"); + continue; }; - client.set_rgb_single(pos, r, g, b).await.unwrap(); - } - ["rgball", r, g, b] => { - let (Ok(r), Ok(g), Ok(b)) = (r.parse(), g.parse(), b.parse()) else { - panic!(); - }; - client.set_all_rgb_single(r, g, b).await.unwrap(); + client.set_green_led(freq).await.unwrap(); } + ["accel", "listen", ms, range, dur] => { let Ok(ms) = ms.parse::() else { println!("Bad ms: {ms}");