Dropbear RL Lab is a reinforcement learning framework for Dropbear robot. Run using NVIDIA's Isaac Sim and Isaac Lab platform, it provides a nice simulation environment for training bipedal locomotion policies with state-of-the-art performance.
- ๐โโ๏ธ Advanced Locomotion: Velocity tracking, terrain adaptation, and gait optimization
- โก High Performance: GPU-accelerated training with thousands of parallel environments
- ๐ง Modular Design: Easy to extend and customize for different tasks
- ๐ Rich Observations: IMU data, joint states, contact forces, and terrain scanning
- Isaac Sim 5.0.0 or later
- Isaac Lab 2.2.0 or later
- NVIDIA GPU with CUDA support
- Python 3.10+
Follow the official Isaac Lab installation guide.
git clone https://github.com/hyperspawn/dropbear_rl_lab.git
cd dropbear_rl_lab
# Install dependencies for video recording
C:\isaac-sim\python.bat -m pip install moviepy
# Install in development mode
C:\isaac-sim\python.bat -m pip install -e source/dropbear_rl_lab# Quick training test (1 iteration) - CONFIRMED WORKING
C:\isaac-sim\python.bat scripts/rsl_rl/train.py --task Isaac-Velocity-Dropbear-v0 --max_iterations 1
# Test play with video recording - CONFIRMED WORKING
C:\isaac-sim\python.bat scripts/rsl_rl/play.py --task Isaac-Velocity-Dropbear-Play-v0 --video# โ
CONFIRMED WORKING: Quick test training (1 iteration)
C:\isaac-sim\python.bat scripts/rsl_rl/train.py --task Isaac-Velocity-Dropbear-v0 --max_iterations 1
# Full velocity tracking policy training
C:\isaac-sim\python.bat scripts/rsl_rl/train.py --task Isaac-Velocity-Dropbear-v0 --max_iterations 2000
# Train with video recording
C:\isaac-sim\python.bat scripts/rsl_rl/train.py --task Isaac-Velocity-Dropbear-v0 --video --video_interval 1000# โ
CONFIRMED WORKING: Play with video recording (requires moviepy)
C:\isaac-sim\python.bat scripts/rsl_rl/play.py --task Isaac-Velocity-Dropbear-Play-v0 --video
# Play without video (requires trained model)
C:\isaac-sim\python.bat scripts/rsl_rl/play.py --task Isaac-Velocity-Dropbear-Play-v0
# Play specific checkpoint
C:\isaac-sim\python.bat scripts/rsl_rl/play.py --task Isaac-Velocity-Dropbear-Play-v0 --checkpoint logs/rsl_rl/dropbear_velocity/2025-09-05_01-07-24/model_0.ptdropbear_rl_lab/
โโโ ๐ README.md # This file
โโโ ๐ LICENSE # License
โโโ ๐ .gitignore # Git ignore rules
โโโ ๐ค dropbear_model/ # Robot USD models
โ โโโ Dropbear/usd/dropbear.usd # Main robot model
โโโ ๐ฌ media/gallery/ # Demo videos and images
โโโ ๐ scripts/ # Training and utility scripts
โ โโโ list_envs.py # Environment listing
โ โโโ rsl_rl/ # RSL-RL training scripts
โ โโโ train.py # Training script
โ โโโ play.py # Policy playback
โ โโโ cli_args.py # CLI argument parsing
โโโ ๐ฆ source/dropbear_rl_lab/ # Main package
โโโ config/extension.toml # Extension configuration
โโโ pyproject.toml # Python project config
โโโ setup.py # Installation script
โโโ dropbear_rl_lab/ # Core package
โโโ assets/robots/ # Robot configurations
โ โโโ dropbear.py # Dropbear robot config
โโโ tasks/locomotion/ # Locomotion tasks
โ โโโ mdp/ # MDP components
โ โ โโโ rewards.py # Reward functions
โ โ โโโ observations.py # Observation functions
โ โ โโโ commands.py # Command generators
โ โโโ robots/dropbear/ # Dropbear-specific configs
โ โโโ velocity_env_cfg.py # Environment config
โ โโโ agents/rsl_rl_ppo_cfg.py # PPO agent config
โโโ utils/ # Utility functions
| Task ID | Description | Action Space | Observation Space |
|---|---|---|---|
Isaac-Velocity-Dropbear-v0 |
Velocity tracking on flat terrain | 22 DoF | 50-dim |
Isaac-Velocity-Dropbear-Play-v0 |
Playback environment | 22 DoF | 50-dim |
The Dropbear robot features:
- 22 Actuated Joints: Full-body control including arms, legs, and head
- Humanoid Morphology: Bipedal locomotion with arm swing
- Contact Sensing: Foot contact detection for gait optimization
- IMU Integration: Base orientation and angular velocity feedback
Arms (10 DoF):
โโโ Left: LH_yaw, LH_pitch, LH_roll, LH_Revolute41, LH_wrist_roll
โโโ Right: RH_yaw, RH_pitch, RH_roll, RH_Revolute41, RH_wrist_roll
Legs (12 DoF):
โโโ Pelvic: PG_left_leg_pitch, PG_left_leg_roll, PG_right_leg_pitch, PG_right_leg_roll
โโโ Left: LL_hip_joint, LL_knee_actuator_joint, LL_Revolute28, LL_Revolute29
โโโ Right: RL_hip_joint, RL_knee_actuator_joint, RL_Revolute28, RL_Revolute29
- Environment Configuration: Extend
ManagerBasedRLEnvCfginvelocity_env_cfg.py - Reward Functions: Add custom rewards in
mdp/rewards.py - Observations: Define new observations in
mdp/observations.py - Registration: Register your task in
robots/dropbear/__init__.py
Edit the PPO configuration in agents/rsl_rl_ppo_cfg.py:
class DropbearVelocityRoughPPORunnerCfg(BasePPORunnerCfg):
num_steps_per_env = 24
max_iterations = 2000
save_interval = 100
# ... more parametersMonitor training progress through:
- TensorBoard: Automatic logging to
logs/rsl_rl/ - Console Output: Real-time reward and loss metrics
- Video Recording: Periodic policy demonstrations
- Model Checkpoints: Saved every 100 iterations in
logs/rsl_rl/dropbear_velocity/
We welcome contributions! Please see our contribution guidelines for details.
# Install in development mode with all dependencies
C:\isaac-sim\python.bat -m pip install -e "source/dropbear_rl_lab[dev]"
# Run tests
python -m pytest tests/
# Format code
black source/dropbear_rl_lab/
isort source/dropbear_rl_lab/![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Development snapshots showing the Isaac Sim assembly and rigging process
Training videos are automatically generated in logs/rsl_rl/*/videos/play/ during policy evaluation.
You will start fresh with random weights and training video showing random locomotion policy
Environment registration errors:
- Make sure the package is installed:
C:\isaac-sim\python.bat -m pip install -e source/dropbear_rl_lab - The Play environment now includes the required
play_env_cfg_entry_point
AttributeError: 'NoneType' object has no attribute 'num_rows':
- โ Fixed: The PLAY configuration now properly handles None terrain_generator for plane terrain
- This error occurred when trying to modify terrain generator settings on simple plane terrain
Training crashes with CUDA errors:
- โ Fixed: Reduce number of environments
# Reduce number of environments
C:\isaac-sim\python.bat scripts/rsl_rl/train.py --task Isaac-Velocity-Dropbear-v0 --num_envs 512Robot falls immediately:
- Check joint limits in
dropbear.py - Verify initial joint positions
- Adjust reward weights in
velocity_env_cfg.py
CLI freezes or not responding:
- Some commands may require Isaac Sim to initialize, which can take time
- Use
--headlessflag for faster initialization without GUI - Ensure Isaac Lab is properly installed and configured
This project is licensed under MIT License - see the LICENSE file for details.
- Cole Myers from POINTBLANK
- Fractionalrobots - for collaboration and support (Shout out to Anthrobotics and K-scale K-scale)
- Mohan Vamsi K. for investigating issues I gaced in rigging parts of dropbear (4 bar closed loop mechanism in isaac sim. thanks for your time and efforts adding joints to the assembly in isaac sim)
- NVIDIA for Isaac Sim and Isaac Lab platforms
- Me๐โโ๏ธ for the ground work on this project
For technical support and questions:
Built with โค๏ธ by Hyperspawn Robotics
Advancing the future of humanoid robotics through open embodied intelligence


.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)