summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/lib.rs40
1 files changed, 29 insertions, 11 deletions
diff --git a/src/lib.rs b/src/lib.rs
index 849d954..27f19e6 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -124,7 +124,7 @@ impl UpdateFrom<PrusaStatus> for PrinterState {
}
}
-#[derive(Deserialize)]
+#[derive(Debug, Deserialize)]
struct BambuPrintMessage {
bed_target_temper: Option<f32>,
bed_temper: Option<f32>,
@@ -138,7 +138,7 @@ struct BambuPrintMessage {
total_layer_num: Option<u32>,
}
-#[derive(Deserialize)]
+#[derive(Debug, Deserialize)]
pub struct BambuStatus {
print: Option<BambuPrintMessage>,
}
@@ -146,15 +146,33 @@ pub struct BambuStatus {
impl UpdateFrom<BambuStatus> for PrinterState {
fn update_from(&mut self, status: &BambuStatus) {
if let Some(print) = &status.print {
- if let Some(v) = print.bed_temper { self.bed_temp = v; }
- if let Some(v) = print.bed_target_temper { self.target_bed_temp = v; }
- if let Some(v) = print.nozzle_temper { self.nozzle_temp = v; }
- if let Some(v) = print.nozzle_target_temper { self.target_nozzle_temp = v; }
- if let Some(v) = print.mc_percent { self.progress = v as f32; }
- if let Some(v) = print.mc_remaining_time { self.time_remaining = v; }
- if let Some(v) = print.layer_num { self.layer_num = v; }
- if let Some(v) = print.total_layer_num { self.total_layer_num = v; }
- if let Some(v) = &print.print_speed { self.print_speed = Some(v.clone()); }
+ if let Some(v) = print.bed_temper {
+ self.bed_temp = v;
+ }
+ if let Some(v) = print.bed_target_temper {
+ self.target_bed_temp = v;
+ }
+ if let Some(v) = print.nozzle_temper {
+ self.nozzle_temp = v;
+ }
+ if let Some(v) = print.nozzle_target_temper {
+ self.target_nozzle_temp = v;
+ }
+ if let Some(v) = print.mc_percent {
+ self.progress = v as f32;
+ }
+ if let Some(v) = print.mc_remaining_time {
+ self.time_remaining = v;
+ }
+ if let Some(v) = print.layer_num {
+ self.layer_num = v;
+ }
+ if let Some(v) = print.total_layer_num {
+ self.total_layer_num = v;
+ }
+ if let Some(v) = &print.print_speed {
+ self.print_speed = Some(v.clone());
+ }
if let Some(gcode_state) = &print.gcode_state {
self.status = match gcode_state {
BambuState::Idle => PrintStatus::Idle,