Files
hassio-configuration/configuration/ui-lovelace/040-living-room.yaml
Alexander Savin 26d86dec90
Some checks failed
Savin's Home Assistant / build (push) Failing after 1m45s
Update to the current version
2025-05-11 16:07:21 -04:00

529 lines
22 KiB
YAML

---
title: Living Room
icon: 'mdi:sofa'
panel: true
visible:
- user: 1614b22cbef54f979741cf8a6b3413ec
- user: 76e8af2547254ef0ab523ae1ad0bf81a
cards:
- type: 'custom:layout-card'
layout_type: 'custom:vertical-layout'
layout:
max_cols: 3
cards:
- type: vertical-stack
cards:
- type: 'custom:mushroom-chips-card'
chips:
- type: template
icon: >-
{% if is_state('binary_sensor.presence_living_room_sensor_1',
'on') -%}mdi:account-multiple{%- else
-%}mdi:account-off-outline{%- endif %}
icon_color: >-
{% if is_state('binary_sensor.presence_living_room_sensor_1',
'on') -%} #FFC107 {%- else -%} #44739E {%- endif %}
badge_icon: 'mdi:numeric-1-circle'
badge_color: green
entity: binary_sensor.presence_living_room_sensor_1
tap_action:
action: more-info
- type: template
icon: >-
{% if
is_state('binary_sensor.window_living_room_front_left_01_contact',
'on') -%}mdi:window-open{%- else -%}mdi:window-closed{%- endif
%}
icon_color: >-
{% if
is_state('binary_sensor.window_living_room_front_left_01_contact',
'on') -%}#FFC107{%- else -%}#44739E{%- endif %}
entity: binary_sensor.window_living_room_front_left_01_contact
tap_action:
action: more-info
- type: template
icon: >-
{% if
is_state('binary_sensor.window_living_room_front_center_01_contact',
'on') -%}mdi:window-open{%- else -%}mdi:window-closed{%- endif
%}
icon_color: >-
{% if
is_state('binary_sensor.window_living_room_front_center_01_contact',
'on') -%}#FFC107{%- else -%}#44739E{%- endif %}
entity: binary_sensor.window_living_room_front_center_01_contact
tap_action:
action: more-info
- type: template
icon: >-
{% if
is_state('binary_sensor.window_living_room_front_right_01_contact',
'on') -%}mdi:window-open{%- else -%}mdi:window-closed{%- endif
%}
icon_color: >-
{% if
is_state('binary_sensor.window_living_room_front_right_01_contact',
'on') -%}#FFC107{%- else -%}#44739E{%- endif %}
entity: binary_sensor.window_living_room_front_right_01_contact
tap_action:
action: more-info
- type: template
icon: >-
{% if
is_state('binary_sensor.window_living_room_side_01_contact',
'on') -%}mdi:window-open{%- else -%}mdi:window-closed{%- endif
%}
icon_color: >-
{% if
is_state('binary_sensor.window_living_room_side_01_contact',
'on') -%}#FFC107{%- else -%}#44739E{%- endif %}
entity: binary_sensor.window_living_room_side_01_contact
tap_action:
action: more-info
- type: template
icon: >-
{% if is_state('binary_sensor.smoke_living_room_01_smoke',
'on') -%}mdi:smoke-detector-variant-alert{%- else
-%}mdi:smoke-detector-variant{%- endif %}
icon_color: >-
{% if is_state('binary_sensor.smoke_living_room_01_smoke',
'on') -%}#D40909{%- else -%}#44739E{%- endif %}
entity: binary_sensor.smoke_living_room_01_smoke
tap_action:
action: more-info
- type: 'custom:bubble-card'
card_type: separator
icon: 'mdi:sofa'
sub_button:
- name: Temp
icon: 'mdi:thermometer-lines'
entity: sensor.climate_living_room_01_temperature
show_name: false
show_icon: true
show_state: true
show_background: false
show_attribute: false
- name: Humidity
icon: 'mdi:water-percent'
entity: sensor.climate_living_room_01_humidity
show_name: false
show_icon: true
show_state: true
show_background: false
show_attribute: false
- name: Light Level
icon: 'mdi:weather-sunny'
entity: sensor.presence_living_room_light_level
show_name: false
show_icon: true
show_state: true
show_background: false
show_attribute: false
styles: |
.bubble-feedback-container {
margin: 0px;
}
- type: vertical-stack
cards:
- type: 'custom:bubble-card'
card_type: button
button_type: switch
name: Occupancy
entity: input_boolean.occupancy_living_room
icon: 'mdi:account-multiple'
show_state: false
show_background: false
tap_action:
action: toggle
button_action:
tap_action:
action: more-info
sub_button:
- entity: sensor.living_room_01_person_count
icon: 'mdi:account-group'
show_state: false
show_background: true
- entity: sensor.living_room_01_cat_count
icon: 'mdi:cat'
show_state: false
show_background: true
- icon: 'mdi:brightness-auto'
entity: input_boolean.manually_operated_light_living_room
show_state: false
show_background: true
tap_action:
action: toggle
styles: >
.bubble-button-background {
opacity: 1 !important;
background-color: ${ state === 'on' ? 'var(--light-theme-disabled-color)' : 'var(--light-theme-disabled-color)' } !important;
}
.bubble-sub-button-1 {
background-color: white !important;
}
.bubble-sub-button-1 > ha-icon {
color: ${ hass.states['sensor.living_room_01_person_count'].state > 0 ? 'rgb(255, 152, 0)' : '' } !important;
}
.bubble-sub-button-2 {
background-color: white !important;
}
.bubble-sub-button-2 > ha-icon {
color: ${ hass.states['sensor.living_room_01_cat_count'].state > 0 ? 'rgb(255, 152, 0)' : '' } !important;
}
.bubble-sub-button-3 {
background-color: white !important;
}
${subButtonIcon[2].setAttribute("icon", hass.states['input_boolean.manually_operated_light_living_room'].state === 'on' ? 'mdi:hand-front-right' : 'mdi:brightness-auto')}
- type: 'custom:bubble-card'
card_type: button
button_type: switch
name: Light
entity: input_boolean.living_room_light_state
icon: 'mdi:lightbulb-group'
show_state: true
show_background: false
tap_action:
action: toggle
button_action:
tap_action:
action: navigate
navigation_path: '#popup-living-room-light'
sub_button:
- icon: 'mdi:lightbulb-group'
entity: scene.living_room_all
show_state: false
show_background: true
tap_action:
action: call-service
service: input_select.select_option
service_data:
entity_id: input_select.living_room_scenes
option: All
- icon: 'mdi:ceiling-light-multiple'
entity: scene.living_room_ceiling_only
show_state: false
show_background: true
tap_action:
action: call-service
service: input_select.select_option
service_data:
entity_id: input_select.living_room_scenes
option: Ceiling Only
- icon: 'mdi:ceiling-light-multiple'
entity: scene.living_room_ceiling_group_1_only
show_state: false
show_background: true
tap_action:
action: call-service
service: input_select.select_option
service_data:
entity_id: input_select.living_room_scenes
option: Ceiling Group 1 Only
- icon: 'mdi:ceiling-light-multiple'
entity: scene.living_room_ceiling_group_2_only
show_state: false
show_background: true
tap_action:
action: call-service
service: input_select.select_option
service_data:
entity_id: input_select.living_room_scenes
option: Ceiling Group 2 Only
- icon: 'mdi:floor-lamp-torchiere-outline'
entity: scene.living_room_floor_only
show_state: false
show_background: true
tap_action:
action: call-service
service: input_select.select_option
service_data:
entity_id: input_select.living_room_scenes
option: Floor Only
styles: |
.bubble-sub-button-1 > ha-icon {
color: ${hass.states['input_select.living_room_scenes'].state === 'All' ? 'rgb(255, 152, 0)' : ''} !important;
}
.bubble-sub-button-2 > ha-icon {
color: ${hass.states['input_select.living_room_scenes'].state === 'Ceiling Only' ? 'rgb(255, 152, 0)' : ''} !important;
}
.bubble-sub-button-3 > ha-icon {
color: ${hass.states['input_select.living_room_scenes'].state === 'Ceiling Group 1 Only' ? 'rgb(255, 152, 0)' : ''} !important;
}
.bubble-sub-button-4 > ha-icon {
color: ${hass.states['input_select.living_room_scenes'].state === 'Ceiling Group 2 Only' ? 'rgb(255, 152, 0)' : ''} !important;
}
.bubble-sub-button-5 > ha-icon {
color: ${hass.states['input_select.living_room_scenes'].state === 'Floor Only' ? 'rgb(255, 152, 0)' : ''} !important;
}
- type: 'custom:layout-break'
- type: 'vertical-stack'
cards:
- type: 'custom:webrtc-camera'
url: 'rtsp://10.10.11.110:8554/living-room-01'
title: Living Room 1
muted: true
mode: 'webrtc,mse'
- type: 'custom:webrtc-camera'
url: 'rtsp://10.10.11.110:8554/living-room-02'
title: Living Room 2
muted: true
mode: 'webrtc,mse'
- type: 'custom:layout-break'
- type: 'vertical-stack'
cards:
- type: 'custom:mini-media-player'
entity: media_player.living_room_speaker
artwork: cover
- type: 'custom:bubble-card'
card_type: button
entity: remote.living_room_harmony_hub
tap_action:
action: toggle
button_action:
tap_action:
action: more-info
sub_button:
- entity: select.living_room_harmony_hub_activities
name: TV
icon: 'mdi:television'
show_background: true
show_state: false
tap_action:
action: select.select_option
data:
option: ShTV+AVR+TV
- entity: select.living_room_harmony_hub_activities
name: Projector
icon: 'mdi:projector'
show_background: true
show_state: false
tap_action:
action: select.select_option
data:
option: ShTV+AVR+Prj
styles: >
.bubble-button-background {
opacity: 1 !important;
background-color: ${ state === 'on' ? 'var(--light-theme-disabled-color)' : 'var(--light-theme-disabled-color)' } !important;
}
/* .bubble-button-card-container { background-color: ${state === 'on' ? 'rgb(255, 150, 0)' : ''} !important; opacity: 1 !important; } */
.bubble-sub-button-1 {
background-color: white !important;
}
.bubble-sub-button-1 > ha-icon {
color: ${ hass.states['remote.living_room_harmony_hub'].attributes.current_activity === 'ShTV+AVR+TV' ? 'rgb(255, 152, 0)' : '' } !important;
}
.bubble-sub-button-2 {
background-color: white !important;
}
.bubble-sub-button-2 > ha-icon {
color: ${ hass.states['remote.living_room_harmony_hub'].attributes.current_activity === 'ShTV+AVR+Prj' ? 'rgb(255, 152, 0)' : '' } !important;
}
- type: conditional
conditions:
- entity: remote.living_room_harmony_hub
state: 'on'
card:
type: 'custom:bubble-card'
card_type: button
button_type: switch
card_layout: normal
name: Pioneer VSX-LX505
entity: media_player.onkyo_receiver
icon: 'mdi:audio-video'
show_state: true
show_background: false
show_attribute: true
attribute: source
button_action:
tap_action: null
action: toggle
sub_button:
- entity: script.receiver_switch_to_shield_tv
icon: 'mdi:television-classic'
show_background: true
show_state: false
tap_action:
action: toggle
- entity: script.receiver_switch_to_playstation
icon: 'mdi:controller'
show_background: true
show_state: false
tap_action:
action: toggle
- entity: script.receiver_switch_to_security
icon: 'mdi:camera-metering-matrix'
show_background: true
show_state: false
tap_action:
action: toggle
- entity: script.receiver_switch_to_windows
icon: 'mdi:laptop'
show_background: true
show_state: false
tap_action:
action: toggle
styles: |
.bubble-button-background {
opacity: 1 !important;
background-color: ${ state === 'on' ? 'var(--light-theme-disabled-color)' : 'var(--light-theme-disabled-color)' } !important;
}
.bubble-sub-button-1 {
display: ${hass.states['media_player.onkyo_receiver'].state === 'off' ? 'none' : ''} !important;
}
.bubble-sub-button-1 > ha-icon {
color: ${ hass.states['media_player.onkyo_receiver'].attributes.source === 'Nvidia Shield TV' ? 'rgb(255, 152, 0)' : '' } !important;
}
.bubble-sub-button-2 {
display: ${hass.states['media_player.onkyo_receiver'].state === 'off' ? 'none' : ''} !important;
}
.bubble-sub-button-2 > ha-icon {
color: ${ hass.states['media_player.onkyo_receiver'].attributes.source === 'PlayStation 4 Pro' ? 'rgb(255, 152, 0)' : '' } !important;
}
.bubble-sub-button-3 {
display: ${hass.states['media_player.onkyo_receiver'].state === 'off' ? 'none' : ''} !important;
}
.bubble-sub-button-3 > ha-icon {
color: ${ hass.states['media_player.onkyo_receiver'].attributes.source === 'Unifi Protect' ? 'rgb(255, 152, 0)' : '' } !important;
}
.bubble-sub-button-4 {
display: ${hass.states['media_player.onkyo_receiver'].state === 'off' ? 'none' : ''} !important;
}
.bubble-sub-button-4 > ha-icon {
color: ${ hass.states['media_player.onkyo_receiver'].attributes.source === 'Windows 11' ? 'rgb(255, 152, 0)' : '' } !important;
}
- type: 'custom:bubble-card'
card_type: button
entity: media_player.nvidia_shield_tv_living_room_2
sub_button:
- entity: switch.android_tv_youtube
icon: 'mdi:youtube'
show_background: true
show_state: false
tap_action:
action: toggle
- entity: switch.android_tv_netflix
icon: 'mdi:netflix'
show_background: true
show_state: false
tap_action:
action: toggle
- entity: switch.android_tv_plex
icon: 'mdi:plex'
show_background: true
show_state: false
tap_action:
action: toggle
styles: |
.bubble-button-background {
opacity: 1 !important;
background-color: ${ state === 'on' ? 'var(--light-theme-disabled-color)' : 'var(--light-theme-disabled-color)' } !important;
}
.bubble-sub-button-1 {
display: ${hass.states['media_player.nvidia_shield_tv_living_room_2'].state === 'off' ? 'none' : ''} !important;
background-color: white !important;
}
.bubble-sub-button-1 > ha-icon {
color: ${ hass.states['media_player.nvidia_shield_tv_living_room_2'].attributes.app_id === 'com.google.android.youtube.tv' ? 'rgb(255, 152, 0)' : '' } !important;
}
.bubble-sub-button-2 {
display: ${hass.states['media_player.nvidia_shield_tv_living_room_2'].state === 'off' ? 'none' : ''} !important;
background-color: white !important;
}
.bubble-sub-button-2 > ha-icon {
color: ${ hass.states['media_player.nvidia_shield_tv_living_room_2'].attributes.app_id === 'com.netflix.ninja' ? 'rgb(255, 152, 0)' : '' } !important;
}
.bubble-sub-button-3 {
display: ${hass.states['media_player.nvidia_shield_tv_living_room_2'].state === 'off' ? 'none' : ''} !important;
background-color: white !important;
}
.bubble-sub-button-3 > ha-icon {
color: ${ hass.states['media_player.nvidia_shield_tv_living_room_2'].attributes.app_id === 'com.plexapp.android' ? 'rgb(255, 152, 0)' : '' } !important;
}
- type: vertical-stack
cards:
- type: 'custom:bubble-card'
card_type: pop-up
hash: '#popup-living-room-light'
name: Kitchen
icon: 'mdi:fridge'
- type: 'custom:bubble-card'
card_type: button
button_type: slider
name: All Ceiling Lights
entity: light.living_room_ceiling_all
show_state: true
tap_action:
action: toggle
button_action:
tap_action:
action: toggle
- type: 'custom:bubble-card'
card_type: button
button_type: slider
name: Floor Lamp
entity: light.living_room_floor_lamp
show_state: true
tap_action:
action: toggle
button_action:
tap_action:
action: toggle
- type: 'custom:bubble-card'
card_type: button
button_type: slider
name: Ceiling 1 (Couch)
entity: light.living_room_ceiling_group_1
show_state: true
tap_action:
action: toggle
button_action:
tap_action:
action: toggle
- type: 'custom:bubble-card'
card_type: button
button_type: slider
name: Ceiling 2 (TV)
entity: light.living_room_ceiling_group_2
show_state: true
tap_action:
action: toggle
button_action:
tap_action:
action: toggle
- type: 'custom:bubble-card'
card_type: button
button_type: slider
name: Tile
entity: light.living_room_tiles_01
show_state: true
tap_action:
action: toggle
button_action:
tap_action:
action: toggle
- type: 'custom:bubble-card'
card_type: button
button_type: slider
name: LED Strip
entity: light.living_room_strip_01
show_state: true
tap_action:
action: toggle
button_action:
tap_action:
action: toggle
- type: 'custom:bubble-card'
card_type: button
button_type: slider
name: Christmas Tree
entity: light.christmas_tree
show_state: true
tap_action:
action: toggle
button_action:
tap_action:
action: toggle