diff --git a/main_dashboard.yaml b/main_dashboard.yaml index 25e0342..0e977b8 100644 --- a/main_dashboard.yaml +++ b/main_dashboard.yaml @@ -2421,423 +2421,517 @@ views: opacity: 10 - type: grid cards: - - type: custom:restriction-card - restrictions: - confirm: - text: Kallen is sleeping, are you sure? - condition: - value: 'on' - entity: input_boolean.kallen_sleeping - exemptions: - - user: 879b4c04e32841b3ad1d2763a11b4e70 - card: - type: custom:stack-in-card - card_mod: - style: | - ha-card { - overflow: visible !important; - } - cards: - - type: custom:mushroom-light-card - entity: light.kallen_bedroom_lights - name: Kallen Bedroom - double_tap_action: - action: call-service - service: input_select.select_option - service_data: - option: Adaptive - target: - entity_id: input_select.kallen_bedroom_scenes - icon: mdi:bunk-bed - layout: vertical - show_brightness_control: true - collapsible_controls: true - - type: custom:state-switch - entity: light.kallen_bedroom_lights - states: - 'on': - type: custom:mushroom-template-card - primary: Current Scene - secondary: '{{ states(''input_text.kallen_bedroom_selected_scene'') }}' + - type: custom:streamline-card + template: main_room_header + variables: + name: Kallen Bedroom + icon: mdi:bunk-bed + light_entity: light.kallen_bedroom_lights + power_entity: sensor.kallen_bedroom_total_power_sensor + - type: custom:bubble-card + card_type: button + button_type: slider + modules: + - default + - subbutton_below + rows: 1.719 + icon: mdi:bunk-bed + tap_action: + action: toggle + double_tap_action: + action: perform-action + perform_action: input_select.select_option + target: + entity_id: input_select.kallen_bedroom_scenes + data: + option: Adaptive + hold_action: + action: more-info + sub_button: + main: + - name: Lights + buttons_layout: inline + group: + - entity: light.kallen_bedroom_overhead + name: Overhead tap_action: - action: none - hold_action: - action: none - double_tap_action: - action: none - layout: vertical - - type: custom:mushroom-template-card - entity: sensor.kallen_bedroom_lights_power_sensor - primary: Power Usage - secondary: '{{ states(''sensor.kallen_bedroom_lights_power_sensor'') }} W' - tap_action: - action: more-info - hold_action: - action: none - double_tap_action: - action: none - layout: vertical - - type: custom:timer-bar-card - filter: true - entities: - - entity: timer.kallen_bedroom_motion_timer - sync_issues: ignore + action: toggle + show_name: true + - name: Wall tap_action: - action: none - hold_action: - action: more-info - double_tap_action: - action: none - layout: hide_name - modifications: - - elapsed: 40% - bar_foreground: orange - - elapsed: 80% - bar_foreground: red - extend_paper_buttons_row: - position: right - buttons: - - icon: mdi:check-circle - tap_action: - action: call-service - service: timer.finish - target: - entity_id: timer.kallen_bedroom_motion_timer - - type: entities - entities: - - type: custom:paper-buttons-row - buttons: - - entity: light.kallen_bedroom_overhead - name: Overhead - layout: icon|name_state - state: - case: first - state_icons: - 'on': hue:bulb-sultan - 'off': hue:bulb-sultan-off - unavailable: mdi:map-marker-question - - entity: light.kallen_bedroom_wall - name: Wall - layout: icon|name_state - state: - case: first - state_icons: - 'on': hue:bulb-sultan - 'off': hue:bulb-sultan-off - unavailable: mdi:map-marker-question - - type: entities - entities: - - type: custom:paper-buttons-row - buttons: - - entity: input_boolean.kallen_sleeping - name: Sleeping - layout: icon|name_state - state_icons: - 'on': mdi:sleep - 'off': mdi:sleep-off - unavailable: mdi:map-marker-question - state: - case: first - - entity: fan.kallen_bedroom_fan - name: Fan - layout: icon|name_state - state_icons: - 'on': mdi:fan - 'off': mdi:fan-off - unavailable: mdi:map-marker-question - state: - case: first - - entity: input_boolean.white_noise_kallen_bedroom - name: White Noise - layout: icon|name_state - state_icons: - 'on': mdi:volume-high - 'off': mdi:volume-off - unavailable: mdi:map-marker-question - state: - case: first - - entity: input_select.kallen_bedroom_scenes - show_header_toggle: false - - type: glance - show_name: true - show_icon: true - show_state: true - state_color: true - entities: - - entity: binary_sensor.kallen_bedroom_window_1 - name: Window 1 - - entity: binary_sensor.kallen_bedroom_window_2 - name: Window 2 - - type: glance - show_name: true - show_icon: true - show_state: true - state_color: true - entities: - - entity: sensor.kallen_bedroom_temperature - name: Temp - - entity: sensor.kallen_bedroom_illuminance - name: Lux - - entity: binary_sensor.kallen_bedroom_motion - name: Motion - - entity: binary_sensor.kallen_bedroom_occupied - name: Occupied - - type: custom:fold-entity-row - head: - type: section - label: More Settings - entities: - - type: custom:paper-buttons-row - buttons: - - entity: switch.adaptive_lighting_kallen_bedroom - name: Adaptive Lighting - layout: icon|name_state - state: - case: first - - entity: switch.adaptive_lighting_sleep_mode_kallen_bedroom - name: Sleep Mode - layout: icon|name_state - state: - case: first - - entity: input_boolean.kallen_overnight - name: Overnight - layout: icon|name_state - state: - case: first - - entity: switch.kallen_bedroom_motion_lighting - name: Motion Lighting - - entity: input_number.nighttime_brightness_kallen_bedroom - name: Night Brightness - - entity: input_number.kallen_bedroom_lights_off_delay - name: Lights Off Delay - - entity: input_number.kallen_bedroom_lux_threshold - name: Lux Threshold + action: toggle + show_name: true + entity: light.kallen_bedroom_wall + bottom: + - name: Scene + buttons_layout: inline + group: + - name: Scene + icon: mdi:palette + sub_button_type: select + show_name: true + entity: input_select.kallen_bedroom_scenes + name: Lights + entity: light.kallen_bedroom_lights + - type: custom:streamline-card + template: timer_card + variables: + name: Lights Timer + icon: mdi:timer + entity: timer.kallen_bedroom_motion_timer + visibility: + - condition: state + entity: timer.kallen_bedroom_motion_timer + state_not: idle + - type: custom:bubble-card + card_type: separator + name: Modes + icon: mdi:toggle-switch + card_layout: large + - type: custom:bubble-card + card_type: button + button_type: switch + sub_button: + main: [] + bottom: [] + entity: input_boolean.kallen_sleeping + grid_options: + columns: 6 + rows: auto + tap_action: + action: toggle + button_action: + hold_action: + action: none + name: Sleeping + - type: custom:bubble-card + card_type: separator + name: Environment + icon: mdi:thermometer + card_layout: large + sub_button: + main: [] + bottom: [] + - type: custom:bubble-card + card_type: button + button_type: switch + entity: fan.kallen_bedroom_fan + name: Fan + show_state: true + tap_action: + action: toggle + double_tap_action: + action: none + hold_action: + action: more-info + button_action: + double_tap_action: + action: none + styles: |- + .bubble-icon { + animation: ${state === 'on' ? 'slow-rotate 2s linear infinite' : ''}; + } + @keyframes slow-rotate { + 0% { transform: rotate(0deg); } + 100% { transform: rotate(360deg); } + } + card_layout: large + columns: 2 + - type: custom:bubble-card + card_type: button + button_type: switch + entity: input_boolean.white_noise_kallen_bedroom + name: White Noise + show_state: true + tap_action: + action: toggle + double_tap_action: + action: none + hold_action: + action: more-info + button_action: + double_tap_action: + action: none + card_layout: large + columns: 2 + - type: custom:bubble-card + card_type: separator + name: Status + icon: mdi:list-box + card_layout: large + - type: custom:streamline-card + template: main_temperature_button + variables: + entity: sensor.kallen_bedroom_temperature + name: Temp + columns: '2' + hot_entity: binary_sensor.kallen_bedroom_hot + cold_entity: binary_sensor.kallen_bedroom_cold + - type: custom:bubble-card + card_type: button + button_type: state + name: Lux + show_attribute: false + card_layout: large + columns: 2 + sub_button: + main: [] + bottom: [] + entity: sensor.kallen_bedroom_illuminance + - type: custom:streamline-card + template: state_color_button + variables: + name: Motion + columns: 2 + color: bubble-accent-color + entity: binary_sensor.kallen_bedroom_motion + grid_options: + columns: 6 + rows: auto + - type: custom:streamline-card + template: state_color_button + variables: + name: Occupied + columns: 2 + entity: binary_sensor.kallen_bedroom_occupied + color: bubble-accent-color + grid_options: + columns: 6 + rows: auto + - type: custom:bubble-card + card_type: separator + name: Security + icon: mdi:security + card_layout: large + - type: custom:streamline-card + template: contact_sensor_button + variables: + name: Window 1 + columns: 2 + color: error-color + entity: binary_sensor.kallen_bedroom_window_1 + grid_options: + columns: 6 + rows: auto + - type: custom:streamline-card + template: contact_sensor_button + variables: + name: Window 2 + columns: 2 + color: error-color + entity: binary_sensor.kallen_bedroom_window_2 + grid_options: + columns: 6 + rows: auto + - type: custom:fold-entity-row + head: + type: section + label: More Settings + entities: + - type: custom:paper-buttons-row + buttons: + - entity: switch.adaptive_lighting_kallen_bedroom + name: Adaptive Lighting + layout: icon|name_state + state: + case: first + - entity: switch.adaptive_lighting_sleep_mode_kallen_bedroom + name: Sleep Mode + layout: icon|name_state + state: + case: first + - entity: input_boolean.kallen_overnight + name: Overnight + layout: icon|name_state + state: + case: first + - entity: switch.kallen_bedroom_motion_lighting + name: Motion Lighting + - entity: input_number.nighttime_brightness_kallen_bedroom + name: Night Brightness + - entity: input_number.kallen_bedroom_lights_off_delay + name: Lights Off Delay + - entity: input_number.kallen_bedroom_lux_threshold + name: Lux Threshold + column_span: 1 + background: + opacity: 10 - type: grid cards: - - type: custom:restriction-card - restrictions: - confirm: - text: Emma is sleeping, are you sure? - condition: - value: 'on' - entity: input_boolean.emma_sleeping - exemptions: null - card: - type: custom:stack-in-card - card_mod: - style: | - ha-card { - overflow: visible !important; - } - cards: - - type: custom:mushroom-light-card - entity: light.emma_bedroom_light - name: Emma Bedroom - double_tap_action: - action: call-service - service: input_select.select_option - service_data: - option: Adaptive - target: - entity_id: input_select.emma_bedroom_scenes - icon: hue:room-nursery - layout: vertical - show_brightness_control: true - collapsible_controls: true - - type: custom:state-switch - entity: light.emma_bedroom_light - states: - 'on': - type: custom:mushroom-template-card - primary: Current Scene - secondary: '{{ states(''input_text.emma_bedroom_selected_scene'') }}' - tap_action: - action: none - hold_action: - action: none - double_tap_action: - action: none - layout: vertical - - type: custom:mushroom-template-card - entity: sensor.emma_bedroom_light_power_sensor - primary: Power Usage - secondary: '{{ states(''sensor.emma_bedroom_total_power_sensor'') }} W' - tap_action: - action: more-info - hold_action: - action: none - double_tap_action: - action: none - layout: vertical - - type: custom:timer-bar-card - filter: true - entities: - - entity: timer.emma_bedroom_motion_timer - sync_issues: ignore - tap_action: - action: none - hold_action: - action: more-info - double_tap_action: - action: none - layout: hide_name - modifications: - - elapsed: 40% - bar_foreground: orange - - elapsed: 80% - bar_foreground: red - extend_paper_buttons_row: - position: right - buttons: - - icon: mdi:check-circle - tap_action: - action: call-service - service: timer.finish - target: - entity_id: timer.emma_bedroom_motion_timer - - type: entities - state_color: true - entities: - - type: custom:paper-buttons-row - buttons: - - entity: input_boolean.emma_sleeping - name: Sleeping - layout: icon|name_state - state: - case: first - state_icons: - 'on': mdi:sleep - 'off': mdi:sleep-off - unavailable: mdi:map-marker-question - - entity: input_boolean.white_noise_emma_bedroom - name: White Noise - layout: icon|name_state - state: - case: first - state_icons: - 'on': mdi:volume-high - 'off': mdi:volume-off - unavailable: mdi:map-marker-question - show_header_toggle: false - - type: custom:state-switch - entity: input_boolean.emma_bedroom_aircon_installed - states: - 'on': - type: custom:simple-thermostat - entity: climate.emma_bedroom_aircon - header: false - decimals: 0 - step_size: 1 - layout: - mode: - headings: false - names: true - icons: true - step: row - control: - hvac: - 'off': - name: 'Off' - heat: false - cool: - name: Cool - auto: - name: Auto - dry: - name: Dry - fan_only: - name: Fan Only - preset: - none: - name: Eco Off - eco: - name: Eco On - boost: false - comfort: - name: Comfort - sleep: false - away: false - - type: custom:state-switch - entity: input_boolean.emma_bedroom_aircon_installed - states: - 'on': - type: glance + - type: custom:streamline-card + template: main_room_header + variables: + name: Emma Bedroom + icon: hue:room-nursery + light_entity: light.emma_bedroom_light + power_entity: sensor.emma_bedroom_total_power_sensor + - type: custom:bubble-card + card_type: button + button_type: slider + modules: + - default + - subbutton_below + rows: 1.719 + icon: mdi:bunk-bed + tap_action: + action: toggle + double_tap_action: + action: perform-action + perform_action: input_select.select_option + target: + entity_id: input_select.emma_bedroom_scenes + data: + option: Adaptive + hold_action: + action: more-info + sub_button: + main: [] + bottom: + - name: Scene + buttons_layout: inline + group: + - name: Scene + icon: mdi:palette + sub_button_type: select show_name: true - show_icon: true - show_state: true - state_color: true - entities: - - entity: binary_sensor.emma_bedroom_aircon_compressor - name: Compressor - - entity: binary_sensor.emma_bedroom_aircon_filter_alert - name: Filter - - type: custom:state-switch - entity: input_boolean.emma_bedroom_heater_installed - states: - 'on': - type: custom:versatile-thermostat-ui-card - entity: climate.emma_bedroom_vtherm - powerEntity: sensor.emma_bedroom_heater_power - theme: classic - disable_name: true - disable_auto_fan_infos: true - - type: entities - entities: - - entity: input_select.emma_bedroom_scenes - - type: glance - show_name: true - show_icon: true + entity: input_select.emma_bedroom_scenes + name: Lights + entity: light.emma_bedroom_light + - type: custom:streamline-card + template: timer_card + variables: + name: Lights Timer + icon: mdi:timer + entity: timer.emma_bedroom_motion_timer + visibility: + - condition: state + entity: timer.emma_bedroom_motion_timer + state_not: idle + - type: custom:bubble-card + card_type: separator + name: Modes + icon: mdi:toggle-switch + card_layout: large + - type: custom:bubble-card + card_type: button + button_type: switch + sub_button: + main: [] + bottom: [] + entity: input_boolean.emma_sleeping + grid_options: + columns: 6 + rows: auto + tap_action: + action: toggle + button_action: + hold_action: + action: none + name: Sleeping + - type: custom:bubble-card + card_type: separator + name: Environment + icon: mdi:thermometer + card_layout: large + sub_button: + main: [] + bottom: [] + visibility: + - condition: or + conditions: + - condition: state + entity: input_boolean.emma_bedroom_aircon_installed + state: 'on' + - condition: state + entity: input_boolean.emma_bedroom_heater_installed + state: 'on' + - type: custom:bubble-card + card_type: climate + sub_button: + main: + - select_attribute: hvac_modes + name: HVAC modes + state_background: true + sub_button_type: select show_state: true - state_color: true - entities: - - entity: binary_sensor.emma_bedroom_window - name: Window - - type: glance - show_name: true - show_icon: true + - name: Presets + select_attribute: preset_modes + state_background: false + sub_button_type: select + show_attribute: true + attribute: preset_mode + bottom: [] + name: Thermostat + entity: climate.emma_bedroom_aircon + state_color: false + step: 1 + main_buttons_position: bottom + rows: 1.719 + visibility: + - condition: state + entity: input_boolean.emma_bedroom_aircon_installed + state: 'on' + - type: custom:streamline-card + template: state_color_button + variables: + entity: binary_sensor.emma_bedroom_aircon_compressor + name: Compressor + show_state: 'true' + columns: '2' + color: bubble-accent-color + visibility: + - condition: state + entity: input_boolean.emma_bedroom_aircon_installed + state: 'on' + - type: custom:streamline-card + template: state_color_button + variables: + entity: binary_sensor.emma_bedroom_aircon_filter_alert + name: Filter + show_state: 'true' + columns: '2' + color: error-color + visibility: + - condition: state + entity: input_boolean.emma_bedroom_aircon_installed + state: 'on' + - type: custom:bubble-card + card_type: climate + sub_button: + main: + - select_attribute: hvac_modes + name: HVAC modes + state_background: true + sub_button_type: select show_state: true - state_color: true - entities: - - entity: sensor.emma_bedroom_temperature - name: Temp - - entity: sensor.emma_bedroom_illuminance - name: Light - - entity: binary_sensor.emma_bedroom_motion - name: Motion - - entity: binary_sensor.emma_bedroom_occupied - name: Occupied - - type: custom:fold-entity-row - head: - type: section - label: More Settings - entities: - - type: custom:paper-buttons-row - buttons: - - entity: switch.adaptive_lighting_emma_bedroom - name: Adaptive Lighting - layout: icon|name_state - state: - case: first - - entity: switch.adaptive_lighting_sleep_mode_emma_bedroom - name: Sleep Mode - layout: icon|name_state - state: - case: first - - entity: switch.emma_door_alert - name: Door Alert - - entity: button.emma_door_alert_cancel - name: Cancel Door Alert - - entity: switch.emma_bedroom_motion_lighting - name: Motion Lighting - - entity: switch.emma_bedroom_climate_watchdog - name: Climate Watchdog - secondary_info: Protects aircon settings - - entity: input_number.nighttime_brightness_emma_bedroom - name: Night Brightness - - entity: input_number.emma_bedroom_lights_off_delay - name: Lights Off Delay - - entity: input_number.emma_bedroom_lux_threshold - name: Lux Threshold + - name: Presets + select_attribute: preset_modes + state_background: false + sub_button_type: select + show_attribute: true + attribute: preset_mode + bottom: [] + name: Thermostat + state_color: false + step: 1 + main_buttons_position: bottom + visibility: + - condition: state + entity: input_boolean.emma_bedroom_aircon_installed + state: 'on' + rows: 1.719 + entity: climate.emma_bedroom_vtherm + - type: custom:bubble-card + card_type: button + button_type: switch + entity: input_boolean.white_noise_emma_bedroom + name: White Noise + show_state: true + tap_action: + action: toggle + double_tap_action: + action: none + hold_action: + action: more-info + button_action: + double_tap_action: + action: none + card_layout: large + columns: 2 + - type: custom:bubble-card + card_type: separator + name: Status + icon: mdi:list-box + card_layout: large + - type: custom:streamline-card + template: main_temperature_button + variables: + entity: sensor.emma_bedroom_temperature + name: Temp + columns: '2' + hot_entity: binary_sensor.emma_bedroom_hot + cold_entity: binary_sensor.emma_bedroom_cold + - type: custom:bubble-card + card_type: button + button_type: state + name: Lux + show_attribute: false + card_layout: large + columns: 2 + sub_button: + main: [] + bottom: [] + entity: sensor.emma_bedroom_illuminance + - type: custom:streamline-card + template: state_color_button + variables: + name: Motion + columns: 2 + color: bubble-accent-color + entity: binary_sensor.emma_bedroom_motion + grid_options: + columns: 6 + rows: auto + - type: custom:streamline-card + template: state_color_button + variables: + name: Occupied + columns: 2 + entity: binary_sensor.emma_bedroom_occupied + color: bubble-accent-color + grid_options: + columns: 6 + rows: auto + - type: custom:bubble-card + card_type: separator + name: Security + icon: mdi:security + card_layout: large + - type: custom:streamline-card + template: contact_sensor_button + variables: + name: Window 1 + columns: 2 + color: error-color + entity: binary_sensor.emma_bedroom_window + grid_options: + columns: 6 + rows: auto + - type: custom:fold-entity-row + head: + type: section + label: More Settings + entities: + - type: custom:paper-buttons-row + buttons: + - entity: switch.adaptive_lighting_emma_bedroom + name: Adaptive Lighting + layout: icon|name_state + state: + case: first + - entity: switch.adaptive_lighting_sleep_mode_emma_bedroom + name: Sleep Mode + layout: icon|name_state + state: + case: first + - entity: switch.emma_door_alert + name: Door Alert + - entity: button.emma_door_alert_cancel + name: Cancel Door Alert + - entity: switch.emma_bedroom_motion_lighting + name: Motion Lighting + - entity: switch.emma_bedroom_climate_watchdog + name: Climate Watchdog + secondary_info: Protects aircon settings + - entity: input_number.nighttime_brightness_emma_bedroom + name: Night Brightness + - entity: input_number.emma_bedroom_lights_off_delay + name: Lights Off Delay + - entity: input_number.emma_bedroom_lux_threshold + name: Lux Threshold + column_span: 1 + background: + opacity: 10 max_columns: 4 cards: [] - title: Basement