// the find
botbotrobotics/BotBrain
Modular open-source brain for legged robots. Web UI for teleops, autonomous navigation, mapping & monitoring. 3D-printable hardware that runs on ROS2.
BotBrain is a full-stack control system for legged and wheeled ROS2 robots — quadrupeds like the Unitree Go2, bipeds like the G1 — combining a Next.js web UI with a ROS2 Humble workspace and 3D-printable hardware enclosures. It handles everything from manual teleoperation to autonomous nav2 missions, SLAM mapping, and system health monitoring from a browser. Aimed at robotics hobbyists and small teams who want a working foundation rather than starting from scratch.
The architecture is genuinely well-separated: ROS2 handles all the robot state, rosbridge/WebSocket bridges to the frontend, and the web layer stays pure UI without leaking ROS concerns into it. The 6-level priority velocity arbiter (joystick > nav > AI) with a dead-man switch is the kind of safety design most hobby projects skip and then regret. The state machine with lifecycle-managed node startup/shutdown means you can actually turn modules on and off without killing the whole process — useful when you're on a Jetson Nano with 4GB and the YOLO stack eats 2GB of it. Hardware files are genuinely open: STL/STEP/3MF included, snap-fit enclosure, 30-minute assembly claim backed by a full video.
Supabase as a hard dependency for authentication is an odd architectural choice for an on-robot system — if your robot is in a network-isolated warehouse or field environment, your web UI needs a cloud account to log in. The YOLOv8 detection and AI modules are marked 'Coming Soon' despite being listed prominently in features, so the perception story is mostly aspirational right now. There's no simulation path documented (no Gazebo/Isaac Sim launch files visible in the tree), which means your first test of any nav2 or SLAM config change happens on real hardware. The openai_api_key in robot_config.yaml for the ROSA natural-language control is a secrets-in-config-file antipattern that will catch someone out.