diff --git a/hostcontrol/Cargo.lock b/hostcontrol/Cargo.lock index 0bf3de0..dc422b4 100644 --- a/hostcontrol/Cargo.lock +++ b/hostcontrol/Cargo.lock @@ -656,46 +656,6 @@ dependencies = [ "libc", ] -[[package]] -name = "clap" -version = "4.5.60" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2797f34da339ce31042b27d23607e051786132987f595b02ba4f6a6dffb7030a" -dependencies = [ - "clap_builder", - "clap_derive", -] - -[[package]] -name = "clap_builder" -version = "4.5.60" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24a241312cea5059b13574bb9b3861cabf758b879c15190b37b6d6fd63ab6876" -dependencies = [ - "anstream", - "anstyle", - "clap_lex", - "strsim", -] - -[[package]] -name = "clap_derive" -version = "4.5.55" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a92793da1a46a5f2a02a6f4c46c6496b28c43638adea8306fcb0caa1634f24e5" -dependencies = [ - "heck", - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "clap_lex" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a822ea5bc7590f9d40f1ba12c0dc3c2760f3482c6984db1573ad11031420831" - [[package]] name = "clipboard-win" version = "5.4.0" @@ -1483,11 +1443,9 @@ checksum = "dfa686283ad6dd069f105e5ab091b04c62850d3e4cf5d67debad1933f55023df" name = "hostcontrol" version = "0.1.0" dependencies = [ - "clap", "eframe", "egui", "env_logger", - "log", "nalgebra", "nalgebra-macros", "serialport", @@ -1801,9 +1759,9 @@ dependencies = [ [[package]] name = "log" -version = "0.4.29" +version = "0.4.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897" +checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" [[package]] name = "mach2" @@ -2977,12 +2935,6 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6637bab7722d379c8b41ba849228d680cc12d0a45ba1fa2b48f2a30577a06731" -[[package]] -name = "strsim" -version = "0.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" - [[package]] name = "strum" version = "0.26.3" diff --git a/hostcontrol/Cargo.toml b/hostcontrol/Cargo.toml index e4099bf..f83ff16 100644 --- a/hostcontrol/Cargo.toml +++ b/hostcontrol/Cargo.toml @@ -4,7 +4,6 @@ version = "0.1.0" edition = "2021" [dependencies] -clap = { version = "4.0", features = ["derive"] } nalgebra = { version = "0.33" } serialport = { version = "4", default-features = false } thiserror = "2" @@ -12,4 +11,3 @@ nalgebra-macros = "^0.2.2" env_logger = "0.11.8" egui = "0.31.1" eframe = "0.31.1" -log = "0.4.29" diff --git a/hostcontrol/src/main.rs b/hostcontrol/src/main.rs index ce9d0c1..fd7a634 100644 --- a/hostcontrol/src/main.rs +++ b/hostcontrol/src/main.rs @@ -1,24 +1,10 @@ use std::{thread::sleep, time::Duration}; -use clap::Parser; mod stage; -#[derive(clap::Parser, Debug)] -#[command(version, about, long_about = None)] -struct CliArgs { - /// Interface to talk to movement stage - #[arg(long, default_value="/dev/ttyACM0")] - stage_device: String, - - /// Speed of the stage device (bps) - #[arg(long, default_value="115200")] - tty_speed: u32, -} - fn main() { - let args = CliArgs::parse(); env_logger::init(); - let stage_io = stage::StageIO::new(&args.stage_device, args.tty_speed).unwrap(); + let stage_io = stage::StageIO::new("/dev/ttyACM0", 115200).unwrap(); let mut s = stage::Stage::new(stage_io, 1.12).unwrap(); let origin = nalgebra::vector![3000.0, 0.0, -6000.0]; //println!("{}", s.version().unwrap()); diff --git a/hostcontrol/src/stage.rs b/hostcontrol/src/stage.rs index 3d9fefb..2f510b5 100644 --- a/hostcontrol/src/stage.rs +++ b/hostcontrol/src/stage.rs @@ -2,7 +2,6 @@ use std::time::Duration; use thiserror::Error; -use log::debug; fn new_camera_rotation(theta: f64) -> nalgebra::Matrix3 { nalgebra::matrix![ @@ -56,8 +55,6 @@ pub type StageIOResult = std::result::Result; impl StageIO { pub fn new(port: &str, speed: u32) -> StageIOResult { let serial = serialport::new(port, speed).timeout(Duration::from_secs(60)).open()?; - // TODO: read and discard initial characters; some devices like to be - // chatty on start-up. Ok(Self { serial }) } @@ -74,12 +71,10 @@ impl StageIO { } // Send request and wait for response deliminated with a newline - pub fn send_request>(&mut self, command: S) -> StageIOResult { - debug!("->: {:?}", command.as_ref()); + fn send_request>(&mut self, command: S) -> StageIOResult { self.serial.write_all(command.as_ref().as_bytes()).map_err(|e| StageIOError::Write(e))?; - let response = self.receive_until("\n")?; - debug!("<-: {:?}", response); - Ok(response.trim().to_string()) + let res = self.receive_until("\n")?; + Ok(res.trim().to_string()) } }