






Spot Micro Quadruped — Jetson Nano (ROS Melodic)
✓ Confirmed fresh May 27, 2026
Sign up to InstallAbout this program
Spot Micro Quadruped — Jetson Nano / ROS Melodic Port
Jetson-Nano-specific port of the SpotMicro design family. See also: SpotMicro (Pi) and SpotMicro ESP32 entries on orobot for other compute targets.
A 12-servo, 4-legged 3D-printed open-source quadruped running ROS Melodic on an NVIDIA Jetson Nano. This fork (0x49b/spotMicro-ROS-Melodic-Jetson-Nano) ports the original mike4192/spotmicro Raspberry Pi 3B + ROS Kinetic stack onto the Jetson Nano with ROS Melodic, unlocking the GPU for on-board SLAM, perception, and future learned-policy work.
The robot supports sit, stand, body angle, and walk control via two configurable gaits (8-phase stable gait by default; faster trot gait optional). Body-mounted RPLidar A1 enables real-time SLAM and 2D mapping. State is published over tf2 with open-loop calculated odometry.
Hardware
- Compute: NVIDIA Jetson Nano (this port). Original target was Raspberry Pi 3B.
- Frame: Thingiverse Spot Micro (KDY0523) — thing:3445283
- Servos: 12× PDI-HV5523MG (or cls6336hv — print files compatible)
- Servo control: PCA9685, i2c
- Power: 2S 4000 mAh LiPo direct to servo board; HKU5 5V/5A UBEC for Jetson + peripherals
- Sensing: RPLidar A1 (body-mounted)
- Optional: 16×2 i2c LCD panel for state readout
Software stack
- OS: Ubuntu 18.04 (for ROS Melodic on Jetson Nano). Original used Ubuntu 16.04 + ROS Kinetic.
- Framework: ROS Melodic catkin workspace
- Languages: C++ (motion control, kinematics) + Python (keyboard command, plot)
- Key packages:
spot_micro_motion_cmd,spot_micro_keyboard_command,spot_micro_rviz(URDF),ros-i2cpwmboard,spot_micro_joy,lcd_monitor
Build flow
- Flash Jetson Nano with Ubuntu 18.04 + ROS Melodic. Add a 1 GB SWAP partition (catkin will OOM without it).
- Create a catkin workspace, clone this repo into
src/, rungit submodule update --init --recursive. sudo apt-get install ros-melodic-joy ros-melodic-rplidar-ros ros-melodic-hector-slam libi2c-dev.catkin config --cmake-args -DCMAKE_BUILD_TYPE=Release && catkin build.- Calibrate all 12 servos using the spreadsheet +
servo_move_keyboardworkflow before powering the legs. roslaunch spot_micro_motion_cmd motion_cmd.launchon the Jetson;roslaunch spot_micro_keyboard_command keyboard_command.launchfrom a remote machine.
Family cross-reference
This is one of three SpotMicro variants on orobot — pick the compute target that matches your build:
- SpotMicro (Raspberry Pi) — original
mike4192/spotmicro, Pi 3B + ROS Kinetic. - SpotMicro ESP32 —
michaelkubina/spotmicroesp32, microcontroller-only port without ROS. - SpotMicro Jetson Nano (this entry) — Jetson Nano + ROS Melodic, GPU-accelerated SLAM.
Source
- Repo: https://github.com/0x49b/spotMicro-ROS-Melodic-Jetson-Nano
- Commit: 8c027c8a357dceace856d586022954205bc247ed
- License: MIT
- Upstream:
mike4192/spotmicro(this is a Jetson Nano fork)
🖨 Print Files (13)
mainbody.stl
backpart.stl
frontpart.stl
foot.stl
larm.stl
larm_cover.stl
Required Hardware
| Item | Qty | Notes |
|---|---|---|
| NVIDIA Jetson Nano (4GB) | 1 | This port's compute target |
| PDI-HV5523MG servo (or cls6336hv) | 12 | 3 per leg × 4 legs |
| PCA9685 16-channel PWM driver | 1 | i2c servo controller |
| 2S 4000 mAh LiPo battery | 1 | Direct to servo board for servo power |
| HKU5 5V/5A UBEC | 1 | 5V regulator for Jetson + LCD + PCA9685 |
| RPLidar A1 | 1 | Body-mounted for SLAM |
| 16×2 i2c LCD panel | 1 | Optional state display |
| Spot Micro 3D-printed frame (KDY0523) | 1 set | Thingiverse thing:3445283 |
| Custom 3D-printed mounts (lidar, reinforcements) | 1 set | See repo /assets |
| M2/M3 hardware, servo horns | — | See thingiverse assembly notes |
B