Alpha

Drive your robot from any browser.

An open control panel for robots. Pair a robot with one pasted command, then drive it with a touch joystick, the keyboard or a gamepad. Every command passes one gate, with roles, limits and an emergency stop that only you clear.

Alpha. A paired robot sends its camera over WebRTC to OpenRestream and the panel plays it live; the first supported kit is the Adeept 4WD Smart Car for Raspberry Pi.

On the robot's computer

$ curl -fsSL https://openvibe.bot/install | sh
  1. It finds the kit and shows a short code.
  2. Approve the code at openvibe.bot/link.
  3. Open the robot's panel and drive.

Raspberry Pi OS or any Linux. A blank microSD card? Make its setup files, no screen needed.

Drive one now

Browse robots
  • Online

    Simulated rover

    Camera, range finder, line sensors, lights, horn

    Anyone, no account

Robots it drives today

All 10 models
  • SimulatedA differential-drive rover in a small arena, simulated by OpenVibe.Bot (or in your browser at /try).

    Simulated rover

    Drives · Live camera · Range finder

  • A phoneAny phone as a robot's eyes, voice and face, from its browser with nothing to install.

    A phone

    Live camera · Speaks · Horn

  • BridgeAnki Cozmo over PyCozmo.

    Cozmo

    Drives · Head · Lift

  • BridgeLOOI, the tracked desk robot that uses a phone as its face.

    LOOI desktop robot

    Drives · Head · Battery

  • Server-sideA bare ONVIF PTZ camera, no motion.

    ONVIF camera

    Pan, tilt, zoom · Live camera

  • On-boardAny ROS 2 robot that drives on cmd_vel (geometry_msgs/Twist).

    ROS 2 robot

    Drives · Live camera · Range finder

  • On-boardA ROS 2 robot with mecanum or omni wheels that moves in any direction on cmd_vel (linear x and y, angular z).

    ROS 2 robot (mecanum or omni)

    Drives any direction · Live camera · Range finder

  • On-boardA robot with no hardware of its own.

    Generic relay

    Your own buttons

Each has a profile the panel draws its controls from: a joystick for a base that drives, sliders for a pan-tilt head, buttons for lights and a horn.

Five ways to connect, one panel

However a robot reaches OpenVibe, it gets the same panel, the same gate and the same emergency stop.

Online in a minute

3 items

Online in a minute

The robot connects out to OpenVibe, so there are no ports to open on your router and no stock control server left exposed.

  1. Run one command on the robotPaste the installer line on its Raspberry Pi or Linux computer. It installs the OpenVibe Node, finds the kit and shows a short code.
  2. Approve itSign in at openvibe.bot/link and enter the code. The robot's credential is stored hashed, and you can revoke it any time.
  3. Drive itOpen the robot's panel in any browser, phone included. Share it, list it, or bind it to your OpenVibe.Live channel.

More on OpenVibe.Bot

6 questions

More on OpenVibe.Bot

What the panel does · controls, safety, sharing
Let it run without you · routines, webhooks, your agent
Your computers, for your agents and your AI · the same Node
The same robot from your own code · REST and the SDK

A REST API and the openvibe-sdk client, held to the same roles, limits and emergency stop as the panel. Profiles and kits are public reads.

JavaScript (openvibe-sdk)
import { createClient } from 'openvibe-sdk/core';
import { createBotClient } from 'openvibe-sdk/bot';

const bot = createBotClient(createClient({ credentials: 'include' }));
const { robots } = await bot.robots.list();

// Half speed ahead for 300 ms, same gate as the joystick
await bot.robots.command(robots[0].id, {
    kind: 'drive', value: { throttle: 0.5, steer: 0 }, ms: 300,
});
Public reads (curl)
# Every robot model and its controls
curl https://openvibe.bot/api/v1/profiles

# The kits, with their parts lists
curl https://openvibe.bot/api/v1/kits
The first kit: Adeept ADR036 4WD Smart Car Kit for Raspberry Pi · 13 parts

What to get for the robot OpenVibe.Bot was built around. The OpenVibe Node drives its Robot HAT directly, publishes the Pi camera and stops the motors the moment commands stop.

  • 1×Adeept ADR036 4WD Smart Car Kit (acrylic chassis and hardware)Adeept's tutorial download page is the build guide
  • 1×Adeept Robot HAT (PCA9685 motor/servo driver, ADS7830 battery ADC)Comes with the kit; also charges the 18650 pack over USB-C
  • 4×TT DC motors
  • 4×Wheels
  • 2×AD002 pan/tilt servos
  • 1×Raspberry Pi camera module
  • 1×Ultrasonic range sensor
  • 1×Line-tracking module
  • 1×WS2812 RGB LED module
  • 1×BuzzerOn the Robot HAT
  • 1×Raspberry Pi 4B or 5 (2 GB or more)Not included in the Adeept kit
  • 1×microSD card, 16 GB or moreRaspberry Pi OS Bookworm, 64-bit
  • 2×18650 Li-ion cellsThe Robot HAT charges the pack over USB-C

Adeept's build guide Its model page Setup guide for the Node

Build for OpenVibe.Bot · drivers, profiles, the source

Robotics jobs on OpenVibe.Work

3 items

Robotics jobs on OpenVibe.Work

More jobs

Questions

10 questions

Questions

Do I need to open ports on my router?

No. The robot's computer connects out to OpenVibe, so it works behind an ordinary home or mobile connection. The Adeept kit's own control server, with its fixed password, is never run.

Can I try it without a robot?

Yes. The simulated rover at openvibe.bot/try runs in your browser with no account and no hardware, through the same panel a paired robot gets.

Which robots work today?

Simulated rover, A phone, Adeept ADR036 4WD Smart Car, Adeept ADR036 4WD Smart Car (mecanum), Cozmo, LOOI desktop robot, ONVIF camera, ROS 2 robot, ROS 2 robot (mecanum or omni) and Generic relay. Each has a profile the panel draws its controls from, and anything a local script can switch works through the relay robot.

How does it keep the robot safe?

Every command passes one gate with roles, per-robot limits, cooldowns and a turn budget. The emergency stop is latched until the owner clears it, a stop pressed on the robot holds until it is released there, and the device stops its motors by itself when commands stop arriving.

Can other people drive my robot?

Only if you say so. Add people by @username as operators or viewers, or open a queue where signed-in visitors take timed turns. Listing a robot in the directory lets anyone watch it.

Can I show it on my stream?

Yes. Bind the robot to your OpenVibe.Live channel and its panel shows under your stream, where anyone you allow can take the controls.

Can my AI agent drive it?

Only when you turn on Your agent for that robot. Then your OpenVibe.Actor agent can read its state and run steps as you, through the same gate, and for nobody else.

Can my agents use my computer?

Only if you install the OpenVibe Node there and say so. Each agent task gets a desk of its own, a browser or a whole screen, that you can watch and take over, at the level you set on the computer, with a kill switch there. A spare computer can host the desks instead.

Can my AI use the models on my computer?

Yes. Install the Node with --ai where Ollama, LM Studio or llama.cpp runs and turn on "Let my AI use this computer's models": your Vibe, your AI members and your stream's AI viewers can then think with them, free, and only for you.

Is it open source?

Yes. OpenVibe.Bot and the OpenVibe Node that runs on the robot are on GitHub under the AGPL-3.0, and anyone can write a driver or submit a robot profile.

Part of OpenVibe

3 items

Part of OpenVibe

One account across every OpenVibe site. Related places to go next: