MAVLink Microservices (Protocols)
MAVLink "microservices" are a protocols that use multiple messages exchanged between components to communicate more complicated information. For example, the Command Protocol provides an efficient mechanism for packaging a command in a (particular) message and receiving acknowledgement of the command in another message.
MAVLink microservices are documented the MAVLink Guide (this is not exhaustive: not all messages are grouped into protocols and not all protocols are documented).
This section lists the services known to be supported/not supported by PX4 in this version.
Supported Microservices
These services are known to be supported in some form:
- Battery Protocol
- BATTERY_STATUS and BATTERY_INFO are streamed.
- Camera Protocols
- Command Protocol
- Component Metadata Protocol
- Events Interface
- File Transfer Protocol (FTP)
- Gimbal Protocols
- Gimbal Protocol v2
- Can be enabled by Gimbal Configuration
- PX4 an act as a MAVLink Gimbal for one FC-connected Gimbal
- Gimbal Protocol v2
- Heartbeat/Connection Protocol
- High Latency Protocol — PX4 streams HIGH_LATENCY2
- Image Transmission Protocol
- Landing Target Protocol
- Manual Control (Joystick) Protocol
- MAVLink Id Assignment (sysid, compid)
- Mission Protocol
- Offboard Control Protocol
- Remote ID (Open Drone ID Protocol)
- Parameter Protocol
- Parameter Protocol Extended — Allows setting string parameters. Used for setting string parameters set in camera definition files.
- Payload Protocol
- Ping Protocol
- Standard Modes Protocol
- Terrain Protocol
- Time Synchronization
- Traffic Management (UTM/ADS-B)
- Arm Authorization Protocol
Unsupported
These services are not supported/used by PX4: