DPs and Interaction Logic

Last Updated on : 2025-12-26 01:52:03download

Overview

This topic aims to standardize the interaction logic for key data points (DPs) between the robot vacuum device and the control panel (Universal Base Station All-in-one MiniApp), ensuring the proper implementation of device functions and consistency in user experience.

Core functional modules

Basic control features

  • Cleaning control: Start/stop cleaning, pause/resume operations.
  • Recharge management: Automatically control recharge and monitor the states.
  • Mode switching: Seamlessly switch between multiple cleaning modes.
  • Status monitoring: Report various device states in real time.

Supported cleaning modes

  • Quick mapping: Intelligent path planning for comprehensive area mapping.
  • Full-house cleaning: Intelligent path planning for comprehensive area cleaning.
  • Selected area cleaning: Precise cleaning based on designated rooms.
  • Selected zone cleaning: Custom rectangular area cleaning.
  • Selected spot cleaning: Precise positioning with the “point and go” feature.
  • Other modes: Remote control mode and other extended functionalities.

Smart monitoring

  • Fault diagnosis: Simultaneous reporting and identification of multiple faults.
  • Live video: Audio/video monitoring on/off control.

DP definition

DP ID DP name Identifier Data transfer Data type DP property
1 Cleaning switch switch_go Send and report (read-write) Bool
  • true: Start cleaning.
  • false: Stop cleaning.
2 Pause or continue pause Send and report (read-write) Bool
  • true: Pause the current work state.
  • false: Continue the current work state.
3 Recharge switch switch_charge Send and report (read-write) Bool
  • true: Start recharge.
  • false: Stop recharge.
4 Mode mode Send and report (read-write) Enum Default values (Do not modify or delete, as this might affect the control panel logic):
  • smart: Automatic cleaning mode / Full-house cleaning mode.
  • chargego: Automatic recharge mode (must be compatible with goto_charge).
  • zone: Selected zone cleaning mode / Rectangular zone cleaning mode.
  • pose: Point and go mode / selected spot cleaning mode.
  • select_room: Selected area cleaning mode.
  • manual: Remote control mode.
  • quick_mapping: Quick mapping mode.
5 Status status Report only (read-only) Enum Default values (Do not modify or delete, as this might affect the control panel logic):
  • standby: Standby.
  • smart: Automatic cleaning in progress.
  • zone_clean: Selected zone cleaning in progress.
  • part_clean: Partial cleaning in progress.
  • cleaning: Cleaning in progress (Alternative).
  • paused: Paused.
  • goto_pos: Going to the target location.
  • pos_arrived: Target location reached.
  • pos_unarrive: Target location unreachable.
  • goto_charge: Looking for a charging dock.
  • charging: Charging in progress.
  • charge_done: Charging completed.
  • sleep: Sleep mode.
  • select_room: Selected area cleaning in progress.
  • seek_dust_bucket: Looking for a dust collection bin.
  • mapping: Mapping in progress.
  • relocation: Relocating while cleaning.
  • breakpoint_charging: Charging in progress (resuming from a previous point).
  • manual_control: Remote control in progress.
  • mapping_done: Mapping completed.
  • relocation_recharge: Relocating to recharge.
  • collecting_dust: Collecting dust (Other status values can be added after this).
28 Fault reporting total_error Send and report (read-write) Raw All faults are represented using the raw data type, without distinguishing between machine faults or base station faults. Each fault is represented by 1 byte.
If faults 1, 2, and 3 occur simultaneously, the representation will be: 010203. The panel needs to determine and separate each fault byte. If there are no faults, the value is 00.
45 Live video switch live_video_switch Send and report (read-write) Bool
  • true: Enable.
  • false: Disable.

DP and panel interaction logic

Complex protocol control commands

  • COMPLEX_CMD_E enumeration:

    Command identifier Functional description Scenario
    ROOM_CLEAN_SET Room cleaning settings When starting the selected area cleaning mode.
    ROOM_CLEAN_QUERY Room cleaning query When resuming after a pause in the selected area cleaning.
    ZONE_CLEAN_SET Zone cleaning settings When starting the selected zone cleaning mode.
    ZONE_CLEAN_QUERY Zone cleaning query When resuming after a pause in the selected zone cleaning.
    SPOT_CLEAN_SET Selected spot cleaning settings When starting the selected spot cleaning mode.
    SPOT_CLEAN_QUERY Selected spot cleaning query When resuming after a pause in the selected spot cleaning.
  • Interface responses:

    • ty_rvc_room_clean_data_response: Response interface of selected area cleaning data.
    • ty_rvc_zone_clean_data_response: Response interface of selected zone cleaning data.
    • ty_rvc_spot_clean_data_response: Response interface of selected spot cleaning data.

