One ESP32, Three Open-Source Quadruped Robot Dogs Compared

Summary of ESP32 quadruped robot project resources

Key Takeaways

  • Three mature open-source quadrupeds run on a single ESP32 each: OpenCatEsp32 (Petoi), ESP-Hi (Espressif), and WAVEGO Pro (Waveshare).
  • OpenCatEsp32 is the most-starred project of the three, backed by 30,000+ units shipped across 60+ countries and cited in 20+ academic papers.
  • ESP-Hi is the budget entry at roughly 49.9 RMB in parts, and it talks – voice dialogue, wake word, and 12 preset actions including a backflip.
  • WAVEGO Pro is the performance ceiling: 12 DOF with SC09 bus servos, an ESP32 handling gait and a Raspberry Pi 5 or 4B running OpenCV vision.
  • Hardware, firmware, STL files, wiring diagrams, and BOMs are all open for every one of the three.

A single ESP32 can do more than blink an LED, join Wi-Fi, read a sensor, or drive a small display. It can drive a quadruped robot dog. The open-source community has already paved the road: one chip, three projects. Hardware, code, STL files, wiring diagrams, and BOMs are all open, and the three projects differ sharply in style – from a low-cost starter to a high-performance build. Here they are in order of positioning and difficulty.

Cover image of three open-source ESP32 quadruped robot dog projects

Project Comparison

All three share the same brain, an ESP32, but they target very different builders. The table below sets out where each one sits before we dig into the hardware.

Comparison table of OpenCatEsp32, ESP-Hi, and WAVEGO Pro

Project Main controller Degrees of freedom Servos Distinguishing feature
OpenCatEsp32 BiBoard (ESP32 dual-core @240 MHz, 16 MB flash) Up to 12 DOF Up to 12 PWM Most mature ecosystem; gait engine plus inverse kinematics
ESP-Hi ESP32-C3-MINI-1-N4 4 DOF 4x SG92R (180 degree) Voice AI interaction; roughly 49.9 RMB in parts
WAVEGO Pro ESP32 plus Raspberry Pi 5 / 4B 12 DOF 12x SC09 bus servos OpenCV vision, WebRTC video streaming, 2.3 kg.cm rated torque

OpenCatEsp32

OpenCatEsp32 quadruped robot dog from Petoi

If you only plan to study one open-source quadruped seriously, this is the one. Maintained officially by Petoi, its robot dog line has shipped more than 30,000 units to over 60 countries, and the work has been cited in more than 20 academic papers.

It is the most-starred and most popular open-source quadruped project on GitHub. From the gait engine to inverse kinematics, from servo calibration to IMU balancing, the entire technology stack has been validated at scale.

OpenCatEsp32 BiBoard controller and servo layout

Hardware. The main controller is a BiBoard (ESP32 dual-core at 240 MHz, 16 MB flash) with Wi-Fi and Bluetooth, supporting up to 12 PWM servo channels. Servos run to 12 PWM units supporting a 12-DOF configuration. Compatible products include the Bittle X mini robot dog with AI kit and the Nybble Q mini robot cat. The development environment is Arduino IDE compatible – an ESP32 Dev Module is enough.

Software. An OpenCat gait engine with inverse kinematics supports forward, backward, turning, and standing gaits. An internal gait finite state machine (FSM) manages switching and phasing between gaits. An IMU provides real-time balance control, and the balancing algorithm stays active in most postures.

Servo calibration. After entering the board configuration mode, type “c” in the serial monitor to calibrate joints; the program reads the calibration posture and rotates the servos to known positions. Visual calibration through the Petoi phone app is also supported.

What to know before replicating. Official firmware is tightly bound to the BiBoard servo mapping, so a generic ESP32 development board cannot simply flash the same image – pin and servo mapping have to be ported. Servo drive can use the BiBoard’s onboard headers or an external PCA9685 over I2C (SDA to GPIO21, SCL to GPIO22); the classic ESP32 LEDC supports up to 16 PWM channels, so anything at or below 12 DOF can run without a driver board. Calibrate servo centers before assembling the leg structure, and give the servos an independent supply that shares ground with the controller so servo motion does not sag the controller’s rail. Get the official Bittle or Nybble configuration running first before changing DOF or structure.

ESP-Hi

ESP-Hi low-cost AI voice quadruped robot dog from Espressif

