diff --git a/firmware/src/main.rs b/firmware/src/main.rs index aba29d0..cf2265c 100644 --- a/firmware/src/main.rs +++ b/firmware/src/main.rs @@ -337,8 +337,8 @@ mod app { defmt::info!("short_avg:\t{} mHz", short_avg); cx.shared.device_status.lock(|device_status| { - device_status.measured_frequency = (freq as f64) / 1_000_000_000.0; - device_status.average_frequency = (short_avg as f64) / 1_000_000_000.0; + device_status.measured_frequency = freq; + device_status.average_frequency = short_avg; device_status.pwm = cur_pwm as u16; }); diff --git a/hostsoftware/src/main.rs b/hostsoftware/src/main.rs index 039ee31..fbeed7b 100644 --- a/hostsoftware/src/main.rs +++ b/hostsoftware/src/main.rs @@ -76,8 +76,14 @@ impl eframe::App for CheapsdoControl { match data { Ok(SerialPortData::DeviceState(status_msg)) => { self.device_state = status_msg.clone(); - self.average_points.push([self.average_points.len() as f64, status_msg.average_frequency]); - self.pwm_points.push([self.pwm_points.len() as f64, status_msg.pwm as f64]); + self.average_points.push([ + self.average_points.len() as f64, + status_msg.average_frequency as f64 / 1_000_000_000.0 + ]); + self.pwm_points.push([ + self.pwm_points.len() as f64, + status_msg.pwm as f64 + ]); }, Err(_) => break, }; @@ -143,7 +149,9 @@ impl eframe::App for CheapsdoControl { ui.label( egui::RichText::new(format!( "Measured: {}", - formatters::frequency(self.device_state.measured_frequency) + formatters::frequency( + self.device_state.measured_frequency as f64 / 1_000_000_000.0 + ) )) .family(egui::FontFamily::Monospace) .size(20.0), @@ -154,7 +162,9 @@ impl eframe::App for CheapsdoControl { ui.label( egui::RichText::new(format!( "Average: {}", - formatters::frequency(self.device_state.average_frequency) + formatters::frequency( + self.device_state.average_frequency as f64 / 1_000_000_000.0 + ) )) .family(egui::FontFamily::Monospace) .size(20.0), diff --git a/protocol/src/lib.rs b/protocol/src/lib.rs index 9ac5663..e51704f 100644 --- a/protocol/src/lib.rs +++ b/protocol/src/lib.rs @@ -15,16 +15,16 @@ pub enum HostMessage { #[derive(Serialize, Deserialize, Debug, PartialEq, Clone)] pub struct StatusMessage { - pub measured_frequency: f64, - pub average_frequency: f64, + pub measured_frequency: u64, + pub average_frequency: u64, pub pwm: u16, } impl Default for StatusMessage { fn default() -> Self { Self { - measured_frequency: 0.0f64, - average_frequency: 0.0f64, + measured_frequency: 0u64, + average_frequency: 0u64, pwm: 0u16, } }