File transfer nested inside a normal MAVLink message: every FTP packet, of whatever kind, is the SAME outer message type, distinguished only by an inner opcode/offset/session sub-header.
Physical UART Transport (115200 bps, 8N1.0)
Send command FTP_OpenFileRO (ID: 0x04)
Opens a file for reading; the ack (FTP_Ack) returns a session id that scopes every subsequent read against this open file.
Available only on servers:
Accepts the following message:
Opens a file for reading; the ack (FTP_Ack) returns a session id that scopes every subsequent read against this open file.
{
"command_id": 4,
"seq": 0,
"sysId": 0,
"compId": 0,
"msgId": 110,
"seqNumber": 0,
"session": 0,
"opcode": "4",
"size": 0,
"reqOpcode": 0,
"burstComplete": 0,
"padding": 0,
"offset": 0,
"path": "string"
}
Send command FTP_BurstReadFile (ID: 0x0F)
Requests the server stream the file from offset onward, without individual acks per chunk, until burstComplete is set on the final FTP_Ack.
Available only on servers:
Accepts the following message:
Requests the server stream the file from offset onward, without individual acks per chunk, until burstComplete is set on the final FTP_Ack.
{
"command_id": 15,
"seq": 0,
"sysId": 0,
"compId": 0,
"msgId": 110,
"seqNumber": 0,
"session": 0,
"opcode": "4",
"size": 0,
"reqOpcode": 0,
"burstComplete": 0,
"padding": 0,
"offset": 0
}
Unsolicited telemetry message FTP_Ack (ID: 0x80)
Every burst-read data packet is this same message, distinguished only by offset (where this chunk goes) and burstComplete (whether more are coming) -- there is no separate 'initial'/'follow-on' message name the way G460 or XMODEM have.
Available only on servers:
Accepts the following message:
Every burst-read data packet is this same message, distinguished only by offset (where this chunk goes) and burstComplete (whether more are coming) -- there is no separate 'initial'/'follow-on' message name the way G460 or XMODEM have.
{
"seq": 0,
"sysId": 0,
"compId": 0,
"msgId": 110,
"seqNumber": 0,
"session": 0,
"opcode": "4",
"size": 0,
"reqOpcode": 0,
"burstComplete": 0,
"padding": 0,
"offset": 0,
"data": "string"
}
Unsolicited telemetry message FTP_Nak (ID: 0x81)
Unsolicited telemetry message from device: FTP_Nak
Available only on servers:
Accepts the following message:
Device-initiated telemetry payload for FTP_Nak
{
"seq": 0,
"sysId": 0,
"compId": 0,
"msgId": 110,
"seqNumber": 0,
"session": 0,
"opcode": "4",
"size": 0,
"reqOpcode": 0,
"burstComplete": 0,
"padding": 0,
"offset": 0,
"errorCode": 0
}
Opens a file for reading; the ack (FTP_Ack) returns a session id that scopes every subsequent read against this open file.
Requests the server stream the file from offset onward, without individual acks per chunk, until burstComplete is set on the final FTP_Ack.
Every burst-read data packet is this same message, distinguished only by offset (where this chunk goes) and burstComplete (whether more are coming) -- there is no separate 'initial'/'follow-on' message name the way G460 or XMODEM have.
Device-initiated telemetry payload for FTP_Nak