Bubble
How it works

Pilot. Prove. Own.

Bubble Industries tokenizes real-world robot training data. You demonstrate manipulation skills to robots by piloting a simulated arm, the physics engine proves the demonstration is real, and the proof is minted to your wallet as an asset you own. Here is the whole loop, step by step.

01

Pick a task

12 missions, 2 robots

Twelve manipulation missions across two arms: a Franka Panda and a UFactory xArm7 straight from MuJoCo Menagerie, DeepMind's library of research robot models. Each task states its goal and what it pays: 50 points for closing a box, up to 150 for the hardest grasp-and-lift. Harder manipulation pays more.

Success is a physics condition

Every task defines its win as a condition on the simulated world (“the lid ends closed”, “the can ends above the pedestal”), never as a screenshot or a claim.

A legal starting envelope

Each task also defines where objects may start and requires the arm at rest, so a run can't begin half-done. The server enforces this before anything else.

02

Pilot the robot

MuJoCo in your browser

The whole simulator runs in your tab: MuJoCo, the physics engine used across robotics research, compiled to WebAssembly. You do not install anything and you do not need a GPU. The keyboard drives the gripper through inverse kinematics.

The controls

Arrow keys translate the gripper, E and D raise and lower it, Q/W/A/S/Z/X rotate the wrist, Space opens and closes the fingers.

Everything is recorded

While you pilot, the browser logs your exact control input at every physics step. That log is the demonstration you submit. Not a video, not a score.

03

Physics verifies

Bit-for-bit replay

Your submission carries the initial state, the full control log, and the final state you claim. The server trusts none of them. It replays your log in the same MuJoCo binary your browser ran, then compares.

Admission control

Before any replay, the claimed initial state must sit inside the task's legal envelope. Claim the box began closed, or hand the arm free momentum, and the run is rejected before the physics even runs.

Zero tolerance

The simulator is deterministic, so an honest run reproduces exactly. The accepted difference is zero, on every coordinate. One bit off and the run is rejected, with the first divergent step named.

Fast

A five-minute episode is thousands of physics steps; the server re-simulates them in about a second before deciding.

Judged on the server's state

The success checker runs on the state the server computed, never on your claim. The verdict is PAY or REJECT, and nothing in between.

04

Own your data

One transaction

A proven run ends in a single transaction on the BubbleData contract, on BNB Smart Chain mainnet. You keep the proof, the ledger keeps the score.

A Data ID NFT, minted to you

The trajectory is hashed and that hash becomes the tokenId of an ERC-721 minted straight into your wallet. It transfers like any other token.

Metadata fully onchain

The contract builds the metadata itself and serves it as a base64 data URI, so there is no IPFS pin or external host that can go offline.

Airdrop points

The same transaction credits your points, weighted by difficulty. Points will weight a future token distribution (Phase 3 of the roadmap).

Free for the pilot

Piloting is free and the operator pays the BNB gas for the mint. You connect a wallet because the run is minted to you, not to an account we hold.

05

Check it yourself

The ledger is public state

Nothing above asks you to trust a dashboard. The counters on this site are live reads of the contract, and the same functions are one call away from any terminal:

cast call $BUBBLE_DATA_ADDR \
  "points(address)(uint256)" YOUR_WALLET \
  --rpc-url https://bsc-dataseed.bnbchain.org

demoCount, totalDemos and totalPoints work the same way. Contract: mainnet deployment in progress

What we don't claim

Stated plainly

The physics check proves the trajectory is real, not that a human produced it. Per-wallet rate limits and movement analysis are on the roadmap. The verification server is the only mint authority in this version: physics decides, the operator submits the transaction. The points ledger accrues on mainnet today, and the distribution it weights comes later.

Five minutes to your first Data ID.

Pick a mission, fly the arm, hit Verify. Prefer the deep technical dive? Read the docs →

Browse tasks →
Bubble Industries · Built on BNB Smart Chain