|
|
48e9af60a9
|
feat: Remove ELRS arm requirement for autonomous operation (Issue #512)
Enable Jetson autonomous arming while keeping RC as optional override.
Key Changes:
=============
1. RC Kill Switch (CH5 OFF) → Emergency Stop (not disarm)
- Motors cutoff immediately on kill switch
- Robot remains armed (allows re-arm without re-initializing)
- Maintains kill switch safety for emergency situations
2. RC Disarm Only on Explicit CH5 Falling Edge (while RC alive)
- RC disconnect doesn't disarm Jetson-controlled missions
- RC failsafe timer (500ms) still handles signal loss
3. Jetson Autonomous Arming (via CDC 'A' command)
- Works independently of RC state
- Requires: calibrated IMU, robot level (±10°), no estop active
- Uses same 500ms arm-hold safety as RC
4. All Safety Preserved
- Arming hold timer: 500ms
- Tilt limit: ±10° level
- IMU calibration required
- Remote E-stop override
- RC failsafe: 500ms signal loss = disarm
- Jetson timeout: 500ms heartbeat = zero motors
Command Protocol (CDC):
A = arm (Jetson)
D = disarm (Jetson)
E/Z = estop / clear estop
H = heartbeat (keep-alive)
C<spd>,<str> = drive command
Behavior Matrix:
RC disconnected → Jetson-armed stays armed, normal operation
RC connected + armed → Both Jetson and RC can arm, blended control
RC kill switch (CH5) → Emergency stop + can re-arm via Jetson 'A'
RC signal lost → Disarm after 500ms (failsafe)
See AUTONOMOUS_ARMING.md for complete protocol and testing checklist.
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
|
2026-03-06 11:46:03 -05:00 |
|