BotBrain Open Source
Software
How to report a bug or request a feature
Where to post questions vs file Issues/PRs for bugs and fixes.
Can I switch BotBrain from CycloneDDS to FastDDS (RealSense D555)?
Why you shouldn’t switch BotBrain to FastDDS; stick to CycloneDDS.
Can I control multiple Go2 robots from one dashboard?
Current single-robot focus; multi-robot control is planned for Pro.
What is BotBrain Pro and how is it different?
What Pro adds (enterprise comms, payloads, sensors) vs open source.
Joystick doesn’t work right after Get Up
Joystick locked after Get Up—press Unlock to enable motion.
Recommended JetPack version for BotBrain (Jetson Orin Nano)
Recommended JetPack version (tested on 6.2.1) and why to upgrade.
Is BotBrain limited to Unitree quadrupeds?
BotBrain isn’t Unitree-only; how to adapt it via a custom robot package.
Fleet connection URL formats (web UI vs rosbridge)
Correct URLs/ports for the web UI vs rosbridge websocket connections.
Safari copy/paste issue with Supabase API keys
Safari clipboard bug with Supabase keys; use Chrome/Firefox to copy/paste.
How to check botbrain.service status (systemd)
Command to check botbrain.service status and view recent failure logs.
How to check if any BotBrain Docker containers crashed
How to list running vs crashed/stopped BotBrain Docker containers.
Custom robot_name in robot_config.yaml breaks frontend connection
robot_name causes topic namespace mismatch; clear it and restart services.
Correct cyclone_dds.xml config to prioritize robot Ethernet
Example cyclone_dds.xml to prioritize the robot Ethernet interface.
DDS error: ddsi_udp_conn_write failed
DDS sending on wrong interface; fix by prioritizing the robot link in CycloneDDS.
What’s the purpose of selecting robot model in install.sh?
What robot-model selection in install.sh configures (backend), not Fleet UI.
Robot doesn’t appear in Fleet after install
Why Fleet is empty after install; add the robot manually in the UI.
How to verify Supabase is configured correctly
3-step check: .env values, restart web server, confirm user in Supabase Auth.
Sign-in error: “fetch failed”
Sign-in “fetch failed” usually means wrong Supabase key—use Legacy Anon.
Inside dev container: ros2 command not found
ros2 not found in dev container—source ROS2 + workspace setup.bash overlays.
How to enter the dev container to run ROS2 commands
Commands to start and exec into the dev container to run ROS2 tooling.
Running on original Unitree Jetson (Foxy) — dashboard shows no data
Dashboard empty on Unitree Foxy due to namespaced topics; create a custom frontend profile.
Dashboard is empty — how to check if hardware nodes started
How to confirm read/write nodes are active via bringup/state_machine logs.
How to rebuild the ROS2 workspace after config changes (Docker)
Rebuild ROS2 workspace in Docker using the builder container, then restart services.
Robot stands up but won’t move — do I need to unlock?
Robot stands but won’t move—send Unlock after Get Up to enable velocity commands.
How to create a custom robot package (custom tracked robot)
Create a new robot package (start from go2_pkg) to integrate a custom robot.
How to visualize the TF tree to debug mapping/localization
How to generate a TF tree (frames.pdf) to debug mapping/localization frames.
rosbridge error: numpy.ndarray has no attribute get_fields_and_field_types
rosbridge numpy serialization warning; known upstream issue and safe to ignore.
Best way to connect in the field (no Wi‑Fi infrastructure)
Field networking options: cellular dongle, hotspot, or Jetson AP for local control.
Dashboard connection times out (IP/ports to use)
Which IP to use and which ports/protocols to connect without timeouts.
Dashboard says “Connected” but telemetry is not updating
Connected but no updates = DDS interface issue; diagnose logs and fix Cyclone config.
RTAB-Map error: “Could not convert rgb/depth msgs!”
RTAB-Map rgb/depth convert error caused by TF/URDF mismatch; restore + rebuild.
Autonomous navigation won’t move / can’t set a goal
Nav won’t move until you set initial pose (“Home”) so localization can start.
Can I transfer a map from one Go2 to another?
Why maps can’t reliably be shared between robots; roadmap for Pro.
Can I upload an external map into BotBrain?
Why importing external maps isn’t supported (RTAB-Map DB tied to sensors/extrinsics).
How to start 3D mapping in the BotBrain web UI
Quick workflow to start/stop 3D mapping from the web UI and save the map.
RealSense camera stuck on “connecting” (no image)
RealSense stuck connecting—check serial/logs and use safer node settings to stabilize.
Verify RealSense depth data is publishing (ROS2 CLI)
How to confirm depth topic is publishing using ros2 topic echo.
I can’t find .env.example (Supabase setup)
Why .env.example isn’t needed; install.sh generates BotBrain/.env automatically.
Can I run BotBrain offline (no internet / no Supabase)?
How to run offline: local Supabase or remove auth for single-user setups.
Email confirmation redirects to localhost
Email confirm opens localhost—replace with Jetson IP so redirect reaches the robot UI.
No confirmation email / can’t log in (Supabase key fix)
No confirm email/login issues often due to wrong key—use Supabase Legacy Anon and restart.
Why is NEXT_PUBLIC_SUPABASE_URL empty over SSH?
Why NEXT_PUBLIC_SUPABASE_URL is empty over SSH: values live in BotBrain/.env for Docker.
Why does BotBrain use Supabase?
What Supabase is used for in BotBrain (auth + database/session backend).
Can BotBrain run in simulation (Isaac Sim)?
Simulation status: not supported out-of-box; how to adapt by swapping hardware nodes/topics.
Where are the official BotBrain Docker images?
Where BotBrain images live on Docker Hub and how the installer pulls them.
Does the installer install ROS2 natively on the Jetson?
Installer runs BotBrain in Docker (not native ROS2); dev options for customization.
Which robot models are supported?
Which Unitree robots are supported and why Go2 Pro consumer isn’t.
Hardware
XT-30 connector is hard to plug into the Go2 back panel
XT-30 is tight—remove/loosen back plate to plug it in safely.
Where to find BotBrain electrical schematics and CAD models
GitHub link to wiring, schematics, BOM, and CAD/STL files.
My Jetson kit has two Wi‑Fi antennas — where does the second go?
Install both antennas; route them to the enclosure side pocket.
Recommended slicer settings for printing the BotBrain enclosure (PLA/PETG)
Recommended print settings for strength (≥30% infill, gyroid/cubic, 0.2mm).
Is the BotBrain hardware design open-source, and where are the CAD files?
Yes, hardware is open-source; where to find the CAD/STLs on GitHub.
What payload attachment system does BotBrain Pro use?
How Pro’s quick-release payload connector enables tool-less module swapping.
Where to buy the screws and washers for BotBrain assembly
What fasteners you need (M3 tapping screws + washers) and where to source them.
Best 3D printing orientation for the Go2 mechanical interface
Best print orientation/supports for strength on the Go2 mechanical interface part.
Which DC-DC converter should I use for the Jetson Orin Nano?
Recommended specs for a DC-DC buck converter to power Jetson from Go2 battery.
How does BotBrain draw power from the Unitree Go2?
How BotBrain draws power via XT-30 from Go2; tip for tight connector clearance.
I added cameras after install — do I need to reinstall?
No reinstall needed—update camera_config.yaml then rebuild to add new cameras.
Can I run BotBrain on a Jetson AGX Orin?
AGX Orin compatibility notes; ensure sensors are connected to the compute you run on.
Can I use a Jetson Orin NX instead of an Orin Nano?
Orin NX works in software; enclosure/CAD may need changes for physical fit.
Can BotBrain run on the Go2 EDU’s internal Jetson Nano?
How to run on Go2 EDU internal Jetson Nano (branch + Wi‑Fi dongle requirement).
Hardware requirements for BotBrain (open source)
Minimum hardware needed (Orin Nano + RealSense) and notes on Wi‑Fi/docking station.