Getting started with BotBrain Pro

From unbox to first teleop for BotBrain Pro units, including Fleet adopt and Global Data Relay.

Welcome to BotBrain Pro, BotBot's enterprise robotics brain for ROS 2 robots. This guide takes you from an unboxed Pro unit to a first successful connection and basic teleoperation.

If you are evaluating the free tier instead, see the BotBrain Open Source collection and the public GitHub project. Pro and Open Source share the same control concepts; Pro adds factory provisioning, Global Data Relay, enterprise connectivity, and priority onboarding.

Support: Pro customers: support@botbotrobotics.com

What you need

Hardware

  • A BotBrain Pro unit (currently NVIDIA Jetson AGX Orin in the Pro enclosure; Jetson Thor planned for a future generation)
  • A supported robot chassis with ROS 2 secondary-development / SDK access. Models you can pick in the adopt wizard today:
    • Unitree Go2
    • Unitree Go2-W
    • Unitree G1
    • Booster K1
    • Other chassis may be available through your BotBot onboarding package (custom integrations)
  • Power for both chassis and BotBrain (Pro power input range on the product sheet: about 20-60 V; follow the harness that shipped with your unit)
  • Network path for first setup: site Wi-Fi the robot can join, or guidance from your BotBot onboarding engineer for cellular-first sites

Accounts and materials

  • A BotBrain operator account (your BotBot onboarding contact creates or invites you)
  • The serial number printed on the BotBrain Pro label (format like BB-YYYY-NNNN)
  • Site Wi-Fi SSID and password (2.4/5 GHz as approved for your deployment)
  • Optional: gamepad (Xbox-style) for teleoperation

Safety before you move anything

  1. Clear a flat, obstacle-free area.
  1. Keep an emergency stop path (UI E-Stop and physical robot E-Stop / damper if present).
  1. Confirm people and pets are clear of the workspace.
  1. Prefer a soft floor or mats for first walk tests on quadrupeds.

Step 1. Unbox and power up

  1. Mount BotBrain Pro on the chassis using the interface that shipped with your unit. Do not force connectors; XT-style power plugs can be tight on some robots.
  1. Connect the robot Ethernet / data link to the BotBrain robot_interface port (your onboarding sheet names the NIC; common default in config is eth1).
  1. Attach antennas (cellular / Wi-Fi / GNSS as equipped) before long outdoor runs.
  1. Power the robot, then confirm BotBrain LEDs show life.
  1. First boot behavior: if the unit is not yet provisioned, it enters setup / onboarding mode (camera ready to scan a Wi-Fi QR). If it was already provisioned at the factory or by BotBot field eng, setup is skipped and normal bringup starts.
💡

LED patterns for "waiting for QR" versus "online" will be documented here once confirmed with hardware. Do not rely on an unofficial color legend until this callout is updated.

Step 2. Sign in to BotBrain

  1. Open the BotBrain Pro web app: https://web.botbot.bot (or the URL in your welcome email).
  1. Sign in with the account BotBot invited.
  1. Open Fleet in the nav (route /fleet). You can also reach Fleet from the dashboard Add Your First Robot / Manage Fleet cards.
Sign-in
Sign-in

Cloud Pro uses BotBot authentication. Org roles (admin / operator and can_control) decide who can drive vs who can only monitor.

Step 3. Adopt the robot (Pro happy path)

Adoption is Pro-only. It binds the serial on the device to your BotBrain account, lets you pick the chassis type, and provisions Wi-Fi plus Global Data Relay.

3.1 Open the add chooser

  1. On Fleet, click Add Robot (header + or empty-state button).
  1. Pro shows a chooser:
      • BotBot robot (Remote) - managed adoption + Global Data Relay (use this for shipped Pro units).
      • Local network (Direct IP) - classic LAN ws://…:9090 row (lab / OSS-style). Skip for normal Pro unboxing.
Fleet page with Add Robot
Fleet page with Add Robot
Add a robot: BotBot robot (Remote) vs Local network
Add a robot: BotBot robot (Remote) vs Local network

3.2 Serial and robot type

  1. Enter the serial number from the BotBrain label (placeholder style BB-2607-0010).
  1. Select robot type (required). The Brain is chassis-agnostic at the factory; only you know what it is mounted on. Current wizard list:
      • Unitree Go2 (go2)
      • Unitree Go2-W (go2w)
      • Unitree G1 (g1)
      • Booster K1 (k1)
  1. Optionally set a display name.
  1. Click Continue.
