A few people have been asking for the yaml config so here goes, along with some other brief explanations.
Theme: hass-kibibit-theme
Camera/Frigate card: frigate-hass-card
.
Note: The blank space there fills up with other cards throughout the day based on conditions. For example, Alexa timer countdowns)
.
Main Mobile Dashboard:
Note: The two indoor cameras are set to only turn on and display on the dashboard when nobody is home, I've just manually switched them on for the screenshots. I like having my front door as the main focus when I first open the app as it's useful to quickly check when someone's at the door.
.
Server/Systems dasbboard:
.
.
1. The 'Devices' desktop card
Note: The mobile 'Devices' card is the same config but with some bits taken out as I don't need that info on mobile view.
A: How I control my Macbook Pro volume/mute
B: How I added the Denon AVR 'Dynamic EQ' and subwoofer level controls
Note: You can control pretty much every single aspect of a Denon Receiver via its IP protocol and the Denon HA integration.
The list of commands you can publish are here on Denon's official website.
Required custom cards:
.
Note: The buttons for 'Switch', 'Xbox', 'Plex' and 'Shield' all simply just call scripts that I've created that turn on my TV, surround sound and switch my TV & Receiver to the appropiate HDMI and turns the corresponding device on if supported. (The Nintendo Switch won't turn on this way as we cannot control it via HA).
The Script buttons are actually Template Switches, so it allows HA to report the 'on state', for example the Shield switch appears 'on' when my Nvidia Shield is on AND my TV is currently on the correct HDMI input.
Example extract from my config.yaml for the Template Switches:
switch:
- platform: template
switches:
nvidiashield:
value_template: "{{ is_state('media_player.nvidia_shield', 'idle') or is_state('media_player.nvidia_shield', 'paused') or is_state('media_player.nvidia_shield', 'playing') and is_state_attr('media_player.living_room_tv_2', 'source', 'Home Theatre')}}"
turn_on:
service: script.turn_on
target:
entity_id: script.1587548231616
turn_off:
service: media_player.turn_off
target:
entity_id: media_player.nvidia_shield
icon_template: >-
{% if is_state_attr('media_player.denon_avr', 'source', 'SHIELD') %}
phu:nvidia-shield
{% else %}
phu:nvidia-shield
{% endif %}
- platform: template
switches:
plex_shield:
value_template: "{{ is_state_attr('media_player.nvidia_shield', 'source', 'Plex') and is_state_attr('media_player.living_room_tv_2', 'source', 'Home Theatre') }}"
turn_on:
service: script.turn_on
target:
entity_id: script.1579992709710
turn_off:
service: script.turn_on
target:
entity_id: script.1587548231616
icon_template: >-
{% if is_state_attr('media_player.denon_avr', 'source', 'SHIELD') %}
mdi:plex
{% else %}
mdi:plex
{% endif %}
Required custom cards:
.
3. The 'Macbook Pro' card
Note: The battery % simply comes from the Home Assistant MacOS app, you can expose many sensors from this.
A: How I control my Macbook Pro/mute/Sleep
Required custom cards:
4. The Server Stats
A: What I use to pull my local server stats
B: What I use to pull my remote offsite backup server stats (My servers are connected together via Wireguard VPN so no need to open ports)
Required custom cards:
5. The Plex/Tautulli bandwidth card
Required custom cards: