* common.xml: remove recently added MAV_RESULT_PERMISSION_DENIED:
This was needed for the new in development multi GCS protocol.
It was decided to hold on this new result for the moment, in
order to make the current implementation easier to adopt, and
evaluate again in the future if this is needed.
For the situations meant to use this, we will use RESULT_FAILED
* development.xml: use RESULT_FAILED instead of PERMISSION_DENIED
* development.xml: add request timeout parameter to REQUEST_OPERATOR_CONTROL
* development.xml: In REQUEST_OPERATOR_CONTROL requests revert to takeover not allowed after 10s
* development.xml: fix REQUEST_OPERATOR_CONTROL param4 description
Co-authored-by: Hamish Willee <hamishwillee@gmail.com>
---------
Co-authored-by: Hamish Willee <hamishwillee@gmail.com>
* add rc_type_crsf
* Update RX_PAIR to use RC_TYPE and RC_SUB_TYPE to make sense with CRSF binding
* Apply suggestions from code review
* Update message_definitions/v1.0/common.xml
* Update message_definitions/v1.0/common.xml
---------
Co-authored-by: Hamish Willee <hamishwillee@gmail.com>
* common: add capability flags for camera and gimbal
Having these two capability flags means that ground stations don't have
to ask any discovered components for CAMERA_INFORMATION and
GIMBAL_MANAGER_INFORMATION messages and can instead only do so when they
see this capability flag set.
This means however, that each ground station now needs to request either
AUTOPILOT_VERSION or COMPONENT_INFORMATION_BASIC from any MAVLink
component that it discovers, so it's only slightly better.
The alternative would be to make it explicit that cameras and gimbals
need to send out CAMERA_CAPTURE_STATUS and GIMBAL_MANAGER_STATUS
messages respsectively, to signal implementing a camera/gimbal manager.
* Update message_definitions/v1.0/common.xml
---------
Co-authored-by: Hamish Willee <hamishwillee@gmail.com>
* common.xml: Add "Target Camera ID" param to MAV_CMD_DO_SET_CAM_TRIGG_DIST
* common.xml: Add "Target Camera ID" param to MAV_CMD_DO_SET_CAM_TRIGG_INTERVAL
* common.xml: Add "Target Camera ID" param to MAV_CMD_RESET_CAMERA_SETTINGS
* common.xml: Add "Target Camera ID" param to MAV_CMD_SET_CAMERA_ZOOM
* common.xml: Add "Target Camera ID" param to MAV_CMD_SET_CAMERA_FOCUS
* common.xml: Add "Target Camera ID" param to MAV_CMD_DO_TRIGGER_CONTROL
* common.xml: Add "Target Camera ID" param to MAV_CMD_CAMERA_TRACK_POINT
* common.xml: Add range metadata to "id" param of MAV_CMD_SET_CAMERA_MODE
* common.xml: Add "Target Camera ID" param to MAV_CMD_CAMERA_TRACK_RECTANGLE
* common.xml: Add "Target Camera ID" param to MAV_CMD_CAMERA_STOP_TRACKING
* common.xml: Add "Target Camera ID" param to MAV_CMD_VIDEO_START_CAPTURE
* common.xml: Add "Target Camera ID" param to MAV_CMD_VIDEO_STOP_CAPTURE
* common.xml: Add "Target Camera ID" param to MAV_CMD_VIDEO_START_STREAMING
* common.xml: Add "Target Camera ID" param to MAV_CMD_VIDEO_STOP_STREAMING
* common.xml: Add "camera_device_id" field to CAMERA_SETTINGS
* common.xml: Add "camera_device_id" field to CAMERA_CAPTURE_STATUS
* common.xml: Add "camera_device_id" field to VIDEO_STREAM_INFORMATION
* common.xml: Add "camera_device_id" field to VIDEO_STREAM_STATUS
* common.xml: Add "camera_device_id" field to CAMERA_FOV_STATUS
* common.xml: Add "camera_device_id" field to CAMERA_TRACKING_IMAGE_STATUS
* common.xml: Add "camera_device_id" field to CAMERA_TRACKING_GEO_STATUS
* common.xml: Update "camera_device_id" field of CAMERA_INFORMATION
For consistency with other messages with the same field.
* common.xml: Rename MAV_CMD_IMAGE_START_CAPTURE param1 to "Target Camera ID"
* common.xml: Rename MAV_CMD_IMAGE_STOP_CAPTURE param1 to "Target Camera ID"
* update how NaN is used for the orbit yaw behavior
* expanded ENUM, removed NAN usage
* Update message_definitions/v1.0/common.xml
---------
Co-authored-by: Hamish Willee <hamishwillee@gmail.com>
* common: add camera_device_id to CAMERA_INFORMATION
By adding a camera_device_id to a CAMERA_INFORMATION message, we allow an
autopilot to be a proxy for a MAVLink or non-MAVLink camera.
The idea is similar to a gimbal manager implemented by an autopilot.
* Update message_definitions/v1.0/common.xml
---------
Co-authored-by: Hamish Willee <hamishwillee@gmail.com>
* gps: add status and resilience information
Add fields to report resilience and status information from GNSS
receivers back to ground control stations for representation in the user
interface.
* gps: separate GNSS integrity information
Move the changes to the `GPS_RAW_INT` message into a separate message
that supports multiple GNSS receivers. Update the enum values to better
support all GNSS receivers.
* gps(integrity): add RAIM info to `GNSS_INTEGRITY` message
* gps(integrity): change `GNSS_INTEGRITY` message `id` field to instanced
Change the `id` field on the `GNSS_INTEGRITY` message to make use of the
instance support in the MAVLink schema.
* gps(integrity): move integrity message to `development.xml`
* gps(integrity): add jamming mitigated and spoofing critical
Change the enums for jamming and spoofing so jamming includes a state
for mitigated interference and spoofing no longer includes a message for
critical spoofing.
* gps(integrity): add units to `GNSS_INTEGRITY` RAIM fields
* gps(integrity): add qualitative indicators to `GNSS_INTEGRITY` message
Add qualitative fields for GNSS signal quality, incoming corrections
quality and overall system status. GNSS receivers or drivers can compute
these based on other data. They can be useful before takeoff and during
flight as a reliable overview of important GNSS components.
* gps(integrity): update quality indicators for unsupported drivers
Add support for drivers that can't or don't want to provide the quality
indicator information
* gps(integrity): use invalid attribute to indicate invalid values
Instead of having implicit invalid values, use the `invalid` attributes.
Also add invalid values to the RAIM data as it may not always be
supplied or available from receivers.
* code review - invalid value for uint8 is 255
* Apply suggestions from code review
* Update message_definitions/v1.0/development.xml
---------
Co-authored-by: Hamish Willee <hamishwillee@gmail.com>
* Improved docs from XML generation_toolchain
- Make replaced-by a link
- Fix message field desc
- Make enums in param values into links
- Fixes following testing
- Add deprecated desc, if exists
- Add todo if we ever get WIP tags with text in them
- Make the main lists to dicts, to allow easier merging
- Merge XMLs
- Fix up ordering of items
- Make more robust - can spot new fields
- Improve table layout
- Add max, min, invalid, instance, default, to fields
- Add highlighting for WIP/Deprecated
- Minor fix to intros
- Add placeholder for building dialect tree
- Add summary of stuff in THIS file
- Flake8 Lint
- Workflow to deploy docs + dependencies file
* Update workflow to commit PR
Add an EditorConfig to make sure editors know how to correctly edit and
save files. Also strip trailing whitespace in some files that don't need
it, as configured in the EditorConfig file.