sl-firmware
e4116dffc0
feat: Remove ELRS arm requirement for autonomous operation (Issue #512)
Enable Jetson autonomous arming while keeping RC as optional override.
Changes:
- RC kill switch (CH5 OFF) now triggers emergency stop instead of disarm
→ Allows Jetson-armed robots to remain armed when RC disconnects
→ Maintains kill switch safety for emergency situations
- RC disarm only triggers on explicit CH5 falling edge (RC still alive)
→ RC disconnect doesn't disarm Jetson-controlled missions
→ RC failsafe timer (500ms) handles signal loss separately
- Jetson arming via CDC 'A' command works independently of RC state
→ Robots can operate fully autonomous without RC transmitter
→ Heartbeat timeout (500ms) prevents runaway if Jetson crashes
Safety maintained:
- Arming hold timer: 500ms (prevents accidental arm)
- Tilt limit: ±10° level required
- IMU calibration: Required before any arm attempt
- Remote E-stop: Blocks all arming
- RC failsafe: 500ms signal loss = disarm
- Jetson timeout: 500ms heartbeat = zero motors
Command protocol (unchanged):
- Jetson: A=arm, D=disarm, E=estop, Z=clear estop
- RC: CH5 switch (optional override)
- Heartbeat: H command every ≤500ms
- Drive: C<speed>,<steer> every ≤200ms
See AUTONOMOUS_ARMING.md for complete protocol and testing checklist.
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-03-06 11:45:12 -05:00
..
2026-03-02 10:34:35 -05:00
2026-02-28 13:09:18 -05:00
2026-03-03 17:35:34 -05:00
2026-02-28 19:43:48 -05:00
2026-03-02 09:40:18 -05:00
2026-03-02 12:51:42 -05:00
2026-03-03 17:35:34 -05:00
2026-03-03 17:35:34 -05:00
2026-03-04 10:36:35 -05:00
2026-03-04 10:36:35 -05:00
2026-03-04 10:36:35 -05:00
2026-03-02 13:29:18 -05:00
2026-02-28 17:48:53 -05:00
2026-02-28 12:37:24 -05:00
2026-03-03 19:00:12 -05:00
2026-02-28 21:07:15 -05:00
2026-03-02 10:53:02 -05:00
2026-03-02 11:06:13 -05:00
2026-02-28 17:48:53 -05:00
2026-03-06 11:45:12 -05:00
2026-02-28 11:58:23 -05:00
2026-02-28 21:06:26 -05:00
2026-03-04 10:36:35 -05:00
2026-02-28 22:04:27 -05:00
2026-03-02 09:56:18 -05:00
2026-03-02 10:53:02 -05:00
2026-03-02 20:49:26 -05:00
2026-03-03 17:29:59 -05:00
2026-03-03 19:00:12 -05:00
2026-03-01 04:55:54 -05:00
2026-03-03 19:00:12 -05:00
2026-03-03 19:00:12 -05:00