Onboard SDK implements functionality to wait for ACK frame from a flight controller. Developer is responsible to parse received ACK. DJI_Mission.cpp implements flight mission ACK map to allow you to map received ACK to a meaningful message (see "Flight Mission ACK Map" below with an example).
List of Flight Mission CMDs returning ACK:
Ground Station CMD Set : WayPoint
Ground Station CMD Set : Hotpoint
Ground Station CMD Set : Follow Me
Flight Mission ACK Map
| Mission Or Control Name | ACK Code | Description |
|---|---|---|
| Control Call | 0x00 | Success |
| 0x01 | Wrong WayPoint Index | |
| 0xD0 | Not At Mode F | |
| 0xD1 | Need obtain control | |
| 0xD2 | Need close IOC mode | |
| 0xD3 | Mission not initialized | |
| 0xD4 | Mission not running | |
| 0xD5 | Mission already running | |
| 0xD6 | Too consuming of time | |
| 0xD7 | Other mission running | |
| 0xD8 | Bad GPS | |
| 0xD9 | Low battery | |
| 0xDA | UAV did not take off | |
| 0xDB | Wrong patameters | |
| 0xDC | Conditions not satisfied | |
| 0xDD | Crossing No-Fly zone | |
| 0xDE | Unrecorded Home | |
| 0xDF | Already at No-Fly zone | |
| 0xC0 | Too High | |
| 0xC1 | Too Low | |
| 0xC7 | Too far from home | |
| 0xC8 | Mission not supported | |
| 0xC9 | Too far from current position | |
| 0xCA | Beginner mode does not support missions | |
| 0xF0 | Taking off | |
| 0xF1 | Landing | |
| 0xF2 | Returning home | |
| 0xF3 | Starting motors | |
| 0xF4 | Invalid command | |
| 0xFF | Unknown error | |
| Follow | 0xB0 | Too far from your position, lack of radio connection |
| 0xB1 | Cutoff time overflow | |
| 0xB2 | Gimbal pitch angle too large | |
| HotPoint | 0xC2 | Invalid radius |
| 0xC3 | yawRate too large | |
| 0xC4 | Invalid vision | |
| 0xC5 | Invalid yaw mode | |
| 0xC6 | Too far from HotPoint | |
| 0xC6 | Too far from HotPoint | |
| 0xC6 | Too far from HotPoint | |
| 0xA2 | Invalid HotPoint parameter | |
| 0xA3 | Invalid latitude or longtitude | |
| 0xA6 | Invalid direction | |
| 0xA9 | HotPoint paused | |
| 0xAA | HotPoint failed to pause | |
| WayPoint | 0xE0 | Invalid waypoint mission data |
| 0xE1 | Invalid waypoint point data | |
| 0xE2 | WayPoint distance out of range | |
| 0xE3 | WayPoint mission out of range | |
| 0xE4 | Too many points | |
| 0xE5 | Points too close | |
| 0xE6 | Points too far | |
| 0xE7 | Check failed | |
| 0xE8 | Invalid action | |
| 0xE9 | Point data not enough | |
| 0xEA | WayPoint mission data not enough | |
| 0xEB | WayPoints not enough | |
| 0xEC | WayPoint mission already running | |
| 0xED | WayPoint mission is not running | |
| 0xEE | Invalid velocity | |
| IOC | 0xA0 | Too near to home |
| 0xA1 | Too close to home, within 20 meters |
Example:
Mission ack = api->task(