AUTinyDane is an open-source, affordable quadruped robot platform developed at Aarhus University.
The project focuses on a complete real robot stack: mechanical design, servo actuation, inverse kinematics, gait generation, and PS4 teleoperation on a Raspberry Pi.

Core runtime flow:
Main components:
src/GaitPlannerV2.py – trot cycle logicsrc/StancePlannerV2.py, src/SwingPlannerV2.py – stance/swing trajectoriessrc/Kinematics.py – inverse kinematicssrc/HardwareInterface.py – servo/IMU communicationsrc/PS4Controller/ – DualShock 4 mappingAUTinyDane/
├── run_robot.py # Main runtime entry point
├── requirements.txt # Python dependencies
├── src/ # Core runtime modules
│ ├── Configuration.py # Robot geometry and limits
│ ├── Command.py # Command state and mode abstraction
│ ├── State.py # Runtime gait/state values
│ ├── Kinematics.py # IK solver
│ ├── HardwareInterface.py # PCA9685 + IMU interface
│ ├── ServoCalibration.py # Servo neutral offsets and gains
│ ├── GaitPlannerV2.py # Main gait planner
│ ├── StancePlannerV2.py # Stance phase planning
│ ├── SwingPlannerV2.py # Swing phase planning
│ └── PS4Controller/ # Controller input mapping/listener
├── tools/ # Calibration and utility scripts
│ ├── calibrate_servos.py # Interactive servo offset calibration
│ ├── ServoNeutral.py # Move servos/legs to neutral
│ ├── TestServo.py # Interactive servo testing helpers
│ └── IMU_calibration.py # IMU calibration utility
├── tests/ # Manual/experimental test scripts
└── legacy/ # Older planners/simulators
0x40–0x43 in current code)0x68)pipNote: Several dependencies are Raspberry Pi / hardware specific and may not install or run on non-Pi machines.
git clone https://github.com/JensLajordMunk/AUTinyDane.git
cd AUTinyDane
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
If running on Raspberry Pi, also ensure system packages and I2C support are configured.
src/ServoCalibration.py/dev/input/js0 expected)python run_robot.py
From src/PS4Controller/DogController.py:
TROTROTATETRANSLATENEUTRALCurrent modes are defined in src/Command.py:
NEUTRALTROTROTATETRANSLATEpython tools/ServoNeutral.py
src/ServoCalibration.py):
python tools/calibrate_servos.py
python tools/TestServo.py
Run these carefully with the robot safely supported/off-ground.
This repository currently contains mostly hardware/manual test scripts under tests/ rather than a full automated CI-style unit test suite.
Basic discovery check:
python -m unittest discover -q
Useful manual scripts include:
tests/Test_kinematics.pytests/gait_simulatorV2.pytests/IMU_test.py/dev/input/js0.src/Configuration.py.This project is licensed under the MIT License. See LICENSE.