1
Fork 0

set auto light over the network

This commit is contained in:
Andy Killorin 2025-03-05 13:02:04 -05:00
parent 31c847f39a
commit b82c6dbed8
Signed by: ank
GPG key ID: 23F9463ECB67FE8C
2 changed files with 6 additions and 1 deletions

View file

@ -16,6 +16,8 @@ pub enum ControlPacket {
FireOverride(Speed),
/// Enable/Disable flipper staging
Arm(bool),
/// Enable/Disable auto light
SetAuto(bool),
RunAuto,
/// Stop all motors
Stop,

View file

@ -89,7 +89,7 @@ async fn main(spawner: Spawner) {
spawner.spawn(logger_task(driver)).unwrap();
let limit_switch = Input::new(p.PIN_16, Pull::Up);
let auto_status = Output::new(p.PIN_2, Level::High);
let mut auto_status = Output::new(p.PIN_2, Level::Low);
let mut d: pwm::Config = Default::default();
d.divider = 40.into();
@ -267,6 +267,9 @@ async fn main(spawner: Spawner) {
ControlPacket::FireOverride(speed) => {
cam_state.replace(CamState::Override(speed));
},
ControlPacket::SetAuto(state) => {
auto_status.set_level(Level::from(state));
},
ControlPacket::Arm(enable) => {
if enable {
cam_state.replace(CamState::Charging);