Architecture change (2026-04-03): Mamba F722S (STM32F722) and BlackPill replaced by ESP32 BALANCE (PID loop) and ESP32 IO (motors/sensors/comms). - Update CLAUDE.md, docs, chassis BOM/ASSEMBLY, pinout, power-budget, wiring-diagram, TEAM.md, AUTONOMOUS_ARMING.md, docker-compose - Update all ROS2 package comments, config labels, launch args (stm32_port→esp32_port, /dev/stm32-bridge→/dev/esp32-bridge) - Update WebUI: stm32Mode→esp32Mode, stm32Version→esp32Version, "STM32 State/Mode" labels → "ESP32 State/Mode" (ControlMode, SettingsPanel) - Add TODO(esp32-migration) markers on stm32_protocol.py and mamba_protocol.py binary frame layouts — pending ESP32 protocol spec from max - Fix roslib CDN 1.3.0→1.4.0 in all 11 HTML panels (fixes ROS2 Humble rosbridge "Received a message without an op" incompatibility) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
770 B
770 B
SaltyBot Diagnostic Self-Test System
Comprehensive hardware diagnostics and health monitoring for SaltyBot.
Features
Startup Checks
- RPLIDAR, RealSense, VESC, Jabra mic, ESP32 BALANCE, servos
- WiFi, GPS, disk space, RAM
- Boot result TTS + face animation
- JSON logging
Runtime Monitoring
- Temperature (Orin GPU >80C, VESC >60C)
- Network latency
- Sensor FPS drops
- System resources
Launch
ros2 launch saltybot_diagnostics diagnostics.launch.py
Topics
/saltybot/diagnostics(DiagnosticArray)/saltybot/tts_say(String) - Boot announcements/saltybot/face/boot_animation(String)
Logs
Diagnostic logs: /home/seb/saltybot-data/diagnostics/
JSON format with hardware status, temperatures, and resource usage.