Skip to content

Kaia.ai robot firmware

  • Software
  • Microcontrollers and firmware tools
  • Firmware

Arduino firmware for ESP32 boards that turns a differential-drive robot with a spinning lidar into a self-driving ROS2 robot. It targets the two-wheel round base with a rear caster.

Source on GitHub: github.com/kaiaai/firmware (opens in a new tab). Facts read at commit e4d159c (opens in a new tab).

Licenses

Code
Apache-2.0 (opens in a new tab)

Read by Robotheca from LICENSE (opens in a new tab) (Apache-2.0) at commit e4d159c (opens in a new tab), on 22 Oct 2026.

Commercial use
Yes

What it does

  • Drives differential two-wheel robots and reads a spinning lidar distance sensor for self-driving.
  • Supports brushed motors with IN1/IN2 drivers and quadrature encoders, plus BLDC motors driven through an ESC.
  • Works with several lidar models, including YDLIDAR, LDROBOT, Neato XV11, SLAMTEC RPLIDAR A1 and Delta-2 units.
  • Robot and board settings are kept in config.yaml, uploaded to the ESP32 as sketch data, with WiFi set through a web page.
  • Exposes ROS2 parameters for motors, encoders, PID gains, robot geometry and lidar speed over micro-ROS.
  • Recommends 24V BLDC motors around 400 RPM, with 12V BLDC and brushed GA25-370 motors as alternatives.

Written by Robotheca from the project's README (opens in a new tab) at commit e4d159c.

Getting started

Difficulty
Intermediate

Maintenance

Status
Maintained: a commit in the last 12 months
Newest commit
8 Jan 2026 on iron
Latest release
None published on GitHub

Checked on GitHub on 22 Oct 2026.

Robots that can run it

No robot on Robotheca is linked to it yet. Links come from a robot's robot.yaml, from its dependency files read as text, or from Robotheca's editors.

Robotheca lists software as a reference: nothing is hosted or run here, and every fact links to where it was read.