For roughly 49.9 RMB in parts you can build a robot dog that talks, understands commands, and does a backflip. The Espressif team released both hardware and software as open source, and there is a from-scratch replication tutorial on OSHWHub. If your budget is limited but you want to try AI voice interaction, this is currently the lowest barrier to entry.

ESP-Hi hardware modules including LCD, microphone, and ServoDogBoard

The brain (main control module). The main controller is an ESP32-C3-MINI-1-N4 with a 0.96-inch color LCD. Audio runs through an 8 ohm 1 W speaker, a 4×1.5 mm microphone, and an optional external wake chip (ATW380). Power comes over USB Type-C through an RT9013 regulator down to 3.3 V, with a separate power rail isolating the microphone from the MCU supply to reduce Wi-Fi interference on audio pickup. Pickup uses an electret capsule with a transimpedance amplifier, filtered into the ESP32-C3 ADC input (0 to 1 V range). Output is a direct I2S-PDM signal in differential mode to avoid Wi-Fi interference, RC-filtered and amplified 7.2x by an NS4150B audio amplifier.

The body (robot dog base). A ServoDogBoard PCB plus four 3D-printed parts, a 702040 500 mAh lithium-ion battery, and four 180-degree SG92R servos. Servos are powered directly from the battery, while the base supply to the brain is boosted to 5 V so servo motion does not disturb the system. A small switch plus MOSFET circuit solves the bulk problem of a high-current toggle switch.

AI capability. It connects to the XiaoZhi AI large language model and supports voice dialogue with the wake word “Hi, Espressif.” A built-in mercury switch senses shake speed to trigger wake-up, interrupt conversation, or execute actions. It supports light control, robot dog control, and web control. Twelve preset actions include backing up, stretching, shaking hands, and pouncing. After network setup, visit esp-hi.local or 192.168.4.1 to level the servos and control forward, backward, left, and right motion.

What to know before replicating. The PCB is custom and needs to be fabricated at JLCPCB; onboard 0402 components and the ESP32-C3 surface-mount module make soldering fairly difficult, so a hot-air station and stencil are recommended. Four SG92R servos are enough, and the battery is a 702040 500 mAh unit – watch the dimensions and connector. Microphone and MCU supplies must be separated, otherwise the noise floor rises noticeably when Wi-Fi is active. Set up the network first, then visit esp-hi.local to level the servos; the mercury switch handles wake and interrupt, so do not install it upside down.

WAVEGO Pro

WAVEGO Pro 12-DOF quadruped robot with Raspberry Pi vision

Twelve joints, twelve bus servos with feedback, and a Raspberry Pi running OpenCV. It recognizes faces, tracks targets, streams video in real time, and plans its own motions. The ESP32 handles gait while the Raspberry Pi handles vision – two controllers, each doing its job.

WAVEGO Pro hardware configuration and bus servo arrangement

If “it walks” is not enough and you want to reach for AI vision and higher degrees of freedom, this is the performance ceiling among open-source robot dogs.

Hardware. Degrees of freedom: 12 DOF. Servos: twelve SC09 bus servos with 2.3 kg.cm rated torque supporting position, speed, and voltage feedback; peak stall torque reaches 5.2 kg.cm (stall is a momentary limit, not a continuous output). Control architecture: an ESP32 acts as the lower controller handling inverse kinematics and gait generation, while a Raspberry Pi (Pi 5 or Pi 4B) acts as the upper controller handling AI vision and strategy planning, communicating over GPIO UART with JSON commands. Sensors: a front camera, an ICM20948 nine-axis motion tracker, and RGB indicators. The ESP32 side runs a real-time operating system (RTOS) for inverse kinematics and gait generation, improving gait solving efficiency, with Arduino IDE support requiring no manual environment setup.

AI vision. Based on OpenCV and MediaPipe, it supports face detection, gesture recognition, color recognition, target tracking, and motion detection. It offers multithreaded CV processing, hotkey control, photo capture, and video recording, with WebRTC-based real-time video streaming and a cross-platform Flask web application.

Network and control. The Raspberry Pi automatically creates a hotspot on power-up (AP mode, default IP 192.168.50.5) or joins a known Wi-Fi network (STA mode). Browsing to [IP]:5000 opens the robot control web UI, and port 8888 opens JupyterLab. The default hotspot name is “AccessPopup” with password “1234567890”.

