5 Commits

Author SHA1 Message Date
fd54f5cc0b feat(can/rx): MCP2515 CAN RX interrupt thread for ECU ID 0x50
- can_bus.h: add can_ecu_status_t struct + can_bus_get_ecu_status() declaration
- can_bus.c: add gpio_interrupt_init() (gpio sysfs, falling-edge poll)
- can_bus.c: add can_rx_thread() - poll gpio63 INT pin, parse 0x50 frame
  (throttle_status, pedal_volt, led_flash_timer, can_lose_ecu, throttle_limit_off, heart_beam)
  with CAN_LOSE timeout detection (100ms)
- can_bus.c: start/join can_rx thread in can_bus_init()/can_bus_close()
- can_bus.c: add can_bus_get_ecu_status() thread-safe snapshot

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-12 16:47:18 +08:00
e108bfe13a feat(can): add LED control fields to can_ctrl_cmd_t, CAN speed in fire_* callbacks
- can_bus.h: add can_ctrl_cmd_t struct (speed/led_gpio/led_enable/keepalive_interval_ms)
- can_bus.c: rename s_keepalive_cmd->s_keepalive_speed; add s_keepalive_led_gpio/
  led_enable/interval_ms; keepalive thread supports LED blink (toggle when
  led_enable=1) and dynamic interval; remove #define CAN_KEEPALIVE_INTERVAL_MS
- event_recorder: fire_collision_warning sends SPEED_LIMIT_STOP/NORMAL via CAN
- event_recorder: fire_alert sends SPEED_LIMIT_ALERT/NORMAL via CAN
- event_recorder/app_header_init: update callers to use can_ctrl_cmd_t struct

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-12 15:14:17 +08:00
839100c0e1 BT handshake function complete 2026-06-08 14:49:20 +08:00
a3f3b2f8fc fix hdmi mode DrawBox amd BT output 2026-04-13 10:41:38 +08:00
9d7d9073a5 add source codes 2026-04-12 17:47:54 +08:00