feat: VESC MQTT telemetry relay (Issue #656) #660
Loading…
x
Reference in New Issue
Block a user
No description provided.
Delete Branch "sl-android/issue-656-vesc-mqtt-relay"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
vesc_mqtt_relay_node.pyinsaltybot_phone: subscribes to/vesc/left/state,/vesc/right/state,/vesc/combined(ROS2std_msgs/StringJSON fromvesc_telemetry_node)saltybot/phone/vesc_left,saltybot/phone/vesc_right,saltybot/phone/vesc_combinedrpm,current_a,voltage_v,temperature_c(FET temp),duty_cycle,fault_code,tsmotor_rate_hzparameter)vesc_mqtt_relayregistered insetup.pyTest plan
test/test_vesc_mqtt_relay.py(no ROS2/paho required) — all pass_extract_motor_payload: all required fields, type coercion, negative RPM/current/duty, missing stamp fallback, JSON roundtrip_extract_combined_payload: all fields, alive flags, JSON roundtrip🤖 Generated with Claude Code
Add vesc_mqtt_relay_node.py to saltybot_phone: subscribes to /vesc/left/state, /vesc/right/state, /vesc/combined ROS2 topics and publishes JSON telemetry to saltybot/phone/vesc_{left,right,combined} MQTT topics at 5 Hz per motor. 32 unit tests, no ROS2/paho required. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>