What to know before replicating. Bus servos with feedback are not interchangeable with ordinary PWM servos, so assign each servo an ID before assembly. The Raspberry Pi needs its own image and cooling, and a Pi 5 or Pi 4B with an adequate power supply is recommended. The ESP32 and Raspberry Pi communicate over UART JSON, so do not mix up baud rate or pins. For 12-DOF gait tuning, start from standing and single-leg motions.

Where to Find Everything

All three projects are fully open, including hardware, firmware, and mechanical files.

Project Repository Docs / product
OpenCatEsp32 github.com/PetoiCamp/OpenCatEsp32-Quadruped-Robot docs.petoi.com
OpenCat framework github.com/PetoiCamp/OpenCat petoi.com
ESP-Hi hardware oshwhub.com/esp-college/esp-hi szlcsc.com/info/15839.html
ESP-Hi software gitee.com/esp-friends/esp-hi github.com/esp-friends
XiaoZhi AI github.com/78/xiaozhi-esp32 –
WAVEGO Pro github.com/waveshareteam/WAVEGO_Pro waveshare.com/wiki/WAVEGO_Pro

General development resources. For ESP32 development: Arduino-ESP32 (github.com/espressif/arduino-esp32), ESP-IDF (github.com/espressif/esp-idf), PlatformIO (platformio.org), and the official Espressif documentation (docs.espressif.com). For servo drive: the Adafruit_PWMServoDriver library, the NXP PCA9685 datasheet, the ESP32 LEDC documentation, the Feetech bus servo SDK, and the Dynamixel SDK. For IMU and attitude: i2cdevlib for the MPU6050 DMP, the Mahony and Madgwick fusion library, and the SparkFun ICM-20948 driver. For inverse kinematics and gait: the OpenCat gait engine, PyBullet simulation, the CHAMP quadruped framework, and SpotMicro (search GitHub). For power and hardware: XL4005, TP5400, and MP1584 regulators from component suppliers, 2S and 14500 lithium batteries from hobby shops, and JLCPCB for 3D printing and PCB fabrication.

Summary of ESP32 quadruped robot project resources

Getting Started

The projects, code, and resources are all laid out. What remains is the part where you actually build.

A quadruped robot dog sounds complicated, but taken apart it is servos, a controller, and a set of gait logic. The open-source community has paved the hardest parts, so you do not need to derive inverse kinematics from scratch, and you do not need to understand every detail before it can stand up. Cloning an existing project and learning as you go is the fastest path.

Get your first self-built robot dog standing, and the rest gets much easier.

Disclaimer: this article is compiled from public sources for technical reference only and does not constitute a purchasing or operating recommendation. Project, code, and image rights belong to their original authors; follow the relevant open-source licenses. Replication involves electronic and mechanical work – assess the risks yourself, and the author assumes no liability.

Have questions about this article? Feel free to contact us at [email protected] — we’re happy to help!

Frequently Asked Questions

Can a single ESP32 really run a quadruped robot dog?

Yes. All three projects here use one ESP32 as the primary controller, handling gait generation and inverse kinematics. The ESP32’s dual-core 240 MHz clock and multiple PWM channels are sufficient for 4 to 12 servo joints.

Which ESP32 quadruped project should a beginner start with?

ESP-Hi has the lowest barrier, at roughly 49.9 RMB in parts with an official from-scratch tutorial. If you want the most mature ecosystem and documentation, OpenCatEsp32 from Petoi is the better long-term choice.

Can I flash official OpenCatEsp32 firmware onto a generic ESP32 board?

Not directly. Official firmware is tightly bound to the BiBoard servo mapping, so pins and servo assignments must be ported to the target board. Get the official Bittle or Nybble configuration running first.

Why does WAVEGO Pro use both an ESP32 and a Raspberry Pi?

The ESP32 acts as the lower controller for real-time inverse kinematics and gait generation under an RTOS, while the Raspberry Pi handles OpenCV vision and strategy planning. Splitting the workload keeps gait timing deterministic.

Are bus servos interchangeable with ordinary PWM servos?

No. WAVEGO Pro’s SC09 bus servos provide position, speed, and voltage feedback over a shared bus, while standard PWM servos only accept a position command. Each bus servo also needs its own ID assigned before assembly.

About Aomway

Aomway is a technology company specializing in drone and FPV equipment, publishing in-depth analyses of motor control, embedded hardware, and open-source robotics projects. With over 15 years of industry experience, Aomway covers the full spectrum from flight controllers and FPV goggles to thermal imaging cameras and long-range datalinks for the global drone community.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top