Initial import of the X500 on the parts pipeline - #1
Merged
Merged
Conversation
Assisted-by: Claude Fable 5 <noreply@anthropic.com> Signed-off-by: Carlos Aguero <caguero@honurobotics.com>
Assisted-by: Claude Fable 5 <noreply@anthropic.com> Signed-off-by: Carlos Aguero <caguero@honurobotics.com>
Assisted-by: Claude Fable 5 <noreply@anthropic.com> Signed-off-by: Carlos Aguero <caguero@honurobotics.com>
… plumbing, CMake 3.14 Assisted-by: Claude Fable 5 <noreply@anthropic.com> Signed-off-by: Carlos Aguero <caguero@honurobotics.com>
…acts to the config Assisted-by: Claude Fable 5 <noreply@anthropic.com> Signed-off-by: Carlos Aguero <caguero@honurobotics.com>
Assisted-by: Claude Fable 5 <noreply@anthropic.com> Signed-off-by: Carlos Aguero <caguero@honurobotics.com>
Assisted-by: Claude Fable 5 <noreply@anthropic.com> Signed-off-by: Carlos Aguero <caguero@honurobotics.com>
… and defaults, manifest checked configs, launch time loadouts and the documentation site Assisted-by: Claude Fable 5 <noreply@anthropic.com> Signed-off-by: Carlos Agüero <caguero@honurobotics.com> (cherry picked from commit b591afcfeca0851594468efffd6faad48c7e730e)
… self test Assisted-by: Claude Fable 5 <noreply@anthropic.com> Signed-off-by: Carlos Agüero <caguero@honurobotics.com>
…or bus autopilot owned Assisted-by: Claude Fable 5 <noreply@anthropic.com> Signed-off-by: Carlos Agüero <caguero@honurobotics.com>
ahcorde
requested changes
Aug 28, 2026
Co-authored-by: Alejandro Hernández Cordero <ahcorde@gmail.com>
Co-authored-by: Alejandro Hernández Cordero <ahcorde@gmail.com>
ahcorde
approved these changes
Aug 28, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Initial import of the Holybro X500 V2, built the same way as the BlueBoat in bluerobotics_models: a part library (
holybro_parts) where each part declares its inertia, visuals, collisions, slots with accepted options and defaults, frames and, for propellers, a drive table. The default vehicle needs no configuration (four 1345 props, 4S battery, GPS mast); a config only states differences and is checked against the assembly manifest, failing the build or the launch with the reason.x500_gazeboplaces the motor plugins and the NavSat by the same resolution, generates the bridge from the manifest and supports launch time loadouts (config_file:=, no rebuild). The meshes are BSD 3 placeholders from PX4-gazebo-models; the assembly machinery is copied frombluerobotics_partsand marked for extraction into a shared package. All documentation lives underdocs/on the site.How to test it?
Pull requests only build the docs, so run them locally and use them as the test script:
pip install -r docs/requirements.txt sphinx-build -W docs _build/html && python3 -m http.server -d _build/htmlThen open http://localhost:8000 and follow:
gz.msgs.Actuators, not bridged), the slot table.gimbalin,gpsout) and launch withconfig_file:=; try a typo, which must fail naming the problem; generate the artifacts withconfigure_vehicle.pyand check a config withcheck_assembly.py.colcon testruns 92 tests (unit, headless Gazebo and ROS launch, lint), all green locally.🤖 Generated with Claude Code