MSP sync with IPF + poshold local targets#11230
Draft
xznhj8129 wants to merge 17 commits intoiNavFlight:maintenance-10.xfrom
Draft
MSP sync with IPF + poshold local targets#11230xznhj8129 wants to merge 17 commits intoiNavFlight:maintenance-10.xfrom
xznhj8129 wants to merge 17 commits intoiNavFlight:maintenance-10.xfrom
Conversation
This reverts commit eec5481.
Branch Targeting SuggestionYou've targeted the
If This is an automated suggestion to help route contributions to the appropriate branch. |
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.
This is the part 2/3 of syncing MSP capabilities with IPF ops, pull is based on #11147
New Features:
These two mirror the IPF axis override and are only active when MSP RC OVERRIDE mode is active; require updating at 5HZ or they will clear, this ensures no lockout. This allows you to directly override and control the angle or rate in any mode via MSP.
These allow setting and reading directly the desired state in a sort of Local poshold control. So if you are in poshold, setting x_cm=100 will set the poshold target 1m to the front, y_cm=-50 will set the poshold target 50cm to your left, z_cm=-100 will set the althold target 1m lower. This allows nav-controlled pos control without using RC or geo coordinates, all using MSP.
This is the most uncertain as they mirror MSP_WP/MSP_SET_WP behavior directly for the poshold controller; i am insure about directly setting it vs using the waypoint control; but if one day there are significant changes it could be worthwhile to have dedicated MSP commands for target position, home, etc.
This is a convenient way to get directly the desired geo poshold or WP position at the same time as the target altitude, target heading and target climbrate
Fixes:
typedef enum name { … }) to avoid missing tagged definitions.Testing
Using HITL on SBF405WM with MLRS MSP RX; using https://github.com/xznhj8129/mspapi2/tree/refactor to test MSP commands and sequences.
All the commands were verified working in their intended configuration