sl-firmware
36643dd652
feat: Pan/tilt gimbal servo driver for ST3215 bus servos (Issue #547)
- servo_bus.c/h: half-duplex USART3 driver for Feetech ST3215 servos at
1 Mbps; blocking TX/RX with CRC checksum; read/write position, torque
enable, speed; deg<->raw conversion (center=2048, 4096 counts/360°)
- gimbal.c/h: gimbal_t controller; 50 Hz feedback poll alternating pan/tilt
at 25 Hz each; clamps to ±GIMBAL_PAN/TILT_LIMIT_DEG soft limits
- jlink.c: dispatch JLINK_CMD_GIMBAL_POS (0x0B, 6-byte payload int16+int16+
uint16); jlink_send_gimbal_state() for JLINK_TLM_GIMBAL_STATE (0x84)
- main.c: servo_bus_init() + gimbal_init() on boot; gimbal_tick() in main
loop; gimbal_updated flag handler; GIMBAL_STATE telemetry at 50 Hz
- config.h: SERVO_BUS_UART/PORT/PIN/BAUD, GIMBAL_PAN/TILT_ID, GIMBAL_TLM_HZ,
GIMBAL_PAN/TILT_LIMIT_DEG
- jlink.h: CMD_GIMBAL_POS, TLM_GIMBAL_STATE, jlink_tlm_gimbal_state_t (10 B),
gimbal_updated/pan_x10/tilt_x10/speed volatile fields in JLinkState
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-14 10:38:06 -04:00
..
2026-03-02 10:34:35 -05:00
2026-02-28 13:09:18 -05:00
2026-03-07 10:01:02 -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-06 22:35:24 -05:00
2026-03-04 10:36:35 -05:00
2026-03-06 23:07:36 -05:00
2026-03-04 10:36:35 -05:00
2026-03-06 10:27:36 -05:00
2026-03-06 10:27:36 -05:00
2026-03-06 10:27:36 -05:00
2026-03-02 13:29:18 -05:00
2026-03-14 10:38:06 -04:00
2026-02-28 17:48:53 -05:00
2026-03-06 23:14:49 -05:00
2026-03-03 19:00:12 -05:00
2026-02-28 21:07:15 -05:00
2026-03-06 23:07:36 -05:00
2026-03-14 10:38:06 -04:00
2026-03-02 11:06:13 -05:00
2026-02-28 17:48:53 -05:00
2026-03-14 10:38:06 -04: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-03-06 23:14:49 -05:00
2026-03-02 09:56:18 -05:00
2026-03-07 09:56:19 -05:00
2026-03-07 10:01:02 -05:00
2026-03-02 20:49:26 -05:00
2026-03-03 17:29:59 -05:00
2026-03-14 10:38:06 -04: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