Skip to content

Commit

Permalink
Added support for the Zedar R600 robot vacuum
Browse files Browse the repository at this point in the history
  • Loading branch information
lankhaar authored and make-all committed Jul 15, 2024
1 parent 146e4e0 commit 524c6f1
Show file tree
Hide file tree
Showing 2 changed files with 353 additions and 0 deletions.
1 change: 1 addition & 0 deletions DEVICES.md
Original file line number Diff line number Diff line change
Expand Up @@ -594,6 +594,7 @@ of device.
- Tesvor S6 vacuum cleaner with mop
- TTEC Robi Pro vacuum cleaner
- Ultenic T10 vacuum cleaner
- Zedar R600

### Lawnmowers

Expand Down
352 changes: 352 additions & 0 deletions custom_components/tuya_local/devices/zedar_r600_vacuum.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,352 @@
name: Robot vacuum
products:
- id: yiarxtixzkmnegxk
name: Zedar R600
primary_entity:
entity: vacuum
dps:
- id: 1
type: boolean
optional: true
name: activate
mapping:
- dps_val: false
constraint: pause
conditions:
- dps_val: true
value: false
- dps_val: false
value: false
hidden: true
- dps_val: null
value: false
hidden: true
- dps_val: true
constraint: pause
conditions:
- dps_val: false
value: true
- dps_val: true
value: true
hidden: true
- dps_val: null
value: true
hidden: true
- dps_val: null
value: false
hidden: true
- id: 2
type: boolean
optional: true
name: pause
- id: 3
name: return_to_base
type: boolean
optional: true
- id: 4
type: string
name: command
mapping:
- dps_val: smart
value: smart
- dps_val: chargego
value: return_to_base
- dps_val: zone
value: zone
- dps_val: pose
value: go_to_position
- dps_val: selectroom
value: room
- id: 5
type: string
name: status
mapping:
- dps_val: standby
value: standby
- dps_val: smart
value: cleaning
- dps_val: smart_clean
value: cleaning
- dps_val: zone_clean
value: cleaning
- dps_val: part_clean
value: cleaning
- dps_val: cleaning
value: cleaning
- dps_val: paused
value: paused
- dps_val: goto_pos
value: going_to_location
- dps_val: pos_arrived
value: on_location
- dps_val: pos_unarrive
value: cannot_find_location
- dps_val: goto_charge
value: returning
- dps_val: charging
value: charging
- dps_val: charge_done
value: charged
- dps_val: sleep
value: sleep
- dps_val: select_room
value: select_room
- dps_val: wall_follow
value: wall_follow
- dps_val: direction_control
value: direction_control
- id: 9
type: string
name: fan_speed
mapping:
- dps_val: turnoff
value: "Off"
- dps_val: gentle
value: Low
- dps_val: normal
value: Medium
- dps_val: strong
value: High
- id: 11
type: boolean
optional: true
name: locate
- id: 12
type: string
optional: true
name: direction_control
mapping:
- dps_val: forward
value: forward
- dps_val: backward
value: reverse
- dps_val: turn_left
value: left
- dps_val: turn_right
value: right
- dps_val: stop
value: stop
- id: 14
type: string
optional: true
name: path_data
- id: 15
type: base64
optional: true
name: complex_command
- id: 16
type: string
optional: true
name: request
mapping:
- dps_val: get_map
value: Get map
- dps_val: get_path
value: Get path
- dps_val: get_both
value: Get both
- id: 28
type: bitfield
name: error
mapping:
- dps_val: 2
value: left_wheel_hang
- dps_val: 4
value: main_brush_stuck
- dps_val: 8
value: right_wheel_hang
- dps_val: 16
value: left_wheel_stuck
- dps_val: 32
value: right_wheel_stuck
- dps_val: 64
value: cliff
- dps_val: 128
value: side_brush_stuck
- dps_val: 512
value: collision
- dps_val: 1024
value: dust_box_stuck
- dps_val: 4096
value: ground_check_failure
- dps_val: 32768
value: vacuum_motor_stuck
- dps_val: 65536
value: high_current
- dps_val: 131072
value: charge_port_closed
- id: 32
type: string
optional: true
name: device_timer
- id: 33
type: string
optional: true
name: disturb_time_set
- id: 34
type: string
optional: true
name: device_info
- id: 35
type: string
optional: true
name: voice_data
- id: 36
name: language
type: string
optional: true
secondary_entities:
- entity: sensor
name: Cleaning time
class: duration
category: diagnostic
dps:
- id: 6
type: integer
name: sensor
unit: min
class: measurement
- entity: sensor
name: Cleaned area
category: diagnostic
icon: "mdi:floor-plan"
dps:
- id: 7
type: integer
name: sensor
unit: m2
- entity: sensor
class: battery
dps:
- id: 8
type: integer
name: sensor
unit: "%"
class: measurement
- entity: select
name: Mopping
icon: "mdi:cup-water"
category: config
dps:
- id: 10
type: string
name: option
optional: true
mapping:
- dps_val: closed
value: "Off"
- dps_val: low
value: Low
- dps_val: middle
value: Medium
- dps_val: high
value: High
- dps_val: null
value: "Off"
hidden: true
- entity: button
name: Reset map
category: config
dps:
- id: 13
type: boolean
name: button
optional: true
- entity: sensor
name: Edge brush life
class: duration
category: diagnostic
dps:
- id: 17
type: integer
name: sensor
unit: min
- entity: button
name: Edge brush reset
class: restart
category: config
dps:
- id: 18
type: boolean
name: button
optional: true
- entity: sensor
name: Roll brush life
class: duration
category: diagnostic
dps:
- id: 19
type: integer
name: sensor
unit: min
- entity: button
name: Roll brush reset
class: restart
category: config
dps:
- id: 20
type: boolean
name: button
optional: true
- entity: sensor
name: Filter life
class: duration
category: diagnostic
dps:
- id: 21
type: integer
name: sensor
unit: min
- entity: button
name: Filter reset
class: restart
category: config
dps:
- id: 22
type: boolean
name: button
optional: true
- entity: sensor
name: Mop life
class: duration
category: diagnostic
dps:
- id: 23
type: integer
name: sensor
unit: min
- entity: button
name: Mop reset
class: restart
category: config
dps:
- id: 24
type: boolean
name: button
optional: true
- entity: switch
name: Do not disturb
category: config
dps:
- id: 25
type: boolean
name: switch
optional: true
mapping:
- dps_val: null
value: false
hidden: true
- entity: number
name: Volume
category: config
icon: "mdi:volume-high"
dps:
- id: 26
type: integer
name: value
range:
min: 0
max: 10
unit: "%"
mapping:
- scale: 0.1

0 comments on commit 524c6f1

Please sign in to comment.