Spot Micro - Leika ๐
A small quadruped robot, inspired by boston dynamic Spot.
Explore the docs ยป
[](https://github.com/runeharlyk/SpotMicroESP32-Leika/actions/workflows/frontend-tests.yml)
[](https://github.com/runeharlyk/SpotMicroESP32-Leika/actions/workflows/embedded-build.yml)
## ๐ Overview
Leika is a smaller quadruped robot for the Spot-Micro community.
Built on an ESP32 and powered by FreeRTOS, she can handle multiple tasks seamlessly - Like video and data streaming, solving kinematic and gait planning, controlling IO and much more.
By focusing on practicality and simplicity in both hardware and software, it offer an accessible platform for learning, experimentation, and modest real-world applications.
## ๐ฏ Features
- **Live Preview**: Instant feedback with real-time updates.
- **Real-Time Data**: Stream camera feeds, monitor sensors, and analyze data on the fly.
- **Kinematic Precision**: Full kinematic model for accurate movements.
- **Dual joystick controller**
- **Robot mirroring visualization**
- **Highly customizable**
- **Self-Hosted**: Complete autonomy, from code to execution.
## ๐ Robot specifications
### ๐ Robot control flow
The robots is implemented using a sense, plan, act control flow.

## ๐ฆพ Kinematics
To enable complex movements, it's beneficial to be able to describe the robot state using a world reference frame, instead of using raw joint angles.
The robot's body pose in the world reference frame is represented as
$$T_{body}=\left[x_b,y_b,z_b,\phi, \theta,\psi\right]$$
Where
- $x_b, y_b, z_b$ are cartesian coordinates of the robot's body center.
- $\phi, \theta,\psi$ are the roll, pitch and yaw angles, describing the body orientation.
The feet positions in the world reference frame are:
$$P_{feet}=\\{(x_{f_i},y_{f_i},z_{f_i})|i=1,2,3,4\\}$$
where $x_{f_i}, y_{f_i}, z_{f_i}$ are cartesian coordinates for each foot $i$.
Solving the inverse kinematics yields target angles for the actuators.
### ๐ฎ Controller
The controller is a svelte app, which get embedded in the firmware of the robot.
Which mean that new releases and OTA updates includes the latest controller.
The controller includes full control over robot settings like network and calibration, and a visualization.