AeroCoder Logo

Microservices (Protocols)

File Transfer Protocol (FTP)

Burst reads, directory listing, and CRC verification over MAVLink FTP.

MAVLink File Transfer Protocol enables file operations (read, write, list, remove) over the MAVLink channel. It encapsulates FTP opcodes inside FILE_TRANSFER_PROTOCOL messages (#110) and supports burst reads for throughput.

text

FTP opcodes
────────────────────────────────────────
Opcode  Name             Description
──────  ───────────────  ──────────────────────────
  3     ListDirectory    List files in a path
  4     OpenFileRO       Open file for reading
  5     ReadFile         Read a chunk (offset+size)
  6     CreateFile       Create / overwrite a file
  7     WriteFile        Write a chunk
  8     RemoveFile       Delete a file
 15     BurstReadFile    Burst-mode read for speed
 128    Ack              Success response
 129    Nak              Error response

Burst mode (opcode 15) lets the target stream sequential data chunks without waiting for an ACK per chunk. The requester only ACKs the final chunk or retransmits requests for missing sequence numbers. This dramatically improves throughput on clean links.

Common use cases

Downloading flight logs (ULog files), uploading fence / rally-point files, reading the component metadata manifest (COMPONENT_METADATA), and camera definition file retrieval.

← Previous

Command protocol

Next →

Serialization format

Edit this page on mavlink.io ↗

On This Page

Common use cases

© 2024 AeroCoder. All rights reserved

TwitterYouTubeInstagram