streamline_templates: main_button_name: default: - name: '' - columns: 2 - navigation_path: '' - icon: '' card: type: custom:bubble-card card_type: button button_type: name name: '[[name]]' icon: '[[icon]]' tap_action: action: navigate navigation_path: '[[navigation_path]]' button_action: tap_action: action: navigate navigation_path: '[[navigation_path]]' columns: '[[columns]]' styles: |- .bubble-button-background { opacity: 1 !important; background-color: var(--bubble-main-background-color) !important; } phone_info_grid: card: type: custom:stack-in-card card_mod: style: | ha-card { overflow: visible !important; } cards: - type: glance entities: - entity: device_tracker.[[device]] name: Location - entity: sensor.[[device]]_interval name: Interval icon: mdi:clock-start - entity: sensor.[[device]]_travel_time name: TravTime icon: mdi:clock-outline - entity: sensor.[[device]]_zone_distance name: Home icon: mdi:map-marker-distance - entity: sensor.[[device]]_next_update name: NextUpdt icon: mdi:update state_color: false - type: glance entities: - entity: sensor.[[device]]_waze_distance name: WazeDist icon: mdi:map-marker-distance - entity: sensor.[[device]]_calc_distance name: CalcDist icon: mdi:map-marker-distance - entity: sensor.[[device]]_dir_of_travel name: Direction icon: mdi:compass-outline - entity: sensor.[[device]]_last_located name: Located icon: mdi:map-clock - entity: sensor.[[device]]_last_update name: LastUpdt icon: mdi:history - type: horizontal-stack cards: - type: entities entities: - entity: sensor.[[device]]_info name: Info icon: mdi:information-outline iphone_entities_card: card: type: entities entities: - entity: device_tracker.[[device]]_app name: App Location - type: custom:battery-state-entity entity: sensor.[[device]]_battery name: Battery tap_action: more-info charging_state: entity_id: sensor.[[device]]_battery_status state: Charging - type: custom:template-entity-row name: Connection Type entity: sensor.[[device]]_connection_type state: | {% if is_state('sensor.[[device]]_connection_type','Cellular') %} {{ state_attr('sensor.[[device]]_connection_type','Cellular Technology') }} {% elif is_state('sensor.[[device]]_connection_type','Wi-Fi') %} Wi-Fi {% else %} Unknown {% endif %} - entity: sensor.[[device]]_ssid name: SSID - entity: sensor.[[device]]_steps name: Steps Today - entity: binary_sensor.[[device]]_focus name: Focus - entity: sensor.[[device]]_storage name: Storage show_header_toggle: false state_color: true ipad_entities_card: card: type: entities entities: - entity: device_tracker.[[device]]_app name: App Location - type: custom:battery-state-entity entity: sensor.[[device]]_battery name: Battery tap_action: more-info charging_state: entity_id: sensor.[[device]]_battery_status state: Charging - type: custom:template-entity-row name: Connection Type entity: sensor.[[device]]_connection_type state: | {% if is_state('sensor.[[device]]_connection_type','Cellular') %} {{ state_attr('sensor.[[device]]_connection_type','Cellular Technology') }} {% elif is_state('sensor.[[device]]_connection_type','Wi-Fi') %} Wi-Fi {% else %} Unknown {% endif %} - entity: sensor.[[device]]_ssid name: SSID - entity: binary_sensor.[[device]]_focus name: Focus - entity: sensor.[[device]]_storage name: Storage - entity: sensor.[[device]]_info name: Info show_header_toggle: false state_color: true xbox_card: default: - gamertag: tm24fan card: type: entities entities: - entity: sensor.[[gamertag]]_status name: Status - entity: binary_sensor.[[gamertag]] name: Online - entity: binary_sensor.[[gamertag]]_in_game name: In Game - entity: binary_sensor.[[gamertag]]_in_multiplayer name: In Multiplayer - entity: binary_sensor.[[gamertag]]_in_party name: In Party - entity: sensor.[[gamertag]]_account_tier name: Account Tier - entity: sensor.[[gamertag]]_gamer_score name: Gamer Score show_header_toggle: false state_color_button: defaults: - name: '' - columns: 2 - show_state: true card: type: custom:bubble-card card_type: button button_type: state entity: '[[entity]]' name: '[[name]]' show_state: '[[show_state]]' tap_action: action: more-info double_tap_action: action: none hold_action: action: none button_action: double_tap_action: action: none hold_action: action: none columns: '[[columns]]' modules: - default - state_color_button state_color_button: color: '[[color]]' state_color_button_nav: defaults: - name: '' - columns: 2 - show_state: false card: type: custom:bubble-card card_type: button button_type: state entity: '[[entity]]' name: '[[name]]' show_state: '[[show_state]]' tap_action: action: navigate navigation_path: '[[navigation_path]]' double_tap_action: action: none hold_action: action: none button_action: tap_action: action: navigate navigation_path: '[[navigation_path]]' double_tap_action: action: none hold_action: action: none columns: '[[columns]]' modules: - default - state_color_button state_color_button: color: '[[color]]' contact_sensor_button: defaults: - name: '' - columns: 2 - show_state: true card: type: custom:bubble-card card_type: button button_type: state entity: '[[entity]]' name: '[[name]]' show_state: '[[show_state]]' tap_action: action: more-info double_tap_action: action: none hold_action: action: none button_action: double_tap_action: action: none hold_action: action: none columns: '[[columns]]' modules: - default - state_color_button - get_state_attribute state_color_button: color: '[[color]]' get_state_attribute: - entity: '[[entity]]' - entity: '[[entity]]_tamper' main_temperature_button: defaults: - name: '' - columns: '' card: type: custom:bubble-card card_type: button button_type: state entity: '[[entity]]' name: '[[name]]' show_attribute: false card_layout: large columns: '[[columns]]' modules: - default - popup_temperature_button popup_temperature_button: hot_entity: '[[hot_entity]]' cold_entity: '[[cold_entity]]' main_room_header: defaults: - name: '' - icon: '' - power_entity: '' - light_entity: '' card: type: custom:bubble-card card_type: separator name: '[[name]]' icon: '[[icon]]' card_layout: large sub_button: - name: Power entity: '[[power_entity]]' show_state: true state_background: false timer_card: defaults: - name: '' - icon: mdi:timer card: type: custom:bubble-card card_type: button button_type: state entity: '[[entity]]' name: '[[name]]' icon: '[[icon]]' sub_button: - entity: '[[entity]]' tap_action: action: perform-action perform_action: timer.start target: entity_id: '[[entity]]' name: Start icon: mdi:play visibility: [] - entity: '[[entity]]' name: Pause icon: mdi:pause tap_action: action: perform-action perform_action: timer.pause target: entity_id: '[[entity]]' - entity: '[[entity]]' name: Cancel icon: mdi:cancel tap_action: action: perform-action perform_action: timer.cancel target: entity_id: '[[entity]]' - entity: '[[entity]]' name: Finish icon: mdi:clock-end tap_action: action: perform-action perform_action: timer.finish target: entity_id: '[[entity]]' modules: - default - popup_timer_card background: var(--background-image) title: Stratton Ave views: - title: Home path: default_view type: sections sections: - type: grid cards: - type: heading heading: Weather heading_style: title icon: mdi:weather-partly-cloudy - type: custom:meteoalarm-card entities: - entity: sensor.weatheralerts_defiance_ohz004_ohc039 integration: weatheralerts hide_when_no_warning: true visibility: - condition: numeric_state entity: sensor.weatheralerts_defiance_ohz004_ohc039 above: 0 override_headline: false - type: custom:weather-forecast-card show_current: true show_forecast: true default_forecast: daily tap_action: action: navigate navigation_path: /lovelace/weather entity: weather.iron_nerd_weather_station show_condition_effects: true forecast: mode: chart show_sun_times: true extra_attribute: wind_bearing use_color_thresholds: false hourly_group_size: 1 temperature_precision: 0 forecast_action: tap_action: action: toggle-forecast current: show_attributes: - apparent_temperature - visibility - pressure - wind_speed temperature_precision: 0 - type: custom:mushroom-template-card primary: Lightning Warning secondary: >- {% if states('sensor.home_tempest_cloud_sensors_lightning_strikes_last_hour') | int > 0 %} {{ states('sensor.home_tempest_cloud_sensors_lightning_strikes_last_hour') | int }} strikes last hour! {% elif states('sensor.home_tempest_cloud_sensors_lightning_strikes_last_3_hours') | int > 0 %} {{ states('sensor.home_tempest_cloud_sensors_lightning_strikes_last_3_hours') | int }} strikes last 3 hours! {% else %} {{ states('sensor.blitzortung_lightning_counter') }} strikes during this storm! {% endif %} icon: mdi:lightning-bolt entity: binary_sensor.lightning_warning color: var(--warning-color) badge_icon: mdi:exclamation badge_color: var(--error-color) tap_action: action: none icon_tap_action: action: none visibility: - condition: state entity: binary_sensor.lightning_warning state: 'on' features_position: bottom - type: custom:mushroom-template-card primary: Window Weather tap_action: action: none icon_tap_action: action: none features_position: bottom entity: binary_sensor.window_weather icon: |- {% if is_state('binary_sensor.windows','on') %} mdi:window-open {% else %} mdi:window-closed {% endif %} color: |- {% if is_state(entity,'on') %} {% if is_state('binary_sensor.windows','on') %} var(--cyan-color) {% else %} var(--green-color) {% endif %} {% else %} {% if is_state('binary_sensor.windows','on') %} var(--error-color) {% else %} var(--disabled-color) {% endif %} {% endif %} secondary: |- {% if is_state(entity,'on') %} It's nice outside! {% else %} Close Windows! {% endif %} badge_icon: >- {% if is_state(entity,'off') and is_state('binary_sensor.windows','on') %} mdi:exclamation {% elif is_state(entity,'on') and is_state('binary_sensor.windows','on') %} mdi:check {% endif %} badge_color: >- {% if is_state(entity,'off') and is_state('binary_sensor.windows','on') %} var(--error-color) {% elif is_state(entity,'on') and is_state('binary_sensor.windows','on') %} var(--success-color) {% endif %} visibility: - condition: or conditions: - condition: state entity: binary_sensor.window_weather state: 'on' - condition: state entity: binary_sensor.windows state: 'on' column_span: 1 - type: grid cards: - type: heading heading: Master Switches and Info heading_style: title icon: mdi:home-switch - type: entities entities: - type: custom:template-entity-row name: Tap here for the mobile dashboard icon: mdi:cellphone-cog state: '' tap_action: action: navigate navigation_path: /dashboard-mobile - type: custom:template-entity-row name: Tap names for more controls icon: mdi:information state: '' tap_action: action: none - entity: light.second_floor_lights name: Second Floor icon: mdi:home-floor-2 secondary_info: >- Lights on: {{ states('sensor.second_floor_lights_on') }} | Power Usage: {{ states('sensor.second_floor_total_power_sensor') }} W tap_action: action: navigate navigation_path: /lovelace/second-floor - entity: light.first_floor_lights name: First Floor icon: mdi:home-floor-1 secondary_info: >- Lights on: {{ states('sensor.first_floor_lights_on') }} | Power Usage: {{ states('sensor.first_floor_total_power_sensor') }} W tap_action: action: navigate navigation_path: /lovelace/first-floor - entity: light.basement_studio_lights name: Basement Studio icon: mdi:home-floor-b secondary_info: >- Lights on: {{ states('sensor.basement_lights_on') }} | Power Usage: {{ states('sensor.basement_total_power_sensor') }} W tap_action: action: navigate navigation_path: /lovelace/basement - entity: light.outside_lights name: Outdoors icon: hue:room-outdoors secondary_info: >- Lights on: {{ states('sensor.current_outdoor_lights_on') }} | Power Usage: {{ states('sensor.outside_lights_power_sensor') }} W tap_action: action: navigate navigation_path: /lovelace/outdoors - entity: fan.all_fans name: Fans secondary_info: >- Fans on: {{ states('sensor.fans_running') }} | Power Usage: {{ states('sensor.all_real_fans_power_sensor') }} W tap_action: action: navigate navigation_path: /lovelace/climate - entity: binary_sensor.internet name: Internet (Min/Avg/Max) secondary_info: >- {{ states('sensor.internet_round_trip_time_minimum') | round }}ms/{{ states('sensor.internet_round_trip_time_average') | round }}ms/{{ states('sensor.internet_round_trip_time_maximum') | round }}ms tap_action: action: navigate navigation_path: /lovelace/house-stats - type: custom:multiple-entity-row entity: counter.back_door_opened_today name: Doors Opened Today state_header: Back icon: mdi:door secondary_info: I was bored. entities: - entity: counter.front_door_opened_today name: Front state_color: true show_header_toggle: false - type: custom:expander-card title: Stats cards: - type: entities entities: - entity: sensor.current_lights_on icon: mdi:lightbulb-alert name: Total Lights On secondary_info: >- Power Usage: {{ states('sensor.all_light_power_sensor') }} W - entity: sensor.current_computers_on name: Computers On icon: mdi:monitor secondary_info: >- Power Usage: {{ states('sensor.all_computers_power_sensor') }} W - entity: sensor.house_total_power_sensor name: Total Power Usage - entity: sensor.doors_open - entity: sensor.windows_open icon: mdi:chart-box icon-rotate-degree: '180' - type: grid cards: - type: heading heading: Cameras heading_style: title icon: mdi:cctv - camera_view: auto type: picture-glance title: Front Porch entities: - entity: light.front_porch_light - entity: alarm_control_panel.stratton_ave_alarm - entity: sensor.front_doorbell_battery_mqtt - entity: binary_sensor.front_doorbell_motion_mqtt - entity: binary_sensor.exterior_doors - entity: binary_sensor.windows camera_image: camera.front_porch_ring - camera_view: auto type: picture-glance entities: [] camera_image: camera.side_camera title: Perry Street visibility: - condition: state entity: camera.side_camera state_not: unavailable - type: grid cards: - type: heading heading: Residents heading_style: title icon: mdi:home-account - square: false columns: 3 type: grid cards: - type: custom:mushroom-person-card entity: person.tony_stork use_entity_picture: true fill_container: true hide_state: false hide_name: false layout: vertical - type: custom:mushroom-person-card entity: person.christina_stork use_entity_picture: true layout: vertical fill_container: true - type: custom:mushroom-person-card entity: person.kallen_stork use_entity_picture: true layout: vertical fill_container: true - type: grid cards: - type: heading heading: Family Calendar heading_style: title icon: mdi:calendar - entities: - entity: calendar.family label: mdi:human-male-female-child color: green accent_color: green - entity: calendar.kallen_school_days label: mdi:school color: orange accent_color: orange - entity: calendar.tony_s_twitch_schedule label: mdi:twitch color: purple accent_color: purple - calendar.kallen_early_release - calendar.tm24fan8_gmail_com - calendar.irishpirate1988_gmail_com - calendar.vacation days_to_show: 5 week_separator_width: 1px month_separator_width: 1px today_indicator: dot weekend_weekday_color: cyan weekend_day_color: cyan weekend_month_color: cyan today_weekday_color: '' today_day_color: '' today_month_color: '' show_countdown: true show_progress_bar: true remove_location_country: true weather: position: both date: show_conditions: true show_high_temp: true show_low_temp: true icon_size: 14px font_size: 12px color: var(--primary-text-color) event: show_conditions: true show_temp: true icon_size: 14px font_size: 12px color: var(--primary-text-color) entity: weather.iron_nerd_studios type: custom:calendar-card-pro - type: grid cards: - type: heading heading: Home Feed heading_style: title icon: mdi:rss - type: custom:home-feed-card card_id: main_feed show_empty: false id_filter: ^home_feed_.* more_info_on_tap: true state_color: true entities: - entity: person.tony_stork name: Tony Stork content_template: '{{display_name}} is {{state}}' remove_repeats: false state_map: not_home: traveling Wal-Mart: at Wal-Mart School: at the middle school Hospital: at the hospital Latty: in Latty - entity: person.christina_stork name: Christina Stork content_template: '{{display_name}} is {{state}}' remove_repeats: false state_map: not_home: traveling Wal-Mart: at Wal-Mart School: at the middle school Hospital: at the hospital Bob Evans: at work BobEvans: at work Latty: in Latty - entity: timer.kallen_timer - entity: person.kallen_stork name: Kallen Stork content_template: '{{display_name}} is {{state}}' remove_repeats: false state_map: not_home: traveling Wal-Mart: at Wal-Mart School: at school Hospital: at the hospital Latty: in Latty - entity: person.emmalynn_stork - entity: automation.family_has_arrived content_template: Family Arrived - entity: automation.family_has_left content_template: Family Left - entity: light.downstairs_bathroom_lights icon: mdi:toilet - entity: light.upstairs_bathroom_lights icon: mdi:toilet - entity: light.basement_studio_lights icon: mdi:twitch - entity: light.furnace_room_overhead - entity: light.living_room_lights icon: hue:room-living - entity: light.mud_room_overhead icon: hue:room-other - entity: light.master_bedroom_lights icon: mdi:bed - entity: light.master_bedroom_closet icon: hue:bulb-sultan - entity: light.kallen_bedroom_lights icon: mdi:bunk-bed - entity: light.emma_bedroom_light icon: hue:room-nursery - entity: light.hallway_overhead - entity: light.front_porch_light icon: hue:room-porch - entity: light.tina_desk_lights icon: mdi:desk - entity: input_boolean.shower_mode - entity: input_boolean.white_noise_emma_bedroom name: White Noise - Emma - entity: input_boolean.white_noise_kallen_bedroom name: White Noise - Kallen - entity: input_boolean.white_noise_basement name: White Noise - Basement - entity: input_boolean.emma_sleeping - entity: input_boolean.kallen_sleeping - entity: input_boolean.master_bedroom_sleeping - entity: binary_sensor.lightning_warning state_map: 'off': No lightning detected 'on': Lightning is in the area! content_template: '{{state}}' - entity: sensor.home_tempest_precipitation_type name: Precipitation Type - entity: sensor.home_tempest_cloud_sensors_precipitation_intensity name: Precipitation Intensity state_map: no_rain: None very_light: Very Light light: Light moderate: Moderate heavy: Heavy very_heavy: Very Heavy - entity: input_boolean.recliner_mode - entity: timer.washer_timer state_map: idle: not running active: running content_template: The washer is {{state}} - entity: timer.dryer_timer state_map: idle: not running active: running content_template: The dryer is {{state}} - entity: light.stairwell_led_strip icon: hue:lightstrip - entity: binary_sensor.internet state_map: 'off': Disconnected 'on': Connected - entity: input_boolean.rabbit_fed name: Rabbit content_template: '{{display_name}} is {{state}}' state_map: 'off': hungry 'on': fed - entity: input_boolean.rabbit_hutch_cleaned name: Rabbit Hutch content_template: '{{display_name}} is {{state}}' state_map: 'off': dirty 'on': clean - type: grid cards: - type: heading heading: Communications heading_style: title icon: mdi:bullhorn - type: custom:tabbed-card styles: '--mdc-theme-primary': null '--mdc-tab-text-label-color-default': null '--mdc-typography-button-font-size': null tabs: - card: type: entities entities: - entity: input_text.tts_message name: Message - entity: input_select.tts_devices name: Devices - entity: input_select.announcement_voice - entity: button.send_alexa_message name: Send Message title: House Announcement System attributes: label: TTS icon: mdi:volume-high - card: type: entities title: Text Notification System entities: - entity: input_select.select_phones - entity: input_select.select_tvs - entity: input_text.text_notification_title name: Title - entity: input_text.text_notification name: Body - entity: input_select.text_notification_priority_level name: Priority Level (Only works for phones) - entity: button.send_text_notification name: Send show_header_toggle: false state_color: false attributes: label: Text Notify icon: mdi:text - card: type: entities entities: - entity: input_text.report_system name: Description - entity: input_select.report_type name: Report Type - entity: button.send_report title: Report System show_header_toggle: false state_color: false attributes: label: Reports icon: mdi:bug - type: grid cards: - type: heading heading: Misc heading_style: title icon: mdi:format-list-bulleted - type: markdown content: >- # Documentation [Nerd Home Incorporated Wiki (***Outdated!***)](https://wiki.nerdhomeinc.com) [Project Tracker](https://gitea.nerdhomeinc.com/home_automation/-/projects/7) # Status Pages [House Status](https://uptimekuma.nerdhomeinc.com/status/house-status) [Gaming Services](https://uptimekuma.nerdhomeinc.com/status/gaming) [Media Services](https://uptimekuma.nerdhomeinc.com/status/media-services) column_span: 1 max_columns: 4 cards: [] background: {} - title: First Floor path: first-floor icon: mdi:home-floor-1 type: sections sections: - type: grid cards: - type: custom:auto-entities show_empty: false card: type: entities show_header_toggle: false state_color: true title: Lights On filter: include: - group: light.first_floor_lights - entity_id: light.living_room_christmas_tree - entity_id: input_boolean.tina_desk_lights exclude: - state: 'off' - state: unavailable - entity_id: light.tina_desk_lights sort: method: friendly_name visibility: - condition: state entity: light.first_floor_lights state: 'on' - type: grid cards: - type: custom:streamline-card template: main_room_header variables: - name: Living Room - icon: hue:room-living - power_entity: sensor.living_room_total_power_sensor - light_entity: light.living_room_lights - type: custom:bubble-card card_type: button button_type: slider modules: - default - subbutton_below entity: light.living_room_lights rows: 2.406 icon: hue:room-living tap_action: action: toggle double_tap_action: action: perform-action perform_action: input_select.select_option target: entity_id: input_select.living_room_scenes data: option: Adaptive hold_action: action: more-info sub_button: main: - name: Lights buttons_layout: inline group: - entity: light.living_room_overhead tap_action: action: toggle hold_action: action: more-info show_name: true name: Overhead - entity: light.living_room_led_strip name: LED Strip icon: hue:lightstrip show_name: true tap_action: action: toggle hold_action: action: more-info bottom: - name: Smaller Buttons group: - entity: select.living_room_led_strip_theme name: LED Strip Theme icon: hue:lightstrip sub_button_type: select fill_width: false show_name: true - entity: script.emma_rainbow_lights name: Emma Rainbow Lights fill_width: false show_name: true justify_content: space-between - name: Scene group: - entity: input_select.living_room_scenes name: Scene icon: mdi:palette sub_button_type: select show_name: true bottom_layout: rows name: Lights - type: custom:streamline-card template: timer_card variables: entity: timer.living_room_motion_timer name: Motion Timer icon: mdi:timer visibility: - condition: state entity: timer.living_room_motion_timer state_not: idle - type: custom:bubble-card card_type: separator name: Media icon: mdi:volume-high card_layout: large - type: custom:bubble-card card_type: media-player name: TV show_state: true show_last_changed: false show_attribute: true attribute: app_id force_icon: false card_layout: large entity: media_player.living_room_tv_3 cover_background: true - 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: - name: Front Temp - entity: sensor.living_room_front_temperature - hot_entity: binary_sensor.living_room_hot - cold_entity: binary_sensor.living_room_cold - columns: 2 grid_options: columns: 6 rows: auto - type: custom:bubble-card card_type: button button_type: state entity: sensor.living_room_front_illuminance name: Front Lux show_attribute: false card_layout: large columns: 2 - type: custom:streamline-card template: main_temperature_button variables: - name: Back Temp - entity: sensor.living_room_back_temperature - hot_entity: binary_sensor.living_room_back_hot - cold_entity: binary_sensor.living_room_back_cold - columns: 2 grid_options: columns: 6 rows: auto - type: custom:bubble-card card_type: button button_type: state entity: sensor.living_room_back_illuminance name: Back Lux show_attribute: false card_layout: large columns: 2 - type: custom:streamline-card template: state_color_button variables: - name: Front Motion - entity: binary_sensor.living_room_front_motion - color: bubble-accent-color grid_options: columns: 4 rows: auto - type: custom:streamline-card template: state_color_button variables: - name: Back Motion - entity: binary_sensor.living_room_back_motion - color: bubble-accent-color grid_options: columns: 4 rows: auto - type: custom:streamline-card template: state_color_button variables: - name: Occupied - entity: binary_sensor.living_room_occupied - color: bubble-accent-color grid_options: columns: 4 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: Door - entity: binary_sensor.front_door - color: error-color grid_options: columns: 4 rows: auto - type: custom:streamline-card template: contact_sensor_button variables: - name: Front 1 - entity: binary_sensor.front_window_1 - color: error-color grid_options: columns: 4 rows: auto - type: custom:streamline-card template: contact_sensor_button variables: - name: Front 2 - entity: binary_sensor.front_window_2 - color: error-color grid_options: columns: 4 rows: auto - type: custom:streamline-card template: contact_sensor_button variables: - name: Front 3 - entity: binary_sensor.front_window_3 - color: error-color grid_options: columns: 4 rows: auto - type: custom:streamline-card template: contact_sensor_button variables: - name: Side 1 - entity: binary_sensor.side_window_1 - color: error-color grid_options: columns: 4 rows: auto - type: custom:streamline-card template: contact_sensor_button variables: - name: Side 2 - entity: binary_sensor.side_window_2 - color: error-color grid_options: columns: 4 rows: auto - type: custom:streamline-card template: contact_sensor_button variables: - name: Side 3 - entity: binary_sensor.side_window_3 - color: error-color grid_options: columns: 4 rows: auto - type: custom:streamline-card template: contact_sensor_button variables: - name: Side 4 - entity: binary_sensor.side_window_4 - color: error-color grid_options: columns: 4 rows: auto - type: custom:streamline-card template: contact_sensor_button variables: - name: Back 1 - entity: binary_sensor.back_window_1 - color: error-color grid_options: columns: 4 rows: auto - type: custom:streamline-card template: contact_sensor_button variables: - name: Back 2 - entity: binary_sensor.back_window_2 - color: error-color grid_options: columns: 4 rows: auto - type: custom:expander-card title: More Settings cards: - type: horizontal-stack cards: - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_downstairs_bathroom name: Adaptive Lighting show_state: true tap_action: action: toggle hold_action: action: more-info - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_sleep_mode_downstairs_bathroom name: Night Mode show_state: true tap_action: action: toggle hold_action: action: more-info - type: horizontal-stack cards: - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: input_boolean.living_room_dynamic_scenes name: Dynamic Scenes show_state: true tap_action: action: toggle hold_action: action: more-info - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: input_boolean.living_room_entertainment_control name: Media Scenes show_state: true tap_action: action: toggle hold_action: action: more-info - type: horizontal-stack cards: - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_adapt_color_living_room name: Adapt Color show_state: true tap_action: action: toggle hold_action: action: more-info - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_adapt_brightness_living_room name: Adapt Brightness show_state: true tap_action: action: toggle hold_action: action: more-info - type: entities entities: - entity: switch.living_room_motion_lighting name: Motion Lighting - entity: input_number.daytime_colortemp_living_room name: Day Colortemp - entity: input_number.nighttime_colortemp_living_room name: Night Colortemp - entity: input_number.nighttime_brightness_living_room name: Night Brightness - entity: input_number.living_room_lights_off_delay name: Lights Off Delay - entity: input_number.living_room_lux_threshold name: Lux Threshold - entity: binary_sensor.living_room_sync_issue name: Sync Issue icon: mdi:cog column_span: 1 background: opacity: 10 - type: grid cards: - type: custom:streamline-card template: main_room_header variables: - name: Downstairs Bathroom - icon: mdi:toilet - power_entity: sensor.downstairs_bathroom_lights_power_sensor - light_entity: light.downstairs_bathroom_lights - type: custom:bubble-card card_type: button button_type: slider modules: - default - subbutton_below rows: 1.719 icon: mdi:toilet tap_action: action: toggle double_tap_action: action: perform-action perform_action: input_select.select_option target: entity_id: input_select.downstairs_bathroom_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 entity: input_select.downstairs_bathroom_scenes show_name: true name: Lights entity: light.downstairs_bathroom_lights - type: custom:streamline-card template: timer_card variables: name: Lights Timer icon: mdi:timer entity: timer.downstairs_bathroom_lights_timer visibility: - condition: state entity: timer.downstairs_bathroom_lights_timer state_not: idle - type: custom:bubble-card card_type: separator name: Laundry icon: mdi:tshirt-crew card_layout: large - type: custom:bubble-card card_type: button entity: timer.washer_timer button_type: state name: Washer show_attribute: false card_layout: large columns: 2 - type: custom:bubble-card card_type: button entity: timer.dryer_timer button_type: state name: Dryer show_attribute: false 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: - name: Temp - entity: sensor.downstairs_bathroom_temperature - hot_entity: binary_sensor.downstairs_bathroom_hot - cold_entity: binary_sensor.downstairs_bathroom_cold - columns: 2 grid_options: columns: 6 rows: auto - type: custom:bubble-card card_type: button button_type: state entity: sensor.downstairs_bathroom_illuminance name: Lux card_layout: large columns: 2 - type: custom:streamline-card template: state_color_button variables: - name: Motion - entity: binary_sensor.downstairs_bathroom_motion - columns: 2 - color: bubble-accent-color grid_options: columns: 6 rows: auto - type: custom:streamline-card template: state_color_button variables: - name: Occupied - entity: binary_sensor.downstairs_bathroom_occupied - columns: 2 - 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: Back - entity: binary_sensor.downstairs_bathroom_window_1 - columns: 2 - color: error-color grid_options: columns: 6 rows: auto - type: custom:streamline-card template: contact_sensor_button variables: - name: Side - entity: binary_sensor.downstairs_bathroom_window_2 - columns: 2 - color: error-color grid_options: columns: 6 rows: auto - type: custom:expander-card title: More Settings cards: - type: horizontal-stack cards: - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_downstairs_bathroom name: Adaptive Lighting show_state: true tap_action: action: toggle hold_action: action: more-info - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_sleep_mode_downstairs_bathroom name: Night Mode show_state: true tap_action: action: toggle hold_action: action: more-info - type: entities entities: - entity: switch.downstairs_bathroom_motion_lighting name: Motion Lighting - entity: input_number.nighttime_brightness_downstairs_bathroom name: Night Brightness - entity: input_number.downstairs_bathroom_lights_off_delay name: Lights Off Delay - entity: input_number.downstairs_bathroom_lux_threshold name: Lux Threshold icon: mdi:cog column_span: 1 background: opacity: 10 - type: grid cards: - type: custom:streamline-card template: main_room_header variables: name: Tina Desk icon: mdi:desk light_entity: light.tina_desk_lights power_entity: sensor.tina_desk_total_power_sensor - type: custom:bubble-card card_type: button button_type: slider modules: - default - subbutton_below rows: 1.719 icon: mdi:desk tap_action: action: toggle double_tap_action: action: perform-action perform_action: input_select.select_option target: entity_id: input_select.living_room_scenes data: option: Adaptive hold_action: action: more-info sub_button: main: - name: Lights buttons_layout: inline group: - entity: light.tina_lamp_top name: Lamp Top icon: mdi:floor-lamp-dual show_name: true tap_action: action: toggle hold_action: action: more-info - entity: light.tina_lamp_side name: Lamp Side icon: mdi:floor-lamp-dual show_name: true tap_action: action: toggle hold_action: action: more-info bottom: - name: Scene buttons_layout: inline group: - name: Scene icon: mdi:palette sub_button_type: select entity: input_select.tina_desk_scenes show_name: true name: Lights entity: light.tina_desk_lights - type: custom:bubble-card card_type: separator name: Status icon: mdi:list-box card_layout: large - type: custom:streamline-card template: state_color_button variables: name: Occupied columns: 2 entity: binary_sensor.tina_desk_occupied color: bubble-accent-color grid_options: columns: 6 rows: auto - type: custom:expander-card title: More Settings cards: - type: horizontal-stack cards: - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_tina_lamp name: Adaptive Lighting show_state: true tap_action: action: toggle hold_action: action: more-info - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_sleep_mode_tina_lamp name: Night Mode show_state: true tap_action: action: toggle hold_action: action: more-info - type: entities entities: - entity: input_number.daytime_colortemp_tina_lamp name: Day Colortemp - entity: input_number.nighttime_colortemp_tina_lamp name: Night Colortemp - entity: input_number.nighttime_brightness_tina_lamp name: Night Brightness icon: mdi:cog column_span: 1 background: opacity: 10 - type: grid cards: - type: custom:bubble-card card_type: separator sub_button: main: [] bottom: [] name: Kitchen icon: hue:room-kitchen - 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: Big entity: binary_sensor.kitchen_big_window color: error-color grid_options: columns: 6 rows: auto - type: custom:streamline-card template: contact_sensor_button variables: name: Sink entity: binary_sensor.kitchen_sink_window color: error-color grid_options: columns: 6 rows: auto column_span: 1 background: opacity: 10 - type: grid cards: - type: custom:streamline-card template: main_room_header variables: name: Mud Room icon: hue:room-other light_entity: light.mud_room_overhead power_entity: sensor.mud_room_overhead_power_sensor - type: custom:bubble-card card_type: button button_type: slider modules: - default - subbutton_below rows: 1.719 icon: '' tap_action: action: toggle double_tap_action: action: perform-action perform_action: input_select.select_option target: entity_id: input_select.living_room_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 entity: input_select.mud_room_scenes name: Lights entity: light.mud_room_overhead - type: custom:streamline-card template: timer_card variables: name: Lights Timer icon: mdi:timer entity: timer.mud_room_motion_timer visibility: - condition: state entity: timer.mud_room_motion_timer state_not: idle - 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: name: Temp columns: 2 entity: sensor.mud_room_temperature hot_entity: binary_sensor.mud_room_hot cold_entity: binary_sensor.mud_room_cold grid_options: columns: 6 rows: auto - type: custom:bubble-card card_type: button button_type: state name: Lux card_layout: large columns: 2 sub_button: main: [] bottom: [] entity: sensor.mud_room_illuminance - type: custom:streamline-card template: state_color_button variables: name: Motion columns: 2 entity: binary_sensor.mud_room_motion color: bubble-accent-color grid_options: columns: 6 rows: auto - type: custom:streamline-card template: state_color_button variables: name: Occupied columns: 2 entity: binary_sensor.mud_room_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: Back Door columns: 2 entity: binary_sensor.back_door color: error-color grid_options: columns: 6 rows: auto - type: custom:streamline-card template: contact_sensor_button variables: name: Window columns: 2 entity: binary_sensor.mud_room_window color: error-color grid_options: columns: 6 rows: auto - type: custom:expander-card title: More Settings cards: - type: horizontal-stack cards: - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_mud_room name: Adaptive Lighting show_state: true tap_action: action: toggle hold_action: action: more-info - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_sleep_mode_mud_room name: Night Mode show_state: true tap_action: action: toggle hold_action: action: more-info - type: entities entities: - entity: switch.mud_room_motion_lighting name: Motion Lighting - entity: input_number.nighttime_brightness_mud_room name: Night Brightness - entity: input_number.mud_room_lights_off_delay name: Lights Off Delay - entity: input_number.mud_room_lux_threshold name: Lux Threshold icon: mdi:cog column_span: 1 background: opacity: 10 max_columns: 4 cards: [] visible: - user: c3909d27048140729f002aaef0391775 - title: Second Floor path: second-floor icon: mdi:home-floor-2 type: sections sections: - type: grid cards: - type: custom:auto-entities show_empty: false filter: include: - group: light.second_floor_lights exclude: - state: 'off' - state: unavailable sort: method: friendly_name card: type: entities show_header_toggle: false state_color: true title: Lights On - show_name: true show_icon: true type: button tap_action: action: toggle entity: button.emma_door_alert_cancel show_state: false visibility: - condition: state entity: timer.emma_door_alert state: active visibility: - condition: state entity: light.second_floor_lights state: 'on' - type: grid cards: - type: custom:streamline-card template: main_room_header variables: name: Stairwell icon: mdi:stairs light_entity: light.stairwell_led_strip - type: custom:bubble-card card_type: button button_type: slider modules: - default - subbutton_below icon: hue:lightstrip tap_action: action: toggle double_tap_action: action: perform-action perform_action: input_select.select_option target: entity_id: input_select.living_room_scenes data: option: Adaptive hold_action: action: more-info name: Light Strip entity: light.stairwell_led_strip sub_button: main: [] bottom: [] - type: custom:streamline-card template: timer_card variables: name: Lights Timer icon: mdi:timer entity: timer.stairwell_motion_timer visibility: - condition: state entity: timer.stairwell_motion_timer state_not: idle - 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.stairwell_bottom_temperature name: Temp columns: '2' hot_entity: binary_sensor.stairwell_bottom_hot cold_entity: binary_sensor.stairwell_bottom_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.stairwell_bottom_illuminance - type: custom:streamline-card template: state_color_button variables: name: Motion columns: 2 entity: binary_sensor.stairwell_bottom_motion color: bubble-accent-color grid_options: columns: 6 rows: auto - type: custom:streamline-card template: state_color_button variables: name: Occupied columns: 2 entity: binary_sensor.stairwell_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 columns: 2 entity: binary_sensor.stairway_window_lower color: error-color grid_options: columns: 6 rows: auto - type: custom:expander-card title: More Settings cards: - type: horizontal-stack cards: - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_stairwell name: Adaptive Lighting show_state: true tap_action: action: toggle hold_action: action: more-info - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_sleep_mode_stairwell name: Night Mode show_state: true tap_action: action: toggle hold_action: action: more-info - type: entities entities: - entity: switch.stairwell_motion_lighting name: Motion Lighting - entity: input_number.stairwell_lights_off_delay name: Lights Off Delay - entity: input_number.stairwell_lux_threshold name: Lux Threshold icon: mdi:cog column_span: 1 background: opacity: 10 - type: grid cards: - type: custom:streamline-card template: main_room_header variables: name: Upstairs Hallway icon: hue:ceiling-round light_entity: light.hallway_overhead power_entity: sensor.hallway_overhead_power_sensor - type: custom:bubble-card card_type: button button_type: slider modules: - default - subbutton_below rows: 1.719 icon: '' tap_action: action: toggle double_tap_action: action: perform-action perform_action: input_select.select_option target: entity_id: input_select.living_room_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 entity: input_select.upstairs_hallway_scenes name: Lights entity: light.hallway_overhead - type: custom:streamline-card template: timer_card variables: name: Lights Timer icon: mdi:timer entity: timer.upstairs_hallway_motion_timer visibility: - condition: state entity: timer.stairwell_motion_timer state_not: idle - 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.stairwell_top_temperature name: Temp columns: '2' hot_entity: binary_sensor.stairwell_top_hot cold_entity: binary_sensor.stairwell_top_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.stairwell_top_illuminance - type: custom:streamline-card template: state_color_button variables: name: Motion columns: 2 color: bubble-accent-color entity: binary_sensor.stairwell_top_motion grid_options: columns: 6 rows: auto - type: custom:streamline-card template: state_color_button variables: name: Occupied columns: 2 entity: binary_sensor.upstairs_hallway_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 columns: 2 color: error-color entity: binary_sensor.stairway_window_upper grid_options: columns: 6 rows: auto - type: custom:expander-card title: More Settings cards: - type: horizontal-stack cards: - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_upstairs_hallway name: Adaptive Lighting show_state: true tap_action: action: toggle hold_action: action: more-info - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_sleep_mode_upstairs_hallway name: Night Mode show_state: true tap_action: action: toggle hold_action: action: more-info - type: entities entities: - entity: input_number.nighttime_brightness_upstairs_hallway name: Night Brightness - entity: input_number.upstairs_hallway_lights_off_delay name: Lights Off Delay - entity: input_number.upstairs_hallway_lux_threshold name: Lux Threshold icon: mdi:cog column_span: 1 background: opacity: 10 - type: grid cards: - type: custom:streamline-card template: main_room_header variables: name: Upstairs Bathroom icon: mdi:toilet light_entity: light.hallway_overhead power_entity: sensor.upstairs_bathroom_lights_power_sensor - type: custom:bubble-card card_type: button button_type: slider modules: - default - subbutton_below rows: 1.719 icon: mdi:toilet tap_action: action: toggle double_tap_action: action: perform-action perform_action: input_select.select_option target: entity_id: input_select.living_room_scenes data: option: Adaptive hold_action: action: more-info sub_button: main: - name: Lights buttons_layout: inline group: - entity: light.upstairs_bathroom_left name: Left tap_action: action: toggle show_name: true - name: Mid L tap_action: action: toggle show_name: true entity: light.upstairs_bathroom_middle_left - name: Mid R tap_action: action: toggle show_name: true entity: light.upstairs_bathroom_middle_right - name: Right tap_action: action: toggle show_name: true entity: light.upstairs_bathroom_right - name: Wall tap_action: action: toggle show_name: true entity: light.upstairs_bathroom_wall bottom: - name: Scene buttons_layout: inline group: - name: Scene icon: mdi:palette sub_button_type: select show_name: true entity: input_select.upstairs_bathroom_scenes name: Lights entity: light.upstairs_bathroom_lights - type: custom:streamline-card template: timer_card variables: name: Lights Timer icon: mdi:timer entity: timer.upstairs_bathroom_motion_timer visibility: - condition: state entity: timer.upstairs_bathroom_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.shower_mode grid_options: columns: 6 rows: auto tap_action: action: toggle button_action: hold_action: action: none - 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.upstairs_bathroom_temperature name: Temp columns: '2' hot_entity: binary_sensor.upstairs_bathroom_hot cold_entity: binary_sensor.upstairs_bathroom_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.upstairs_bathroom_illuminance - type: custom:streamline-card template: state_color_button variables: name: Motion columns: 2 color: bubble-accent-color entity: binary_sensor.upstairs_bathroom_motion grid_options: columns: 6 rows: auto - type: custom:streamline-card template: state_color_button variables: name: Occupied columns: 2 entity: binary_sensor.upstairs_bathroom_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 columns: 2 color: error-color entity: binary_sensor.upstairs_bathroom_window grid_options: columns: 6 rows: auto - type: custom:expander-card title: More Settings cards: - type: horizontal-stack cards: - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_upstairs_bathroom name: Adaptive Lighting show_state: true tap_action: action: toggle hold_action: action: more-info - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_sleep_mode_upstairs_bathroom name: Night Mode show_state: true tap_action: action: toggle hold_action: action: more-info - type: entities entities: - entity: switch.upstairs_bathroom_motion_lighting name: Motion Lighting - entity: input_number.nighttime_brightness_upstairs_bathroom name: Night Brightness - entity: input_number.upstairs_bathroom_motion_off_delay name: Lights Off Delay - entity: input_number.upstairs_bathroom_lux_threshold name: Lux Threshold icon: mdi:cog column_span: 1 background: opacity: 10 - type: grid cards: - type: custom:streamline-card template: main_room_header variables: name: Master Bedroom icon: mdi:bed light_entity: light.master_bedroom_lights power_entity: sensor.master_bedroom_total_power_sensor - type: custom:bubble-card card_type: button button_type: slider modules: - default - subbutton_below rows: 1.719 icon: mdi:bed tap_action: action: toggle double_tap_action: action: perform-action perform_action: input_select.select_option target: entity_id: input_select.master_bedroom_scenes data: option: Adaptive hold_action: action: more-info sub_button: main: - name: Lights buttons_layout: inline group: - entity: light.master_bedroom_front name: Front tap_action: action: toggle show_name: true - name: Side tap_action: action: toggle show_name: true entity: light.master_bedroom_side - name: Closet tap_action: action: toggle show_name: true entity: light.master_bedroom_closet bottom: - name: Scene buttons_layout: inline group: - name: Scene icon: mdi:palette sub_button_type: select show_name: true entity: input_select.master_bedroom_scenes name: Lights entity: light.master_bedroom_lights - type: custom:streamline-card template: timer_card variables: name: Lights Timer icon: mdi:timer entity: timer.master_bedroom_motion_timer visibility: - condition: state entity: timer.master_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.master_bedroom_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: state entity: input_boolean.master_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 - name: Presets select_attribute: preset_modes state_background: false sub_button_type: select show_attribute: true attribute: preset_mode bottom: [] name: Thermostat entity: climate.master_bedroom_aircon state_color: false step: 1 main_buttons_position: bottom rows: 1.719 visibility: - condition: state entity: input_boolean.master_bedroom_aircon_installed state: 'on' - type: custom:streamline-card template: state_color_button variables: entity: binary_sensor.master_bedroom_aircon_compressor name: Compressor show_state: 'true' columns: '2' color: bubble-accent-color visibility: - condition: state entity: input_boolean.master_bedroom_aircon_installed state: 'on' - type: custom:streamline-card template: state_color_button variables: entity: binary_sensor.master_bedroom_aircon_filter_alert name: Filter show_state: 'true' columns: '2' color: error-color visibility: - condition: state entity: input_boolean.master_bedroom_aircon_installed state: 'on' - 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.master_bedroom_temperature name: Temp columns: '2' hot_entity: binary_sensor.master_bedroom_hot cold_entity: binary_sensor.master_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.master_bedroom_illuminance - type: custom:streamline-card template: state_color_button variables: name: Motion columns: 2 color: bubble-accent-color entity: binary_sensor.master_bedroom_motion grid_options: columns: 6 rows: auto - type: custom:streamline-card template: state_color_button variables: name: Occupied columns: 2 entity: binary_sensor.master_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.master_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.master_bedroom_window_2 grid_options: columns: 6 rows: auto - type: custom:expander-card title: More Settings cards: - type: horizontal-stack cards: - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_master_bedroom name: Adaptive Lighting show_state: true tap_action: action: toggle hold_action: action: more-info - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_sleep_mode_master_bedroom name: Sleep Mode show_state: true tap_action: action: toggle hold_action: action: more-info - type: entities entities: - entity: switch.master_bedroom_motion_lighting name: Motion Lighting - entity: input_number.nighttime_brightness_master_bedroom name: Night Brightness - entity: input_number.master_bedroom_lights_off_delay name: Lights Off Delay - entity: input_number.master_bedroom_lux_threshold name: Lux Threshold icon: mdi:cog column_span: 1 background: opacity: 10 - type: grid cards: - 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: toggle show_name: true - name: Wall tap_action: 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:expander-card title: More Settings cards: - type: horizontal-stack cards: - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_kallen_bedroom name: Adaptive Lighting show_state: true tap_action: action: toggle hold_action: action: more-info - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_sleep_mode_kallen_bedroom name: Sleep Mode show_state: true tap_action: action: toggle hold_action: action: more-info - type: entities entities: - 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 icon: mdi:cog column_span: 1 background: opacity: 10 - type: grid cards: - 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 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 - 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 - 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_heater_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: button button_type: switch entity: switch.emma_bedroom_climate_watchdog name: Climate Watchdog 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:expander-card title: More Settings cards: - type: horizontal-stack cards: - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_emma_bedroom name: Adaptive Lighting show_state: true tap_action: action: toggle hold_action: action: more-info - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_sleep_mode_emma_bedroom name: Sleep Mode show_state: true tap_action: action: toggle hold_action: action: more-info - type: entities entities: - 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: 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 icon: mdi:cog column_span: 1 background: opacity: 10 max_columns: 4 cards: [] - title: Basement path: basement icon: mdi:home-floor-b type: sections sections: - type: grid cards: - type: custom:streamline-card template: main_room_header variables: - name: Basement Studio - icon: mdi:twitch - power_entity: sensor.basement_studio_total_power_sensor - light_entity: light.basement_studio_lights - type: horizontal-stack cards: - type: custom:mushroom-light-card entity: light.basement_studio_lights name: Lights icon: mdi:twitch fill_container: true use_light_color: true show_brightness_control: true show_color_temp_control: true show_color_control: true collapsible_controls: true double_tap_action: action: call-service service: input_select.select_option service_data: option: Adaptive target: entity_id: input_select.basement_studio_scenes primary_info: none layout: vertical - type: custom:bubble-card card_type: separator name: Lights icon: mdi:lightbulb card_layout: large - type: custom:bubble-card card_type: button button_type: slider entity: light.basement_led_strip_1 show_attribute: true show_state: true attribute: brightness tap_action: action: toggle double_tap_action: action: none hold_action: action: more-info icon: hue:lightstrip name: LED Strip 1 styles: >- ${icon.setAttribute("icon", state === 'off' ? 'hue:lightstrip-off' : 'hue:lightstrip')} card_layout: large columns: 2 - type: custom:bubble-card card_type: button button_type: slider entity: light.basement_stairwell name: Stairwell show_state: true show_attribute: true attribute: brightness tap_action: action: toggle double_tap_action: action: none hold_action: action: more-info styles: >- ${icon.setAttribute("icon", state === 'off' ? 'hue:floor-shade-off' : 'hue:floor-shade')} card_layout: large columns: 2 - type: custom:bubble-card card_type: button button_type: slider entity: light.basement_short_lamp show_attribute: true show_state: true attribute: brightness tap_action: action: toggle double_tap_action: action: none hold_action: action: more-info name: Short Lamp styles: >- ${icon.setAttribute("icon", state === 'off' ? 'hue:floor-shade-off' : 'hue:floor-shade')} card_layout: large columns: 2 - type: custom:bubble-card card_type: button button_type: slider entity: light.basement_tall_lamp name: Tall Lamp show_state: true show_attribute: true attribute: brightness tap_action: action: toggle double_tap_action: action: none hold_action: action: more-info styles: >- ${icon.setAttribute("icon", state === 'off' ? 'hue:floor-shade-off' : 'hue:floor-shade')} card_layout: large columns: 2 - type: custom:timer-bar-card filter: true entities: - entity: timer.basement_studio_door_timer name: Door Timer sync_issues: ignore tap_action: action: call-service service: timer.finish target: entity_id: timer.basement_studio_door_timer hold_action: action: more-info double_tap_action: action: none modifications: - elapsed: 40% bar_foreground: orange - elapsed: 80% bar_foreground: red compressed: true - type: custom:bubble-card card_type: separator name: Media icon: mdi:volume-high card_layout: large - type: custom:bubble-card card_type: media-player entity: media_player.basement_tv name: TV - type: custom:bubble-card card_type: separator name: Environment icon: mdi:thermometer card_layout: large - type: custom:bubble-card card_type: climate sub_button: - entity: climate.basement_studio_vtherm select_attribute: hvac_modes name: HVAC modes menu state_background: true - name: Presets menu select_attribute: preset_modes state_background: false show_arrow: true name: Thermostat entity: climate.basement_studio_vtherm card_layout: large state_color: false visibility: - condition: state entity: input_boolean.basement_studio_heat_allowed state: 'on' - type: custom:bubble-card card_type: button button_type: switch entity: fan.basement_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_basement 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: Modes icon: mdi:toggle-switch card_layout: large - type: custom:bubble-card card_type: button entity: input_boolean.studio_quiet name: Studio Quiet 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: button button_type: switch entity: input_boolean.gaming_mode name: Gaming Mode 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: - name: Temp - entity: sensor.basement_studio_temperature - hot_entity: binary_sensor.basement_studio_hot - cold_entity: binary_sensor.basement_studio_cold - columns: 2 grid_options: columns: 6 rows: auto - type: custom:bubble-card card_type: button button_type: state entity: sensor.basement_studio_illuminance name: Lux show_state: true tap_action: action: more-info double_tap_action: action: none hold_action: action: none button_action: double_tap_action: action: none hold_action: action: none card_layout: large columns: 2 - type: custom:streamline-card template: state_color_button variables: - name: Motion - entity: binary_sensor.basement_studio_motion - columns: 2 - color: bubble-accent-color grid_options: columns: 6 rows: auto - type: custom:streamline-card template: state_color_button variables: - name: Occupied - entity: binary_sensor.basement_occupied - columns: 2 - color: bubble-accent-color grid_options: columns: 6 rows: auto - type: custom:expander-card title: More Settings cards: - type: horizontal-stack cards: - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_basement_studio name: Adaptive Lighting show_state: true tap_action: action: toggle hold_action: action: more-info - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_sleep_mode_basement_studio name: Night Mode show_state: true tap_action: action: toggle hold_action: action: more-info - type: horizontal-stack cards: - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_adapt_color_basement_studio name: Adapt Color show_state: true tap_action: action: toggle hold_action: action: more-info - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_adapt_brightness_basement_studio name: Adapt Brightness show_state: true tap_action: action: toggle hold_action: action: more-info - type: horizontal-stack cards: - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: input_boolean.basement_studio_dynamic_scenes name: Dynamic Scenes show_state: true tap_action: action: toggle hold_action: action: more-info - type: custom:bubble-card card_type: empty-column - type: entities entities: - entity: input_boolean.basement_studio_heat_allowed name: Heat Allowed - entity: automation.basement_lights_handling name: Auto Handling - entity: automation.basement_lights_adaptive_resync name: Adaptive Resync - entity: input_number.daytime_colortemp_basement_studio name: Day Colortemp - entity: input_number.nighttime_colortemp_basement_studio name: Night Colortemp - entity: input_number.nighttime_brightness_basement_studio name: Night Brightness - entity: input_number.basement_studio_lights_off_delay name: Lights Off Delay - entity: counter.basement_studio_door_opened_today name: Door Opened Today - entity: counter.basement_led_strip_resets name: LED Strip Resets - entity: binary_sensor.basement_studio_sync_issue name: Sync Issue - entity: input_button.basement_led_strip_reset name: LED Strip Reset icon: mdi:cog column_span: 1 background: opacity: 10 - type: grid cards: - type: heading heading: Furnace Room - type: horizontal-stack cards: - type: custom:mushroom-light-card entity: light.furnace_room_overhead fill_container: true use_light_color: true show_brightness_control: true collapsible_controls: true double_tap_action: action: call-service service: scene.turn_on service_data: {} target: entity_id: scene.furnace_room_bright name: Light layout: vertical show_color_temp_control: false visibility: - condition: state entity: light.furnace_room_overhead state_not: unavailable max_columns: 4 cards: [] background: {} - title: Outdoors path: outdoors icon: hue:room-outdoors type: sections sections: - type: grid cards: - type: custom:streamline-card template: main_room_header variables: - name: Front Porch - icon: hue:room-outdoors - power_entity: sensor.front_porch_light_power_sensor - light_entity: light.front_porch_light - type: custom:bubble-card card_type: button button_type: slider modules: - default - subbutton_below rows: 1.719 icon: hue:room-outdoors tap_action: action: toggle double_tap_action: action: perform-action perform_action: input_select.select_option target: entity_id: input_select.front_porch_scenes data: option: Adaptive hold_action: action: more-info sub_button: main: - name: Modes buttons_layout: inline group: - entity: switch.front_porch_storm_mode name: Storm Mode show_name: true tap_action: action: toggle hold_action: action: more-info bottom: - name: Scene buttons_layout: inline group: - name: Scene icon: mdi:palette sub_button_type: select entity: input_select.front_porch_scenes show_name: true name: Lights entity: light.front_porch_light - type: custom:streamline-card template: timer_card variables: name: Motion Timer icon: mdi:timer entity: timer.front_porch_motion_timer visibility: - condition: state entity: timer.downstairs_bathroom_lights_timer state_not: idle - 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: name: Temp entity: sensor.home_tempest_temperature columns: 2 grid_options: columns: 6 rows: auto - type: custom:bubble-card card_type: button button_type: state entity: sensor.home_tempest_illuminance name: Lux card_layout: large columns: 2 - type: custom:streamline-card template: state_color_button variables: name: Ding entity: binary_sensor.front_doorbell_ding_mqtt columns: 2 color: success-color grid_options: columns: 6 rows: auto - type: custom:streamline-card template: state_color_button variables: name: Motion entity: binary_sensor.front_doorbell_motion_mqtt columns: 2 color: bubble-accent-color grid_options: columns: 6 rows: auto - type: custom:expander-card title: More Settings cards: - type: horizontal-stack cards: - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_front_porch name: Adaptive Lighting show_state: true tap_action: action: toggle hold_action: action: more-info - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: switch.adaptive_lighting_sleep_mode_front_porch name: Night Mode show_state: true tap_action: action: toggle hold_action: action: more-info - type: horizontal-stack cards: - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: input_boolean.delivery_mode name: Delivery Mode show_state: true tap_action: action: toggle hold_action: action: more-info - type: custom:bubble-card card_type: button button_type: switch sub_button: main: [] bottom: [] entity: input_boolean.holiday_mode name: Holiday Mode show_state: true tap_action: action: toggle hold_action: action: more-info - type: entities entities: - entity: input_number.daytime_colortemp_front_porch name: Day Colortemp - entity: input_number.nighttime_colortemp_front_porch name: Night Colortemp - entity: input_number.front_porch_lux_threshold name: Lux Threshold - entity: input_number.front_porch_motion_off_delay name: Lights Off Delay icon: mdi:cog column_span: 1 background: opacity: 10 max_columns: 4 cards: [] - title: Housewide path: housewide icon: mdi:home-lightbulb-outline type: sections sections: - type: grid cards: - type: heading heading: Running Timers - type: custom:timer-bar-card filter: true show_empty: All timers are currently idle. entities: - entity: timer.living_room_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.living_room_motion_timer - entity: timer.sunset_lighting_timer sync_issues: ignore tap_action: action: none hold_action: action: more-info double_tap_action: action: none layout: hide_name icon: mdi:weather-sunset 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.sunset_lighting_timer - entity: timer.downstairs_bathroom_lights_timer tap_action: action: none hold_action: action: more-info double_tap_action: action: none layout: hide_name icon: mdi:toilet 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.downstairs_bathroom_lights_timer - entity: timer.upstairs_bathroom_motion_timer sync_issues: ignore tap_action: action: none hold_action: action: more-info double_tap_action: action: none layout: hide_name icon: mdi:toilet 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.upstairs_bathroom_motion_timer - entity: timer.stairwell_motion_timer sync_issues: ignore tap_action: action: none hold_action: action: more-info double_tap_action: action: none layout: hide_name icon: mdi:toilet 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.stairwell_motion_timer - 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 icon: mdi:toilet 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 - entity: timer.front_porch_motion_timer sync_issues: ignore tap_action: action: none hold_action: action: more-info double_tap_action: action: none layout: hide_name icon: mdi:outdoor-lamp 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.front_porch_motion_timer - entity: timer.basement_studio_door_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.basement_studio_door_timer - entity: timer.emma_bedtime_update 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_bedtime_update - entity: timer.washer_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.washer_timer - entity: timer.dryer_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.dryer_timer - type: grid cards: - type: heading heading: Global Scenes - type: entities entities: - entity: script.give_me_darkness secondary_info: After kid's bedtime confirmation: true - entity: button.good_morning secondary_info: Optional, when we wake up confirmation: true - entity: button.goodnight secondary_info: When Tony goes to bed confirmation: true - entity: script.global_on secondary_info: Turn all lights on confirmation: true - entity: script.global_off secondary_info: Turn all lights/fans off confirmation: true - entity: script.max_brightness secondary_info: Turn all lights on at 100% confirmation: true - entity: script.going_upstairs secondary_info: When coming to bed from basement confirmation: true - entity: button.basement_on_manual name: Basement On secondary_info: Turns on lights/computer/TV confirmation: true - entity: button.sunset_lights_trigger name: Sunset Lights Manual Trigger secondary_info: If flow gets interrupted confirmation: true - entity: script.adaptive_on_first_floor secondary_info: Reset lights to adaptive confirmation: true - entity: script.adaptive_on_second_floor secondary_info: Reset lights to adaptive confirmation: true - entity: script.bright_on_first_floor confirmation: true - entity: script.bright_on_second_floor confirmation: true - entity: script.evening_on_first_floor confirmation: true - entity: script.evening_on_second_floor confirmation: true - entity: script.emma_rainbow_lights - type: grid cards: - type: heading heading: Announcements - type: entities entities: - entity: script.dinner_is_ready name: Dinner Is Ready icon: mdi:bullhorn - entity: script.we_are_leaving name: We Are Leaving icon: mdi:bullhorn - entity: script.birthday_announcement name: Birthday Announcement icon: mdi:bullhorn - entity: script.server_maintenance_annc name: Server Maintenance icon: mdi:bullhorn - entity: script.server_maintenance_done_annc name: Server Maintenance Done icon: mdi:bullhorn - entity: script.speech_engine - type: grid cards: - type: heading heading: Room Illuminance - type: vertical-stack cards: - type: custom:auto-entities card: type: entities state_color: true show_header_toggle: false filter: include: - device_manufacturer: Signify Netherlands B.V. entity_id: sensor.*_illuminance exclude: [] sort: method: state numeric: true reverse: true max_columns: 4 cards: [] - title: Climate path: climate icon: mdi:home-thermometer type: sections sections: - type: grid cards: - type: heading heading: Overview - type: custom:auto-entities show_empty: false card: type: entities title: Climate On show_header_toggle: false state_color: true filter: include: - domain: fan - domain: climate exclude: - entity_id: fan.all_fans - state: 'off' - state: unavailable - integration: generic_thermostat sort: method: friendly_name reverse: false - type: custom:auto-entities card: type: entities show_header_toggle: false title: Room Temperature Warnings state_color: true filter: include: - entity_id: binary_sensor.*_hot state: 'on' - entity_id: binary_sensor.*_cold state: 'on' sort: method: entity_id reverse: false numeric: false ignore_case: false show_empty: false - type: custom:auto-entities card: type: entities title: Floor Average Temperatures state_color: true show_header_toggle: false filter: include: - entity_id: sensor.*floor_average_temperature exclude: [] sort: method: state numeric: true reverse: true - type: custom:auto-entities card: type: entities title: Room Temperatures state_color: true show_header_toggle: false filter: include: - device_manufacturer: Signify Netherlands B.V. entity_id: sensor.*_temperature exclude: [] sort: method: state numeric: true reverse: true - type: grid cards: - type: heading heading: Master Bedroom - type: entities entities: - entity: switch.master_bedroom_aircon_display name: A/C Display - entity: switch.master_bedroom_aircon_prompt_tone name: Prompt Tone - entity: binary_sensor.master_bedroom_aircon_filter_alert name: Filter Status - entity: input_number.master_bedroom_daytime_temp name: Daytime Temp - entity: input_number.master_bedroom_night_temp name: Night Temp - entity: input_number.master_bedroom_bedtime_temp name: Bedtime Temp - entity: button.master_bedroom_fan_only name: A/C Fan Only - entity: button.master_bedroom_day_mode name: Day Mode icon: m3rf:sunny - entity: button.master_bedroom_night_mode name: Night Mode - entity: button.master_bedroom_bedtime_mode name: Bedtime Mode - entity: button.master_bedroom_climate_reset name: Climate Reset show_header_toggle: false state_color: true visibility: - condition: state entity: input_boolean.master_bedroom_aircon_installed state: 'on' visibility: - condition: user users: - f387a983651a4321a7411ff8cf36f949 - c3909d27048140729f002aaef0391775 - condition: state entity: input_boolean.master_bedroom_aircon_installed state: '' - type: grid cards: - type: heading heading: Emma Bedroom - type: entities entities: - entity: switch.emma_bedroom_aircon_display name: A/C Display - entity: switch.emma_bedroom_aircon_prompt_tone name: Prompt Tone - entity: switch.emma_bedroom_climate_watchdog name: Climate Watchdog secondary_info: Protects aircon settings - entity: binary_sensor.emma_bedroom_aircon_filter_alert name: Filter Status - entity: input_number.emma_bedroom_daytime_temp name: Daytime Temp - entity: input_number.emma_bedroom_night_temp name: Night Temp - entity: input_number.emma_bedroom_bedtime_temp name: Bedtime Temp - entity: button.emma_bedroom_fan_only name: A/C Fan Only - entity: button.emma_bedroom_day_mode name: Day Mode icon: m3rf:sunny - entity: button.emma_bedroom_night_mode name: Night Mode - entity: button.emma_bedroom_bedtime_mode name: Bedtime Mode - entity: button.emma_bedroom_climate_reset name: Climate Reset show_header_toggle: false state_color: true visibility: - condition: state entity: input_boolean.emma_bedroom_aircon_installed state: 'on' visibility: - condition: user users: - f387a983651a4321a7411ff8cf36f949 - c3909d27048140729f002aaef0391775 - condition: state entity: input_boolean.emma_bedroom_aircon_installed state: 'on' - type: grid cards: - type: heading heading: Climate Feed - type: custom:home-feed-card card_id: climate_feed_ac show_empty: false id_filter: ^home_feed_.* more_info_on_tap: true state_color: true entities: - entity: climate.master_bedroom_aircon icon: mdi:air-conditioner exclude_states: - unavailable - unknown - entity: climate.emma_bedroom_aircon icon: mdi:air-conditioner exclude_states: - unavailable - unknown - entity: sensor.master_bedroom_target_temp icon: mdi:thermostat name: Master Bedroom Set Temp exclude_states: - unavailable - unknown - entity: sensor.emma_bedroom_target_temp icon: mdi:thermostat name: Emma Bedroom Set Temp exclude_states: - unavailable - unknown - entity: fan.master_bedroom_fan name: Master Bedroom Fan exclude_states: - unavailable - unknown - entity: fan.basement_fan name: Basement Fan exclude_states: - unavailable - unknown - entity: fan.kallen_bedroom_fan name: Kallen Fan exclude_states: - unavailable - unknown - entity: switch.master_bedroom_aircon_eco_mode name: Master Bedroom Eco Mode - entity: sensor.master_bedroom_aircon_fan_mode name: Master Bedroom A/C Fan exclude_states: - unavailable - unknown - entity: binary_sensor.emma_bedroom_aircon_fan name: Emma Bedroom A/C Fan exclude_states: - unavailable - unknown - entity: binary_sensor.emma_bedroom_aircon_compressor name: Emma Bedroom A/C Compressor exclude_states: - unavailable - unknown - entity: switch.emma_bedroom_aircon_eco_mode name: Emma Bedroom Eco Mode - entity: sensor.emma_bedroom_aircon_fan_mode name: Emma Bedroom A/C Fan exclude_states: - unavailable - unknown - entity: binary_sensor.master_bedroom_aircon_fan name: Master Bedroom A/C Fan exclude_states: - unavailable - unknown - entity: binary_sensor.master_bedroom_aircon_compressor name: Master Bedroom A/C Compressor exclude_states: - unavailable - unknown - entity: climate.basement_studio_vtherm name: Basement Studio VTherm exclude_states: - unavailable - unknown - entity: switch.basement_studio_heater name: Basement Studio Heater exclude_states: - unavailable - unknown - entity: climate.emma_bedroom_vtherm name: Emma Bedroom VTherm exclude_states: - unavailable - unknown - entity: switch.emma_bedroom_heater name: Emma Bedroom Heater exclude_states: - unavailable - unknown - entity: switch.master_bedroom_aircon_display name: Master Bedroom A/C Display exclude_states: - unavailable - unknown - entity: switch.emma_bedroom_aircon_display name: Emma Bedroom A/C Display exclude_states: - unavailable - unknown max_columns: 4 cards: [] badges: [] - title: Kallens Korner path: kallens-korner icon: mdi:human-male-boy type: sections sections: - type: grid cards: - type: heading heading: Activity Timer - type: custom:flipdown-timer-card entity: timer.kallen_timer name: Kallen Activity Timer duration: '00:00:00' show_title: false show_header: true show_error: false show_hour: auto styles: button: location: hide visibility: - condition: or conditions: - condition: state entity: timer.kallen_timer state: active - condition: state entity: timer.kallen_timer state: paused - type: custom:stack-in-card cards: - type: entities entities: - entity: input_number.kallen_activity_duration name: Duration - entity: input_boolean.kallen_timer_control_lights name: Control Lights - entity: input_select.kallen_activity_room name: Room - entity: input_select.kallen_activities name: Activity show_header_toggle: false state_color: true - type: custom:stack-in-card mode: horizontal cards: - type: custom:button-card entity: timer.kallen_timer name: [] show_label: true aspect_ratio: 2.7/1 styles: card: - '--mdc-ripple-color': purple - '--mdc-ripple-press-opacity': 0.5 state: - value: active label: Running icon: mdi:play styles: icon: - color: green - value: paused label: Paused icon: mdi:pause styles: icon: - color: yellow - value: idle label: Idle icon: mdi:play tap_action: action: call-service service: button.press service_data: entity_id: button.kallen_timer_start hold_action: action: more-info entity: timer.kallen_timer - type: custom:button-card entity: timer.kallen_timer name: [] icon: mdi:cancel label: Cancel show_label: true aspect_ratio: 2.7/1 styles: card: - '--mdc-ripple-color': purple - '--mdc-ripple-press-opacity': 0.5 state: - value: active styles: icon: - color: green - value: paused styles: icon: - color: yellow - value: idle tap_action: action: call-service service: script.kallen_timer_cancel hold_action: action: more-info entity: timer.kallen_timer - type: grid cards: - type: heading heading: School - type: custom:mushroom-template-card primary: Hello, {{user}} secondary: |- Today's lunch menu is: {{ states('sensor.school_lunch_menu_items') }} icon: '{{ state_attr(''sensor.school_lunch_menu_items'',''icon'') }}' entity: sensor.school_lunch_menu_items icon_color: |- {% if is_state('sensor.school_lunch_menu_week','First Menu') %} green {% elif is_state('sensor.school_lunch_menu_week','Second Menu') %} red {% elif is_state('sensor.school_lunch_menu_week','Third Menu') %} yellow {% elif is_state('sensor.school_lunch_menu_week','Fourth Menu') %} blue {% else %} grey {% endif %} fill_container: false multiline_secondary: true badge_icon: |- {% set dow = now().strftime('%A') %} {% if is_state('calendar.defiance_city_schools_lunch','on') %} {% if dow == 'Monday' %} mdi:numeric-1 {% elif dow == 'Tuesday' %} mdi:numeric-2 {% elif dow == 'Wednesday' %} mdi:numeric-3 {% elif dow == 'Thursday' %} mdi:numeric-4 {% elif dow == 'Friday' %} mdi:numeric-5 {% endif %} {% else %} mdi:close {% endif %} badge_color: |- {% if is_state('calendar.defiance_city_schools_lunch','on') %} purple {% else %} red {% endif %} tap_action: action: more-info hold_action: action: none double_tap_action: action: url url_path: https://www.defiancecityschools.org/Lunch.aspx layout: horizontal visibility: - condition: state entity: input_boolean.school_in_session state: 'on' - type: entities entities: - type: custom:template-entity-row entity: sensor.school_start_days2go name: First Day of School condition: '{{ states(''sensor.school_start_days2go'') >= ''0'' }}' icon: mdi:calendar - type: custom:template-entity-row entity: sensor.thanksgiving_break_days2go name: Thanksgiving Break condition: '{{ states(''sensor.thanksgiving_break_days2go'') >= ''0'' }}' icon: mdi:calendar - type: custom:template-entity-row entity: sensor.christmas_break_days2go name: Christmas Break condition: '{{ states(''sensor.christmas_break_days2go'') >= ''0'' }}' icon: mdi:calendar - type: custom:template-entity-row entity: sensor.spring_break_days2go name: Spring Break condition: '{{ states(''sensor.spring_break_days2go'') >= ''0'' }}' icon: mdi:calendar - type: custom:template-entity-row entity: sensor.school_end_days2go name: Last Day of School condition: '{{ states(''sensor.school_end_days2go'') >= ''0'' }}' icon: mdi:calendar title: Countdowns - type: grid cards: - type: heading heading: Kallen Desktop - type: heading icon: mdi:gauge heading: Performance heading_style: subtitle visibility: - condition: and conditions: - condition: state entity: binary_sensor.kallen_desktop_on state: 'on' - condition: or conditions: - condition: and conditions: - condition: state entity: sensor.kallen_desktop_cpu_usage state_not: unavailable - condition: state entity: sensor.kallen_desktop_cpu_usage state_not: unknown - condition: and conditions: - condition: state entity: sensor.kallen_desktop_cpu_temperature state_not: unavailable - condition: state entity: sensor.kallen_desktop_cpu_temperature state_not: unavailable - type: horizontal-stack cards: - type: custom:gauge-card-pro entity: sensor.kallen_desktop_cpu_usage segments: - from: 0 color: var(--success-color) - from: 75 color: var(--warning-color) - from: 90 color: var(--error-color) needle: true gradient: true titles: primary: CPU primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} entity2: sensor.kallen_desktop_cpu_temperature min: 0 max: 100 inner: mode: needle min: 0 max: 100 segments: - from: 0 color: var(--success-color) - from: 80 color: var(--warning-color) - from: 95 color: var(--error-color) gradient: true gradient_resolution: auto round: small gradient_resolution: auto value_texts: primary: | {% if states(entity) | int >= 90 %} ALERT {% else %} {{ states(entity) | int }} {% endif %} secondary: | {% if states(entity2) | int >= 95 %} ALERT {% else %} {{ states(entity2) | int }} {% endif %} primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} secondary_color: | {% if states(entity2) | int >= 95 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} round: small - type: custom:gauge-card-pro entity: sensor.kallen_desktop_gpu_core_load segments: - from: 0 color: var(--success-color) - from: 80 color: var(--warning-color) - from: 90 color: var(--error-color) needle: true gradient: true titles: primary: GPU primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} entity2: sensor.kallen_desktop_gpu_temperature min: 0 max: 100 inner: mode: needle min: 0 max: 100 segments: - from: 0 color: var(--success-color) - from: 75 color: var(--warning-color) - from: 85 color: var(--error-color) gradient: true gradient_resolution: auto round: small gradient_resolution: auto value_texts: primary: | {% if states(entity) | int >= 90 %} ALERT {% else %} {{ states(entity) | int }} {% endif %} secondary: | {% if states(entity2) | int >= 85 %} ALERT {% else %} {{ states(entity2) | int }} {% endif %} primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} secondary_color: | {% if states(entity2) | int >= 95 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} round: small visibility: - condition: and conditions: - condition: state entity: binary_sensor.kallen_desktop_on state: 'on' - condition: or conditions: - condition: and conditions: - condition: state entity: sensor.kallen_desktop_cpu_usage state_not: unavailable - condition: state entity: sensor.kallen_desktop_cpu_usage state_not: unknown - condition: and conditions: - condition: state entity: sensor.kallen_desktop_cpu_temperature state_not: unavailable - condition: state entity: sensor.kallen_desktop_cpu_temperature state_not: unknown - condition: and conditions: - condition: state entity: sensor.kallen_desktop_gpu_core_load state_not: unavailable - condition: state entity: sensor.kallen_desktop_gpu_core_load state_not: unavailable - condition: and conditions: - condition: state entity: sensor.kallen_desktop_gpu_temperature state_not: unavailable - condition: state entity: sensor.kallen_desktop_gpu_temperature state_not: unavailable - type: horizontal-stack cards: - type: custom:gauge-card-pro entity: sensor.kallen_desktop_memory_usage segments: - from: 0 color: var(--success-color) - from: 80 color: var(--warning-color) - from: 90 color: var(--error-color) needle: true gradient: true titles: primary: RAM primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} gradient_resolution: auto value_texts: primary: | {% if states(entity) | int >= 90 %} ALERT {% else %} {{ states(entity) | int }} {% endif %} primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} secondary_color: | {% if states(entity2) | int >= 95 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} round: small - type: custom:gauge-card-pro entity: sensor.kallen_desktop_gpu_vram_usage segments: - from: 0 color: var(--success-color) - from: 80 color: var(--warning-color) - from: 90 color: var(--error-color) needle: true gradient: true titles: primary: VRAM primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} gradient_resolution: auto value_texts: primary: | {% if states(entity) | int >= 90 %} ALERT {% else %} {{ states(entity) | int }} {% endif %} primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} secondary_color: | {% if states(entity2) | int >= 95 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} round: small visibility: - condition: and conditions: - condition: state entity: binary_sensor.kallen_desktop_on state: 'on' - condition: or conditions: - condition: and conditions: - condition: state entity: sensor.kallen_desktop_memory_usage state_not: unavailable - condition: state entity: sensor.kallen_desktop_memory_usage state_not: unknown - condition: and conditions: - condition: state entity: sensor.kallen_desktop_gpu_vram_usage state_not: unavailable - condition: state entity: sensor.kallen_desktop_gpu_vram_usage state_not: unavailable - type: heading icon: mdi:power heading: Running heading_style: subtitle - type: entities entities: - entity: binary_sensor.kallen_desktop_on name: Status show_header_toggle: false state_color: true - type: heading icon: mdi:chart-bar heading: Stats heading_style: subtitle visibility: - condition: state entity: binary_sensor.kallen_desktop_on state: 'on' - type: entities entities: - entity: sensor.kallen_desktop_power name: Power Usage - entity: sensor.kallen_desktop_current_username name: Current User - entity: sensor.kallen_desktop_usernotification name: User State - entity: binary_sensor.kallen_desktop_idle name: Idle - entity: sensor.kallen_desktop_system_uptime name: System Uptime - entity: sensor.kallen_desktop_system_idle_time name: Idle Time - entity: sensor.kallen_desktop_memory_used name: Memory Used - entity: sensor.kallen_desktop_virtual_memory_usage name: Virtual Memory Usage - entity: sensor.kallen_desktop_storage_c_available_free_space name: Free Space C:\ - entity: sensor.kallen_desktop_windowsupdates_driver_updates_pending name: Windows Updates - Drivers - entity: sensor.kallen_desktop_windowsupdates_software_updates_pending name: Windows Updates - Software - entity: input_boolean.kallen_computer_updates name: Leave on for updates show_header_toggle: false state_color: true visibility: - condition: state entity: binary_sensor.kallen_desktop_on state: 'on' - type: heading icon: mdi:harddisk heading: Drive Temps heading_style: subtitle visibility: - condition: state entity: binary_sensor.kallen_desktop_on state: 'on' - type: custom:battery-state-card icon: mdi:harddisk colors: steps: - value: 26 color: blue - value: 50 color: green - value: 60 color: yellow - value: 70 color: red tap_action: action: more-info sort_by_level: desc unit: °C round: 0 bulk_rename: - from: 'Kallen Desktop - ' to: '' - from: Storage to: Drive - from: Temperature to: Temp filter: include: - name: entity_id value: sensor.kallen_desktop_storage_*_temperature visibility: - condition: state entity: binary_sensor.kallen_desktop_on state: 'on' - type: heading icon: mdi:swap-horizontal heading: Controls heading_style: subtitle - type: entities entities: - entity: script.kallen_desktop_refresh name: Refresh - entity: script.kallen_desktop_reboot name: Reboot confirmation: true - entity: script.kallen_desktop_shutdown name: Shutdown confirmation: true - entity: script.kallen_desktop_wake name: Wake - type: grid cards: - type: heading heading: Settings - type: entities entities: - entity: input_boolean.kallen_awake name: I am awake - entity: input_select.kallen_morning_briefing_location name: Morning Briefing Location - entity: input_datetime.kallen_awake_at name: Awake Time - entity: input_datetime.kallen_asleep_at name: Asleep Time max_columns: 4 cards: [] background: image: >- https://cats.com/wp-content/uploads/2024/02/96E4B546-9BE7-4977-9A29-05F2D9BB47BC_1_102_a-e1711411797978.jpeg - title: Info Desk path: info-desk icon: mdi:information type: sections sections: - type: grid cards: - type: heading heading: General - type: custom:mushroom-template-card primary: 'Random dad joke:' secondary: |- "{{ states(entity) }}" Double tap this card for TTS icon: mdi:party-popper entity: sensor.random_joke fill_container: false multiline_secondary: true double_tap_action: action: call-service service: script.speech_engine data: who: common message: '{{ states(''sensor.random_joke'') }}' tap_action: action: none hold_action: action: none icon_color: var(--rgb-blue-color) layout: horizontal - type: custom:ha-card-waze-travel-time name: Travel Times unit: mi columns: - from - to - distance - duration - icon destinations: - entity: sensor.home_to_school from: Home to: School - entity: sensor.home_to_bob_evans to: Bob Evans - entity: sensor.school_to_bob_evans from: School to: Bob Evans - type: custom:auto-entities card: type: entities filter: include: [] exclude: [] entities: - sensor.anniversary_emmalynn_s_birthday - sensor.anniversary_kallen_s_birthday - sensor.anniversary_tina_s_birthday - sensor.anniversary_tony_s_birthday - sensor.anniversary_wedding_anniversary sort: method: state numeric: true reverse: false ignore_case: true ip: false - type: grid cards: - type: heading heading: Defiance Gas Statistics - type: horizontal-stack cards: - type: custom:gauge-card-pro entity: sensor.local_minimum_gas_price segments: - pos: 2 color: var(--success-color) - pos: 3 color: var(--warning-color) - pos: 4 color: var(--error-color) needle: true gradient: true titles: primary: Minimum gradient_resolution: auto min: 2 max: 4 round: small value_texts: primary: |- {% if states(entity) in ['unavailable','unknown'] %} ? {% else %} {{ states(entity) }} {% endif %} primary_unit: '{{ '''' }}' - type: custom:gauge-card-pro entity: sensor.local_average_gas_price segments: - pos: 2 color: var(--success-color) - pos: 3 color: var(--warning-color) - pos: 4 color: var(--error-color) needle: true gradient: true titles: primary: Average gradient_resolution: auto min: 2 max: 4 round: small value_texts: primary: |- {% if states(entity) in ['unavailable','unknown'] %} ? {% else %} {{ states(entity) }} {% endif %} primary_unit: '{{ '''' }}' - type: custom:gauge-card-pro entity: sensor.local_maximum_gas_price segments: - pos: 2 color: var(--success-color) - pos: 3 color: var(--warning-color) - pos: 4 color: var(--error-color) needle: true gradient: true titles: primary: Maximum gradient_resolution: auto min: 2 max: 4 round: small value_texts: primary: |- {% if states(entity) in ['unavailable','unknown'] %} ? {% else %} {{ states(entity) }} {% endif %} primary_font_size_reduction: 0 primary_unit_before_value: true primary_unit: '{{ '''' }}' - type: custom:auto-entities card: type: entities filter: include: - integration: gasbuddy entity_id: '*regular_gas' exclude: [] sort: method: state numeric: true reverse: false ignore_case: false - type: grid cards: - type: heading heading: AdGuard Home heading_style: title - type: custom:adguard-card device_id: ddb8569dfb13c80653caac866f92c719 switch_style: flex visibility: - condition: user users: - f387a983651a4321a7411ff8cf36f949 - c3909d27048140729f002aaef0391775 - type: grid cards: - type: heading heading: Router Stats - type: entities entities: - entity: input_select.router_stats name: Select Card - type: entities entities: - entity: sensor.xr500_download_today - entity: sensor.xr500_upload_today - entity: sensor.xr500_gateway_kib_s_received - entity: sensor.xr500_gateway_kib_s_sent visibility: - condition: state entity: input_select.router_stats state: Current Stats - type: entities entities: - entity: sensor.xr500_download_yesterday - entity: sensor.xr500_download_week - entity: sensor.xr500_download_week_average - entity: sensor.xr500_download_month - entity: sensor.xr500_download_month_average - entity: sensor.xr500_download_last_month - entity: sensor.xr500_download_last_month_average visibility: - condition: state entity: input_select.router_stats state: History Stats - Download - type: entities entities: - entity: sensor.xr500_upload_yesterday - entity: sensor.xr500_upload_week - entity: sensor.xr500_upload_week_average - entity: sensor.xr500_upload_month - entity: sensor.xr500_upload_month_average - entity: sensor.xr500_upload_last_month - entity: sensor.xr500_upload_last_month_average visibility: - condition: state entity: input_select.router_stats state: History Stats - Upload max_columns: 4 cards: [] - title: Mobile Devices path: mobile-devices icon: mdi:cellphone-information type: sections sections: - type: grid cards: - type: heading heading: Tony's iPhone - type: custom:streamline-card template: iphone_entities_card variables: - device: tony_s_iphone - type: custom:streamline-card template: phone_info_grid variables: - device: tony_s_iphone column_span: 2 - type: grid cards: - type: heading heading: Tina's iPhone - type: custom:streamline-card template: iphone_entities_card variables: - device: tinas_iphone - type: custom:streamline-card template: phone_info_grid variables: - device: tinas_iphone column_span: 2 - type: grid cards: - type: heading heading: Kallen's iPhone - type: custom:streamline-card template: iphone_entities_card variables: - device: kallen_iphone - type: custom:streamline-card template: phone_info_grid variables: - device: kallen_iphone column_span: 2 - type: grid cards: - type: heading heading: Map - type: map entities: - entity: person.tony_stork - entity: person.christina_stork - entity: person.kallen_stork - entity: zone.bob_evans - entity: zone.home - entity: zone.aldi - entity: zone.chief - entity: zone.courtney_cave - entity: zone.dollar_general_clinton_st - entity: zone.elementary_school - entity: zone.kroger - entity: zone.meijer - entity: zone.menards - entity: zone.middle_school - entity: zone.the_elder_storks - entity: zone.wal_mart - entity: zone.latty hours_to_show: 24 theme_mode: dark grid_options: columns: full rows: 8 column_span: 2 - type: grid cards: - type: heading heading: Tony's iPad - type: custom:streamline-card template: ipad_entities_card variables: - device: tony_s_ipad - type: grid cards: - type: heading heading: Tina’s iPad - type: custom:streamline-card template: ipad_entities_card variables: - device: tinas_ipad - type: grid cards: - type: heading heading: Tony's Accessories - type: entities entities: - type: custom:battery-state-entity entity: sensor.tony_s_apple_watch_battery name: Battery tap_action: more-info charging_state: entity_id: sensor.tony_s_apple_watch_battery_status state: Charging - entity: sensor.tony_s_apple_watch_zone_distance name: Distance - entity: sensor.tony_s_apple_watch_info name: Info show_header_toggle: false state_color: true title: Apple Watch - type: entities entities: - entity: sensor.tonys_airpods_pro_zone_distance name: Distance - entity: sensor.tonys_airpods_pro_info name: Info state_color: true show_header_toggle: false title: Airpods Pro - type: grid cards: - type: heading heading: Tina's Accessories - type: entities entities: - type: custom:battery-state-entity entity: sensor.christinas_apple_watch_battery name: Battery tap_action: more-info charging_state: entity_id: sensor.christinas_apple_watch_battery_status state: Charging - entity: sensor.christinas_apple_watch_zone_distance name: Distance - entity: sensor.christinas_apple_watch_info name: Info show_header_toggle: false state_color: true title: Apple Watch - type: entities entities: - entity: sensor.tinas_airpods_pro_zone_distance name: Distance - entity: sensor.tinas_airpods_pro_info name: Info show_header_toggle: false state_color: true title: Airpods Pro max_columns: 4 cards: [] badges: - type: entity show_name: true show_state: true show_icon: true entity: person.tony_stork color: '' - type: entity show_name: true show_state: true show_icon: true entity: person.christina_stork color: '' - type: entity show_name: true show_state: true show_icon: true entity: person.kallen_stork color: '' - title: Computers path: computers icon: mdi:laptop type: sections sections: - type: grid cards: - type: heading heading: Power Usage - type: vertical-stack cards: - type: horizontal-stack cards: - type: custom:gauge-card-pro entity: sensor.tony_desktop_power segments: - from: 0 color: var(--success-color) - from: 500 color: var(--warning-color) - from: 650 color: var(--error-color) min: 0 max: 750 needle: true gradient: true titles: primary: Tony Desktop primary_color: |- {% if states(entity) | int >= 650 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} value_texts: primary: | {% if states(entity) | int < 10 %} Off {% elif states(entity) | int >= 650 %} ALERT {% else %} {{ states(entity) | int }} {% endif %} primary_color: |- {% if states(entity) | int >= 650 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} gradient_resolution: auto round: small - type: custom:gauge-card-pro entity: sensor.tina_desktop_power segments: - from: 0 color: var(--success-color) - from: 500 color: var(--warning-color) - from: 650 color: var(--error-color) min: 0 max: 750 needle: true gradient: true titles: primary: Tina Desktop primary_color: |- {% if states(entity) | int >= 650 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} value_texts: primary: | {% if states(entity) | int < 10 %} Off {% elif states(entity) | int >= 650 %} ALERT {% else %} {{ states(entity) | int }} {% endif %} primary_color: |- {% if states(entity) | int >= 650 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} gradient_resolution: auto round: small - type: horizontal-stack cards: - type: custom:gauge-card-pro entity: sensor.kallen_desktop_power segments: - from: 0 color: var(--success-color) - from: 350 color: var(--warning-color) - from: 450 color: var(--error-color) min: 0 max: 500 needle: true gradient: true titles: primary: Kallen Desktop primary_color: |- {% if states(entity) | int >= 450 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} value_texts: primary: | {% if states(entity) | int < 10 %} Off {% elif states(entity) | int >= 450 %} ALERT {% else %} {{ states(entity) | int }} {% endif %} primary_color: |- {% if states(entity) | int >= 450 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} gradient_resolution: auto round: small - type: custom:gauge-card-pro entity: sensor.basement_server_power segments: - from: 0 color: var(--success-color) - from: 400 color: var(--warning-color) - from: 550 color: var(--error-color) min: 0 max: 650 needle: true gradient: true titles: primary: Basement Server primary_color: |- {% if states(entity) | int >= 550 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} value_texts: primary: | {% if states(entity) | int < 10 %} Off {% elif states(entity) | int >= 550 %} ALERT {% else %} {{ states(entity) | int }} {% endif %} primary_color: |- {% if states(entity) | int >= 550 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} gradient_resolution: auto round: small - type: heading heading: Navigation heading_style: title - type: custom:streamline-card template: main_button_name variables: name: Proxmox icon: bha:proxmox navigation_path: /lovelace/proxmox columns: '2' visibility: - condition: user users: - c3909d27048140729f002aaef0391775 - type: grid cards: - type: heading heading: Tony Desktop - type: heading icon: mdi:gauge heading: Performance heading_style: subtitle visibility: - condition: and conditions: - condition: state entity: binary_sensor.tony_desktop_on state: 'on' - condition: or conditions: - condition: and conditions: - condition: state entity: sensor.tony_asus_cpu_usage state_not: unavailable - condition: state entity: sensor.tony_asus_cpu_usage state_not: unknown - condition: and conditions: - condition: state entity: sensor.tony_desktop_memory_usage state_not: unavailable - condition: state entity: sensor.tony_desktop_memory_usage state_not: unavailable - type: horizontal-stack cards: - type: custom:gauge-card-pro entity: sensor.tony_asus_cpu_usage segments: - from: 0 color: var(--success-color) - from: 75 color: var(--warning-color) - from: 90 color: var(--error-color) needle: true gradient: true titles: primary: CPU primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} entity2: sensor.tony_asus_cpu_temperature min: 0 max: 100 inner: mode: needle min: 0 max: 100 segments: - from: 0 color: var(--success-color) - from: 80 color: var(--warning-color) - from: 95 color: var(--error-color) gradient: true gradient_resolution: auto round: small gradient_resolution: auto value_texts: primary: | {% if states(entity) | int >= 90 %} ALERT {% else %} {{ states(entity) | int }} {% endif %} secondary: | {% if states(entity2) | int >= 95 %} ALERT {% else %} {{ states(entity2) | int }} {% endif %} primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} secondary_color: | {% if states(entity2) | int >= 95 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} round: small - type: custom:gauge-card-pro entity: sensor.tony_asus_gpu_core_load segments: - from: 0 color: var(--success-color) - from: 80 color: var(--warning-color) - from: 90 color: var(--error-color) needle: true gradient: true titles: primary: GPU primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} entity2: sensor.tony_asus_gpu_temperature min: 0 max: 100 inner: mode: needle min: 0 max: 100 segments: - from: 0 color: var(--success-color) - from: 75 color: var(--warning-color) - from: 85 color: var(--error-color) gradient: true gradient_resolution: auto round: small gradient_resolution: auto value_texts: primary: | {% if states(entity) | int >= 90 %} ALERT {% else %} {{ states(entity) | int }} {% endif %} secondary: | {% if states(entity2) | int >= 85 %} ALERT {% else %} {{ states(entity2) | int }} {% endif %} primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} secondary_color: | {% if states(entity2) | int >= 95 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} round: small visibility: - condition: and conditions: - condition: state entity: binary_sensor.tony_desktop_on state: 'on' - condition: or conditions: - condition: and conditions: - condition: state entity: sensor.tony_asus_cpu_usage state_not: unavailable - condition: state entity: sensor.tony_asus_cpu_usage state_not: unknown - condition: and conditions: - condition: state entity: sensor.tony_asus_cpu_temperature state_not: unavailable - condition: state entity: sensor.tony_asus_cpu_temperature state_not: unknown - condition: and conditions: - condition: state entity: sensor.tony_asus_gpu_core_load state_not: unavailable - condition: state entity: sensor.tony_asus_gpu_core_load state_not: unavailable - condition: and conditions: - condition: state entity: sensor.tony_asus_gpu_temperature state_not: unavailable - condition: state entity: sensor.tony_asus_gpu_temperature state_not: unavailable - type: horizontal-stack cards: - type: custom:gauge-card-pro entity: sensor.tony_asus_memory_usage segments: - from: 0 color: var(--success-color) - from: 80 color: var(--warning-color) - from: 90 color: var(--error-color) needle: true gradient: true titles: primary: RAM primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} gradient_resolution: auto value_texts: primary: | {% if states(entity) | int >= 90 %} ALERT {% else %} {{ states(entity) | int }} {% endif %} primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} secondary_color: | {% if states(entity2) | int >= 95 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} round: small - type: custom:gauge-card-pro entity: sensor.tony_asus_gpu_vram_usage segments: - from: 0 color: var(--success-color) - from: 80 color: var(--warning-color) - from: 90 color: var(--error-color) needle: true gradient: true titles: primary: VRAM primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} gradient_resolution: auto value_texts: primary: | {% if states(entity) | int >= 90 %} ALERT {% else %} {{ states(entity) | int }} {% endif %} primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} secondary_color: | {% if states(entity2) | int >= 95 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} round: small visibility: - condition: and conditions: - condition: state entity: binary_sensor.tony_desktop_on state: 'on' - condition: or conditions: - condition: and conditions: - condition: state entity: sensor.tony_asus_memory_usage state_not: unavailable - condition: state entity: sensor.tony_asus_memory_usage state_not: unknown - condition: and conditions: - condition: state entity: sensor.tony_asus_gpu_vram_usage state_not: unavailable - condition: state entity: sensor.tony_asus_gpu_vram_usage state_not: unavailable - type: heading icon: mdi:power heading: Running heading_style: subtitle - type: entities entities: - entity: binary_sensor.tony_desktop_on name: Status show_header_toggle: false state_color: true - type: heading icon: mdi:chart-bar heading: Stats heading_style: subtitle visibility: - condition: state entity: binary_sensor.tony_desktop_on state: 'on' - type: entities entities: - entity: sensor.tony_desktop_power name: Power Usage - entity: sensor.tony_asus_current_username name: Current User - entity: sensor.tony_asus_usernotification name: User State - entity: sensor.tony_asus_session_state name: Session State - entity: sensor.tony_asus_last_system_state_change name: Last State Change - entity: binary_sensor.tony_desktop_idle name: Idle - entity: sensor.tony_asus_last_boot name: Last Boot - entity: sensor.tony_asus_last_active name: Last Active - entity: sensor.tony_asus_memory_used name: Memory Used - entity: sensor.tony_asus_virtual_memory_usage name: Virtual Memory Usage icon: mdi:memory - entity: sensor.tony_asus_storage_c_available_free_space name: Free Space C:\ - entity: sensor.tony_asus_storage_e_available_free_space name: Free Space E:\ - entity: sensor.tony_asus_storage_s_available_free_space name: Free Space S:\ - entity: sensor.tony_asus_storage_v_available_free_space name: Free Space V:\ show_header_toggle: false state_color: true visibility: - condition: state entity: binary_sensor.tony_desktop_on state: 'on' - type: heading icon: mdi:harddisk heading: Drive Temps heading_style: subtitle visibility: - condition: state entity: binary_sensor.tony_desktop_on state: 'on' - type: custom:battery-state-card icon: mdi:harddisk colors: steps: - value: 26 color: blue - value: 50 color: green - value: 60 color: yellow - value: 70 color: red tap_action: action: more-info sort_by_level: desc unit: °C round: 0 bulk_rename: - from: 'Tony Desktop - ' to: '' - from: 'TONY-ASUS ' to: '' - from: Storage to: Drive - from: Temperature to: Temp filter: include: - name: entity_id value: sensor.tony_asus_storage_*_temperature - name: entity_id value: sensor.tony_desktop_storage_*_temperature visibility: - condition: state entity: binary_sensor.tony_desktop_on state: 'on' - type: heading icon: mdi:swap-horizontal heading: Controls heading_style: subtitle - type: entities entities: - entity: button.tony_asus_hassagent_user_refresh name: Refresh - entity: button.tony_asus_reboot name: Reboot confirmation: true - entity: button.tony_asus_shutdown name: Shutdown confirmation: true - entity: script.tony_desktop_wake name: Wake - type: grid cards: - type: heading heading: Tina Desktop - type: heading icon: mdi:gauge heading: Performance heading_style: subtitle visibility: - condition: and conditions: - condition: state entity: binary_sensor.tina_desktop_on state: 'on' - condition: or conditions: - condition: and conditions: - condition: state entity: sensor.xia_desktop_cpu_usage state_not: unavailable - condition: state entity: sensor.xia_desktop_cpu_usage state_not: unknown - condition: and conditions: - condition: state entity: sensor.tina_desktop_memory_usage state_not: unavailable - condition: state entity: sensor.tina_desktop_memory_usage state_not: unavailable - type: horizontal-stack cards: - type: custom:gauge-card-pro entity: sensor.xia_desktop_cpu_usage segments: - from: 0 color: var(--success-color) - from: 75 color: var(--warning-color) - from: 90 color: var(--error-color) needle: true gradient: true titles: primary: CPU primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} entity2: sensor.xia_desktop_cpu_temperature min: 0 max: 100 inner: mode: needle min: 0 max: 100 segments: - from: 0 color: var(--success-color) - from: 80 color: var(--warning-color) - from: 95 color: var(--error-color) gradient: true gradient_resolution: auto round: small gradient_resolution: auto value_texts: primary: | {% if states(entity) | int >= 90 %} ALERT {% else %} {{ states(entity) | int }} {% endif %} secondary: | {% if states(entity2) | int >= 95 %} ALERT {% else %} {{ states(entity2) | int }} {% endif %} primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} secondary_color: | {% if states(entity2) | int >= 95 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} round: small - type: custom:gauge-card-pro entity: sensor.xia_desktop_gpu_core_load segments: - from: 0 color: var(--success-color) - from: 80 color: var(--warning-color) - from: 90 color: var(--error-color) needle: true gradient: true titles: primary: GPU primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} entity2: sensor.xia_desktop_gpu_temperature min: 0 max: 100 inner: mode: needle min: 0 max: 100 segments: - from: 0 color: var(--success-color) - from: 75 color: var(--warning-color) - from: 85 color: var(--error-color) gradient: true gradient_resolution: auto round: small gradient_resolution: auto value_texts: primary: | {% if states(entity) | int >= 90 %} ALERT {% else %} {{ states(entity) | int }} {% endif %} secondary: | {% if states(entity2) | int >= 85 %} ALERT {% else %} {{ states(entity2) | int }} {% endif %} primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} secondary_color: | {% if states(entity2) | int >= 95 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} round: small visibility: - condition: and conditions: - condition: state entity: binary_sensor.tina_desktop_on state: 'on' - condition: or conditions: - condition: and conditions: - condition: state entity: sensor.xia_desktop_cpu_usage state_not: unavailable - condition: state entity: sensor.xia_desktop_cpu_usage state_not: unknown - condition: and conditions: - condition: state entity: sensor.xia_desktop_cpu_temperature state_not: unavailable - condition: state entity: sensor.xia_desktop_cpu_temperature state_not: unknown - condition: and conditions: - condition: state entity: sensor.xia_desktop_gpu_core_load state_not: unavailable - condition: state entity: sensor.xia_desktop_gpu_core_load state_not: unavailable - condition: and conditions: - condition: state entity: sensor.xia_desktop_gpu_temperature state_not: unavailable - condition: state entity: sensor.xia_desktop_gpu_temperature state_not: unavailable - type: horizontal-stack cards: - type: custom:gauge-card-pro entity: sensor.xia_desktop_memory_usage segments: - from: 0 color: var(--success-color) - from: 80 color: var(--warning-color) - from: 90 color: var(--error-color) needle: true gradient: true titles: primary: RAM primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} gradient_resolution: auto value_texts: primary: | {% if states(entity) | int >= 90 %} ALERT {% else %} {{ states(entity) | int }} {% endif %} primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} secondary_color: | {% if states(entity2) | int >= 95 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} round: small - type: custom:gauge-card-pro entity: sensor.xia_desktop_gpu_vram_usage segments: - from: 0 color: var(--success-color) - from: 80 color: var(--warning-color) - from: 90 color: var(--error-color) needle: true gradient: true titles: primary: VRAM primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} gradient_resolution: auto value_texts: primary: | {% if states(entity) | int >= 90 %} ALERT {% else %} {{ states(entity) | int }} {% endif %} primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} secondary_color: | {% if states(entity2) | int >= 95 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} round: small visibility: - condition: and conditions: - condition: state entity: binary_sensor.tina_desktop_on state: 'on' - condition: or conditions: - condition: and conditions: - condition: state entity: sensor.xia_desktop_memory_usage state_not: unavailable - condition: state entity: sensor.xia_desktop_memory_usage state_not: unknown - condition: and conditions: - condition: state entity: sensor.xia_desktop_gpu_vram_usage state_not: unavailable - condition: state entity: sensor.xia_desktop_gpu_vram_usage state_not: unavailable - type: heading icon: mdi:power heading: Running heading_style: subtitle - type: entities entities: - entity: binary_sensor.tina_desktop_on name: Status show_header_toggle: false state_color: true - type: heading icon: mdi:chart-bar heading: Stats heading_style: subtitle visibility: - condition: state entity: binary_sensor.tina_desktop_on state: 'on' - type: entities entities: - entity: sensor.tina_desktop_power name: Power Usage - entity: sensor.xia_desktop_current_username name: Current User - entity: sensor.xia_desktop_usernotification name: User State - entity: sensor.xia_desktop_session_state name: Session State - entity: sensor.xia_desktop_last_system_state_change name: Last State Change - entity: binary_sensor.tina_desktop_idle name: Idle - entity: sensor.xia_desktop_last_boot name: System Uptime - entity: sensor.xia_desktop_last_active name: Last Active - entity: sensor.xia_desktop_memory_used name: Memory Used - entity: sensor.xia_desktop_virtual_memory_usage name: Virtual Memory Usage - entity: sensor.xia_desktop_storage_c_available_free_space name: Free Space C:\ - entity: sensor.xia_desktop_storage_d_available_free_space name: Free Space D:\ show_header_toggle: false state_color: true visibility: - condition: state entity: binary_sensor.tina_desktop_on state: 'on' - type: heading icon: mdi:harddisk heading: Drive Temps heading_style: subtitle visibility: - condition: state entity: binary_sensor.tina_desktop_on state: 'on' - type: custom:battery-state-card icon: mdi:harddisk colors: steps: - value: 26 color: blue - value: 50 color: green - value: 60 color: yellow - value: 70 color: red tap_action: action: more-info sort_by_level: desc unit: °C round: 0 bulk_rename: - from: 'XIA-DESKTOP ' to: '' - from: Storage to: Drive - from: Temperature to: Temp filter: include: - name: entity_id value: sensor.xia_desktop_storage_*_temperature visibility: - condition: state entity: binary_sensor.tina_desktop_on state: 'on' - type: heading icon: mdi:swap-horizontal heading: Controls heading_style: subtitle - type: entities entities: - entity: button.xia_desktop_hassagent_satellite_refresh name: Refresh - entity: button.xia_desktop_reboot name: Reboot confirmation: true - entity: button.xia_desktop_shutdown name: Shutdown confirmation: true - entity: script.tina_desktop_wake name: Wake - type: grid cards: - type: heading heading: Asus Laptop - type: heading icon: mdi:gauge heading: Performance heading_style: subtitle visibility: - condition: or conditions: - condition: and conditions: - condition: state entity: sensor.asus_laptop_cpu_usage state_not: unavailable - condition: state entity: sensor.asus_laptop_cpu_usage state_not: unknown - condition: and conditions: - condition: state entity: sensor.asus_laptop_memory_usage state_not: unavailable - condition: state entity: sensor.asus_laptop_memory_usage state_not: unavailable - type: horizontal-stack cards: - type: custom:gauge-card-pro entity: sensor.asus_laptop_cpu_usage segments: - from: 0 color: var(--success-color) - from: 75 color: var(--warning-color) - from: 90 color: var(--error-color) needle: true gradient: true titles: primary: CPU primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} entity2: sensor.asus_laptop_cpu_temperature min: 0 max: 100 inner: mode: needle min: 0 max: 100 segments: - from: 0 color: var(--success-color) - from: 80 color: var(--warning-color) - from: 95 color: var(--error-color) gradient: true gradient_resolution: auto round: small gradient_resolution: auto value_texts: primary: | {% if states(entity) | int >= 90 %} ALERT {% else %} {{ states(entity) | int }} {% endif %} secondary: | {% if states(entity2) | int >= 95 %} ALERT {% else %} {{ states(entity2) | int }} {% endif %} primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} secondary_color: | {% if states(entity2) | int >= 95 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} round: small - type: custom:gauge-card-pro entity: sensor.asus_laptop_gpu_core_load segments: - from: 0 color: var(--success-color) - from: 80 color: var(--warning-color) - from: 90 color: var(--error-color) needle: true gradient: true titles: primary: GPU primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} entity2: sensor.asus_laptop_gpu_temperature min: 0 max: 100 inner: mode: needle min: 0 max: 100 segments: - from: 0 color: var(--success-color) - from: 75 color: var(--warning-color) - from: 85 color: var(--error-color) gradient: true gradient_resolution: auto round: small gradient_resolution: auto value_texts: primary: | {% if states(entity) | int >= 90 %} ALERT {% else %} {{ states(entity) | int }} {% endif %} secondary: | {% if states(entity2) | int >= 85 %} ALERT {% else %} {{ states(entity2) | int }} {% endif %} primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} secondary_color: | {% if states(entity2) | int >= 95 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} round: small visibility: - condition: and conditions: - condition: state entity: binary_sensor.tina_desktop_on state: 'on' - condition: or conditions: - condition: and conditions: - condition: state entity: sensor.xia_desktop_cpu_usage state_not: unavailable - condition: state entity: sensor.xia_desktop_cpu_usage state_not: unknown - condition: and conditions: - condition: state entity: sensor.tina_desktop_gpu_core_load state_not: unavailable - condition: state entity: sensor.tina_desktop_gpu_core_load state_not: unavailable - type: horizontal-stack cards: - type: custom:gauge-card-pro entity: sensor.asus_laptop_memory_usage segments: - from: 0 color: var(--success-color) - from: 80 color: var(--warning-color) - from: 90 color: var(--error-color) needle: true gradient: true titles: primary: RAM primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} gradient_resolution: auto value_texts: primary: | {% if states(entity) | int >= 90 %} ALERT {% else %} {{ states(entity) | int }} {% endif %} primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} secondary_color: | {% if states(entity2) | int >= 95 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} round: small - type: custom:gauge-card-pro entity: sensor.asus_laptop_gpu_vram_usage segments: - from: 0 color: var(--success-color) - from: 80 color: var(--warning-color) - from: 90 color: var(--error-color) needle: true gradient: true titles: primary: VRAM primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} gradient_resolution: auto value_texts: primary: | {% if states(entity) | int >= 90 %} ALERT {% else %} {{ states(entity) | int }} {% endif %} primary_color: |- {% if states(entity) | int >= 90 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} secondary_color: | {% if states(entity2) | int >= 95 %} var(--error-color) {% else %} var(--primary-text-color) {% endif %} round: small visibility: - condition: or conditions: - condition: and conditions: - condition: state entity: sensor.asus_laptop_memory_usage state_not: unavailable - condition: state entity: sensor.asus_laptop_memory_usage state_not: unknown - condition: and conditions: - condition: state entity: sensor.asus_laptop_gpu_vram_usage state_not: unavailable - condition: state entity: sensor.asus_laptop_gpu_vram_usage state_not: unavailable - type: heading icon: mdi:chart-bar heading: Stats heading_style: subtitle - type: entities entities: - type: custom:battery-state-entity entity: sensor.asus_laptop_battery_remaining name: Battery tap_action: more-info secondary_info: charging charging_state: entity_id: binary_sensor.asus_laptop_power_status state: 'on' secondary_info_text: Plugged In - entity: sensor.asus_laptop_current_username name: Current User - entity: sensor.tony_asus_usernotification name: User State - entity: binary_sensor.asus_laptop_idle name: Idle - entity: sensor.asus_laptop_system_uptime name: System Uptime - entity: sensor.asus_laptop_system_idle_time name: Idle Time - entity: sensor.asus_laptop_memory_used name: Memory Used - entity: sensor.asus_laptop_virtual_memory_usage name: Virtual Memory Usage - entity: sensor.asus_laptop_storage_c_available_free_space name: Free Space C:\ - entity: sensor.asus_laptop_storage_d_available_free_space name: Free Space D:\ - entity: sensor.tony_asus_windowsupdates_driver_updates_pending name: Windows Update - Drivers - entity: sensor.tony_asus_windowsupdates_software_updates_pending name: Windows Update - Software show_header_toggle: false state_color: true - type: heading icon: mdi:harddisk heading: Drive Temps heading_style: subtitle - type: custom:battery-state-card icon: mdi:harddisk colors: steps: - value: 26 color: blue - value: 50 color: green - value: 60 color: yellow - value: 70 color: red tap_action: action: more-info sort_by_level: desc unit: °C round: 0 bulk_rename: - from: 'ASUS Laptop - ' to: '' - from: Storage to: Drive - from: Temperature to: Temp filter: include: - name: entity_id value: sensor.asus_laptop_storage_*_temperature - type: heading icon: mdi:swap-horizontal heading: Controls heading_style: subtitle - type: entities entities: - entity: script.asus_laptop_refresh name: Refresh - entity: script.asus_laptop_reboot name: Reboot - entity: script.asus_laptop_shutdown name: Shutdown visibility: - condition: state entity: binary_sensor.asus_laptop_idle state_not: unavailable - type: grid cards: - type: heading heading: Canon PIXMA TS3522 - type: entities entities: - entity: sensor.canon_ts3500_series name: Status - entity: sensor.canon_ts3500_series_black name: Black Ink - entity: sensor.canon_ts3500_series_color name: Color Ink show_header_toggle: false state_color: true max_columns: 4 cards: [] - type: sections max_columns: 4 title: Proxmox path: proxmox icon: bha:proxmox subview: true visible: - user: c3909d27048140729f002aaef0391775 sections: - type: grid cards: - type: heading icon: mdi:desktop-tower-monitor heading: Desktop VMs heading_style: title - title: Gaming Stuff path: gaming-stuff icon: mdi:microsoft-xbox-controller type: sections sections: - type: grid cards: - type: heading heading: Gamer Score Leaderboard - type: entities entities: - entity: sensor.tm24fan_gamer_score name: ironnerd24 Gamer Score - entity: sensor.kjsgamer2012_gamer_score - entity: sensor.irishpirate1988_gamer_score show_header_toggle: false state_color: true - type: grid cards: - type: heading heading: ironnerd24 - type: custom:streamline-card template: xbox_card variables: - gamertag: tm24fan - type: grid cards: - type: heading heading: kjsgamer2012 - type: custom:streamline-card template: xbox_card variables: - gamertag: kjsgamer2012 - type: grid cards: - type: heading heading: irishpirate1988 - type: custom:streamline-card template: xbox_card variables: - gamertag: irishpirate1988 - type: grid cards: - type: heading heading: Twitch - type: entities entities: - entity: sensor.twitch_ironnerd24 - entity: sensor.twitch_xia_p988 show_header_toggle: false - type: grid cards: - type: heading heading: Steam - type: custom:auto-entities card: type: entities show_header_toggle: false state_color: true filter: include: - device: Steam sort: method: friendly_name reverse: false numeric: false ignore_case: true show_empty: false max_columns: 4 cards: [] - title: Sports path: sports icon: mdi:football type: sections sections: - type: grid cards: - type: heading heading: NCAAF - type: custom:teamtracker-card entity: sensor.michigan_wolverines visibility: - condition: state entity: sensor.michigan_wolverines state_not: NOT_FOUND - condition: state entity: sensor.michigan_wolverines state_not: BYE - condition: state entity: binary_sensor.michigan_wolverines_inhibit state: 'off' - type: custom:teamtracker-card entity: sensor.ohio_state_buckeyes visibility: - condition: state entity: sensor.ohio_state_buckeyes state_not: NOT_FOUND - condition: state entity: sensor.ohio_state_buckeyes state_not: BYE - condition: state entity: binary_sensor.ohio_state_buckeyes_inhibit state: 'off' - type: custom:teamtracker-card entity: sensor.toledo_rockets visibility: - condition: state entity: sensor.toledo_rockets state_not: NOT_FOUND - condition: state entity: sensor.toledo_rockets state_not: BYE - condition: state entity: binary_sensor.toledo_rockets_inhibit state: 'off' column_span: 3 visibility: - condition: or conditions: - condition: state entity: binary_sensor.michigan_wolverines_inhibit state: 'off' - condition: state entity: binary_sensor.ohio_state_buckeyes_inhibit state: 'off' - condition: state entity: binary_sensor.toledo_rockets_inhibit state: 'off' - type: grid cards: - type: heading heading: NFL - type: custom:teamtracker-card entity: sensor.minnesota_vikings visibility: - condition: state entity: sensor.minnesota_vikings state_not: NOT_FOUND - condition: state entity: sensor.minnesota_vikings state_not: BYE - condition: state entity: binary_sensor.minnesota_vikings_inhibit state: 'off' - type: custom:teamtracker-card entity: sensor.san_francisco_49ers visibility: - condition: state entity: sensor.san_francisco_49ers state_not: NOT_FOUND - condition: state entity: sensor.san_francisco_49ers state_not: BYE - condition: state entity: binary_sensor.san_francisco_49ers_inhibit state: 'off' column_span: 2 visibility: - condition: or conditions: - condition: state entity: binary_sensor.minnesota_vikings_inhibit state: 'off' - condition: state entity: binary_sensor.san_francisco_49ers_inhibit state: 'off' - type: grid cards: - type: heading heading: MLB - type: custom:teamtracker-card entity: sensor.minnesota_twins visibility: - condition: state entity: sensor.minnesota_twins state_not: NOT_FOUND - condition: state entity: sensor.minnesota_twins state_not: BYE - condition: state entity: binary_sensor.minnesota_twins_inhibit state: 'off' - type: custom:teamtracker-card entity: sensor.cleveland_guardians visibility: - condition: state entity: sensor.cleveland_guardians state_not: NOT_FOUND - condition: state entity: sensor.cleveland_guardians state_not: BYE - condition: state entity: binary_sensor.cleveland_guardians_inhibit state: 'off' - type: custom:teamtracker-card entity: sensor.los_angeles_dodgers visibility: - condition: state entity: sensor.los_angeles_dodgers state_not: NOT_FOUND - condition: state entity: sensor.los_angeles_dodgers state_not: BYE - condition: state entity: binary_sensor.los_angeles_dodgers_inhibit state: 'off' column_span: 3 visibility: - condition: or conditions: - condition: state entity: binary_sensor.minnesota_twins_inhibit state: 'off' - condition: state entity: binary_sensor.cleveland_guardians_inhibit state: 'off' - condition: state entity: binary_sensor.los_angeles_dodgers_inhibit state: 'off' - type: grid cards: - type: heading heading: NHL - type: custom:teamtracker-card entity: sensor.minnesota_wild visibility: - condition: state entity: sensor.minnesota_wild state_not: NOT_FOUND - condition: state entity: sensor.minnesota_wild state_not: BYE - condition: state entity: binary_sensor.minnesota_wild_inhibit state: 'off' column_span: 1 visibility: - condition: state entity: binary_sensor.minnesota_wild_inhibit state: 'off' - type: grid cards: - type: heading heading: Motorsports - type: custom:mushroom-template-card primary: Hello, {{user}} secondary: For the latest Formula 1 statistics, tap this card! icon: fas:flag-checkered icon_color: |- {% if is_state('sensor.formula_one','PRE') %} white {% elif is_state('sensor.formula_one','IN') %} green {% elif is_state('sensor.formula_one','POST') %} red {% else %} black {% endif %} badge_icon: |- {% if is_state('sensor.formula_one','PRE') %} mdi:car-clock {% elif is_state('sensor.formula_one','IN') %} mdi:car-multiple {% elif is_state('sensor.formula_one','POST') %} mdi:flag-checkered {% else %} mdi:close {% endif %} layout: horizontal fill_container: false multiline_secondary: false tap_action: action: navigate navigation_path: /lovelace/formula-1 hold_action: action: none double_tap_action: action: none badge_color: |- {% if is_state('sensor.formula_one','PRE') %} grey {% elif is_state('sensor.formula_one','IN') %} green {% elif is_state('sensor.formula_one','POST') %} red {% else %} black {% endif %} column_span: 1 - type: grid cards: - type: heading heading_style: title heading: College Hockey - type: custom:teamtracker-card entity: sensor.michigan_wolverines_hockey visibility: - condition: state entity: sensor.michigan_wolverines_hockey state_not: NOT_FOUND - condition: state entity: sensor.michigan_wolverines_hockey state_not: BYE - condition: state entity: binary_sensor.michigan_wolverines_hockey_inhibit state: 'off' show_league: false - type: custom:teamtracker-card entity: sensor.minnesota_golden_gophers_hockey visibility: - condition: state entity: sensor.minnesota_golden_gophers_hockey state_not: NOT_FOUND - condition: state entity: sensor.minnesota_golden_gophers_hockey state_not: BYE - condition: state entity: binary_sensor.minnesota_golden_gophers_hockey_inhibit state: 'off' show_league: false - type: custom:teamtracker-card entity: sensor.minnesota_state_mavericks_hockey visibility: - condition: state entity: sensor.minnesota_state_mavericks_hockey state_not: NOT_FOUND - condition: state entity: sensor.minnesota_state_mavericks_hockey state_not: BYE - condition: state entity: binary_sensor.minnesota_state_mavericks_hockey_inhibit state: 'off' show_league: false column_span: 3 visibility: - condition: or conditions: - condition: state entity: binary_sensor.michigan_wolverines_hockey_inhibit state: 'off' - condition: state entity: binary_sensor.minnesota_golden_gophers_hockey_inhibit state: 'off' - condition: state entity: binary_sensor.minnesota_state_mavericks_hockey_inhibit state: 'off' max_columns: 5 cards: [] - theme: Backend-selected title: Formula 1 path: formula-1 icon: fas:flag-checkered subview: true badges: [] cards: - type: custom:stack-in-card cards: - type: custom:formulaone-card card_type: next_race title: Next Race date_locale: us image_clickable: false - type: custom:formulaone-card card_type: countdown f1_font: true - type: custom:formulaone-card card_type: results title: Results standings: show_flag: true show_team: true show_teamlogo: true - type: custom:formulaone-card card_type: constructor_standings title: Constructor Standings standings: show_teamlogo: true - type: custom:formulaone-card card_type: driver_standings title: Driver Standings standings: show_team: true show_teamlogo: true - type: custom:formulaone-card card_type: schedule standings: show_flag: true - title: House Stats path: house-stats icon: mdi:database type: sections sections: - type: grid cards: - type: heading heading: Batteries - type: custom:battery-state-card sort_by_level: asc bulk_rename: - from: Battery to: '' - from: Stratton Ave to: '' - from: Dimmer Switch to: '' collapse: - name: 'Door Sensors (min: {min}%, count: {count})' secondary_info: Battery levels {range}% icon: mdi:door entities: - sensor.front_door_battery - sensor.back_door_battery - sensor.basement_studio_door_battery - sensor.downstairs_bathroom_door_battery - sensor.emma_bedroom_door_battery - name: 'Window Sensors (min: {min}%, count: {count})' secondary_info: Battery levels {range}% icon: mdi:window-closed entities: - sensor.front_window_battery_1 - sensor.front_window_battery_2 - sensor.front_window_battery_3 - sensor.side_window_1_battery - sensor.side_window_2_battery - sensor.side_window_3_battery - sensor.side_window_4_battery - sensor.back_window_1_battery - sensor.back_window_2_battery - sensor.stairway_window_lower_battery - sensor.stairway_window_upper_battery - sensor.kitchen_big_window_battery - sensor.kitchen_sink_window_battery - sensor.mud_room_window_battery - sensor.downstairs_bathroom_window_1_battery - sensor.downstairs_bathroom_window_2_battery - sensor.upstairs_bathroom_window_battery - sensor.master_bedroom_window_1_battery - sensor.master_bedroom_window_2_battery - sensor.kallen_bedroom_window_1_battery - sensor.kallen_bedroom_window_2_battery - sensor.emma_bedroom_window_battery - name: 'Glass Break Sensors (min: {min}%, count: {count})' secondary_info: Battery levels {range}% icon: mdi:image-broken-variant entities: - sensor.living_room_glass_break_battery - name: 'Motion Detectors (min: {min}%, count: {count})' secondary_info: Battery levels {range}% icon: mdi:motion-sensor entities: - sensor.living_room_front_battery - sensor.upstairs_bathroom_battery - sensor.downstairs_bathroom_battery - sensor.emma_bedroom_battery - sensor.stairwell_bottom_battery - sensor.basement_studio_battery - sensor.kallen_bedroom_battery - sensor.mud_room_battery - sensor.stairwell_top_battery - sensor.living_room_back_battery - sensor.master_bedroom_battery - name: 'Dimmer Switches (min: {min}%, count: {count})' secondary_info: Battery Levels {range}% icon: mdi:toggle-switch entities: - sensor.kallen_bedroom_dimmer_switch_battery - sensor.tina_desk_dimmer_switch_battery - sensor.emma_bedroom_dimmer_switch_battery - sensor.master_bedroom_dimmer_switch_battery - sensor.living_room_dimmer_switch_battery filter: include: - name: entity_id value: '*_battery' - name: entity_id value: '*battery_mqtt' exclude: - name: entity_id value: '*iphone*' - name: entity_id value: '*ipad*' - name: entity_id value: '*airpod*' - name: entity_id value: '*apple*' - name: entity_id value: '*chrome*' - name: entity_id value: sensor.front_doorbell_battery tap_action: more-info - type: grid cards: - type: heading heading: By The Numbers - type: heading icon: healthicons:health heading: Health Checks heading_style: subtitle - type: custom:gauge-card-pro segments: - pos: 0 color: red - pos: 50 color: '#FFA500' - pos: 75 color: rgb(255, 255, 0) - pos: 100 color: var(--green-color) needle: true gradient: true titles: primary: value: Health Score gradient_resolution: auto entity: sensor.system_ha_global_health_score min: 0 max: 100 round: small - type: markdown content: > {% set e = 'sensor.system_ha_global_health_score' %} {% set hw = state_attr(e, 'hardware_score') | int(0) %} {% set app = state_attr(e, 'application_score') | int(0) %} {% set rec = state_attr(e, 'recommendations') | default('', true) %} {% set updates = state_attr(e, 'pending_updates') | default([], true) | list %} {% set zombies = state_attr(e, 'zombie_count') | int(0) %} {% set psi = state_attr(e, 'psi_available') | default(false, true) %} | Hardware | Application | | **{{ hw }}**/100 | **{{ app }}**/100 | {% if updates | length > 0 %} 📦 {{ updates | length }} update(s) pending — [Open Updates](/config/updates) {% endif %} {% if zombies > 0 %} 🧟 {{ zombies }} zombie(s) — [Check Entities](/config/entities) {% endif %} {% if rec not in [none, 'unknown', 'unavailable'] and '✅' not in rec %} {% else %} --- ✅ System healthy. No recommendations. {% endif %} **Metric source**: {% if psi %}🟢 PSI active (CPU + RAM + I/O + Disk) — hardware score uses 4 components{% else %}⚙️ Classic sensors (CPU + RAM + Disk) — hardware score uses 3 components{% endif %} - type: heading icon: mdi:counter heading: Entity Counters heading_style: subtitle - type: custom:auto-entities card: type: entities show_header_toggle: false filter: include: - name: Number of* - name: Lines of Code exclude: - options: {} integration: 906ce55dd1bd3e27336a7049f329149b sort: method: state reverse: true numeric: true - type: heading icon: mdi:database heading: Databases heading_style: subtitle - type: entities entities: - entity: sensor.mariadb_database_size name: MariaDB show_header_toggle: false state_color: true - type: grid cards: - type: heading heading: Usage Stats - type: entities entities: - entity: sensor.basement_tv_time name: Basement TV Time (24h) - entity: sensor.living_room_tv_time name: Living Room TV Time (24h) - entity: sensor.master_bedroom_tv_time name: Master Bedroom TV Time (24h) - entity: sensor.outside_lights name: Outside Lights (24h) - entity: sensor.windows_open_time name: Windows Open (24h) - entity: sensor.doors_open_time name: Doors Open (24h) - entity: sensor.emma_a_c_compressor_time name: Emma A/C Compressor (24h) - entity: sensor.emma_a_c_fan_time name: Emma A/C Fan (24h) - entity: sensor.master_bedroom_a_c_compressor_time name: MB A/C Compressor (24h) - entity: sensor.master_bedroom_a_c_fan_time name: MB A/C Fan (24h) - entity: sensor.basement_fan_time name: Basement Fan (24h) - entity: sensor.kallen_fan_time name: Kallen Fan (24h) - entity: sensor.master_bedroom_fan_time name: MB Fan (24h) show_header_toggle: false state_color: true - type: grid cards: - type: heading heading: Network Stats - type: entities entities: - entity: binary_sensor.internet - entity: sensor.internet_round_trip_time_minimum name: Min Ping - entity: sensor.internet_round_trip_time_average name: Avg Ping - entity: sensor.internet_round_trip_time_maximum name: Max Ping show_header_toggle: false state_color: true - type: entities entities: - entity: sensor.speedtest_download name: Download - entity: sensor.speedtest_upload name: Upload - entity: sensor.speedtest_ping name: Ping - type: entities entities: - entity: sensor.mosquitto_received_1min - entity: sensor.mosquitto_received_5min - entity: sensor.mosquitto_received_15min - entity: sensor.mosquitto_sent_1min - entity: sensor.mosquitto_sent_5min - entity: sensor.mosquitto_sent_15min show_header_toggle: false state_color: true - type: grid cards: - type: heading heading: Proxmox VE - Down - type: custom:auto-entities card: type: entities show_header_toggle: false state_color: true filter: include: - entity_id: binary_sensor.basement_server_* state: 'off' exclude: - name: Browser* - entity_id: binary_sensor.basement_server_chrome* - entity_id: binary_sensor.basement_server_on sort: method: entity_id reverse: false numeric: true ignore_case: false - type: grid cards: - type: heading heading: Uptime Kuma - Down - type: custom:auto-entities card: type: entities filter: include: - options: {} integration: 01KCMZH58AAJZTZCY1KQNGD3BB domain: sensor entity_id: '*status' state: down exclude: [] sort: method: friendly_name reverse: false numeric: false ignore_case: true show_empty: false visibility: - condition: numeric_state entity: sensor.services_down above: 0 max_columns: 4 cards: [] - title: Testing path: testing icon: mdi:test-tube type: sections sections: - type: grid cards: - type: heading heading: Presence - type: entities entities: - entity: sensor.people_at_home - entity: binary_sensor.tony_presence - entity: binary_sensor.tina_presence - entity: binary_sensor.kallen_presence - entity: sensor.tony_location - entity: sensor.tina_location - entity: sensor.kallen_location - entity: input_boolean.kallen_at_school - entity: binary_sensor.tony_home - entity: binary_sensor.tina_home - entity: binary_sensor.kallen_home - entity: binary_sensor.nerds_home - entity: binary_sensor.parents_home - entity: binary_sensor.family_home - entity: group.family - entity: group.adults - entity: device_tracker.tony_s_iphone - entity: device_tracker.tony_s_iphone_app - entity: device_tracker.tinas_iphone - entity: device_tracker.tinas_iphone_app - entity: device_tracker.kallen_iphone - entity: device_tracker.kallen_iphone_app - entity: binary_sensor.people_present - entity: sensor.last_outdoor_presence_trigger show_header_toggle: false state_color: true - type: grid cards: - type: heading heading: Misc - type: entities state_color: true entities: - entity: input_boolean.tony_awake - entity: input_boolean.tina_awake - entity: input_boolean.kallen_awake - entity: input_boolean.emma_awake - entity: sensor.services_down - entity: sensor.room_presence - entity: sensor.last_alexa_name - entity: sensor.last_alexa_serial - entity: sensor.last_alexa_entity_id - entity: sensor.tony_current_age - entity: sensor.tina_current_age - entity: sensor.kallen_current_age - entity: sensor.emma_current_age - entity: sensor.birthdays_today - entity: sensor.total_age_years - entity: binary_sensor.people_sleeping - entity: sensor.people_sleeping_total - entity: sensor.second_floor_plugs_current - entity: sensor.first_floor_plugs_current - entity: sensor.basement_plugs_current show_header_toggle: false - type: entities entities: - entity: sensor.bedrooms_max_temp visibility: - condition: numeric_state entity: sensor.bedrooms_max_temp above: 50 - condition: user users: - f387a983651a4321a7411ff8cf36f949 - 879b4c04e32841b3ad1d2763a11b4e70 - c3909d27048140729f002aaef0391775 - type: custom:twitch-followed-live-streams-card global_credentials_user_name: ironnerd24 global_credentials_access_token: byewyefnhuigdv2t6bu4172tqggpy9 global_credentials_client_id: 5p6hri1olv96he0umxchi8vuh7el39 streams_limit_count: 8 streams_image_show: true streams_show_viewers: true streams_show_title: false streams_vip: - fuzhpuzy - manasen - misami_desu - kobegriffin23 - type: grid cards: - type: heading heading: Sports - type: entities entities: - entity: switch.watching_sports - entity: select.active_sporting_event - entity: select.sports_room name: Active Room - entity: number.team_score - entity: number.opponent_score show_header_toggle: false state_color: true - type: custom:auto-entities card: type: entities show_header_toggle: false state_color: true filter: include: - label: sports domain: binary_sensor sort: method: entity_id reverse: false numeric: true ignore_case: false - type: grid cards: - type: heading heading: Card Templating - type: custom:card-templater card: type: entities show_header_toggle: false columns: 2 title: Card Templater entities: - entity: person.tony_stork name_template: >- {{ "Stupid" if is_state('input_boolean.early_night_mode','on') else "Not Stupid" }} - type: custom:bubble-card card_type: button button_type: state entity: weather.iron_nerd_weather_station modules: - weather_forecast weather_forecast: type: daily tap_action: action: navigate navigation_path: /lovelace/weather button_action: tap_action: action: navigate navigation_path: /lovelace/weather rows: '1' name: Defiance show_state: true show_attribute: true attribute: temperature - type: custom:mass-player-card entities: - media_player.living_room_tv_3 - media_player.basement_tv_5 expressive_scheme: vibrant default_section: music_player player: hide: player_selector: false media_browser: default_enqueue_mode: add_to_queue recommendations: {} panel: false expressive: true download_local: false queue: show_artist_names: true - type: custom:gauge-card-pro segments: - pos: 0 color: rgba(100,0,120,0.8) - pos: 32 color: rgba(0,0,139,0.8) - pos: 41 color: rgba(0,71,171,0.8) - pos: 50 color: rgba(30,144,255,0.8) - pos: 61 color: rgba(100,149,237,0.8) - pos: 68 color: rgba(60,179,113,0.8) - pos: 73 color: rgba(152,251,152,0.8) - pos: 80 color: rgba(255,215,0,0.8) - pos: 95 color: rgba(178,34,34,0.8) - pos: 100 color: rgba(139,0,0,0.8) needle: true gradient: true titles: primary: >- {{ state_attr(entity, 'friendly_name') | replace(' Temperature', '') }} gradient_resolution: auto entity: sensor.home_tempest_temperature min: 0 max: 100 round: full - type: custom:gauge-card-pro segments: - pos: 50 color: rgba(30,144,255,0.8) - pos: 61 color: rgba(100,149,237,0.8) - pos: 68 color: rgba(60,179,113,0.8) - pos: 73 color: rgba(152,251,152,0.8) - pos: 78 color: rgba(255,223,186,0.8) - pos: 80 color: rgba(255,215,0,0.8) - pos: 90 color: rgba(178,34,34,0.8) needle: true gradient: true titles: primary: >- {{ state_attr(entity, 'friendly_name') | replace(' Temperature', '') }} gradient_resolution: auto entity: sensor.basement_studio_temperature min: 50 max: 90 round: full setpoint: type: template value: '{{ state_attr(''climate.basement_studio_vtherm'',''temperature'') }}' label: true precision: 0 min_indicator: type: entity value: input_number.basement_studio_cold_threshold label: true opacity: 0 max_indicator: type: entity value: input_number.basement_studio_hot_threshold opacity: 0 label: true - type: grid cards: - type: heading heading: Diagnostics Feed - type: custom:home-feed-card card_id: diag_feed show_empty: false id_filter: ^diag_feed_.* more_info_on_tap: true state_color: true entities: - entity: automation.family_has_arrived - entity: automation.family_has_left - entity: automation.presence_disconnect_protection - entity: automation.icloud3_restart - entity: automation.basement_led_strip_reset - entity: binary_sensor.lightning_warning - entity: binary_sensor.raining name: Raining - entity: sensor.total_rain_sensors - type: grid cards: - type: heading heading: Alarm Clock Testing - type: entities entities: - entity: input_boolean.master_bedroom_alarm_clock - entity: input_datetime.master_bedroom_alarm_clock - entity: input_boolean.kallen_alarm_clock - entity: input_datetime.kallen_alarm_clock - entity: input_boolean.emma_alarm_clock - entity: input_datetime.emma_alarm_clock show_header_toggle: false state_color: true - type: grid cards: - type: heading heading: Testing Entities - type: entities entities: - entity: input_datetime.time_testing - entity: input_datetime.date_testing - entity: input_datetime.datetime_testing - entity: input_text.text_testing - entity: input_text.password_testing - entity: input_select.select_testing - entity: input_boolean.toggle_testing - entity: input_number.number_box_test - entity: input_number.number_slider_test - entity: switch.power_tester - entity: sensor.power_tester_power - entity: sensor.power_tester_current - entity: sensor.power_tester_voltage show_header_toggle: false state_color: true - type: grid cards: - type: heading heading: Time of Day Sensors - type: entities entities: - entity: binary_sensor.day - entity: binary_sensor.after_midnight - entity: binary_sensor.early_morning - entity: binary_sensor.morning - entity: binary_sensor.late_morning - entity: binary_sensor.midday - entity: binary_sensor.evening - entity: binary_sensor.night - entity: binary_sensor.overnight - entity: binary_sensor.quiet_time show_header_toggle: false state_color: true max_columns: 4 cards: [] background: {} - title: Weather path: weather type: sections sections: - type: grid cards: - type: heading heading: Weather Alerts heading_style: title icon: mdi:cloud-alert - type: markdown title: Weather Alerts (Summary) content: > {% set alerts = state_attr('sensor.weatheralerts_defiance_ohz004_ohc039', 'alerts') or [] %} {% if alerts|length == 0 %} No active alerts. {% else %} {% for alert in alerts[:5] %} {{ alert.get('event','Alert') }}: {{ alert.get('title', alert.get('headline','')) }}

{% endfor %} {% endif %} - type: markdown title: Weather Alerts Status content: > {% set errs = state_attr('sensor.weatheralerts_defiance_ohz004_ohc039', 'error') or [] %} {% if errs|length == 0 %} **Status:** Unknown {% else %} {% set err = errs[0] %} {% if err.get('type') == 'success' %} **Status:** **OK** {% else %} **Status:** **Error** **Type:** {{ err.get('type','') }} **Status:** {{ err.get('status','') }} **Message:** {{ err.get('message','') }} **Time:** {{ err.get('timestamp','') }} {% endif %} {% endif %} visibility: - condition: numeric_state entity: sensor.weatheralerts_defiance_ohz004_ohc039 above: 0 - type: grid cards: - type: heading heading: Lightning heading_style: title icon: mdi:lightning-bolt - type: custom:blitzortung-lightning-card distance_entity: sensor.blitzortung_lightning_distance counter_entity: sensor.blitzortung_lightning_counter azimuth_entity: sensor.blitzortung_lightning_azimuth lightning_detection_radius: 40 period: 1h grid_color: var(--primary-text-color) strike_color: var(--error-color) card_section_order: - map - compass_radar - history_chart always_show_full_card: false - type: grid cards: - type: heading heading: Radar heading_style: title icon: mdi:radar - type: custom:weather-radar-card map_style: Dark center_latitude: 41.281681 marker_latitude: 41.281681 center_longitude: -84.369331 marker_longitude: -84.369331 show_marker: true show_scale: true show_playback: true show_zoom: true show_range: false square_map: true show_recenter: true extra_labels: false data_source: RainViewer-NEXRAD zoom_level: 7 visibility: - condition: screen media_query: '(min-width: 768px)' - type: grid cards: - type: heading heading: Forecasts heading_style: title icon: mdi:sun-clock - type: custom:weather-chart-card entity: weather.iron_nerd_weather_station show_main: true show_temperature: true show_current_condition: true show_attributes: true show_time: true show_time_seconds: false show_day: true show_date: false show_humidity: true show_pressure: true show_wind_direction: true show_wind_speed: true show_sun: true show_visibility: true show_dew_point: true show_feels_like: false use_12hour_format: true icons_size: 25 animated_icons: true icon_style: style1 forecast: precipitation_type: rainfall show_probability: true labels_font_size: '11' precip_bar_size: '100' style: style1 show_wind_forecast: true condition_icons: true round_temp: false type: daily number_of_forecasts: '0' disable_animation: false units: pressure: '' speed: '' uv: sensor.home_uv_index show_wind_gust_speed: true show_last_changed: true - type: custom:weather-chart-card entity: weather.home show_main: false show_temperature: false show_current_condition: false show_attributes: false show_time: false show_time_seconds: false show_day: false show_date: false show_humidity: false show_pressure: false show_wind_direction: false show_wind_speed: false show_sun: false show_feels_like: false use_12hour_format: true icons_size: 25 animated_icons: false icon_style: style1 forecast: precipitation_type: rainfall show_probability: false labels_font_size: '11' precip_bar_size: '100' style: style1 show_wind_forecast: true condition_icons: true round_temp: false type: hourly number_of_forecasts: '0' units: pressure: '' speed: '' - type: grid cards: - type: heading heading: SPC Outlooks heading_style: title icon: fas:tornado - type: vertical-stack cards: - type: grid columns: 4 square: false cards: - type: markdown content: '**Risk**' - type: custom:mushroom-template-card primary: Day 1 fill_container: true secondary: >- {{ as_local(strptime(state_attr('sensor.spc_outlook_day_1', 'valid')+'+0000', '%Y%m%d%H%M%z')).strftime('%a %d %H:%M') }} {{ as_local(strptime(state_attr('sensor.spc_outlook_day_1', 'expire')+'+0000', '%Y%m%d%H%M%z')).strftime('%a %d %H:%M') }} card_mod: style: mushroom-state-info$: | .container { --card-secondary-font-size: 9px; } .secondary { white-space: break-spaces !important; word-wrap: break-word; overflow-wrap: break-word; -webkit-hyphens: auto; -moz-hyphens: auto; hyphens: auto; } - type: custom:mushroom-template-card primary: Day 2 fill_container: true secondary: >- {{ as_local(strptime(state_attr('sensor.spc_outlook_day_2', 'valid')+'+0000', '%Y%m%d%H%M%z')).strftime('%a %d %H:%M') }} {{ as_local(strptime(state_attr('sensor.spc_outlook_day_2', 'expire')+'+0000', '%Y%m%d%H%M%z')).strftime('%a %d %H:%M') }} card_mod: style: mushroom-state-info$: | .container { --card-secondary-font-size: 9px; } .secondary { white-space: break-spaces !important; word-wrap: break-word; overflow-wrap: break-word; -webkit-hyphens: auto; -moz-hyphens: auto; hyphens: auto; } - type: custom:mushroom-template-card primary: Day 3 fill_container: true secondary: >- {{ as_local(strptime(state_attr('sensor.spc_outlook_day_3', 'valid')+'+0000', '%Y%m%d%H%M%z')).strftime('%a %d %H:%M') }} {{ as_local(strptime(state_attr('sensor.spc_outlook_day_3', 'expire')+'+0000', '%Y%m%d%H%M%z')).strftime('%a %d %H:%M') }} card_mod: style: mushroom-state-info$: | .container { --card-secondary-font-size: 9px; } .secondary { white-space: break-spaces !important; word-wrap: break-word; overflow-wrap: break-word; -webkit-hyphens: auto; -moz-hyphens: auto; hyphens: auto; } - type: grid columns: 4 square: false cards: - type: custom:mushroom-template-card icon: mdi:weather-lightning icon_color: white layout: vertical fill_container: true primary: Categorical tap_action: action: more-info card_mod: style: mushroom-shape-icon$: | .shape { --icon-symbol-size: 40px; --icon-size: 100px; left: -20px; top: -35px; margin-bottom: -80px; border-radius: 50% !important; } mushroom-state-info$: | .container { --card-primary-font-size: 10px; --card-primary-color: white; } .: | ha-card { overflow: hidden; } - type: custom:mushroom-template-card entity: sensor.spc_outlook_day_1_outlook_day primary: '{{ states(''sensor.spc_outlook_day_1'') }}' layout: vertical fill_container: true card_mod: style: mushroom-state-info$: | .container { --card-primary-font-size: 12px; {% if not is_state('sensor.spc_outlook_day_1', 'No Risk') %} --card-primary-color: black; {% endif %} } .primary { white-space: normal !important; word-wrap: break-word; overflow-wrap: break-word; -webkit-hyphens: auto; -moz-hyphens: auto; hyphens: auto; } .: | ha-card { background-color: {{ state_attr('sensor.spc_outlook_day_1', 'categorical_fill') }} } - type: custom:mushroom-template-card entity: sensor.spc_outlook_day_2 primary: '{{ states(''sensor.spc_outlook_day_2'') }}' layout: vertical fill_container: true card_mod: style: mushroom-state-info$: | .container { --card-primary-font-size: 12px; {% if not is_state('sensor.spc_outlook_day_2', 'No Risk') %} --card-primary-color: black; {% endif %} } .primary { white-space: normal !important; word-wrap: break-word; overflow-wrap: break-word; -webkit-hyphens: auto; -moz-hyphens: auto; hyphens: auto; } .: | ha-card { background-color: {{ state_attr('sensor.spc_outlook_day_2', 'categorical_fill') }} } - type: custom:mushroom-template-card entity: sensor.spc_outlook_day_3 primary: '{{ states(''sensor.spc_outlook_day_3'') }}' layout: vertical fill_container: true card_mod: style: mushroom-state-info$: | .container { --card-primary-font-size: 12px; {% if not is_state('sensor.spc_outlook_day_3', 'No Risk') %} --card-primary-color: black; {% endif %} } .primary { white-space: normal !important; word-wrap: break-word; overflow-wrap: break-word; -webkit-hyphens: auto; -moz-hyphens: auto; hyphens: auto; } .: | ha-card { background-color: {{ state_attr('sensor.spc_outlook_day_3', 'categorical_fill') }} } - type: grid columns: 4 square: false cards: - type: custom:mushroom-template-card icon: mdi:weather-windy icon_color: cyan layout: vertical fill_container: true primary: Wind card_mod: style: mushroom-shape-icon$: | .shape { --icon-symbol-size: 40px; --icon-size: 100px; left: -20px; top: -45px; margin-bottom: -80px; border-radius: 50% !important; } mushroom-state-info$: | .container { --card-primary-font-size: 10px; --card-primary-color: cyan; } .: | ha-card { overflow: hidden; } - type: custom:mushroom-template-card entity: sensor.spc_outlook_day_1 primary: >- {{ state_attr('sensor.spc_outlook_day_1', 'wind_probability') }} layout: vertical fill_container: true card_mod: style: mushroom-state-info$: | .container { --card-primary-font-size: 12px; {% if state_attr('sensor.spc_outlook_day_1', 'wind_probability') != 'No Risk' %} --card-primary-color: black; {% endif %} } .primary { white-space: normal !important; } .: | ha-card { background-color: {{ state_attr('sensor.spc_outlook_day_1', 'wind_fill') }} } - type: custom:mushroom-template-card entity: sensor.spc_outlook_day_2 primary: >- {{ state_attr('sensor.spc_outlook_day_2', 'wind_probability') }} layout: vertical fill_container: true card_mod: style: mushroom-state-info$: | .container { --card-primary-font-size: 12px; {% if state_attr('sensor.spc_outlook_day_2', 'wind_probability') != 'No Risk' %} --card-primary-color: black; {% endif %} } .primary { white-space: normal !important; } .: | ha-card { background-color: {{ state_attr('sensor.spc_outlook_day_2', 'wind_fill') }} } - type: vertical-stack cards: - type: custom:mushroom-template-card primary: Day 4 secondary: '{{ states(''sensor.spc_outlook_day_4'') }}' card_mod: style: mushroom-state-info$: | .container { --card-primary-font-size: 12px; --card-secondary-font-size: 9px; {% if not is_state('sensor.spc_outlook_day_4', 'No Risk') %} --card-primary-color: black; --card-secondary-color: black; {% endif %} } .primary { white-space: normal !important; word-wrap: break-word; overflow-wrap: break-word; -webkit-hyphens: auto; -moz-hyphens: auto; hyphens: auto; } .: | ha-card { background-color: {{ state_attr('sensor.spc_outlook_day_4', 'probabilistic_fill') }} } - type: custom:mushroom-template-card primary: Day 5 secondary: '{{ states(''sensor.spc_outlook_day_5'') }}' card_mod: style: mushroom-state-info$: | .container { --card-primary-font-size: 12px; --card-secondary-font-size: 9px; {% if not is_state('sensor.spc_outlook_day_5', 'No Risk') %} --card-primary-color: black; --card-secondary-color: black; {% endif %} } .primary { white-space: normal !important; word-wrap: break-word; overflow-wrap: break-word; -webkit-hyphens: auto; -moz-hyphens: auto; hyphens: auto; } .: | ha-card { background-color: {{ state_attr('sensor.spc_outlook_day_5', 'probabilistic_fill') }} } - type: grid columns: 4 square: false cards: - type: custom:mushroom-template-card icon: mdi:weather-tornado icon_color: red layout: vertical fill_container: true primary: Tornado card_mod: style: mushroom-shape-icon$: | .shape { --icon-symbol-size: 40px; --icon-size: 100px; left: -20px; top: -45px; margin-bottom: -80px; border-radius: 50% !important; } mushroom-state-info$: | .container { --card-primary-font-size: 10px; --card-primary-color: red; } .: | ha-card { overflow: hidden; } - type: custom:mushroom-template-card entity: sensor.spc_outlook_day_1 primary: >- {{ state_attr('sensor.spc_outlook_day_1', 'torn_probability') }} layout: vertical fill_container: true card_mod: style: mushroom-state-info$: | .container { --card-primary-font-size: 12px; {% if state_attr('sensor.spc_outlook_day_1', 'torn_probability') != 'No Risk' %} --card-primary-color: black; {% endif %} } .primary { white-space: normal !important; } .: | ha-card { background-color: {{ state_attr('sensor.spc_outlook_day_1', 'torn_fill') }} } - type: custom:mushroom-template-card entity: sensor.spc_outlook_day_2 primary: >- {{ state_attr('sensor.spc_outlook_day_2', 'torn_probability') }} layout: vertical fill_container: true card_mod: style: mushroom-state-info$: | .container { --card-primary-font-size: 12px; {% if state_attr('sensor.spc_outlook_day_2', 'torn_probability') != 'No Risk' %} --card-primary-color: black; {% endif %} } .primary { white-space: normal !important; } .: | ha-card { background-color: {{ state_attr('sensor.spc_outlook_day_2', 'torn_fill') }} } - type: vertical-stack cards: - type: custom:mushroom-template-card primary: Day 6 secondary: '{{ states(''sensor.spc_outlook_day_6'') }}' card_mod: style: mushroom-state-info$: | .container { --card-primary-font-size: 12px; --card-secondary-font-size: 9px; {% if not is_state('sensor.spc_outlook_day_6', 'No Risk') %} --card-primary-color: black; --card-secondary-color: black; {% endif %} } .primary { white-space: normal !important; word-wrap: break-word; overflow-wrap: break-word; -webkit-hyphens: auto; -moz-hyphens: auto; hyphens: auto; } .: | ha-card { background-color: {{ state_attr('sensor.spc_outlook_day_6', 'probabilistic_fill') }} } - type: custom:mushroom-template-card primary: Day 7 secondary: '{{ states(''sensor.spc_outlook_day_7'') }}' card_mod: style: mushroom-state-info$: | .container { --card-primary-font-size: 12px; --card-secondary-font-size: 9px; {% if not is_state('sensor.spc_outlook_day_7', 'No Risk') %} --card-primary-color: black; --card-secondary-color: black; {% endif %} } .primary { white-space: normal !important; word-wrap: break-word; overflow-wrap: break-word; -webkit-hyphens: auto; -moz-hyphens: auto; hyphens: auto; } .: | ha-card { background-color: {{ state_attr('sensor.spc_outlook_day_7', 'probabilistic_fill') }} } - type: grid columns: 4 square: false cards: - type: custom:mushroom-template-card icon: mdi:weather-hail icon_color: blue layout: vertical fill_container: true primary: Hail card_mod: style: mushroom-shape-icon$: | .shape { --icon-symbol-size: 40px; --icon-size: 100px; left: -20px; top: -40px; margin-bottom: -80px; border-radius: 50% !important; } mushroom-state-info$: | .container { --card-primary-font-size: 10px; --card-primary-color: #2196F2; } .: | ha-card { overflow: hidden; } - type: custom:mushroom-template-card entity: sensor.spc_outlook_day_1 primary: >- {{ state_attr('sensor.spc_outlook_day_1', 'hail_probability') }} layout: vertical fill_container: true card_mod: style: mushroom-state-info$: | .container { --card-primary-font-size: 12px; {% if state_attr('sensor.spc_outlook_day_1', 'hail_probability') != 'No Risk' %} --card-primary-color: black; {% endif %} } .primary { white-space: normal !important; } .: | ha-card { background-color: {{ state_attr('sensor.spc_outlook_day_1', 'hail_fill') }} } - type: custom:mushroom-template-card entity: sensor.spc_outlook_day_2 primary: >- {{ state_attr('sensor.spc_outlook_day_2', 'hail_probability') }} layout: vertical fill_container: true card_mod: style: mushroom-state-info$: | .container { --card-primary-font-size: 12px; {% if state_attr('sensor.spc_outlook_day_2', 'hail_probability') != 'No Risk' %} --card-primary-color: black; {% endif %} } .primary { white-space: normal !important; } .: | ha-card { background-color: {{ state_attr('sensor.spc_outlook_day_2', 'hail_fill') }} } - type: vertical-stack cards: - type: custom:mushroom-template-card primary: Day 8 secondary: '{{ states(''sensor.spc_outlook_day_8'') }}' card_mod: style: mushroom-state-info$: | .container { --card-primary-font-size: 12px; --card-secondary-font-size: 9px; {% if not is_state('sensor.spc_outlook_day_8', 'No Risk') %} --card-primary-color: black; --card-secondary-color: black; {% endif %} } .primary { white-space: normal !important; word-wrap: break-word; overflow-wrap: break-word; -webkit-hyphens: auto; -moz-hyphens: auto; hyphens: auto; } .: | ha-card { background-color: {{ state_attr('sensor.spc_outlook_day_8', 'probabilistic_fill') }} } - type: custom:mushroom-template-card primary: ... card_mod: style: mushroom-state-info$: | .container { --card-primary-font-size: 12px; } .primary { white-space: normal !important; word-wrap: break-word; overflow-wrap: break-word; -webkit-hyphens: auto; -moz-hyphens: auto; hyphens: auto; } .: | ha-card { background-color: #000000; } - type: grid cards: - type: heading heading: Temperature heading_style: title icon: mdi:thermometer - type: custom:mini-graph-card entities: - sensor.home_tempest_temperature name: Temperature (24h) points_per_hour: 1 - type: custom:mini-graph-card entities: - sensor.pirateweather_apparent_temperature name: Feels Like (24h) points_per_hour: 1 - type: custom:comfortable-environment-card name: Room Name temperature_sensor: sensor.home_temperature humidity_sensor: sensor.home_relative_humidity display_precision: 0 show_index: ALL room_name: Outdoor Comfort Level - type: entities entities: - entity: sensor.thermal_comfort_frostrisk name: Frost Risk - entity: sensor.thermal_comfort_frostpoint name: Frost Point - entity: sensor.thermal_comfort_simmerindex name: Simmer Index - entity: sensor.thermal_comfort_simmerzone name: Simmer Zone - entity: sensor.thermal_comfort_absolutehumidity name: Absolute Humidity - entity: sensor.thermal_comfort_perception name: Thermal Perception title: Thermal Comfort show_header_toggle: false state_color: true - type: grid cards: - type: heading heading: Other Stats heading_style: title icon: mdi:weather-windy - type: custom:windrose-card title: Wind Rose refresh_interval: 300 windspeed_bar_location: bottom buttons_config: location: top buttons: - type: period_selector button_text: 1 Hour period_back: '-1h' - type: period_selector button_text: 8 Hours period_back: '-8h' - type: period_selector active: true button_text: 1 Day period_back: '-1d' - type: period_selector button_text: 10 Days period_back: '-10d' - type: period_shift_play period_back: '-1w' button_text: Play step_period: +3h window_period: +10d delay: 50 use_statistics: true statistics_period: hour wind_direction_entity: entity: sensor.home_wind_direction_degrees windspeed_entities: - entity: sensor.home_wind_speed name: Wind speed_range_beaufort: false speed_unit: mph output_speed_unit: mph output_speed_unit_label: mph windspeed_bar_full: false speed_ranges: - from_value: 0 color: rgb(0,255,0) - from_value: 5 color: yellow - from_value: 10 color: hsl(200,100%,60%) - from_value: 20 color: orange - from_value: 40 color: red - from_value: 60 color: purple - entity: sensor.home_wind_gust name: Gust speed_range_beaufort: false speed_unit: mph output_speed_unit: mph output_speed_unit_label: mph windspeed_bar_full: false speed_ranges: - from_value: 0 color: rgb(0,255,0) - from_value: 5 color: yellow - from_value: 10 color: hsl(200,100%,60%) - from_value: 20 color: orange - from_value: 40 color: red - from_value: 60 color: purple direction_labels: cardinal_direction_labels: NESW show_intercardinal_directions: true show_secondary_intercardinal_directions: true matching_strategy: - name: direction-first current_direction: show_arrow: true corner_info: top_left: label: Speed unit: ' mph' entity: sensor.home_wind_speed top_right: unit: ' mph' label: Gust entity: sensor.home_wind_gust bottom_left: unit: ° label: Bearing entity: sensor.home_wind_direction_degrees text_blocks: top: text: |-
Direction measure’s: ${direction-count} Minimal speed: ${min-speed}
Speed measure’s.: ${speed-1-count} Maximum speed: ${max-speed}
Match count: ${match-count} Average speed: ${average-speed}
Period hours ${period-hours} Calm percentage: ${calm-percentage}%
First match time${date-first-match}, ${time-first-match}
Last match time${date-last-match}, ${time-last-match}
Period start${start-date} - ${start-time}
Period end${end-date} - ${end-time}
text_color: gray text_size: 14 - type: entities entities: - entity: binary_sensor.tornado_warning type: custom:multiple-entity-row name: Warnings state_header: Tornado icon: wi:tornado entities: - entity: binary_sensor.severe_thunderstorm_warning name: Severe T-storm - entity: sensor.home_wind_speed type: custom:multiple-entity-row name: Wind format: precision1 state_header: Speed icon: wi:windy entities: - entity: sensor.home_wind_direction_degrees name: Bearing format: precision0 - entity: sensor.home_wind_gust name: Gust format: precision1 - entity: sensor.home_tempest_humidity type: custom:multiple-entity-row name: Moisture state_header: Humidity icon: wi:humidity entities: - entity: sensor.home_tempest_dew_point name: Dew Point - entity: sensor.home_tempest_local_slp name: Barometric Pressure icon: wi:barometer - entity: sensor.current_season icon: mdi:leaf - entity: sensor.home_tempest_uv_index name: UV Index - entity: sensor.pirateweather_cloud_coverage name: Cloud Coverage - entity: sensor.pirateweather_visibility name: Visibility - entity: sensor.temperature_change_per_hour - entity: sensor.pirateweather_fire_index name: Fire Index - entity: sensor.pirateweather_fire_risk_level name: Fire Risk Level - entity: sensor.pirateweather_smoke name: Smoke - entity: sensor.pirateweather_convective_available_potential_energy name: CAPE - entity: sensor.pirateweather_hrrr_0_18_update_time name: HRRR 0-18 Updated - entity: sensor.pirateweather_hrrr_18_48_update_time name: HRRR 18-48 Updated - entity: sensor.pirateweather_hrrr_subhourly_update_time name: HRRR SubH Updated - entity: sensor.pirateweather_gfs_update_time name: GFS Updated - entity: sensor.pirateweather_gefs_update_time name: GEFS Updated - entity: sensor.pirateweather_nbm_update_time name: NBM Updated - entity: sensor.pirateweather_nbm_fire_update_time name: NBM Fire Updated show_header_toggle: false state_color: true - type: grid cards: - type: heading heading: Sun heading_style: title icon: mdi:weather-sunset - type: custom:horizon-card fields: moonrise: true moonset: true moon_phase: true moon: true - type: custom:timer-bar-card name: Sun entities: - entity: sun.sun name: Sunrise icon: mdi:weather-sunset-up active_state: below_horizon end_time: attribute: next_rising translations: above_horizon: Not yet ☀️ - entity: sun.sun name: Sunset icon: mdi:weather-sunset-down active_state: above_horizon end_time: attribute: next_setting translations: below_horizon: Not yet 🌙 text_width: 5em bar_radius: 4px - type: custom:uv-index-card entity: sensor.home_tempest_uv_index max_columns: 4 icon: mdi:weather-cloudy cards: [] subview: true - type: sections max_columns: 4 title: Weather Test path: weather-test icon: mdi:weather-cloudy-alert visible: - user: c3909d27048140729f002aaef0391775 sections: - type: grid cards: - type: heading heading: Iron Nerd Studios heading_style: title - type: custom:stack-in-card cards: - type: custom:meteoalarm-card entities: entity: sensor.weatheralerts integration: weatheralerts hide_when_no_warning: true - type: custom:clock-weather-card entity: weather.iron_nerd_studios sun_entity: sun.sun weather_icon_type: fill animated_icon: true forecast_rows: 7 time_format: 12 tap_action: action: navigate navigation_path: /lovelace/weather - type: custom:stack-in-card cards: - type: custom:meteoalarm-card entities: entity: sensor.weatheralerts integration: weatheralerts hide_when_no_warning: true - type: custom:weather-card entity: weather.iron_nerd_studios number_of_forecasts: '5' current: false details: false hourly_forecast: false - type: custom:hourly-weather entity: weather.iron_nerd_studios_hourly num_segments: 12 name: null icons: true show_precipitation_probability: true show_precipitation_amounts: true show_wind: barb-and-speed - type: grid cards: - type: heading heading: Weather.com heading_style: title - type: custom:stack-in-card cards: - type: custom:meteoalarm-card entities: entity: sensor.weatheralerts integration: weatheralerts hide_when_no_warning: true - type: custom:clock-weather-card entity: weather.home sun_entity: sun.sun weather_icon_type: fill animated_icon: true forecast_rows: 7 time_format: 12 tap_action: action: navigate navigation_path: /lovelace/weather - type: custom:stack-in-card cards: - type: custom:meteoalarm-card entities: entity: sensor.weatheralerts integration: weatheralerts hide_when_no_warning: true - type: custom:weather-card entity: sensor.weather_com_daily_weather_forecast number_of_forecasts: '5' current: false details: false hourly_forecast: false - type: custom:hourly-weather entity: weather.iron_nerd_weather_station num_segments: 12 name: null icons: true show_precipitation_probability: true show_precipitation_amounts: true show_wind: barb-and-speed - type: grid cards: - type: heading heading: National Weather Service heading_style: title - type: custom:stack-in-card cards: - type: custom:meteoalarm-card entities: entity: sensor.weatheralerts integration: weatheralerts hide_when_no_warning: true - type: custom:clock-weather-card entity: weather.kdfi_daynight sun_entity: sun.sun weather_icon_type: fill animated_icon: true forecast_rows: 7 time_format: 12 tap_action: action: navigate navigation_path: /lovelace/weather - type: custom:stack-in-card cards: - type: custom:meteoalarm-card entities: entity: sensor.weatheralerts integration: weatheralerts hide_when_no_warning: true - type: custom:weather-card entity: weather.kdfi_daynight number_of_forecasts: '5' current: false details: false hourly_forecast: false - type: custom:hourly-weather entity: weather.kdfi_hourly num_segments: 12 name: null icons: true show_precipitation_probability: true show_precipitation_amounts: true show_wind: barb-and-speed - type: grid cards: - type: heading heading: OpenWeatherMap heading_style: title - type: custom:stack-in-card cards: - type: custom:meteoalarm-card entities: entity: sensor.weatheralerts integration: weatheralerts hide_when_no_warning: true - type: custom:clock-weather-card entity: weather.openweathermap sun_entity: sun.sun weather_icon_type: fill animated_icon: true forecast_rows: 7 time_format: 12 tap_action: action: navigate navigation_path: /lovelace/weather - type: heading icon: '' heading: Tomorrow.io heading_style: title - type: custom:stack-in-card cards: - type: custom:meteoalarm-card entities: entity: sensor.weatheralerts integration: weatheralerts hide_when_no_warning: true - type: custom:weather-card entity: weather.tomorrow_io_stratton_ave_daily number_of_forecasts: '5' current: false details: false hourly_forecast: false - type: custom:hourly-weather entity: weather.tomorrow_io_stratton_ave_hourly num_segments: 12 name: null icons: true show_precipitation_probability: true show_precipitation_amounts: true show_wind: barb-and-speed - type: grid cards: - type: heading heading: Temperature heading_style: title - type: entities entities: - entity: sensor.home_tempest_temperature - entity: sensor.home_tempest_feels_like - entity: sensor.home_temperature - entity: sensor.home_temperature_feels_like - entity: sensor.pirateweather_temperature - entity: sensor.pirateweather_apparent_temperature - entity: sensor.openweathermap_temperature - entity: sensor.openweathermap_feels_like_temperature - entity: sensor.tomorrow_io_stratton_ave_feels_like - entity: sensor.kdfi_temperature - entity: sensor.kdfi_heat_index - entity: sensor.kdfi_wind_chill show_header_toggle: false state_color: true - type: grid cards: - type: heading heading: Pressure heading_style: title - type: entities show_header_toggle: false state_color: true entities: - entity: sensor.home_pressure - entity: sensor.kdfi_barometric_pressure - entity: sensor.kdfi_sea_level_pressure - entity: sensor.openweathermap_pressure - entity: sensor.pirateweather_pressure - entity: sensor.outside_pressure - type: grid cards: - type: heading heading: Humidity heading_style: title - type: entities entities: - entity: sensor.home_relative_humidity - entity: sensor.kdfi_relative_humidity - entity: sensor.pirateweather_humidity - entity: sensor.openweathermap_humidity show_header_toggle: false state_color: true - type: grid cards: - type: heading heading: Wind heading_style: title - type: entities show_header_toggle: false state_color: true entities: - entity: sensor.home_wind_speed - entity: sensor.home_wind_gust - entity: sensor.kdfi_wind_speed - entity: sensor.kdfi_wind_gust - entity: sensor.pirateweather_wind_speed - entity: sensor.pirateweather_wind_gust - entity: sensor.openweathermap_wind_speed - entity: sensor.tomorrow_io_stratton_ave_wind_gust - type: grid cards: - type: heading heading: UV Index heading_style: title - type: entities entities: - entity: sensor.home_uv_index - entity: sensor.weatherapi_stratton_ave_uv_index - entity: sensor.pirateweather_uv_index - entity: sensor.openweathermap_uv_index show_header_toggle: false state_color: true - type: grid cards: - type: heading heading: Forecast Card heading_style: title - type: custom:weather-forecast-card show_current: true show_forecast: true default_forecast: daily tap_action: action: navigate navigation_path: /lovelace/weather entity: weather.iron_nerd_weather_station show_condition_effects: true forecast: mode: chart show_sun_times: true extra_attribute: wind_bearing use_color_thresholds: false hourly_group_size: 1 temperature_precision: 0 forecast_action: tap_action: action: toggle-forecast current: show_attributes: - apparent_temperature - visibility - pressure - wind_speed temperature_precision: 0 cards: [] - title: Weather Comparisons path: weather-comparisons icon: mdi:cloud-clock type: sections sections: - type: grid cards: - type: heading heading: Conditions - type: custom:clock-weather-card entity: weather.iron_nerd_weather_station sun_entity: sun.sun weather_icon_type: fill humidity_sensor: sensor.home_relative_humidity show_humidity: true apparent_sensor: sensor.home_temperature_feels_like animated_icon: true forecast_rows: 7 time_format: 12 time_zone: America/New_York - type: custom:clock-weather-card entity: weather.ashland_weather_station sun_entity: sun.sun weather_icon_type: fill humidity_sensor: sensor.ashland_temperature show_humidity: true apparent_sensor: sensor.ashland_temperature_feels_like animated_icon: true forecast_rows: 7 time_format: 12 time_zone: America/Chicago column_span: 2 - type: grid cards: - type: heading heading: Comfort Levels - type: entities entities: - entity: sensor.thermal_comfort_frostrisk name: Frost Risk - entity: sensor.thermal_comfort_frostpoint name: Frost Point - entity: sensor.thermal_comfort_simmerindex name: Simmer Index - entity: sensor.thermal_comfort_simmerzone name: Simmer Zone - entity: sensor.thermal_comfort_absolutehumidity name: Absolute Humidity - entity: sensor.thermal_comfort_perception name: Thermal Perception title: Defiance show_header_toggle: false state_color: true - type: entities entities: - entity: sensor.thermal_comfort_ashland_frost_risk name: Frost Risk - entity: sensor.thermal_comfort_ashland_frost_point name: Frost Point - entity: sensor.thermal_comfort_ashland_summer_simmer_index name: Simmer Index - entity: sensor.thermal_comfort_ashland_summer_simmer_perception name: Simmer Zone - entity: sensor.thermal_comfort_ashland_absolute_humidity name: Absolute Humidity - entity: sensor.thermal_comfort_ashland_humidex_perception name: Thermal Perception title: Ashland show_header_toggle: false state_color: true - type: custom:comfortable-environment-card name: Room Name temperature_sensor: sensor.home_temperature humidity_sensor: sensor.home_relative_humidity display_precision: 0 show_index: ALL room_name: Defiance - type: custom:comfortable-environment-card name: Room Name temperature_sensor: sensor.ashland_temperature humidity_sensor: sensor.ashland_relative_humidity display_precision: 0 show_index: ALL room_name: Ashland column_span: 2 - type: grid cards: - type: heading heading: Wind - type: custom:windrose-card title: Defiance data_period: hours_to_show: 24 max_width: 1000 refresh_interval: 300 windspeed_bar_location: bottom wind_direction_entity: entity: sensor.home_wind_direction_degrees windspeed_entities: - entity: sensor.home_wind_speed name: Wind speed_range_beaufort: false speed_unit: mph output_speed_unit: mph output_speed_unit_label: mph windspeed_bar_full: false speed_ranges: - from_value: 0 color: rgb(0,255,0) - from_value: 5 color: yellow - from_value: 10 color: hsl(200,100%,60%) - from_value: 20 color: orange - from_value: 40 color: red - from_value: 60 color: purple - entity: sensor.home_wind_gust name: Gust speed_range_beaufort: false speed_unit: mph output_speed_unit: mph output_speed_unit_label: mph windspeed_bar_full: false speed_ranges: - from_value: 0 color: rgb(0,255,0) - from_value: 5 color: yellow - from_value: 10 color: hsl(200,100%,60%) - from_value: 20 color: orange - from_value: 40 color: red - from_value: 60 color: purple direction_labels: cardinal_direction_labels: NESW show_intercardinal_directions: true show_secondary_intercardinal_directions: true matching_strategy: direction-first current_direction: show_arrow: true corner_info: top_left: label: Speed unit: ' mph' entity: sensor.home_wind_speed top_right: unit: ' mph' label: Gust entity: sensor.home_wind_gust bottom_left: unit: ° label: Bearing entity: sensor.home_wind_direction_degrees - type: custom:windrose-card title: Ashland data_period: hours_to_show: 24 max_width: 1000 refresh_interval: 300 windspeed_bar_location: bottom wind_direction_entity: entity: sensor.ashland_wind_direction_degrees windspeed_entities: - entity: sensor.ashland_wind_speed name: Wind speed_range_beaufort: false speed_unit: mph output_speed_unit: mph output_speed_unit_label: mph windspeed_bar_full: false speed_ranges: - from_value: 0 color: rgb(0,255,0) - from_value: 5 color: yellow - from_value: 10 color: hsl(200,100%,60%) - from_value: 20 color: orange - from_value: 40 color: red - from_value: 60 color: purple - entity: sensor.ashland_wind_gust name: Gust speed_range_beaufort: false speed_unit: mph output_speed_unit: mph output_speed_unit_label: mph windspeed_bar_full: false speed_ranges: - from_value: 0 color: rgb(0,255,0) - from_value: 5 color: yellow - from_value: 10 color: hsl(200,100%,60%) - from_value: 20 color: orange - from_value: 40 color: red - from_value: 60 color: purple direction_labels: cardinal_direction_labels: NESW show_intercardinal_directions: true show_secondary_intercardinal_directions: true matching_strategy: direction-first current_direction: show_arrow: true corner_info: top_left: label: Speed unit: ' mph' entity: sensor.ashland_wind_speed top_right: unit: ' mph' label: Gust entity: sensor.ashland_wind_gust bottom_left: unit: ° label: Bearing entity: sensor.ashland_wind_direction_degrees column_span: 2 - type: grid cards: - type: heading heading: General Stats - type: entities entities: - entity: sensor.home_tempest_temperature type: custom:multiple-entity-row name: Temperature state_header: Defiance entities: - entity: sensor.ashland_temperature name: Ashland - entity: sensor.home_tempest_feels_like type: custom:multiple-entity-row name: Feels Like state_header: Defiance entities: - entity: sensor.ashland_temperature_feels_like name: Ashland - entity: sensor.home_tempest_humidity type: custom:multiple-entity-row name: Humidity state_header: Defiance entities: - entity: sensor.ashland_relative_humidity name: Ashland - entity: sensor.home_tempest_dew_point type: custom:multiple-entity-row name: Dew Point state_header: Defiance entities: - entity: sensor.ashland_dewpoint name: Ashland - entity: sensor.home_tempest_cloud_sensors_sea_level_pressure type: custom:multiple-entity-row name: Pressure state_header: Defiance entities: - entity: sensor.ashland_pressure name: Ashland - entity: sensor.home_tempest_uv_index type: custom:multiple-entity-row name: UV Index state_header: Defiance entities: - entity: sensor.pirateweather_ashland_uv_index name: Ashland - entity: sensor.pirateweather_cloud_coverage type: custom:multiple-entity-row name: Cloud Cover state_header: Defiance entities: - entity: sensor.pirateweather_ashland_cloud_coverage name: Ashland - entity: sensor.home_tempest_cloud_sensors_visibility type: custom:multiple-entity-row name: Visibility state_header: Defiance entities: - entity: sensor.kasx_visibility name: Ashland - entity: sensor.temperature_change_per_hour type: custom:multiple-entity-row name: Temp Change/hr state_header: Defiance entities: - entity: sensor.ashland_temperature_change_per_hour name: Ashland column_span: 1 badges: [] max_columns: 4 dense_section_placement: false cards: [] - type: sections max_columns: 4 title: Temp path: temp icon: mdi:asterisk sections: - type: grid cards: - type: heading heading: Washer Controls heading_style: title icon: mdi:washing-machine - type: custom:stack-in-card cards: - type: entities entities: - entity: input_number.washer_cycle_length name: Cycle Length - entity: input_datetime.washer_finished name: Finished At - entity: input_boolean.washer_finished name: Cycle Finished secondary_info: Turn off after collecting laundry - type: custom:timer-bar-card filter: true show_empty: The washer is not currently running entities: - entity: timer.washer_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 - type: custom:stack-in-card mode: horizontal cards: - type: custom:button-card entity: timer.washer_timer name: [] show_label: true aspect_ratio: 2.7/1 styles: card: - '--mdc-ripple-color': purple - '--mdc-ripple-press-opacity': 0.5 state: - value: active label: Running icon: mdi:play styles: icon: - color: green - value: paused label: Paused icon: mdi:pause styles: icon: - color: yellow - value: idle label: Start icon: mdi:play tap_action: action: call-service service: button.press service_data: entity_id: button.washer_start hold_action: action: more-info entity: timer.washer_timer - type: custom:button-card entity: timer.washer_timer name: [] icon: mdi:cancel label: Cancel show_label: true aspect_ratio: 2.7/1 styles: card: - '--mdc-ripple-color': purple - '--mdc-ripple-press-opacity': 0.5 state: - value: active styles: icon: - color: green - value: paused styles: icon: - color: yellow - value: idle tap_action: action: call-service service: button.press service_data: entity_id: button.washer_cancel hold_action: action: more-info entity: timer.washer_timer - type: grid cards: - type: heading heading: Dryer Controls heading_style: title icon: mdi:tumble-dryer - type: custom:stack-in-card cards: - type: entities entities: - entity: input_number.dryer_cycle_length name: Cycle Length - entity: input_datetime.dryer_finished name: Finished At - entity: input_boolean.dryer_finished name: Cycle Finished secondary_info: Turn off after collecting laundry - type: custom:timer-bar-card filter: true show_empty: The dryer is not currently running entities: - entity: timer.dryer_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 - type: custom:stack-in-card mode: horizontal cards: - type: custom:button-card entity: timer.dryer_timer name: [] show_label: true aspect_ratio: 2.7/1 styles: card: - '--mdc-ripple-color': purple - '--mdc-ripple-press-opacity': 0.5 state: - value: active label: Running icon: mdi:play styles: icon: - color: green - value: paused label: Paused icon: mdi:pause styles: icon: - color: yellow - value: idle label: Start icon: mdi:play tap_action: action: call-service service: button.press service_data: entity_id: button.dryer_start hold_action: action: more-info entity: timer.dryer_timer - type: custom:button-card entity: timer.dryer_timer name: [] icon: mdi:cancel label: Cancel show_label: true aspect_ratio: 2.7/1 styles: card: - '--mdc-ripple-color': purple - '--mdc-ripple-press-opacity': 0.5 state: - value: active styles: icon: - color: green - value: paused styles: icon: - color: yellow - value: idle tap_action: action: call-service service: button.press service_data: entity_id: button.dryer_cancel hold_action: action: more-info entity: timer.dryer_timer