Adopt a BotBot robot: serial, robot type, optional name
Adopt a BotBot robot: serial, robot type, optional name

3.3 Wi-Fi (stays on your device)

  1. Enter the site SSID and password.
  1. These values never leave the browser except inside the QR pixels. They are not stored on BotBot servers.
  1. Click Generate QR code.
Wi-Fi step: SSID and password stay on this device for the QR only
Wi-Fi step: SSID and password stay on this device for the QR only

3.4 Show the QR to the robot

  1. Point the on-screen QR at the robot camera while the unit is in setup / waiting-for-QR mode.
  1. You can Download PNG (botbot-wifi-<serial>.png) or Regenerate if needed.
  1. The UI polls until cloud status is active. Leave this step open until it flips to success.
  1. On the robot: join Wi-Fi, provision, write relay secrets, then tunnel to proxy.botbot.bot.
QR code: hold in front of the camera; UI waits for the robot to come online
QR code: hold in front of the camera; UI waits for the robot to come online

3.5 Success and first connect

  1. After status becomes active, use Connect to my robot if the success screen is shown. If that screen is skipped, select the robot in Fleet and connect from there.
  1. Managed address is fixed from the serial (you do not type an IP):
    1. wss://<serial-lowercase>.proxy.botbot.bot:443/

Finish setup / Reconfigure Wi-Fi

  • If a managed card shows Finish setup, open it to resume the same wizard (serial locked, type editable).
  • Reconfigure Wi-Fi on a ready managed robot regenerates a QR; the robot goes offline until it scans the new code.

If adoption fails

  • Match the serial to the label carefully.
  • Clean camera; keep the QR bright, full frame, not mirrored on a second display.
  • Confirm Wi-Fi password and outbound HTTPS / relay path from your onboarding sheet.
  • Rate limit: about 10 attempts per hour per user and per serial.

Step 4. Connect (after adoption)

Managed Pro robot (Global Data Relay)

  1. From the success button, or select the robot in Fleet and connect.
  1. The app mints a short-lived WebSocket token and opens the serial-based wss:// URL above.
  1. Wait for Connected plus live telemetry (battery, cameras, or robot status).

Lab / local LAN (optional)

Use Local network when adding a robot for same-subnet work:

  • Rosbridge: ws://<jetson-or-robot-ip>:9090
  • Onboard web UI if present: http://<ip>:3000

Use the Jetson's site Wi-Fi / LAN IP, not the private Ethernet link between Jetson and chassis (often a 192.168.123.x-style Unitree link).

Step 5. First successful drive

  1. Open the robot cockpit / control view.
  1. Confirm cameras or 3D view update (proves the WebSocket path is live).
  1. For Unitree-class quadrupeds, use the action sequence your profile expects, typically:
      • Get Up (or Stand)
      • Unlock (velocity commands stay locked until unlock)
  1. Select a low speed.
  1. Drive with:
      • On-screen joystick, or
      • Keyboard (WASD / arrows), or
      • Gamepad left stick
  1. Press Emergency Stop once in a safe place to verify it works, then recover per your robot profile.

Motion commands are published through rosbridge into twist_mux, which arbitrates joystick, touch, and autonomy sources so they do not fight each other.

Step 6. Sanity checks after first connect

Check
Healthy sign
Connection badge
Connected, not stuck on Connecting
Battery / robot status
Numbers update, not frozen
Camera
Stream starts within a few seconds
Relay
Managed robots stay reachable off-site Wi-Fi (cafe / office VPN-free browser)
Containers (on-robot SSH, support only)
docker compose ps shows bringup, rosbridge, state_machine, and related services running

Useful host services on a Pro image (support / field eng):

  • botbrain_setup.service - one-shot onboarding
  • botbrain_bringup.service - Docker service manager after setup
  • ws-auth-proxy.service - :9191 → rosbridge :9090
  • frp.service - Global Data Relay client

Next steps

  • Maps and navigation: build or load a map, set initial pose ("Home"), then send a Nav2 goal.
  • Missions and block programming: Pro UI flows for multi-step behaviors.
  • Payloads: CamCam, ZoomZoom, delivery, and other modules use the Pro quick-release connector. Hot-swap guidance ships with each payload.
  • Fleet: add more serials the same way; mixed chassis share one dashboard.
  • Offline ops: Pro runs completely offline for AI, navigation, and missions; logs and recordings sync when connectivity returns.

Related reading

  • Open Source troubleshooting patterns (DDS, Fleet URLs, RealSense): OSS collection
Did this answer your question?
😞
😐
🤩

Last updated on September 26, 2026