BugBot¶
BugBot is a compact robot built for learning, prototyping, and classroom use.
- Omnidirectional drive — the robot can move in any direction without turning first
- Computer vision — the robot can see and identify objects around it
- Depth sensing — the robot can sense the surrounding space to build a map and avoid obstacles
- Motion tracking — know where the robot has been and where it is now
- Wireless — control the robot from your PC with no cables
All controllable from Python with a few lines of code.
from bugbot import Robot
with Robot(0) as bot:
bot.led("green")
bot.forward(50) # drive forward at 50% speed
import time; time.sleep(2)
bot.stop()
-
Getting Started
Install the library, pair your robot, and run your first program in about ten minutes.
-
Lessons
Self-guided coding activities — run the code, see what happens, then tackle the challenges.
-
Hardware
Components, pin assignments, I2C bus, sensors, and memory layout.
-
Python Library
Full API reference for the
RobotandDongleclasses, motion commands, sensors, and exceptions. -
Protocol
ESP-NOW wire protocol, COBS framing, packet formats, and firmware internals.
What's inside the box¶
| Drive | 4× DC motors via TB6612FNG drivers |
| Depth | VL53L5CX 8 × 8 ToF, 30 Hz, up to ~4 m |
| Vision | OV5640 camera with AprilTag detection for absolute position |
| IMU | BMI270 (primary) + BNO055 (9-axis), 200 Hz odometry |
| Optical flow | PMW3360 motion sensor breakout |
| Wireless | ESP-NOW over 2.4 GHz, via BugBot USB dongle |
| CPU | XIAO ESP32-S3 Sense — 240 MHz, 8 MB Flash, 8 MB PSRAM |