diff --git a/src/main.rs b/src/main.rs index ad1eb45..4a91456 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,5 +1,4 @@ use chrono::{DateTime, Duration, Local}; -use core::num; use log::debug; use std::{collections::HashMap, net::UdpSocket, thread}; @@ -89,6 +88,7 @@ fn mopp(speed: u8, data: &[u8]) -> Vec { m.replace_range(m.len() - 2.., "11"); // EOW + // Extend to full bytes m = format!( "{1:0<0$}", (8 as f32 * (m.len() as f32 / 8 as f32).ceil()) as usize, @@ -97,6 +97,7 @@ fn mopp(speed: u8, data: &[u8]) -> Vec { let mut res = Vec::::new(); + // Convert string representation to "real" bits for i in (0..m.len()).step_by(8) { let value = u8::from_str_radix(&m[i..i + 8], 2).unwrap(); res.push(value);