MAVLink Support
The Micro Air Vehicle Link (MAVLink) communication protocol is a message protocol for sending and receiving messages between UAVs. The protocol uses a publish-subscribe pattern for data streams with specified topics and message types. There are different sub-protocols for missions and parameters. Use the MAVLink supported functions to specify predefined or custom dialects, setup clients, and send or receive messages.
To protect UAVs from unauthorized messages, MAVLink uses message signing. Note that message signing is not the same as message encryption and MAVLink does not provide message encryption. For more information about MAVLink message signing, see MAVLink Message Signing (Authentication).
The MAVLink message definitions (dialects) and MAVLink serialization helper functions in UAV Toolbox are obtained from mavlink/message_definitions/v1.0/ and mavlink/c_library_v2 version of repositories respectively.
The message definition XML files and the C-language version of serialization helper functions are made available under the MIT license.
Functions
mavlinktlog | Read MAVLink message from TLOG file |
mavlinkio | Connect with MAVLink clients to exchange messages |
mavlinkclient | MAVLink client information |
mavlinksub | Receive MAVLink messages |
mavlinkdialect | Parse and store MAVLink dialect XML |
mavlinksigning | Store MAVLink signing channel information |
addmavlinkkeys | Add MAVLink keys from .env file |
lsmavlinkkeys | List MAVLink keys in MATLAB session |
rmmavlinkkeys | Remove MAVLink key from MATLAB session |
Blocks
MAVLink Blank Message | Create blank MAVLink message bus by specifying payload information and MAVLink message type |
MAVLink Deserializer | Convert serialized uint8 MAVLink data stream to Simulink
nonvirtual bus |
MAVLink Serializer | Serialize messages of MAVLink packet by converting Simulink nonvirtual bus to
uint8 data stream |