TEAM BETA GO · PHYSICAL AI

Twenty million people play chess daily — but we've reduced humanity's richest game to clicking squares on a screen.

Bring your favorite opponent
to the other side of your board.

Your friend from across the country. The world's top engines.

Your favorite chess set. A real opponent. No screens. No clicks.
scroll to begin
THE GAP

Chess engines have been world-class for thirty years.
Your wooden board has none of them.

BetaGo closes that gap.

THE ROBOT

A 6-DOF arm.
A camera. A board.

The reBot DevArm — Damiao motors over USB-CAN, a parallel gripper, and an overhead camera watching the board. That's the entire physical setup.

The arm is the same one rendered live in the UI. The URDF that drives the on-screen 3D twin is the URDF we use for inverse kinematics — one source of truth.

DOF
6 + gripper
Bus
USB-CAN
Vision
Overhead VLM
Engine
Stockfish 18
reBot DevArm with overhead camera mounted above a wooden chessboard. LIVE · BOARD CAM + ARM
THE INTERFACE

The board is the hero.

Everything else orbits it. Eval bar on the left, Lichess-style. Multi-PV arrows on the squares — emerald for the engine's pick, lime for the runners-up. A Decision Trace strip below ranks the top five.

BetaGo UI — board with multi-PV arrows, decision trace, two arm consoles and a board camera.
01

Player cards · Human ↔ AI

Toggle either side between human and AI, pick a model (here Claude Opus 4.7 on both), watch eval / depth / PV stream live. State badges — THINKING, HANDS-ON, YOUR TURN — make ownership unmistakable.

02

Live 3D arm twins

Each side has a floating console rendering the URDF arm, mirroring the physical robot's joints in real time.

03

Replay & board cam

A floating console docks the overhead camera (RAW / FEN / DIFF overlays) in live play, or run.mp4 with the stage timeline in Replay mode.

04

Coach bar

Quick chips — hint, explain that move, take it back, reset — plus a free-text prompt for the coach.

UNDER THE HOOD

Three containers, one chess game.

Each layer is independent and replaceable. The planner is a state reconciler between three sources of truth — the engine's bestmove, the camera's observed FEN, and the arm's actual execution.

:8001 · FastAPI

hardware

Wraps the physical arm. Speaks Damiao motor protocol over USB-CAN. Exposes simple primitives — move_arm, grip, release, home.
PythonmotorbridgeUSB-CAN
REST + WS
:8002 · FastAPI + WS

planner

The brain. Stockfish via UCI. VLM reads the board. LLM agent recovers errors. Streams every event to the UI.
Stockfish 18python-chessVLMWebSocket
WS · /ws
:3000 · Next.js 14

ui

The window. Renders the board, arm twins, board cam, eval bar, decision trace. No direct hardware access — everything routes through the planner.
Next.jsThree.jschess.jsTailwind
UCI loop
position fen → bestmove

Standard chess engine protocol — swap Stockfish for Lc0, Komodo, anything that speaks UCI.

Vision loop
frame → VLM → FEN

Overhead camera frames go to a VLM that returns the observed FEN. Authoritative for human moves.

Arm loop
uci move → pick · place

UCI move resolves to source/dest squares, IK plans the trajectory, the arm executes and verifies.

FEEDING THE POLICY

300 episodes,
teleoperated by hand.

A Star Arm 102-LD leader drives the B601-DM follower while two cameras and seven joints log every frame. Each clip is one isolated pick-and-place — 50 episodes per piece type, split white / black — pushed straight to a private Hugging Face dataset for Pi0 fine-tuning.

Episodes
~300
Per piece
50
Cameras
front · side
Rig
leader → follower
Format
LeRobot
Sink
HF Hub
REC · LEROBOT
BEFORE THE HARDWARE

Every move, simulated first.

The same URDF that drives the on-screen arm twin powers a full PyBullet simulator. The planner ships every trajectory through sim first — collision-checked, joint-limit-clamped — before a single Damiao motor turns.

Engine
PyBullet
Source
Shared URDF
Checks
IK · collisions · limits
Headless
CI-runnable
SIM · PYBULLET
SEE IT MOVE

The arm, in the real world.

Captured straight from the workshop: the reBot DevArm picking and placing a piece while the planner watches the board.

THE PHYSICAL MOVE

Ten phases.
One coordinated motion.

The planner walks the arm through ten phases in sequence — the same ladder rendered on the UI. Vision verifies the piece actually landed before the digital board commits.

OBSERVE

Camera pulls a fresh frame; the arm holds rest pose.

♙
e2 → e4
WHAT TO REMEMBER

Three things to leave with.

01

Standard interfaces, swappable layers.

UCI for the engine, REST + WebSocket between containers, URDF shared between sim and hardware. Every layer can be replaced without touching the others.

02

The UI never lies about the robot.

Joint stream, arm-stage events, vision-verified completions. The on-screen arm reflects what the physical arm actually did, not what we hoped it would do.

03

Three sources of truth, one reconciler.

Engine bestmove, observed FEN, arm execution. The planner mediates. The LLM only enters when the three disagree.

Chess that thinks, with a body that moves.

Built in two days at the Physical AI Hackathon · May 9–10, 2026.

— end of demo —