UAV Configuration
The UAV configuration subprotocol allows the GCS to read and update the stored UAV configurations on the UAV.
UAV Configuration Read
The UAV configuration read subprotocol allows the GCS to read the stored UAV configuration from the UAV, either initiated by the Operator or when a connection is established.
Messages
CONFIGURATION_READ_REQUESTCONFIGURATION_PARAMS
Sequence
sequenceDiagram
participant GCS
participant UAV
loop n
GCS->>UAV: CONFIGURATION_READ_REQUEST
GCS->>GCS: Start timeout
alt success
UAV-->>GCS: CONFIGURATION_PARAMS
else failure
GCS->>GCS: Timeout expires
end
end
- When the GCS wants to read the UAV Configuration from the UAV, it sends a
CONFIGURATION_READ_REQUESTmessage to the UAV. - The GCS starts a timeout of a fixed duration.
- If the UAV responds with a
CONFIGURATION_PARAMSmessage before the timeout expires, the operation is considered successful. - If the timeout expires before the UAV can send a response, the operation is considered a failure, the error is reported and the UAV continues operations.
Note- The configuration being used by the GCS is not updated before the entire set of parameters is received from the UAV. If the operation fails midway, the error is reported and the configuration being displayed on the GCS is maintained.
UAV Configuration Write
The UAV configuration write subprotocol allows the GCS to update the stored UAV configuration in the UAV.
Messages
CONFIGURATION_WRITE_REQUESTCONFIGURATION_WRITE_REQUEST_ACKCONFIGURATION_PARAMSCONFIGURATION_PARAMS_ACKCONFIGURATION_PARAMS_NACK
Sequence
sequenceDiagram
participant GCS
participant UAV
loop every 200 milliseconds
GCS->>UAV: CONFIGURATION_WRITE_REQUEST
GCS->>GCS: Start timeout
alt success
UAV-->>GCS: CONFIGURATION_WRITE_REQUEST_ACK
UAV->>UAV: Start timeout
alt success
GCS-->>UAV: CONFIGURATION_PARAMS
GCS->>GCS: Start timeout
alt success
UAV-->>GCS: CONFIGURATION_PARAMS_ACK
else cancelled
UAV-->>GCS: CONFIGURATION_PARAMS_NACK
else failure
GCS->>GCS: Timeout expires
end
else failure
UAV->>UAV: Timeout expires
end
else failure
GCS->>GCS: Timeout expires
end
end
- When the GCS wants to update the UAV Configuration in the UAV, it sends a
CONFIGURATION_WRITE_REQUESTmessage to the UAV. - The GCS starts a timeout of a fixed duration.
- If the UAV responds with a
CONFIGURATION_WRITE_REQUEST_ACKbefore the timeout expires, the operation moves ahead. - If the timeout expires before the UAV can send a response, the operation is considered cancelled.
- After the UAV has responded with a
CONFIGURATION_WRITE_REQUEST_ACKmessage, it starts a timeout of a fixed duration. - If the GCS responds with the
CONFIGURATION_PARAMSmessage before the timeout expires, the UAV responds with aCONFIGURATION_PARAMS_ACKmessage. - If the timeout expires before the GCS is able to send the parameters, the operation is considered cancelled and the UAV continues operations.
- Once the GCS sends the
CONFIGURATION_PARAMSmessage, it starts a timeout of a fixed duration. - If the UAV responds with a
CONFIGURATION_PARAMS_ACKmessage before the timeout expires, the operation is considered successful. - If the UAV responds with a
CONFIGURATION_PARAMS_NACKmessage before the timeout expires, the operation is considered cancelled. - If the timeout expires before UAV can send a response, the operations is considered a failure.
Note- The configuration stored on and being used by the UAV is not updated before the entire set of parameters is received from the GCS. If the operation fails midway, the error is logged and the configuration being used by the UAV before continues to be used.