For more information, refer to Complex Protocol Control.

Quick mapping mode

Operation scenario Interaction logic
Start mapping Click Start:
  • Send: DP1 switch_go = true & DP4 mode = quick_mapping
  • Report: DP1 switch_go = true & DP4 mode = quick_mapping & DP5 status = mapping
Pause mapping Click Pause:
  • Send: DP2 pause = true
  • Report: DP2 pause = true & DP5 status = paused
Resume mapping Click Resume:
  • Send: DP2 pause = false
  • Report: DP2 pause = false & DP5 status = mapping
Recharge during mapping When DP5 status = mapping/paused, click Recharge:
  • Send: DP3 switch_charge = true & DP2 pause = false
  • Report: DP3 switch_charge = true & DP1 switch_go = false & DP2 pause = false & DP5 status = goto_charge/charging/charge_done
Cancel during recharge When DP5 status = goto_charge, click Recharge:
  • Send: DP3 switch_charge = false
  • Report: DP1 switch_go = false & DP2 pause = false & DP3 switch_char= false &DP5 status = standby
Switch mode When DP5 status = mapping/paused, switching to another mode prompts: This operation will end the current task. Are you sure to end it?
  • Send: DP1 switch_go = false
  • Report: DP1 switch_go = false & DP2 pause = false & DP3 switch_char= false & DP5 status = standby

Full-house cleaning mode

Operation scenario Interaction logic
Start cleaning Click Start:
  • Send: DP1 switch_go = true & DP4 mode = smart
  • Report: DP1 switch_go = true & DP4 mode = smart & DP5 status = smart
Pause cleaning Click Pause:
  • Send: DP2 pause = true
  • Report: DP2 pause = true & DP5 status = paused
Resume cleaning Click Resume:
  • Send: DP2 pause = false
  • Report: DP2 pause = false & DP5 status = smart
Recharge during cleaning When DP5 status = smart/paused, click Recharge:
  • Send: DP3 switch_charge = true & DP2 pause = false
  • Report: DP3 switch_charge = true & DP1 switch_go = false & DP2 pause = false & DP5 status = goto_charge/charging/charge_done
Cancel during recharge When DP5 status = goto_charge, click Recharge:
  • Send: DP3 switch_charge = false
  • Report: DP1 switch_go = false & DP2 pause = false & DP3 switch_char= false &DP5 status = standby
Switch mode When DP5 status = smart/paused, switching to another mode prompts: This operation will end the current task. Are you sure to end it?
  • Send: DP1 switch_go = false
  • Report: DP1 switch_go = false & DP2 pause = false & DP3 switch_char= false & DP5 status = standby

Selected area cleaning mode

Operation scenario Interaction logic
Start cleaning Click Start:
  • Send: DP1=true & DP4=select_room & COMPLEX_CMD_E=ROOM_CLEAN_SET
  • Report: DP1=true & DP2=false & DP3=false & DP4=select_room & DP5=select_room & ty_rvc_room_clean_data_response
Pause cleaning Click Pause:
  • Send: DP2 pause = true
  • Report: DP2 pause = true& DP5 status = paused
Resume cleaning Click Resume:
  • Send: DP2 pause = false & COMPLEX_CMD_E = ROOM_CLEAN_QUERY
  • Report: DP2 pause = false & DP5 status = select_room & ty_rvc_room_clean_data_response
Recharge during cleaning Click Recharge:
  • Send: DP3 switch_charge = true & DP2 pause = false
  • Report: DP3 switch_charge = true & DP1 switch_go = false & DP2 pause = false & DP5 status = goto_charge/charging/charge_done
Cancel during recharge When DP5 status = goto_charge, click Recharge:
  • Send: DP3 switch_charge = false
  • Report: DP1 switch_go = false & DP2 pause = false & DP3 switch_char= false &DP5 status = standby
Switch mode When DP5 status = select_room/paused, switching to another mode prompts: This operation will end the current task. Are you sure to end it?
  • Send: DP1 switch_go = false
  • Report: DP1 switch_go = false & DP2 pause = false & DP3 switch_char= false &DP5 status = standby

Selected zone cleaning mode

Operation scenario Interaction logic
Start cleaning Click Start:
  • Send: DP1 switch_go = true & DP4 mode = zone & COMPLEX_CMD_E = ZONE_CLEAN_SET
  • Report: DP1 switch_go = true & DP2 pause = false & DP3 switch_char= false & DP4 mode = zone & DP5 status = zone_clean & ty_rvc_zone_clean_data_response
