Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MAVLink parachute system support improvements #18589

Merged
merged 3 commits into from
Nov 19, 2021

Conversation

MaEtUgR
Copy link
Member

@MaEtUgR MaEtUgR commented Nov 8, 2021

Describe problem solved by this pull request
The biggest advantage of a MAVLink enabled parachute system is the standardized communication for presence, status and triggering. This pr aims at adding basic support for evaluating the status of such a parachute after the triggering was added in #17564

Describe your solution
The parameter COM_PARACHUTE enables the requirement for presence and a healthy status of an external MAVLink enabled parachute system. Presence is checked by checking for regular HEARTBEATs from a device with type MAV_TYPE_PARACHUTE and the status is read out of the system_status field of the heartbeat where STANDBY and ACTIVE are considered healthy assuming that either the system is ready for operation on the ground but not yet activated for safety reasons or already activated depending on the configuration.

Test data / coverage
This was tested against a prototype parachute system to work as specified.

Additional context
Note: Adding the parachute triggering to manually triggered kill switch event I saw now as a requirement for multiple projects and the testing of the parachute system here. I propose to simplify termination, lockdown and manual_lockdown into a single termination with or without parachute deployment and hence recovery "unterminate" if the parachute is not deployed.

@MaEtUgR MaEtUgR self-assigned this Nov 8, 2021
@MaEtUgR MaEtUgR merged commit f912ee2 into master Nov 19, 2021
@MaEtUgR MaEtUgR deleted the mavlink-parachute-improvements branch November 19, 2021 16:15
@hamishwillee
Copy link
Contributor

@MaEtUgR Interesting! Can you outline how this works for the docs - ideally in http://docs.px4.io/main/en/peripherals/parachute.html

This is somewhat important because the current docs assume that parachute is triggered by flight termination and the system does not know that it has a parachute.

I would "guess" this is triggered by https://mavlink.io/en/messages/common.html#MAV_CMD_DO_PARACHUTE ?

@ThomasDebrunner
Copy link
Member

@hamishwillee That's right. This PR is for mavlink-enabled parachutes. PX4 detects the presence of a parachute on a telemetry port and relays the presence / health of the parachute to the GCS. On flight termination, it sends out a MAV_CMD_DO_PARACHUTE, which triggers the parachute.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants