Compare commits
base: seb:6c00d6a32143a98989496378f61151b8a7680626
seb:main
seb:max/motor-test-firmware
seb:sl-firmware/bd-66hx-esp32-uart-orin
seb:sl-firmware/rm-balance-safety-cutoffs
seb:sl-firmware/non-balance-bot-hoverboard-drive
seb:sl-firmware/ota-esp32
seb:sl-perception/bd-1hyn-orin-autostart
seb:sl-jetson/bd-9kod-ota-ci
seb:sl-perception/bd-p47c-here4-can-gps
seb:sl-perception/bd-wim1-orin-uart-esp32
seb:sl-jetson/here4-dronecan-driver
seb:serkan/parking-marking
seb:max/fix-anchor-dst-filter
seb:sl-jetson/issue-681-wss-rosbridge
seb:sl-jetson/issue-681-ios-gps-bridge
seb:sl-webui/fix-tracker-rename
seb:sl-webui/issue-681-ios-gps-rosbridge
seb:sl-webui/issue-681-fix-gps-topics
seb:sl-firmware/cleanup-legacy-hw
seb:sl-mechanical/cleanup-legacy-hw
seb:sl-controls/esp32-can-bridge-update
seb:sl-uwb/saul-tee-system-reference
seb:sl-perception/cleanup-legacy-hw
seb:sl-webui/esp32-final-rename
seb:sl-android/cleanup-legacy-hw
seb:sl-firmware/arch-esp32-migration
seb:sl-webui/esp32-protocol-specs
seb:sl-webui/issue-709-gps-tracker
seb:sl-perception/issue-696-slam-map-persistence
seb:sl-webui/robot-gps-map
seb:salty/uwb-tag-display-wireless
seb:sl-firmware/issue-694-can-watchdog
seb:sl-controls/issue-693-pid-tuning
seb:sl-uwb/issue-698-anchor-discovery
seb:sl-mechanical/issue-699-vesc-mount
seb:sl-jetson/issue-695-can-e2e-test
seb:sl-webui/issue-697-websocket-bridge
seb:sl-android/issue-700-ble-pairing-ui
seb:sl-uwb/issue-690-tag-ble-config
seb:sl-uwb/issue-689-tag-power-mgmt
seb:sl-firmware/issue-672-bme280-baro-temp
seb:sl-firmware/issue-682-hw-button
seb:sl-webui/issue-681-can-monitor
seb:sl-jetson/issue-651-vesc-health
seb:sl-firmware/issue-658-diagnostics-aggregator
seb:sl-controls/issue-652-smooth-velocity
seb:sl-perception/issue-646-vesc-odometry
seb:sl-controls/issue-644-vesc-can-driver
seb:sl-jetson/issue-643-canable-bringup
seb:sl-controls/issue-667-configurable-can-ids
seb:sl-jetson/issue-681-vesc-telemetry-publish
seb:sl-jetson/issue-683-read-cb-fix
seb:sl-jetson/issue-674-can-bus-orin
seb:sl-firmware/issue-597-can-driver
seb:sl-firmware/issue-678-pitch-threshold
seb:sl-jetson/issue-669-vesc-topic-fix
seb:sl-perception/issue-655-nav2-integration
seb:sl-uwb/issue-657-geofence-speed-limit
seb:sl-webui/issue-653-vesc-panel
seb:sl-android/issue-656-vesc-mqtt-relay
seb:sl-mechanical/issue-654-canable-mount
seb:sl-firmware/issue-645-vesc-telemetry
seb:sl-firmware/vesc-uart-transport
seb:sl-jetson/issue-631-system-monitor
seb:sl-controls/issue-632-encoder-odom
seb:sl-uwb/issue-634-uwb-logger
seb:sl-firmware/issue-629-uart-protocol
seb:sl-perception/issue-627-aruco-docking
seb:sl-webui/issue-630-main-dashboard
seb:sl-android/issue-633-voice-commands
seb:sl-mechanical/issue-628-cable-tray
seb:sl-firmware/issue-613-battery-voltage
seb:sl-jetson/issue-615-bag-recorder
seb:sl-controls/issue-616-steering-pid
seb:sl-perception/issue-611-obstacle-detect
seb:sl-webui/issue-614-settings-panel
seb:sl-uwb/issue-618-espnow-relay
seb:sl-android/issue-617-waypoint-logger
seb:sl-mechanical/issue-612-jetson-mount
seb:sl-controls/issue-600-slope-compensation
seb:sl-uwb/issue-602-anchor-calibration
seb:sl-jetson/issue-599-nav2-uwb
seb:sl-perception/issue-595-pose-fusion
seb:sl-android/issue-601-mqtt-ros2-bridge
seb:sl-mechanical/issue-596-rplidar-mount
seb:sl-webui/issue-598-gamepad-teleop
seb:sl-firmware/issue-565-fault-handler
seb:sl-controls/issue-584-motor-current
seb:sl-perception/issue-586-visual-odom
seb:sl-android/issue-585-video-bridge
seb:sl-webui/issue-587-map-view
seb:sl-uwb/issue-merge-uwb-tag-display
seb:sl-mechanical/issue-588-battery-holder
seb:sl-mechanical/issue-564-uwb-anchor-mount
seb:sl-jetson/issue-577-bringup-launch
seb:sl-uwb/issue-573-uwb-imu-fusion
seb:sl-perception/issue-575-safety-zone
seb:sl-webui/issue-576-event-log
seb:sl-android/issue-574-sensor-dashboard
seb:sl-controls/issue-550-pid-scheduling
seb:sl-uwb/issue-545-tag-firmware
seb:sl-jetson/issue-566-health-monitor
seb:sl-uwb/issue-544-anchor-firmware
seb:sl-perception/issue-546-uwb-ros2
seb:sl-webui/issue-562-diagnostics
seb:sl-android/issue-545-uwb-tag
seb:sl-mechanical/issue-561-rplidar-mount
seb:sl-firmware/issue-547-gimbal-servo
seb:sl-jetson/issue-548-gimbal-ros2
seb:sl-webui/issue-551-gimbal-webui
seb:sl-perception/issue-549-head-tracking
seb:sl-mechanical/issue-552-gimbal-mount
seb:sl-android/issue-553-voice-command
seb:sl-jetson/issue-503-audio-pipeline
seb:sl-controls/issue-533-battery-adc
seb:sl-firmware/issue-531-pid-autotune
seb:sl-perception/issue-532-depth-costmap
seb:sl-webui/issue-534-teleop-webui
seb:sl-mechanical/issue-535-phone-mount
seb:sl-android/issue-536-flash-script
seb:sl-firmware/issue-520-imu-calibration
seb:sl-webui/issue-504-integration-tests
seb:sl-android/issue-521-esc-debug-cleanup
seb:sl-jetson/issue-523-motor-daemon
seb:sl-controls/issue-522-usart6-truncation
seb:sl-mechanical/issue-524-usb-cdc-tx
seb:sl-perception/issue-469-terrain-classification
seb:sl-controls/issue-506-launch-profiles
seb:sl-android/issue-513-phone-joystick
seb:sl-firmware/issue-512-autonomous-arming
seb:sl-mechanical/issue-505-charging-dock
seb:sl-jetson/issue-502-headscale-vpn
seb:sl-firmware/issue-503-audio-pipeline
seb:sl-webui/issue-491-voice-router
seb:sl-controls/issue-489-docking
seb:sl-firmware/issue-488-bag-recording
seb:sl-perception/issue-490-sensor-fusion
seb:sl-jetson/issue-492-ota-update
seb:sl-controls/issue-475-nav2-config
seb:sl-android/issue-493-person-following
seb:sl-mechanical/issue-494-tts-personality
seb:sl-firmware/issue-480-map-persistence
seb:sl-jetson/issue-477-urdf
seb:sl-webui/issue-482-behavior-tree
seb:sl-perception/issue-478-costmaps
seb:sl-mechanical/issue-479-recovery-behaviors
seb:sl-android/issue-483-monitoring-dashboard
seb:sl-controls/issue-467-power-mgmt
seb:sl-perception/issue-468-object-detection
seb:sl-android/issue-470-curiosity
seb:sl-webui/issue-471-param-server
seb:sl-jetson/issue-473-event-logger
seb:sl-webui/issue-453-obstacle-map
seb:sl-jetson/issue-456-photo-capture
seb:sl-android/issue-458-wifi-handoff
seb:sl-perception/issue-454-gestures
seb:sl-controls/issue-455-smooth-velocity
seb:sl-firmware/issue-459-estop
seb:sl-mechanical/issue-457-sound-effects
seb:sl-jetson/issue-447-full-launch
seb:sl-firmware/issue-445-diagnostics
seb:sl-controls/issue-441-geofence
seb:sl-mechanical/issue-444-night-mode
seb:sl-webui/issue-443-social-memory
seb:sl-perception/issue-442-weather
seb:sl-android/issue-446-patrol
seb:sl-android/issue-420-termux-openclaw
seb:sl-mechanical/issue-432-led-controller
seb:sl-jetson/issue-431-tricks
seb:sl-webui/issue-429-emotion-engine
seb:sl-perception/issue-430-audio-direction
seb:sl-controls/issue-433-gamepad-teleop
seb:sl-firmware/issue-408-health-monitor
seb:sl-controls/issue-422-nav2-slam
seb:sl-jetson/issue-424-remote-monitor
seb:sl-perception/issue-423-multi-person
seb:sl-mechanical/issue-421-tts-service
seb:sl-webui/issue-413-sensor-hud
seb:sl-webui/issue-412-ops-dashboard
seb:sl-mechanical/issue-410-auto-dock
seb:sl-perception/issue-409-voice-commands
seb:sl-controls/issue-407-vesc-balance
seb:sl-jetson/issue-411-bag-recording
seb:sl-mechanical/issue-400-encounter-queue
seb:sl-firmware/issue-400-encounter-enrollment
seb:sl-jetson/issue-400-encounter-launch
seb:sl-perception/issue-393-real-wake-word
seb:sl-webui/issue-400-encounter-ui
seb:sl-controls/issue-394-face-bridge
seb:sl-webui/issue-392-meshpeer-fix
seb:sl-perception/issue-393-wake-word
seb:sl-firmware/issue-364-obstacle-avoidance
seb:sl-webui/issue-371-accessibility
seb:sl-mechanical/issue-300-watchdog
seb:sl-perception/issue-366-follow-me
seb:sl-firmware/issue-388-esc-abstraction
seb:sl-firmware/fix-bno055-include
seb:sl-controls/issue-384-pan-tilt
seb:sl-controls/issue-383-vesc
seb:sl-controls/issue-337-build-fix
seb:sl-firmware/issue-337-build-fix
seb:sl-controls/issue-371-accessibility
seb:sl-webui/issue-370-salty-face
seb:sl-perception/issue-325-battery-coulomb
seb:sl-jetson/issue-362-uart-verify
seb:sl-webui/issue-374-cage-kiosk
seb:sl-controls/issue-364-lidar-avoidance
seb:sl-perception/issue-375-camera-power-modes
seb:sl-perception/issue-350-velocity-ramp
seb:sl-webui/issue-369-display-setup
seb:sl-perception/issue-365-uwb-tracking
seb:sl-perception/issue-363-person-tracking
seb:sl-perception/issue-359-face-emotion
seb:sl-perception/issue-353-audio-scene
seb:sl-jetson/issue-355-sysmon
seb:sl-webui/issue-354-settings
seb:sl-perception/issue-348-obstacle-size
seb:sl-webui/issue-349-camera-viewer
seb:sl-jetson/issue-332-rosbag-recorder
seb:sl-perception/issue-342-hand-tracking
seb:sl-webui/issue-344-hand-viz
seb:sl-perception/issue-339-path-edges
seb:sl-webui/issue-340-diagnostics
seb:sl-perception/issue-326-obstacle-velocity
seb:sl-controls/issue-333-pure-pursuit
seb:sl-webui/issue-329-import-fix
seb:sl-perception/issue-322-person-reid
seb:sl-mechanical/issue-325-coulomb-counter
seb:sl-jetson/issue-320-camera-hotplug
seb:sl-controls/issue-321-battery-speed
seb:sl-webui/issue-319-teleop
seb:sl-mechanical/issue-185-phone-mount
seb:sl-perception/issue-184-wheel-odom
seb:sl-mechanical/issue-301-dust-cover
seb:sl-jetson/wake-word-detect
seb:sl-controls/velocity-smooth-filter
seb:sl-webui/node-list-viewer
seb:sl-jetson/issue-310-personal-space
seb:sl-perception/issue-307-sky-detect
seb:sl-webui/issue-308-temp-gauge
seb:sl-controls/issue-309-gain-schedule
seb:sl-perception/issue-296-terrain-rough
seb:sl-firmware/issue-300-watchdog
seb:sl-jetson/issue-299-topic-memory
seb:sl-webui/issue-297-motor-graph
seb:sl-controls/issue-298-geofence
seb:sl-firmware/issue-290-rgb-fsm
seb:sl-jetson/issue-289-volume-adjust
seb:sl-perception/issue-286-blur-detect
seb:sl-webui/issue-287-bandwidth
seb:sl-controls/issue-288-cliff-stop
seb:sl-mechanical/issue-264-cable-clips
seb:sl-jetson/issue-279-face-track-servo
seb:sl-webui/issue-280-battery-chart
seb:sl-controls/issue-278-imu-cal
seb:sl-perception/issue-274-color-segment
seb:sl-controls/issue-262-wheel-slip
seb:sl-webui/issue-275-log-viewer
seb:sl-jetson/issue-270-greeting-trigger
seb:sl-perception/issue-268-depth-holes
seb:sl-webui/issue-269-status-header
seb:sl-firmware/issue-263-fan-pwm
seb:sl-webui/issue-261-waypoint-editor-fix
seb:sl-perception/issue-260-vo-drift
seb:sl-jetson/issue-252-ambient-sound
seb:sl-firmware/issue-253-buzzer
seb:sl-perception/issue-249-floor-classifier
seb:sl-webui/issue-250-map-viewer
seb:sl-mechanical/issue-254-rain-shield
seb:sl-controls/issue-251-battery-speed
seb:sl-jetson/issue-242-vad
seb:sl-controls/issue-241-smooth-accel
seb:sl-firmware/issue-243-ultrasonic
seb:sl-webui/issue-240-conversation-history
seb:sl-perception/issue-239-lidar-clustering
seb:sl-webui/issue-234-audio-meter
seb:sl-perception/issue-233-qr-reader
seb:sl-controls/issue-235-compass
seb:sl-perception/issue-227-landmark-smooth
seb:sl-controls/issue-228-cmd-vel-mux
seb:sl-webui/issue-229-pose-viewer
seb:sl-controls/issue-223-motor-protection
seb:sl-perception/issue-221-pointing
seb:sl-webui/issue-222-network
seb:sl-firmware/issue-214-ina219
seb:sl-perception/issue-211-height-filter
seb:sl-controls/issue-216-odom-fusion
seb:sl-controls/issue-213-autotune
seb:sl-webui/issue-212-joystick
seb:sl-mechanical/issue-195-gopro-mount
seb:sl-firmware/issue-206-servo
seb:sl-perception/issue-201-person-reid
seb:sl-jetson/issue-205-thermal
seb:sl-controls/issue-203-watchdog
seb:sl-controls/issue-194-speed-limiter
seb:sl-jetson/issue-171-mesh-comms
seb:sl-perception/issue-198-camera-health
seb:sl-perception/issue-191-apriltag
seb:sl-firmware/issue-193-led-driver
seb:sl-jetson/issue-161-emotion
seb:sl-perception/issue-190-depth-filter
seb:sl-jetson/issue-167-multilang
seb:sl-firmware/issue-178-power-mgmt
seb:sl-webui/issue-183-battery-chart
seb:sl-webui/issue-177-camera-viewer
seb:sl-perception/issue-176-dynamic-obstacles
seb:sl-controls/issue-169-emergency
seb:sl-mechanical/issue-170-payload-bay
seb:sl-perception/issue-168-night-vision
seb:sl-firmware/issue-143-audio-amp
seb:sl-webui/issue-160-settings
seb:sl-controls/issue-158-docking
seb:sl-perception/issue-157-visual-odom
seb:sl-mechanical/issue-159-charging-dock
seb:sl-jetson/issue-140-gestures
seb:sl-webui/issue-145-mission-planner
seb:sl-controls/issue-142-terrain
seb:sl-perception/issue-141-scene-understanding
seb:sl-mechanical/issue-144-weatherproofing
seb:sl-firmware/issue-124-ota
seb:sl-mechanical/issue-138-sensor-rail
seb:sl-firmware/issue-135-bno055
seb:sl-webui/issue-139-fleet-dashboard
seb:sl-controls/issue-136-adaptive-pid
seb:sl-jetson/issue-137-voice-commands
seb:sl-perception/issue-134-multi-robot-slam
seb:sl-jetson/issue-125-battery-management
seb:sl-firmware/issue-120-serial-protocol
seb:sl-mechanical/issue-121-tank-chassis
seb:sl-webui/issue-126-telemetry-dash
seb:sl-perception/issue-123-map-persistence
seb:sl-jetson/issue-119-cmd-protocol
seb:sl-controls/issue-122-tank-driver
seb:sl-controls/issue-110-rover-driver
seb:sl-jetson/issue-108-integration-tests
seb:sl-mechanical/issue-109-rover-chassis
seb:sl-perception/issue-105-equirect
seb:sl-controls/issue-104-mode-switch
seb:sl-perception/issue-106-calibration
seb:sl-webui/issue-107-dashboard
seb:sl-firmware/issue-103-crsf-rc
seb:sl-jetson/social-speech-llm-tts
seb:sl-jetson/social-orin-dev
seb:sl-controls/tracking-fusion
seb:sl-controls/social-personality
seb:sl-firmware/social-expression
seb:sl-perception/social-enrollment
seb:sl-perception/social-face-detection
seb:sl-firmware/uwb-integration
seb:sl-perception/social-nav
seb:sl-perception/social-person-state
seb:sl-firmware/remote-estop
seb:saltyrover-dev
seb:sl-mechanical/rover-chassis
seb:sl-jetson/sidewalk-segmentation
seb:sl-controls/rover-drive
seb:sl-perception/route-record-replay
seb:sl-jetson/full-stack-launch
seb:sl-firmware/web-ui-overhaul
seb:sl-webui/issue-43-ui-overhaul
seb:sl-firmware/gyro-recal-button
seb:sl-firmware/crsf-elrs
seb:sl-firmware/robot-3d-model
seb:sl-firmware/yaw-fix
seb:sl-perception/orin-slam-update
seb:sl-jetson/command-protocol
seb:sl-controls/mode-switch
seb:sl-firmware/bme280-full
seb:sl-firmware/branch-strategy
seb:saltylab
seb:saltylab-dev
seb:saltyrover
seb:saltytank
seb:saltytank-dev
seb:sl-firmware/mag-baro-detect
seb:sl-firmware/status-leds
seb:sl-controls/gyro-calibration
seb:sl-mechanical/prototype-baseplate
seb:sl-firmware/fix-axis-orientation
seb:sl-controls/motor-driver
seb:sl-perception/bd-a2j-sensor-drivers
seb:sl-jetson/stm32-serial-bridge
seb:sl-firmware/fix-orientation-telemetry
seb:sl-firmware/bd-3ulu-usb-dcache-fix
seb:sl-controls/bd-3qh-safety-systems
seb:sl-controls/bd-18i-pid-tuning
seb:sl-controls/bd-2dv-imu-fusion
seb:sl-jetson/bd-1hcg-jetson-platform
seb:sl-mechanical/bd-1iy5-chassis-frame
seb:sl-firmware/bd-1lo-usb-cdc-fix
seb:sl-perception/bd-wax-slam-setup
..
compare: seb:8b1d6483cfcae3579c47b247b835c1ea09c2ea3c
seb:main
seb:max/motor-test-firmware
seb:sl-firmware/bd-66hx-esp32-uart-orin
seb:sl-firmware/rm-balance-safety-cutoffs
seb:sl-firmware/non-balance-bot-hoverboard-drive
seb:sl-firmware/ota-esp32
seb:sl-perception/bd-1hyn-orin-autostart
seb:sl-jetson/bd-9kod-ota-ci
seb:sl-perception/bd-p47c-here4-can-gps
seb:sl-perception/bd-wim1-orin-uart-esp32
seb:sl-jetson/here4-dronecan-driver
seb:serkan/parking-marking
seb:max/fix-anchor-dst-filter
seb:sl-jetson/issue-681-wss-rosbridge
seb:sl-jetson/issue-681-ios-gps-bridge
seb:sl-webui/fix-tracker-rename
seb:sl-webui/issue-681-ios-gps-rosbridge
seb:sl-webui/issue-681-fix-gps-topics
seb:sl-firmware/cleanup-legacy-hw
seb:sl-mechanical/cleanup-legacy-hw
seb:sl-controls/esp32-can-bridge-update
seb:sl-uwb/saul-tee-system-reference
seb:sl-perception/cleanup-legacy-hw
seb:sl-webui/esp32-final-rename
seb:sl-android/cleanup-legacy-hw
seb:sl-firmware/arch-esp32-migration
seb:sl-webui/esp32-protocol-specs
seb:sl-webui/issue-709-gps-tracker
seb:sl-perception/issue-696-slam-map-persistence
seb:sl-webui/robot-gps-map
seb:salty/uwb-tag-display-wireless
seb:sl-firmware/issue-694-can-watchdog
seb:sl-controls/issue-693-pid-tuning
seb:sl-uwb/issue-698-anchor-discovery
seb:sl-mechanical/issue-699-vesc-mount
seb:sl-jetson/issue-695-can-e2e-test
seb:sl-webui/issue-697-websocket-bridge
seb:sl-android/issue-700-ble-pairing-ui
seb:sl-uwb/issue-690-tag-ble-config
seb:sl-uwb/issue-689-tag-power-mgmt
seb:sl-firmware/issue-672-bme280-baro-temp
seb:sl-firmware/issue-682-hw-button
seb:sl-webui/issue-681-can-monitor
seb:sl-jetson/issue-651-vesc-health
seb:sl-firmware/issue-658-diagnostics-aggregator
seb:sl-controls/issue-652-smooth-velocity
seb:sl-perception/issue-646-vesc-odometry
seb:sl-controls/issue-644-vesc-can-driver
seb:sl-jetson/issue-643-canable-bringup
seb:sl-controls/issue-667-configurable-can-ids
seb:sl-jetson/issue-681-vesc-telemetry-publish
seb:sl-jetson/issue-683-read-cb-fix
seb:sl-jetson/issue-674-can-bus-orin
seb:sl-firmware/issue-597-can-driver
seb:sl-firmware/issue-678-pitch-threshold
seb:sl-jetson/issue-669-vesc-topic-fix
seb:sl-perception/issue-655-nav2-integration
seb:sl-uwb/issue-657-geofence-speed-limit
seb:sl-webui/issue-653-vesc-panel
seb:sl-android/issue-656-vesc-mqtt-relay
seb:sl-mechanical/issue-654-canable-mount
seb:sl-firmware/issue-645-vesc-telemetry
seb:sl-firmware/vesc-uart-transport
seb:sl-jetson/issue-631-system-monitor
seb:sl-controls/issue-632-encoder-odom
seb:sl-uwb/issue-634-uwb-logger
seb:sl-firmware/issue-629-uart-protocol
seb:sl-perception/issue-627-aruco-docking
seb:sl-webui/issue-630-main-dashboard
seb:sl-android/issue-633-voice-commands
seb:sl-mechanical/issue-628-cable-tray
seb:sl-firmware/issue-613-battery-voltage
seb:sl-jetson/issue-615-bag-recorder
seb:sl-controls/issue-616-steering-pid
seb:sl-perception/issue-611-obstacle-detect
seb:sl-webui/issue-614-settings-panel
seb:sl-uwb/issue-618-espnow-relay
seb:sl-android/issue-617-waypoint-logger
seb:sl-mechanical/issue-612-jetson-mount
seb:sl-controls/issue-600-slope-compensation
seb:sl-uwb/issue-602-anchor-calibration
seb:sl-jetson/issue-599-nav2-uwb
seb:sl-perception/issue-595-pose-fusion
seb:sl-android/issue-601-mqtt-ros2-bridge
seb:sl-mechanical/issue-596-rplidar-mount
seb:sl-webui/issue-598-gamepad-teleop
seb:sl-firmware/issue-565-fault-handler
seb:sl-controls/issue-584-motor-current
seb:sl-perception/issue-586-visual-odom
seb:sl-android/issue-585-video-bridge
seb:sl-webui/issue-587-map-view
seb:sl-uwb/issue-merge-uwb-tag-display
seb:sl-mechanical/issue-588-battery-holder
seb:sl-mechanical/issue-564-uwb-anchor-mount
seb:sl-jetson/issue-577-bringup-launch
seb:sl-uwb/issue-573-uwb-imu-fusion
seb:sl-perception/issue-575-safety-zone
seb:sl-webui/issue-576-event-log
seb:sl-android/issue-574-sensor-dashboard
seb:sl-controls/issue-550-pid-scheduling
seb:sl-uwb/issue-545-tag-firmware
seb:sl-jetson/issue-566-health-monitor
seb:sl-uwb/issue-544-anchor-firmware
seb:sl-perception/issue-546-uwb-ros2
seb:sl-webui/issue-562-diagnostics
seb:sl-android/issue-545-uwb-tag
seb:sl-mechanical/issue-561-rplidar-mount
seb:sl-firmware/issue-547-gimbal-servo
seb:sl-jetson/issue-548-gimbal-ros2
seb:sl-webui/issue-551-gimbal-webui
seb:sl-perception/issue-549-head-tracking
seb:sl-mechanical/issue-552-gimbal-mount
seb:sl-android/issue-553-voice-command
seb:sl-jetson/issue-503-audio-pipeline
seb:sl-controls/issue-533-battery-adc
seb:sl-firmware/issue-531-pid-autotune
seb:sl-perception/issue-532-depth-costmap
seb:sl-webui/issue-534-teleop-webui
seb:sl-mechanical/issue-535-phone-mount
seb:sl-android/issue-536-flash-script
seb:sl-firmware/issue-520-imu-calibration
seb:sl-webui/issue-504-integration-tests
seb:sl-android/issue-521-esc-debug-cleanup
seb:sl-jetson/issue-523-motor-daemon
seb:sl-controls/issue-522-usart6-truncation
seb:sl-mechanical/issue-524-usb-cdc-tx
seb:sl-perception/issue-469-terrain-classification
seb:sl-controls/issue-506-launch-profiles
seb:sl-android/issue-513-phone-joystick
seb:sl-firmware/issue-512-autonomous-arming
seb:sl-mechanical/issue-505-charging-dock
seb:sl-jetson/issue-502-headscale-vpn
seb:sl-firmware/issue-503-audio-pipeline
seb:sl-webui/issue-491-voice-router
seb:sl-controls/issue-489-docking
seb:sl-firmware/issue-488-bag-recording
seb:sl-perception/issue-490-sensor-fusion
seb:sl-jetson/issue-492-ota-update
seb:sl-controls/issue-475-nav2-config
seb:sl-android/issue-493-person-following
seb:sl-mechanical/issue-494-tts-personality
seb:sl-firmware/issue-480-map-persistence
seb:sl-jetson/issue-477-urdf
seb:sl-webui/issue-482-behavior-tree
seb:sl-perception/issue-478-costmaps
seb:sl-mechanical/issue-479-recovery-behaviors
seb:sl-android/issue-483-monitoring-dashboard
seb:sl-controls/issue-467-power-mgmt
seb:sl-perception/issue-468-object-detection
seb:sl-android/issue-470-curiosity
seb:sl-webui/issue-471-param-server
seb:sl-jetson/issue-473-event-logger
seb:sl-webui/issue-453-obstacle-map
seb:sl-jetson/issue-456-photo-capture
seb:sl-android/issue-458-wifi-handoff
seb:sl-perception/issue-454-gestures
seb:sl-controls/issue-455-smooth-velocity
seb:sl-firmware/issue-459-estop
seb:sl-mechanical/issue-457-sound-effects
seb:sl-jetson/issue-447-full-launch
seb:sl-firmware/issue-445-diagnostics
seb:sl-controls/issue-441-geofence
seb:sl-mechanical/issue-444-night-mode
seb:sl-webui/issue-443-social-memory
seb:sl-perception/issue-442-weather
seb:sl-android/issue-446-patrol
seb:sl-android/issue-420-termux-openclaw
seb:sl-mechanical/issue-432-led-controller
seb:sl-jetson/issue-431-tricks
seb:sl-webui/issue-429-emotion-engine
seb:sl-perception/issue-430-audio-direction
seb:sl-controls/issue-433-gamepad-teleop
seb:sl-firmware/issue-408-health-monitor
seb:sl-controls/issue-422-nav2-slam
seb:sl-jetson/issue-424-remote-monitor
seb:sl-perception/issue-423-multi-person
seb:sl-mechanical/issue-421-tts-service
seb:sl-webui/issue-413-sensor-hud
seb:sl-webui/issue-412-ops-dashboard
seb:sl-mechanical/issue-410-auto-dock
seb:sl-perception/issue-409-voice-commands
seb:sl-controls/issue-407-vesc-balance
seb:sl-jetson/issue-411-bag-recording
seb:sl-mechanical/issue-400-encounter-queue
seb:sl-firmware/issue-400-encounter-enrollment
seb:sl-jetson/issue-400-encounter-launch
seb:sl-perception/issue-393-real-wake-word
seb:sl-webui/issue-400-encounter-ui
seb:sl-controls/issue-394-face-bridge
seb:sl-webui/issue-392-meshpeer-fix
seb:sl-perception/issue-393-wake-word
seb:sl-firmware/issue-364-obstacle-avoidance
seb:sl-webui/issue-371-accessibility
seb:sl-mechanical/issue-300-watchdog
seb:sl-perception/issue-366-follow-me
seb:sl-firmware/issue-388-esc-abstraction
seb:sl-firmware/fix-bno055-include
seb:sl-controls/issue-384-pan-tilt
seb:sl-controls/issue-383-vesc
seb:sl-controls/issue-337-build-fix
seb:sl-firmware/issue-337-build-fix
seb:sl-controls/issue-371-accessibility
seb:sl-webui/issue-370-salty-face
seb:sl-perception/issue-325-battery-coulomb
seb:sl-jetson/issue-362-uart-verify
seb:sl-webui/issue-374-cage-kiosk
seb:sl-controls/issue-364-lidar-avoidance
seb:sl-perception/issue-375-camera-power-modes
seb:sl-perception/issue-350-velocity-ramp
seb:sl-webui/issue-369-display-setup
seb:sl-perception/issue-365-uwb-tracking
seb:sl-perception/issue-363-person-tracking
seb:sl-perception/issue-359-face-emotion
seb:sl-perception/issue-353-audio-scene
seb:sl-jetson/issue-355-sysmon
seb:sl-webui/issue-354-settings
seb:sl-perception/issue-348-obstacle-size
seb:sl-webui/issue-349-camera-viewer
seb:sl-jetson/issue-332-rosbag-recorder
seb:sl-perception/issue-342-hand-tracking
seb:sl-webui/issue-344-hand-viz
seb:sl-perception/issue-339-path-edges
seb:sl-webui/issue-340-diagnostics
seb:sl-perception/issue-326-obstacle-velocity
seb:sl-controls/issue-333-pure-pursuit
seb:sl-webui/issue-329-import-fix
seb:sl-perception/issue-322-person-reid
seb:sl-mechanical/issue-325-coulomb-counter
seb:sl-jetson/issue-320-camera-hotplug
seb:sl-controls/issue-321-battery-speed
seb:sl-webui/issue-319-teleop
seb:sl-mechanical/issue-185-phone-mount
seb:sl-perception/issue-184-wheel-odom
seb:sl-mechanical/issue-301-dust-cover
seb:sl-jetson/wake-word-detect
seb:sl-controls/velocity-smooth-filter
seb:sl-webui/node-list-viewer
seb:sl-jetson/issue-310-personal-space
seb:sl-perception/issue-307-sky-detect
seb:sl-webui/issue-308-temp-gauge
seb:sl-controls/issue-309-gain-schedule
seb:sl-perception/issue-296-terrain-rough
seb:sl-firmware/issue-300-watchdog
seb:sl-jetson/issue-299-topic-memory
seb:sl-webui/issue-297-motor-graph
seb:sl-controls/issue-298-geofence
seb:sl-firmware/issue-290-rgb-fsm
seb:sl-jetson/issue-289-volume-adjust
seb:sl-perception/issue-286-blur-detect
seb:sl-webui/issue-287-bandwidth
seb:sl-controls/issue-288-cliff-stop
seb:sl-mechanical/issue-264-cable-clips
seb:sl-jetson/issue-279-face-track-servo
seb:sl-webui/issue-280-battery-chart
seb:sl-controls/issue-278-imu-cal
seb:sl-perception/issue-274-color-segment
seb:sl-controls/issue-262-wheel-slip
seb:sl-webui/issue-275-log-viewer
seb:sl-jetson/issue-270-greeting-trigger
seb:sl-perception/issue-268-depth-holes
seb:sl-webui/issue-269-status-header
seb:sl-firmware/issue-263-fan-pwm
seb:sl-webui/issue-261-waypoint-editor-fix
seb:sl-perception/issue-260-vo-drift
seb:sl-jetson/issue-252-ambient-sound
seb:sl-firmware/issue-253-buzzer
seb:sl-perception/issue-249-floor-classifier
seb:sl-webui/issue-250-map-viewer
seb:sl-mechanical/issue-254-rain-shield
seb:sl-controls/issue-251-battery-speed
seb:sl-jetson/issue-242-vad
seb:sl-controls/issue-241-smooth-accel
seb:sl-firmware/issue-243-ultrasonic
seb:sl-webui/issue-240-conversation-history
seb:sl-perception/issue-239-lidar-clustering
seb:sl-webui/issue-234-audio-meter
seb:sl-perception/issue-233-qr-reader
seb:sl-controls/issue-235-compass
seb:sl-perception/issue-227-landmark-smooth
seb:sl-controls/issue-228-cmd-vel-mux
seb:sl-webui/issue-229-pose-viewer
seb:sl-controls/issue-223-motor-protection
seb:sl-perception/issue-221-pointing
seb:sl-webui/issue-222-network
seb:sl-firmware/issue-214-ina219
seb:sl-perception/issue-211-height-filter
seb:sl-controls/issue-216-odom-fusion
seb:sl-controls/issue-213-autotune
seb:sl-webui/issue-212-joystick
seb:sl-mechanical/issue-195-gopro-mount
seb:sl-firmware/issue-206-servo
seb:sl-perception/issue-201-person-reid
seb:sl-jetson/issue-205-thermal
seb:sl-controls/issue-203-watchdog
seb:sl-controls/issue-194-speed-limiter
seb:sl-jetson/issue-171-mesh-comms
seb:sl-perception/issue-198-camera-health
seb:sl-perception/issue-191-apriltag
seb:sl-firmware/issue-193-led-driver
seb:sl-jetson/issue-161-emotion
seb:sl-perception/issue-190-depth-filter
seb:sl-jetson/issue-167-multilang
seb:sl-firmware/issue-178-power-mgmt
seb:sl-webui/issue-183-battery-chart
seb:sl-webui/issue-177-camera-viewer
seb:sl-perception/issue-176-dynamic-obstacles
seb:sl-controls/issue-169-emergency
seb:sl-mechanical/issue-170-payload-bay
seb:sl-perception/issue-168-night-vision
seb:sl-firmware/issue-143-audio-amp
seb:sl-webui/issue-160-settings
seb:sl-controls/issue-158-docking
seb:sl-perception/issue-157-visual-odom
seb:sl-mechanical/issue-159-charging-dock
seb:sl-jetson/issue-140-gestures
seb:sl-webui/issue-145-mission-planner
seb:sl-controls/issue-142-terrain
seb:sl-perception/issue-141-scene-understanding
seb:sl-mechanical/issue-144-weatherproofing
seb:sl-firmware/issue-124-ota
seb:sl-mechanical/issue-138-sensor-rail
seb:sl-firmware/issue-135-bno055
seb:sl-webui/issue-139-fleet-dashboard
seb:sl-controls/issue-136-adaptive-pid
seb:sl-jetson/issue-137-voice-commands
seb:sl-perception/issue-134-multi-robot-slam
seb:sl-jetson/issue-125-battery-management
seb:sl-firmware/issue-120-serial-protocol
seb:sl-mechanical/issue-121-tank-chassis
seb:sl-webui/issue-126-telemetry-dash
seb:sl-perception/issue-123-map-persistence
seb:sl-jetson/issue-119-cmd-protocol
seb:sl-controls/issue-122-tank-driver
seb:sl-controls/issue-110-rover-driver
seb:sl-jetson/issue-108-integration-tests
seb:sl-mechanical/issue-109-rover-chassis
seb:sl-perception/issue-105-equirect
seb:sl-controls/issue-104-mode-switch
seb:sl-perception/issue-106-calibration
seb:sl-webui/issue-107-dashboard
seb:sl-firmware/issue-103-crsf-rc
seb:sl-jetson/social-speech-llm-tts
seb:sl-jetson/social-orin-dev
seb:sl-controls/tracking-fusion
seb:sl-controls/social-personality
seb:sl-firmware/social-expression
seb:sl-perception/social-enrollment
seb:sl-perception/social-face-detection
seb:sl-firmware/uwb-integration
seb:sl-perception/social-nav
seb:sl-perception/social-person-state
seb:sl-firmware/remote-estop
seb:saltyrover-dev
seb:sl-mechanical/rover-chassis
seb:sl-jetson/sidewalk-segmentation
seb:sl-controls/rover-drive
seb:sl-perception/route-record-replay
seb:sl-jetson/full-stack-launch
seb:sl-firmware/web-ui-overhaul
seb:sl-webui/issue-43-ui-overhaul
seb:sl-firmware/gyro-recal-button
seb:sl-firmware/crsf-elrs
seb:sl-firmware/robot-3d-model
seb:sl-firmware/yaw-fix
seb:sl-perception/orin-slam-update
seb:sl-jetson/command-protocol
seb:sl-controls/mode-switch
seb:sl-firmware/bme280-full
seb:sl-firmware/branch-strategy
seb:saltylab
seb:saltylab-dev
seb:saltyrover
seb:saltytank
seb:saltytank-dev
seb:sl-firmware/mag-baro-detect
seb:sl-firmware/status-leds
seb:sl-controls/gyro-calibration
seb:sl-mechanical/prototype-baseplate
seb:sl-firmware/fix-axis-orientation
seb:sl-controls/motor-driver
seb:sl-perception/bd-a2j-sensor-drivers
seb:sl-jetson/stm32-serial-bridge
seb:sl-firmware/fix-orientation-telemetry
seb:sl-firmware/bd-3ulu-usb-dcache-fix
seb:sl-controls/bd-3qh-safety-systems
seb:sl-controls/bd-18i-pid-tuning
seb:sl-controls/bd-2dv-imu-fusion
seb:sl-jetson/bd-1hcg-jetson-platform
seb:sl-mechanical/bd-1iy5-chassis-frame
seb:sl-firmware/bd-1lo-usb-cdc-fix
seb:sl-perception/bd-wax-slam-setup
2 Commits
6c00d6a321
...
8b1d6483cf
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
| 8b1d6483cf | Merge pull request 'feat: Slope tilt compensation (Issue #600)' (#609) from sl-controls/issue-600-slope-compensation into main | |||
| be4966b01d |
feat: Tilt compensation for slopes (Issue #600)
Adds a slow-adapting terrain slope estimator (IIR tau=5s) that decouples the robot's balance offset from genuine ground incline. The balance controller subtracts the slope estimate from measured pitch so the PID balances around the slope surface rather than absolute vertical. - include/slope_estimator.h + src/slope_estimator.c: first-order IIR filter clamped to ±15°; JLINK_TLM_SLOPE (0x88) telemetry at 1 Hz - include/jlink.h + src/jlink.c: add JLINK_TLM_SLOPE (0x88), jlink_tlm_slope_t (4 bytes), jlink_send_slope_tlm() - include/balance.h + src/balance.c: integrate slope_estimator into balance_t; update, reset on tilt-fault and disarm - test/test_slope_estimator.c: 35 unit tests, all passing Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> |