MCPcopy Create free account
hub / github.com/PetoiCamp/OpenCatEsp32-Quadruped-Robot

github.com/PetoiCamp/OpenCatEsp32-Quadruped-Robot @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
1,326 symbols 2,754 edges 134 files ⚖ MIT 409 documented · 31% updated 9d ago★ 2805 open issues

Browse by type

Functions 1,255 Types & classes 71
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

OpenCatESP32 — OpenCat Framework on ESP32/BiBoard

🚀 Quaddle — Petoi's newest OpenCat-lineage quadruped — launches on Kickstarter August 2026. Reserve your spot → (details below)

OpenCatESP32 runs the OpenCat quadruped robotics framework on BiBoard — an ESP32-based development board designed for multi-degree-of-freedom legged robots with up to 12 servos. Developed by Petoi, the maker of futuristic programmable robotic pets.

This is the codebase for current-generation Petoi hardware. If you're on the older NyBoard (ATmega328P), see the main OpenCat repo.

BittleESP32

BittleGap

Click either GIF to watch the demo.


Coming Soon: Quaddle mini robot dog

Quaddle is Petoi's newest quadruped, launching on Kickstarter August 2026 — a mini desk robot built on the same OpenCat lineage as Bittle and Nybble. What makes it worth a look: it's a full quadruped running on just 4 servos instead of the usual 8–12, which forces genuinely different gait-design and leg-coordination solutions to still get all four legs walking, running, and balancing. Its servos are also position-feedback — readable, not just drivable — which is what makes Puppet Mode possible: hand-guide the legs and record a motion directly, no code required to capture a new behavior. We'll also share 3D-printable shells and mounts for customization. Same open platform this repo already supports for gait research, RL, and sim2real work — a hands-on physical AI platform, not a toy version of the idea.

Source code is not yet public. It's an upgraded version of the OpenCat project, and its ESP32-S3 code structure is closer to this repo than to the main NyBoard-based OpenCat repo. We plan to open source it before Quaddle delivery. Watch this repo and r/petoi for the announcement, or reserve a spot to get notified at launch.


About the Project

Inspired by Boston Dynamics' Spot, Dr. Rongzhong Li started OpenCat in his dorm at Wake Forest University in 2016. The goal was straightforward: make agile quadruped robots affordable and hackable enough for researchers, educators, and makers — not just well-funded labs.

Since then: - 30,000+ robots shipped, cumulative across all channels - 60+ countries - $1M+ raised across two prior Kickstarter and Indiegogo campaigns - 20+ academic papers cite the platform — see Research Spotlight - One of the most-starred open-source quadruped robot projects on GitHub


Hardware

BiBoard is the control board for:

The older Bittle and Nybble (NyBoard) are discontinued. BiBoard is the current platform.


Why BiBoard Over NyBoard?

The ATmega328P (NyBoard) gets the job done for locomotion. BiBoard is for when your robotics programming needs more headroom:

  • ESP32 dual-core @ 240 MHz — handle real-time servo coordination and a perception pipeline simultaneously
  • Wi-Fi + Bluetooth built in — wireless control and data streaming without a dongle
  • Up to 12 servos — full 12-DOF configurations
  • Arduino IDE compatible — same workflow, more horsepower
  • Open source — hardware and software both forkable

If you're building an open source robot dog for research, running ROS, deploying a vision model, or just want room to experiment — BiBoard is the right foundation.


Board Configuration

Arduino IDE settings (ESP32 Dev Module):

Setting Value
Upload Speed 921600
CPU Frequency 240 MHz (WiFi/BT)
Flash Frequency 80 MHz
Flash Mode QIO
Flash Size 4 MB
Partition Scheme Default 4MB with spiffs
Core Debug Level None
PSRAM Disabled

Full setup: Upload Sketch for BiBoard


What People Have Built

Academic and research use: Research Spotlight


Education

OpenCat shows up in AI robotics education across K-12 programs, community colleges, university labs, and maker spaces — hands-on physical AI teaching that goes beyond screen-based coding exercises:


Community & Discussion

  • r/OpenCat — firmware code, framework hacking, extending and porting OpenCat
  • r/Petoi — hardware Q&A, builds, quadruped coding, curriculum, 3D-printed parts, general discussion

Resources

Follow the project: YouTube · Twitter · Instagram · Facebook · LinkedIn

Core symbols most depended-on inside this repo

browse all functions →

Shape

Method 837
Function 418
Class 63
Enum 8

Languages

C++88%
C7%
TypeScript5%

Modules by API surface

src/mpu6050/src/MPU6050.cpp272 symbols
src/icm42670/inv_imu_driver.c55 symbols
src/mpu6050/src/I2Cdev.cpp54 symbols
src/Seeed_Arduino_SSCMA/src/Seeed_Arduino_SSCMA.cpp32 symbols
src/gesture9960/Arduino_APDS9960.cpp30 symbols
ModuleTests/testGesture/src/Arduino_APDS9960.cpp30 symbols
src/configConstants.h28 symbols
src/icm42670/ICM42670P.cpp27 symbols
src/PetoiESP32Servo/ESP32PWM.cpp23 symbols
ModuleTests/testServo/testESP32ServoCalibrated/ESP32PWM.cpp23 symbols
ModuleTests/testServo/genericServoTest/temp/PetoiESP32Servo/ESP32PWM.cpp23 symbols
src/mpu6050/src/helper_3dmath.h21 symbols

For agents

$ claude mcp add OpenCatEsp32-Quadruped-Robot \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page