Train a walking policy for a 4-legged, 8-servo robot in simulation using PPO.
Tune observations, rewards, and training stages from a single config file.
Deploy the trained actor network to real hardware running on an ESP32S3 microcontroller.
| robomotic/sesamerl | 0xhassaan/nn-from-scratch | 3ks/embedoc | |
|---|---|---|---|
| Stars | 0 | 0 | — |
| Language | Python | Python | Python |
| Last pushed | — | — | 2023-06-08 |
| Maintenance | — | — | Dormant |
| Setup difficulty | hard | moderate | hard |
| Complexity | 5/5 | 4/5 | 1/5 |
| Audience | researcher | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
Requires simulation setup with mjlab plus matching physical hardware (MPU6050, MG90S servos, ESP32S3) to deploy.
sesameRL is a Python-based reinforcement learning training environment for the Sesame robot, a four-legged robot with eight joints (described as 4-legged, 8-DOF, degrees of freedom). Reinforcement learning is a training technique where an AI agent learns to perform a task by receiving rewards for good behavior and penalties for bad behavior, gradually improving through repeated trial and error in a simulated environment. This project provides the simulation setup, training code, and configuration needed to teach the Sesame robot how to walk. The simulation is built on a tool called mjlab, and the learning algorithm used is PPO (Proximal Policy Optimization), a widely used approach for training locomotion policies. Every key setting, observations, rewards, curriculum stages, and training parameters, is concentrated in a single config.py file to make tuning easier. The trained policy is a small neural network with two hidden layers. During training it takes 36 inputs, including the robot's velocity estimates, orientation from an IMU sensor (inertial measurement unit, which tracks movement and tilt), joint positions and velocities, and a movement command. It outputs eight joint position targets, one per servo. After training, only the actor network is needed on the physical robot, the critic half is discarded. The repository also documents the sim-to-real gap: the physical robot uses an MPU6050 sensor for orientation and gyroscope data, MG90S servos for joints, and an ESP32S3 microcontroller to run the policy. Known limitations include servo timing latency and the fact that linear velocity must be estimated rather than measured directly on the hardware.
A Python reinforcement learning setup that trains a small four-legged robot to walk in simulation, then runs the learned policy on real hardware.
Mainly Python. The stack also includes Python, PPO, mjlab.
Setup difficulty is rated hard, with roughly 1day+ to a first successful run.
Mainly researcher.
This repo across BitVibe Labs
Verify against the repo before relying on details.