Pause cleaning Click Pause:
  • Send: DP2 pause = true
  • Report: DP2 pause = true & DP5 status = paused
Resume cleaning Click Resume:
  • Send: DP2 pause = false & COMPLEX_CMD_E = ZONE_CLEAN_QUERY
  • Report: DP2 pause = false & DP5 status = zone_clean & ty_rvc_zone_clean_data_response
Recharge during cleaning When DP5 status = zone_clean /paused, click Recharge:
  • Send: DP3 switch_charge = true & DP2 pause = false
  • Report: DP3 switch_charge = true & DP1 switch_go = false & DP2 pause = false & DP5 status = goto_charge/charging/charge_done
Cancel during recharge When DP5 status = goto_charge, click Recharge:
  • Send: DP3 switch_charge = false
  • Report: DP1 switch_go = false & DP2 pause = false & DP3 switch_char= false &DP5 status = standby
Switch mode When DP5 status = zone_clean /paused, switching to another mode prompts: This operation will end the current task. Are you sure to end it?
  • Send: DP1 switch_go = false
  • Report: DP1 switch_go = false & DP2 pause = false & DP3 switch_char= false &DP5 status = standby

Selected spot cleaning (point and go) mode

Operation scenario Interaction logic
Start cleaning Click Start:
  • Send: DP1 switch_go = true & DP4 mode = pose & COMPLEX_CMD_E = SPOT_CLEAN_SET
  • Report: DP1 switch_go = true & DP2 pause = false & DP3 switch_char= false & DP4 mode = pose & DP5 status = goto_pos/pos_arrived & ty_rvc_spot_clean_data_response
Pause cleaning Click Pause:
  • Send: DP2 pause = true
  • Report: DP2 pause = true & DP5 status = paused
Resume cleaning Click Resume:
  • Send: DP2 pause = false & COMPLEX_CMD_E = SPOT_CLEAN_QUERY
  • Report: DP2 pause = false & DP5 status = goto_pos/pos_arrived & ty_rvc_spot_clean_data_response
Recharge during cleaning When DP5 status = goto_pos/pos_arrived /paused, click Recharge:
  • Send: DP3 switch_charge = true & DP2 pause = false
  • Report: DP3 switch_charge = true & DP1 switch_go = false & DP2 pause = false & DP5 status = goto_charge/charging/charge_done
Cancel during recharge When DP5 status = goto_charge, click Recharge:
  • Send: DP3 switch_charge = false
  • Report: DP1 switch_go = false & DP2 pause = false & DP3 switch_char= false &DP5 status = standby
Switch mode When DP5 status = goto_pos/pos_arrived/paused, switching to another mode prompts: This operation will end the current task. Are you sure to end it?
  • Send: DP1 switch_go = false
  • Report: DP1 switch_go = false & DP2 pause = false & DP3 switch_char= false & DP5 status = standby

Recharge

Operation scenario Interaction logic
Automatic recharge
  • Send: DP3 switch_charge = true & DP2 pause = false
  • Report: DP3 switch_charge = true & DP1 switch_go = false & DP2 pause = false & DP5 status = goto_charge/charging/charge_done

Fault reporting

Description Interaction logic
Fault reporting Report: DP28 total_error
Data format: Raw type. One byte represents one error code.
  • No fault: 00
  • Fault #1: 01
  • Fault #10: 0a
  • Fault #1 + Fault #10: 010a

Audio and video

Description Interaction logic
Audio and video switch Start pushing audio/video stream data:
  • Send: DP45=true
    Report: DP45=true. At this point, the device can start streaming and place data into the ring buffer. For more information, see Audio and Video Ring Buffer.
Stop pushing audio/video stream data:
  • Send: DP45=false
  • Report: DP45=false. Stop placing data into the ring buffer.
Video monitoring logic Conditional checks:
  • When DP45 = false: Show a dialog: Live video not enabled.
  • When DP45=true:
  • With password: Perform password verification.
  • Without password: Directly open the video monitoring interface.

Things to note

  • The content above is based only on the Universal Base Station All-in-one MiniApp and describes the DP interactions related to robot vacuum movement. For other DP interactions, refer to the corresponding SDK demo.
  • Fault codes are parsed by the panel, and multiple faults might exist simultaneously.
  • Default enumeration values must not be modified or deleted, ensuring the control panel logic functions correctly.
  • Status and mode enumerations can be extended in the future (contact the Tuya product manager), but backward compatibility must be maintained.