Skip to main content

Supported Boards

ZeroClaw supports a wide range of microcontrollers and single-board computers. Each board has different capabilities, transport protocols, and use cases.

Board Comparison

Raspberry Pi

Models Supported

  • Raspberry Pi 5 (8GB recommended for robots)
  • Raspberry Pi 4 (4GB+)
  • Raspberry Pi 3 B+
  • Raspberry Pi Zero W (ARMv6, requires special build)
  • Raspberry Pi Zero 2 W

Features

  • GPIO: 40-pin header, BCM pin numbering
  • Transport: Native (rppal library)
  • Firmware: None required (ZeroClaw runs directly on Pi)
  • Use Cases: Edge-native AI, autonomous robots, production deployments

Configuration

Build Requirements

Raspberry Pi Setup

Detailed Raspberry Pi setup guide

STM32 Nucleo

Models Supported

  • Nucleo-F401RE (primary support)
  • Other STM32 Nucleo boards (experimental)

Features

  • GPIO: Arduino-compatible headers + Morpho connectors
  • Architecture: ARM Cortex-M4, 84 MHz
  • Transport: USB Serial (ST-LINK VCP)
  • Firmware: firmware/zeroclaw-nucleo/
  • Use Cases: Embedded development, rapid prototyping

VID/PID

  • Vendor ID: 0x0483 (STMicroelectronics)
  • Product ID: 0x374b (ST-LINK/V2.1)

Configuration

Flashing Firmware

STM32 Nucleo Setup

Detailed STM32 Nucleo setup guide

Arduino

Models Supported

  • Arduino Uno (ATmega328P)
  • Arduino Uno R4 WiFi (RA4M1 + ESP32-S3)

Arduino Uno (Classic)

Features:
  • GPIO: 14 digital pins (6 PWM), 6 analog inputs
  • Architecture: AVR ATmega328P, 16 MHz
  • Transport: USB Serial (CH340 or ATmega16U2)
  • Firmware: firmware/zeroclaw-arduino/zeroclaw-arduino.ino
  • Use Cases: Education, simple projects
VID/PID:
  • CH340: 0x1a86:0x7523
  • ATmega16U2: 0x2341:0x0043
Configuration:
Flashing:

Arduino Uno R4 WiFi (Uno Q)

Features:
  • GPIO: 14 digital pins, 6 analog inputs
  • Architecture: Renesas RA4M1 (ARM Cortex-M4, 48 MHz)
  • WiFi: ESP32-S3 co-processor
  • Transport: Bridge (WebSocket to Arduino Cloud)
  • Use Cases: IoT projects, remote control
Configuration:
Setup:

Arduino Setup

Detailed Arduino setup guide

ESP32

Variants Supported

  • Architecture: RISC-V 32-bit, 160 MHz
  • Transport: Serial (USB CDC)
  • Firmware: firmware/zeroclaw-esp32/ (Rust, ESP-IDF)
  • Status: ✅ Stable

ESP32 / ESP32-S2 / ESP32-S3 (Xtensa)

  • Architecture: Xtensa 32-bit, 240 MHz
  • Transport: Serial
  • Firmware: Same, requires espup toolchain
  • Status: 🚧 Experimental

Features

  • GPIO: 34+ pins (varies by model)
  • WiFi: 802.11 b/g/n
  • Bluetooth: Classic + BLE (ESP32 classic)
  • Use Cases: IoT, edge-native AI (future)

VID/PID

  • CH340 USB-UART: 0x1a86:0x7523
  • CP2102 USB-UART: 0x10c4:0xea60

Configuration

Building Firmware

Flashing

ESP32 Setup

Detailed ESP32 setup guide

Pin Mapping Reference

Arduino Uno

Raspberry Pi (40-pin header, BCM numbering)

ESP32-C3

STM32 Nucleo-F401RE

Board Selection Guide

Choose Raspberry Pi if:

  • Running edge-native AI agents
  • Need full Linux environment
  • Building autonomous robots
  • Want offline LLM inference (Ollama)

Choose STM32 Nucleo if:

  • Embedded development with real-time constraints
  • Learning ARM Cortex-M architecture
  • Need precise timing or low-level control
  • Prototyping custom PCBs

Choose Arduino if:

  • Education or hobby projects
  • Simple GPIO control
  • Quick prototyping
  • Large ecosystem of shields/libraries

Choose ESP32 if:

  • IoT projects with WiFi
  • Battery-powered applications
  • Remote sensing/control
  • Future edge-native AI (in development)

Adding New Boards

To add support for a new board:
  1. Implement the Peripheral trait in src/peripherals/
  2. Write firmware (if serial transport) in firmware/
  3. Add board type to config schema
  4. Add VID/PID to hardware registry
  5. Document in docs/datasheets/
See Adding Boards and Tools for details.

Troubleshooting

Board not detected

Serial connection fails

  • Verify baud rate matches firmware (usually 115200)
  • Check port path (/dev/ttyUSB0 vs /dev/ttyACM0)
  • Ensure firmware is flashed correctly
  • Try unplugging/replugging USB cable

GPIO operation fails on Raspberry Pi

Next Steps

Raspberry Pi

Set up Raspberry Pi GPIO

STM32 Nucleo

Set up STM32 Nucleo board

Arduino

Set up Arduino board

ESP32

Set up ESP32 board