Skip to content

Instantly share code, notes, and snippets.

@ohadbenita
Created February 11, 2026 14:59
Show Gist options
  • Select an option

  • Save ohadbenita/627ed891f0f5d1c1a1ebccbf535773c5 to your computer and use it in GitHub Desktop.

Select an option

Save ohadbenita/627ed891f0f5d1c1a1ebccbf535773c5 to your computer and use it in GitHub Desktop.
Roborock cleaning operation dashboard
type: entities
show_header_toggle: false
entities:
- entity: input_boolean.clean_kitchen
type: custom:multiple-entity-row
name: Public
icon: mdi:window-maximize
show_state: false
entities:
- entity: input_boolean.clean_kitchen
name: 🍲 Kitchen
toggle: true
- entity: input_boolean.clean_pantry
name: 🧊 Pantry
toggle: true
- entity: input_boolean.clean_dining_room
name: 🍷 Dining
toggle: true
- entity: input_boolean.clean_living_room
name: πŸ›‹οΈ Living
toggle: true
- entity: input_boolean.clean_living_room
type: custom:multiple-entity-row
name: Hallways
icon: mdi:wall
show_state: false
entities:
- entity: input_boolean.clean_living_room_corridor
name: 🧱 Corridor
toggle: true
- entity: input_boolean.clean_entrance
name: πŸšͺ Entrance
toggle: true
- entity: input_boolean.clean_hall
name: 🧱 Hall
toggle: true
- entity: input_boolean.clean_roi_room
type: custom:multiple-entity-row
name: Rooms
icon: mdi:door-open
show_state: false
entities:
- entity: input_boolean.clean_roi_room
name: πŸ€ Roi
toggle: true
- entity: input_boolean.clean_adi_room
name: πŸͺž Adi
toggle: true
- entity: input_boolean.clean_study
name: πŸ› οΈ Study
toggle: true
- entity: input_boolean.clean_kitchen
type: custom:multiple-entity-row
name: Bathrooms
icon: mdi:bathtub
show_state: false
entities:
- entity: input_boolean.clean_guest_bathroom
name: 🚽 Guest
toggle: true
- entity: input_boolean.clean_kids_bathroom
name: 🚽 Kids
toggle: true
- type: section
label: Scheduling
- type: conditional
conditions:
- entity: timer.roborock_clean_delay
state_not: idle
row:
type: custom:template-entity-row
entity: timer.roborock_clean_delay
icon: mdi:alarm
name: Cleaning scheduled 🧹
state: >
{% set fa = state_attr('timer.roborock_clean_delay', 'finishes_at') %}
{% if fa %}
{% set finish = as_datetime(fa) %}
{% set minutes = ((finish - now()).total_seconds() / 60) | round(0, 'ceil') %}
in {{ minutes }} min
{% else %}
soon
{% endif %}
- entity: input_boolean.clean_with_delay
type: custom:multiple-entity-row
name: Delay start
icon: mdi:timer-outline
toggle: true
show_state: true
entities:
- entity: timer.roborock_clean_delay
name: ⏳
show_state: true
- entity: script.roborock_delay_30m
type: custom:multiple-entity-row
name: Start cleaning in…
icon: mdi:clock-edit-outline
show_state: false
entities:
- entity: script.roborock_delay_30m
name: 30m
icon: mdi:clock-outline
- entity: script.roborock_delay_1h
name: 1h
icon: mdi:clock-outline
- entity: script.roborock_delay_2h
name: 2h
icon: mdi:clock-outline
- entity: script.roborock_cancel_delay
type: custom:multiple-entity-row
name: Cancel scheduled cleaning
icon: mdi:cancel
show_state: false
entities:
- entity: script.roborock_cancel_delay
name: Cancel
icon: null
- entity: input_button.start_cleaning
type: custom:multiple-entity-row
name: Start Cleaning (now / delayed)
icon: mdi:robot-vacuum
show_state: false
tap_action:
action: call-service
service: input_button.press
service_data:
entity_id: input_button.start_cleaning
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment