Code Inventory

All code, scripts, and configuration accompanying this book, indexed by repository path. All code follows the repository's book-dev branch.

A.1 Simulation and Training Code (software/training/)

FilePurposeChapter
mjlab/actuators/bam_actuator.pyBAM servo model (HD1910 parameters)BAM Actuator Modeling and Identification
assets/robots/microduck_feetech.xmlFeetech-edition MJCF modelAutomated Onshape→MJCF Modeling, 9
train_ppo.pyPPO training main script (with domain randomization)Domain Randomization, 12
export_onnx.pyexport the ONNX policyPPO Multi-Task Training
test_env.pysimulation-environment self-checkThe MuJoCo-Warp Simulation Environment
requirements.txt / requirements-lock.txtdependency listThe MuJoCo-Warp Simulation Environment

A.2 Calibration and System Identification (scripts/calibration/)

FilePurposeChapter
hd1910_bench_data_process.pybench CSV → BAM parameter fittingServo and IMU Calibration, 10
system_id_fit.pyhardware data → inertia-parameter identificationThe Sim2Real Closed-Loop Iteration

A.3 CAD Export (scripts/cad2mjcf/)

FilePurposeChapter
onshape_config.jsonOnshape assembly configurationAutomated Onshape→MJCF Modeling
export_mjcf.pyone-command onshape-to-robot exportAutomated Onshape→MJCF Modeling
validate_mjcf.pyMJCF inertia/limit validationAutomated Onshape→MJCF Modeling

A.4 Validation Scripts (scripts/validation/)

FilePurposeChapter
check_bam_params.pyBAM parameter physical-sanity checkBAM Actuator Modeling and Identification
check_obs_act_space.pysimulation ↔ board observation-space comparisonRK3566 Image and Firmware, 14
mass_inertia_check.pywhole-machine mass/inertia validation3D Printing, Assembly, and Tolerances

A.5 Container and Configuration (docker/)

FilePurposeChapter
DockerfileGPU training environment imageThe MuJoCo-Warp Simulation Environment
docker-compose.ymlone-command startupThe MuJoCo-Warp Simulation Environment

A.6 Example Experiment Configurations (experiments/)

DirectoryPurposeChapter
exp01_standup/config.yamlstanding training configMinimal Simulation Example
exp02_walk_flat/config.yamlflat-ground walking configPPO Multi-Task Training
exp03_domain_rand/config.yamldomain-randomization ablationDomain Randomization
exp04_curriculum/config.yamlcurriculum-learning configDomain Randomization

A.7 On-Device Firmware (software/firmware/)

Rust multi-daemon system: robotd (main control loop), configd (configuration), busd (bus), webui (debug interface). See RK3566 Image and Firmware.