Remote Debugging
Interface Changes
✓ available, — not available. Interfaces not listed are identical on EVO Nest and Autel Nest2.
| Method | Function | EVO Nest | Autel Nest2 | Notes |
|---|---|---|---|---|
cover_force_close | Force Close the Hatch | — | ✓ | Used when the cover fails to close normally |
open_backup_battery | Enable Backup Battery | — | ✓ | |
close_backup_battery | Disable Backup Battery | — | ✓ | |
ac_debug_mode_open | Enable Air Conditioner Debug Mode | — | ✓ | |
ac_debug_mode_close | Disable Air Conditioner Debug Mode | — | ✓ | |
silent_mode_switch | Switch Silent Mode | — | ✓ | |
dock_binding_set | Dock Pairing | — | ✓ | |
drone_activate | Drone Activation / Deactivation | — | ✓ | UOM real-name registration |
web_nest_rtk_get | Query Dock RTK Calibration Result | — | ✓ | |
putter_open | Extend the Push Rod | ✓ | — | Not exposed on Autel Nest2 |
putter_close | Retract the Push Rod | ✓ | — | Not exposed on Autel Nest2 |
battery_maintenance_switch | Switch Battery Maintenance Status | ✓ | — | |
battery_store_mode_switch | Battery Operation Mode Switch | ✓ | — | |
alarm_state_switch | Airport Sound and Light Alarm Switch | ✓ | — | |
device_reboot | Dock Restart Progress (Not Implemented) | ✓ | ✓ | The events progress report is not implemented; the reboot command itself is unchanged |
Drone Boot Progress
Topic: thing/product/{gateway_sn}/events
Direction: up
Method: drone_open
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"canceled":"Canceled","failed":"Failed","in_progress":"In progress","ok":"Completed","sent":"Accepted","timeout":"Timed out"} | Task execution status |
Example:
{
"bid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"data": {
"output": {
"status": "in_progress"
},
"result": 0
},
"tid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"timestamp": 1654070968655,
"gateway": "AUTEL_NEST2_SN",
"method": "drone_open"
}
Topic: thing/product/{gateway_sn}/events_reply
Direction: down
Method: drone_open
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error |
Example:
{
"method": "drone_open",
"tid": "6a7bfe89-c386-4043-b600-b518e10096cc",
"bid": "42a19f36-5117-4520-bd13-fd61d818d52e",
"timestamp": "1234567890123",
"data": {
"result": 0
}
}
Drone Shutdown Progress
Topic: thing/product/{gateway_sn}/events
Direction: up
Method: drone_close
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"canceled":"Canceled","failed":"Failed","in_progress":"In progress","ok":"Completed","sent":"Accepted","timeout":"Timed out"} | Task execution status |
| »progress | Progress | struct | Task execution progress | |
| »»percent | Progress percent | int | {"max":"100","min":"0","step":"1","unit_name":"Percentage / %"} | Current progress percentage |
| »»step_key | Current step | enum_string | {"close_drone":"Power off drone"} | Current execution step identifier |
Example:
{
"bid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"data": {
"output": {
"progress": {
"percent": 20,
"step_key": "close_drone"
},
"status": "in_progress"
},
"result": 0
},
"tid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"timestamp": 1654070968655,
"gateway": "AUTEL_NEST2_SN",
"method": "drone_close"
}
Topic: thing/product/{gateway_sn}/events_reply
Direction: down
Method: drone_close
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error |
Example:
{
"method": "drone_close",
"tid": "6a7bfe89-c386-4043-b600-b518e10096cc",
"bid": "42a19f36-5117-4520-bd13-fd61d818d52e",
"timestamp": "1234567890123",
"data": {
"result": 0
}
}
Dock Restart Progress (Not Implemented)
Topic: thing/product/{gateway_sn}/events
Direction: up
Method: device_reboot
Note: This events-based progress report is not implemented; the current firmware does not report restart progress on this Topic. The actual progress is reported via device_reboot_progress on services_reply, whose output is a flat structure (progress as an integer percentage and step as a step string; fixed to progress=100 and step="rebooting" for reboot). The services_reply of the device_reboot command itself first returns output.status as accepted. Do not rely on the progress and step_key fields in this section.
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"canceled":"Cancelled","failed":"Failed","in_progress":"In progress","ok":"Successful","paused":"Paused","rejected":"Rejected","sent":"Issued","timeout":"Timeout"} | Task execution status |
Example:
{
"bid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"data": {
"output": {
"status": "in_progress"
},
"result": 0
},
"tid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"timestamp": 1654070968655,
"method": "device_reboot"
}
Topic: thing/product/{gateway_sn}/events_reply
Direction: down
Method: device_reboot
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error |
Example:
{
"method": "device_reboot",
"tid": "6a7bfe89-c386-4043-b600-b518e10096cc",
"bid": "42a19f36-5117-4520-bd13-fd61d818d52e",
"timestamp": "1234567890123",
"data": {
"result": 0
}
}
Hatch Cover Closing Progress
Topic: thing/product/{gateway_sn}/events
Direction: up
Method: cover_close
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"canceled":"Canceled","failed":"Failed","in_progress":"In progress","ok":"Completed","timeout":"Timed out"} | Task execution status |
| »progress | Progress | struct | Task execution progress | |
| »»percent | Progress percentage | int | {"max":"100","min":"0","step":"1","unit_name":"Percentage / %"} | Current progress percentage |
| »»step_key | Current step | enum_string | {"drone_paddle_reverse":"Center propellers and close cover"} | Current execution step identifier |
Example:
{
"bid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"data": {
"output": {
"progress": {
"percent": 58,
"step_key": "drone_paddle_reverse"
},
"status": "in_progress"
},
"result": 0
},
"tid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"timestamp": 1654070968655,
"gateway": "AUTEL_NEST2_SN",
"method": "cover_close"
}
Topic: thing/product/{gateway_sn}/events_reply
Direction: down
Method: cover_close
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error |
Example:
{
"method": "cover_close",
"tid": "6a7bfe89-c386-4043-b600-b518e10096cc",
"bid": "42a19f36-5117-4520-bd13-fd61d818d52e",
"timestamp": "1234567890123",
"data": {
"result": 0
}
}
Hatch Cover Opening Progress
Topic: thing/product/{gateway_sn}/events
Direction: up
Method: cover_open
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"canceled":"Cancelled","failed":"Failed","in_progress":"In progress","ok":"Successful","paused":"Paused","rejected":"Rejected","sent":"Issued","timeout":"Timeout"}"} | Task execution status |
| »progress | Progress | struct | Task execution progress | |
| »»percent | Progress percent | int | {"max":"100","min":"0","step":"1","unit_name":"Percentage / %"} | Current progress percentage |
| »»step_key | Current step | enum_string | {"download_firmware":"Download firmware","upgrade_firmware":"Upgrade firmware"} | Current execution step identifier |
Example:
{
"bid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"data": {
"output": {
"progress": {
"percent": 70,
"step_key": "open_cover"
},
"status": "in_progress"
},
"result": 0
},
"tid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"timestamp": 1654070968655,
"method": "cover_open"
}
Topic: thing/product/{gateway_sn}/events_reply
Direction: down
Method: cover_open
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error |
Example:
{
"method": "cover_open",
"tid": "6a7bfe89-c386-4043-b600-b518e10096cc",
"bid": "42a19f36-5117-4520-bd13-fd61d818d52e",
"timestamp": "1234567890123",
"data": {
"result": 0
}
}
Turn On Charging Progress
Topic: thing/product/{gateway_sn}/events
Direction: up
Method: charge_open
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"canceled":"Canceled","failed":"Failed","in_progress":"In progress","ok":"Completed","sent":"Accepted","timeout":"Timed out"} | Task execution status |
| »progress | Progress | struct | Task execution progress | |
| »»percent | Progress percent | int | {"max":"100","min":"0","step":"1","unit_name":"Percentage / %"} | Current progress percentage |
| »»step_key | Current step | enum_string | {"start_charge":"Start charging"} | Current execution step identifier |
Example:
{
"bid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"data": {
"output": {
"progress": {
"percent": 45,
"step_key": "start_charge"
},
"status": "in_progress"
},
"result": 0
},
"tid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"timestamp": 1654070968655,
"gateway": "AUTEL_NEST2_SN",
"method": "charge_open"
}
Topic: thing/product/{gateway_sn}/events_reply
Direction: down
Method: charge_open
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error |
Example:
{
"method": "charge_open",
"tid": "6a7bfe89-c386-4043-b600-b518e10096cc",
"bid": "42a19f36-5117-4520-bd13-fd61d818d52e",
"timestamp": "1234567890123",
"data": {
"result": 0
}
}
Turn Off Charging Progress
Topic: thing/product/{gateway_sn}/events
Direction: up
Method: charge_close
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"canceled":"Canceled","failed":"Failed","in_progress":"In progress","ok":"Completed","sent":"Accepted","timeout":"Timed out"} | Task execution status |
| »progress | Progress | struct | Task execution progress | |
| »»percent | Progress percent | int | {"max":"100","min":"0","step":"1","unit_name":"Percentage / %"} | Current progress percentage |
| »»step_key | Current step | enum_string | {"stop_charge":"Stop charging"} | Current execution step identifier |
Example:
{
"bid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"data": {
"output": {
"progress": {
"percent": 80,
"step_key": "stop_charge"
},
"status": "in_progress"
},
"result": 0
},
"tid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"timestamp": 1654070968655,
"gateway": "AUTEL_NEST2_SN",
"method": "charge_close"
}
Topic: thing/product/{gateway_sn}/events_reply
Direction: down
Method: charge_close
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error |
Example:
{
"method": "charge_close",
"tid": "6a7bfe89-c386-4043-b600-b518e10096cc",
"bid": "42a19f36-5117-4520-bd13-fd61d818d52e",
"timestamp": "1234567890123",
"data": {
"result": 0
}
}
Drone Data Formatting Progress
Topic: thing/product/{gateway_sn}/events
Direction: up
Method: drone_format
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"failed":"Failed","in_progress":"In progress","ok":"Completed"} | Task execution status |
| »progress | Progress | struct | Task execution progress | |
| »»percent | Progress percent | int | -1/0..100 | -1 failure, 0..90 in progress, 100 success |
| »»name | Progress name | string | "drone_format" | Progress name |
| »»desc | Progress description | string | "Drone data formatting (progress)" | Progress description |
Example:
{
"bid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"data": {
"output": {
"progress": {
"percent": 50,
"name": "drone_format",
"desc": "Drone data formatting (progress)"
},
"status": "in_progress"
},
"result": 0
},
"tid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"timestamp": 1654070968655,
"gateway": "AUTEL_NEST2_SN",
"method": "drone_format"
}
Topic: thing/product/{gateway_sn}/events_reply
Direction: down
Method: drone_format
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error |
Example:
{
"method": "drone_format",
"tid": "6a7bfe89-c386-4043-b600-b518e10096cc",
"bid": "42a19f36-5117-4520-bd13-fd61d818d52e",
"timestamp": "1234567890123",
"data": {
"result": 0
}
}
Dock Data Formatting Progress
Topic: thing/product/{gateway_sn}/events
Direction: up
Method: device_format
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"failed":"Failed","in_progress":"In progress","ok":"Completed"} | Task execution status |
| »progress | Progress | struct | Task execution progress | |
| »»percent | Progress percent | int | -1/0/100 | -1 failure, 0 at start, 100 success |
| »»name | Progress name | string | "device_format" | Progress name |
| »»desc | Progress description | string | "Dock data formatting (progress)" | Progress description |
Example:
{
"bid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"data": {
"output": {
"progress": {
"percent": 50,
"name": "device_format",
"desc": "Dock data formatting (progress)"
},
"status": "in_progress"
},
"result": 0
},
"tid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"timestamp": 1654070968655,
"gateway": "AUTEL_NEST2_SN",
"method": "device_format"
}
Topic: thing/product/{gateway_sn}/events_reply
Direction: down
Method: device_format
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error |
Example:
{
"method": "device_format",
"tid": "6a7bfe89-c386-4043-b600-b518e10096cc",
"bid": "42a19f36-5117-4520-bd13-fd61d818d52e",
"timestamp": "1234567890123",
"data": {
"result": 0
}
}
RTK Calibration Progress
Topic: thing/product/{gateway_sn}/events
Direction: up
Method: rtk_calibration
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Return code, non-zero indicates error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"failed":"Failed","in_progress":"In progress","ok":"Completed"} | Task execution status |
| »progress | Progress | struct | Task execution progress | |
| »»percent | Progress percentage | int | {"max":"100","min":"0","step":"1","unit_name":"Percentage / %"} | Current progress percentage |
| »»step_key | Current step | enum_string | {"idle":"Idle","rtk_login":"RTK logging in","rtk_login_success":"RTK login successful","rtk_positioning":"RTK positioning","rtk_positioning_success":"RTK positioning successful","rtk_calibration_success":"RTK calibration successful"} | Current execution step identifier |
| »calibration_info | struct | RTK calibration information | ||
| »»calibration_lat | Calibration latitude | double | RTK calibration latitude | |
| »»calibration_lng | Calibration longitude | double | RTK calibration longitude | |
| »»calibration_alt | Calibration altitude | double | RTK calibration altitude |
Example:
{
"bid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"data": {
"output": {
"progress": {
"percent": 80,
"step_key": "rtk_login"
},
"status": "in_progress"
},
"result": 0
},
"tid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"timestamp": 1654070968655,
"gateway": "AUTEL_NEST2_SN",
"method": "rtk_calibration"
}
Topic: thing/product/{gateway_sn}/events_reply
Direction: down
Method: rtk_calibration
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error |
Example:
{
"method": "rtk_calibration",
"tid": "6a7bfe89-c386-4043-b600-b518e10096cc",
"bid": "42a19f36-5117-4520-bd13-fd61d818d52e",
"timestamp": "1234567890123",
"data": {
"result": 0
}
}
Manual Paddle Blade Progress
Topic: thing/product/{gateway_sn}/events
Direction: up
Method: paddling_blade
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"canceled":"Canceled","failed":"Failed","in_progress":"In progress","ok":"Completed","timeout":"Timed out"} | Task execution status |
Example:
{
"bid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"data": {
"output": {
"status": "in_progress"
},
"result": 0
},
"tid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"timestamp": 1654070968655,
"gateway": "AUTEL_NEST2_SN",
"method": "paddling_blade"
}
Topic: thing/product/{gateway_sn}/events_reply
Direction: down
Method: paddling_blade
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error |
Example:
{
"method": "paddling_blade",
"tid": "6a7bfe89-c386-4043-b600-b518e10096cc",
"bid": "42a19f36-5117-4520-bd13-fd61d818d52e",
"timestamp": "1234567890123",
"data": {
"result": 0
}
}
Gimbal Calibration Progress
Topic: thing/product/{gateway_sn}/events
Direction: up
Method: gimbal_calibration
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"failed":"Failed","in_progress":"In progress","ok":"Completed"} | Task execution status |
| »progress | Progress | struct | Task execution progress | |
| »»percent | Progress percentage | int | {"max":"100","min":"0","step":"1","unit_name":"Percentage / %"} | Current progress percentage |
| »»step_key | Current step | enum_string | {"gimbal_calibrating":"Gimbal calibrating"} | Current execution step identifier |
Example:
{
"bid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"data": {
"output": {
"progress": {
"percent": 50,
"step_key": "gimbal_calibrating"
},
"status": "in_progress"
},
"result": 0
},
"tid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"timestamp": 1654070968655,
"gateway": "AUTEL_NEST2_SN",
"method": "gimbal_calibration"
}
Topic: thing/product/{gateway_sn}/events_reply
Direction: down
Method: gimbal_calibration
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error |
Example:
{
"method": "gimbal_calibration",
"tid": "6a7bfe89-c386-4043-b600-b518e10096cc",
"bid": "42a19f36-5117-4520-bd13-fd61d818d52e",
"timestamp": "1234567890123",
"data": {
"result": 0
}
}
Service
Pairing Status Report
Topic: thing/product/{gateway_sn}/events
Direction: up
Method: dock_binding_set
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | 0 for success or in progress; 1 for failure | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"in_progress":"In progress","ok":"Completed successfully","failed":"Failed"} | Task execution status |
| »progress | Progress | struct | Pairing progress | |
| »»percent | Progress percent | int | 0..100 | Current progress percentage |
| »»step_key | Current step | enum_string | {"status_unknow":"Not paired","status_pairing":"Pairing","status_suc":"Pairing successful","status_failed":"Pairing failed or timed out","status_pairing_failed":"Unknown status failure"} | Current execution step identifier |
Example:
{
"bid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"data": {
"output": {
"progress": {
"percent": 50,
"step_key": "status_pairing"
},
"status": "in_progress"
},
"result": 0
},
"tid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"timestamp": 1654070968655,
"gateway": "AUTEL_NEST2_SN",
"method": "dock_binding_set"
}
Service
Use a non-zero
resultas the sole failure indicator; do not rely on theoutputfield. Failure details are recorded only in device logs.
Debug Mode On
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: debug_mode_open
Data: null
Description: Switches only the App's internal remote debugging state and mode_code=2; it does not enable the air conditioner SDK debug mode.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: debug_mode_open
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"ok":"Completed"} | Task execution status |
Debug Mode Off
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: debug_mode_close
Data: null
Description: Clears the App's internal remote debugging state and restores mode_code=0.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: debug_mode_close
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"ok":"Completed"} | Task execution status |
Enable Air Conditioner Debug Mode
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: ac_debug_mode_open
Data: null
Description: After a successful reply, wait for device status to confirm that air conditioner debug mode is active. The App exits after 15 minutes of inactivity.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: ac_debug_mode_open
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"success":"Completed"} | Task execution status |
Disable Air Conditioner Debug Mode
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: ac_debug_mode_close
Data: null
Description: Disables air conditioner SDK debug mode and stops the inactivity watchdog.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: ac_debug_mode_close
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"success":"Completed"} | Task execution status |
Turn On the Auxiliary Light
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: supplement_light_open
Data: null
Reply status: The first reply is processing; successful execution is followed by success.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: supplement_light_open
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"processing":"Processing","success":"Completed"} | Task execution status |
Turn Off the Auxiliary Light
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: supplement_light_close
Data: null
Reply status: The first reply is processing; successful execution is followed by success.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: supplement_light_close
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"processing":"Processing","success":"Completed"} | Task execution status |
Switch Dock Air Conditioner Operating Mode
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: air_conditioner_mode_switch
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| action | Action | enum_int | {"0":"Set dock air conditioner to idle mode (turn off cooling, heating, or dehumidifying)","1":"Set dock air conditioner to cooling mode","2":"Set dock air conditioner to heating mode","3":"Set dock air conditioner to dehumidifying mode (dehumidifying includes both cooling and heating dehumidification; the device selects between them automatically, no user intervention required)"} | Service operation parameter |
Prerequisite: Call ac_debug_mode_open first and wait for device status to confirm that air conditioner debug mode is active.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: air_conditioner_mode_switch
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"success":"Completed"} | Task execution status |
Dock Restart
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: device_reboot
Data: null
Description: accepted means only that the request was accepted. Confirm the restart by observing the device go offline and come back online.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: device_reboot
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"accepted":"Accepted"} | Task execution status |
Drone Power On
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: drone_open
Data: null
Key constraints: The aircraft must be in the dock, not flying, and the cover closed. Rejected during dock or aircraft OTA. Timeout: 120 seconds.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: drone_open
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"canceled":"Canceled","failed":"Failed","in_progress":"In progress","ok":"Completed","sent":"Accepted","timeout":"Timed out"} | Task execution status |
Drone Power Off
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: drone_close
Data: null
Key constraints: The aircraft must be in the dock, not flying, and the cover closed. Rejected during OTA, firmware upgrade, or aircraft log download. Timeout: 60 seconds.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: drone_close
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"canceled":"Canceled","failed":"Failed","in_progress":"In progress","ok":"Completed","sent":"Accepted","timeout":"Timed out"} | Task execution status |
Dock Data Formatting
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: device_format
Data: null
Description: Clears local cache, flight mission configuration, current mission status, and flight records. Rejected during dock OTA.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: device_format
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"ok":"Completed"} | Task execution status |
Drone Data Formatting
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: drone_format
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| type | Storage type | enum_int | {"0":"SD card","1":"EMMC"} | Optional; when omitted, the App uses its current storage policy |
Key constraints: Rejected while flying or during OTA. SD card status must be Ready. Timeout: 5 minutes.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: drone_format
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"ok":"Completed"} | Task execution status |
Open the Hatch
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: cover_open
Data: null
Key constraints: Rejected during emergency stop, dock OTA, another cover operation, or RC autonomous alternate landing while flying. Timeout: 120 seconds.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: cover_open
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"canceled":"Canceled","failed":"Failed","in_progress":"In progress","ok":"Completed","sent":"Accepted","timeout":"Timed out"} | Task execution status |
Close the Hatch
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: cover_close
Data: null
Key constraints: Rejected during emergency stop, dock OTA, paddle extension, flight preparation/landing, or another cover operation. Timeout: 120 seconds.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: cover_close
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"canceled":"Canceled","failed":"Failed","in_progress":"In progress","ok":"Completed","sent":"Accepted","timeout":"Timed out"} | Task execution status |
Force Close the Hatch
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: cover_force_close
Data: null
Description: Force-closes the hatch only when the dock-pushed drone_in_dock field is 0 and the aircraft is confirmed absent via the dock camera; otherwise the blades may be clamped.
Note: This command bypasses the blade-clamping and flight-task protections. Ensure the blades are stowed and no flight task is running before calling it.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: cover_force_close
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"canceled":"Canceled","failed":"Failed","in_progress":"In progress","ok":"Completed","sent":"Accepted","timeout":"Timed out"} | Task execution status |
Start Charging
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: charge_open
Data: null
Key constraints: The aircraft must be in the dock, not flying, and the cover closed. Rejected during dock OTA. Timeout: 60 seconds.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: charge_open
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"canceled":"Canceled","failed":"Failed","in_progress":"In progress","ok":"Completed","sent":"Accepted","timeout":"Timed out"} | Task execution status |
Stop Charging
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: charge_close
Data: null
Key constraints: The aircraft must be in the dock, not flying, and the cover closed. Rejected during dock OTA. Timeout: 60 seconds.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: charge_close
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"canceled":"Canceled","failed":"Failed","in_progress":"In progress","ok":"Completed","sent":"Accepted","timeout":"Timed out"} | Task execution status |
RTK Calibration
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: rtk_calibration
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| action | Action | enum_int | {"0":"Manual calibration","1":"Network calibration"} | Service operation parameter |
| manual_params | Manual calibration parameters | struct | Required when action is 0 | |
| latitude | Calibration latitude | double | RTK calibration latitude | |
| longitude | Calibration longitude | double | RTK calibration longitude | |
| altitude | Calibration altitude | double | RTK calibration altitude | |
| network_params | Network calibration parameters | struct | Required when action is 1 | |
| domain_name | RTK account domain | text | NTRIP server domain name | |
| port | RTK account port | int | NTRIP server port | |
| mount_point | RTK account mount point | text | NTRIP mount point | |
| username | RTK account username | text | NTRIP username | |
| password | RTK account password | text | NTRIP password | |
| rtcm_forward_mode | RTCM forwarding mode | int/string | Optional | 0 frame-by-frame; 1/raw/RAW_PASSTHROUGH raw passthrough |
Validation: action accepts only 0/1; latitude and longitude cannot both be (0, 0) for manual calibration.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: rtk_calibration
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"ok":"Completed","sent":"Accepted"} | Task execution status |
Query Dock RTK Calibration Result
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: web_nest_rtk_get
Data: null
Description: A pure snapshot query that does not trigger any calibration action. The returned coordinates are resolved in this order: (1) the base point written by manual or network calibration; (2) the real-time solution when no base point exists and RTK has a fixed solution (fix_status is 0); (3) 410 when neither is available.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: web_nest_rtk_get
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | {"0":"Calibrated","410":"RTK base station not calibrated"} | Non-zero represents an error |
| output | Output | struct | Output of the service execution | |
| »rtk_lat | Calibrated latitude | double | 0 when not calibrated | |
| »rtk_lng | Calibrated longitude | double | 0 when not calibrated | |
| »rtk_alt | Calibrated altitude | double | 0 when not calibrated |
Description: This command does not return a status field in output; the calibration result is expressed by result directly.
Gimbal Calibration
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: gimbal_calibration
Data: null
Key constraints: The aircraft must be online. The final result is reported by an independent calibration Event.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: gimbal_calibration
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error |
Example:
{
"method": "gimbal_calibration",
"tid": "6a7bfe89-c386-4043-b600-b518e10096cc",
"bid": "42a19f36-5117-4520-bd13-fd61d818d52e",
"timestamp": "1234567890123",
"gateway": "AUTEL_NEST2_SN",
"data": {
"result": 0
}
}
Enhanced Image Transmission Switch
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: sdr_workmode_switch
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| link_workmode | Image transmission mode | enum_int | {"0":"SDR only","1":"4G enhanced mode"} | In 4G enhanced mode, both SDR and 4G are used simultaneously |
Description: Values 0/1 also update the LTE enhancement switch on a best-effort basis; failure does not affect the primary reply.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: sdr_workmode_switch
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error |
Manual Paddle Blade
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: paddling_blade
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| action | Paddle action | enum_int | {"0":"Stop","1":"Extend/start","2":"Fold"} | Optional, defaults to 1 (extend) |
Description: The aircraft must be online and not flying. Extension waits up to 300 seconds, after which a timeout is reported through Event; the final status is reported through Event.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: paddling_blade
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"sent":"Accepted"} | Task execution status |
Emergency Stop
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: emergency_stop
Data: null
Description: accepted only means that the request was accepted. Confirm the action using dock emergency stop status.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: emergency_stop
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"accepted":"Accepted"} | Task execution status |
Release Emergency Stop
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: emergency_stop_release
Data: null
Description: Wait until emergency stop status is cleared before operating the cover, charging, or aircraft power.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: emergency_stop_release
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"accepted":"Accepted"} | Task execution status |
Enable Backup Battery
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: open_backup_battery
Data: null
Reply status: The first reply is processing; successful execution is followed by success.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: open_backup_battery
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"processing":"Processing","success":"Completed"} | Task execution status |
Disable Backup Battery
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: close_backup_battery
Data: null
Reply status: The first reply is processing; successful execution is followed by success.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: close_backup_battery
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"processing":"Processing","success":"Completed"} | Task execution status |
Switch Silent Mode
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: silent_mode_switch
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| switch | Silent mode switch | enum_int | {"0":"Off","1":"On"} | Required; the value must be 0 or 1 |
Key constraints: The dock device ID must be valid.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: silent_mode_switch
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"ok":"Completed"} | Task execution status |
Dock Pairing
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: dock_binding_set
Data: null
Description: The first reply is sent; if pairing is already active, the reply is in_progress. Detailed progress is reported through Event.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: dock_binding_set
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"sent":"Accepted","in_progress":"In progress"} | Task execution status |
Drone Activation / Deactivation
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: drone_activate
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| action | Action | enum_int | {"0":"Deactivate","1":"Activate"} | Required |
| country_code | Country code | text | Two-letter ISO 3166 code | Required when action is 1; whitespace is stripped and the value is converted to uppercase |
| cancel_reg_type | Cancellation type | text | {"0":"Discontinued use","3":"Ownership change","4":"Other"} | Optional, only valid when action is 0, defaults to 0 |
| cancel_reg_reason | Cancellation reason | text | Up to 200 characters | Optional, only valid when action is 0. Values longer than 200 characters are truncated to the first 200 characters instead of being rejected |
Description: The execution order is drone online check → cloud registration → write to the drone. Nothing is written to the drone if cloud registration fails.
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: drone_activate
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero represents an error | |
| output | Output | struct | Output of the service execution | |
| »status | Task status | enum_string | {"ok":"Completed","failed":"Failed"} | Task execution status |
| »message | Error description | text | Returned only on failure |
Common return codes:
| result | Description |
|---|---|
| 1901 | Missing parameter, wrong type, or invalid value |
| 406 | Drone not connected |
| 2 | Cloud registration timed out |
| 359021 | Cloud registration failed |
| 359022 | Rejected by cloud: invalid device SN |
| 1999 | Unexpected exception |