Skip to content
Snippets Groups Projects

Raw encoder ticks

Merged Samuel Tardieu requested to merge raw-encoder-ticks into main
Files
3
@@ -10,9 +10,15 @@ fn main() -> color_eyre::Result<()> {
c.reset()?;
thread::sleep(Duration::from_millis(100));
println!("- Check firmware version consistency");
c.check_firmware_version()?;
println!("- Check that the encoders have been reset");
assert_eq!(c.get_encoder_ticks()?, (0, 0));
println!("- Check that the raw encoders have been reset");
assert_eq!(c.get_raw_encoder_ticks()?, (0, 0));
println!("- Check that motors are in standby mode");
assert_eq!(c.get_raw_motor_speed()?, None);
@@ -54,9 +60,16 @@ fn main() -> color_eyre::Result<()> {
let (left, right) = c.get_encoder_ticks()?;
assert!(left > 0 && right < 0);
println!("- Check that the raw encoders have moved correctly as well");
let (left, right) = c.get_raw_encoder_ticks()?;
assert!(left & 0x8000 == 0 && right & 0x8000 != 0);
println!("- Check that encoders are reset after being read");
assert_eq!(c.get_encoder_ticks()?, (0, 0));
println!("- Check that the raw encoder ticks are not reset after being read");
assert_eq!(c.get_raw_encoder_ticks()?, (left, right));
println!("- Check that PID coefficients can be set and read");
c.set_pid_coefficients(0.0, 0.0, 0.0)?;
assert_eq!(c.get_pid_coefficients()?, (0.0, 0.0, 0.0));
Loading