All Projects → agneevX → My Ha Setup

agneevX / My Ha Setup

Licence: mit
My Home Assistant setup

Programming Languages

shell
77523 projects

Projects that are alternatives of or similar to My Ha Setup

Hassiq
Home Assistant interface for Garmin's Connect IQ Platform
Stars: ✭ 71 (-38.79%)
Mutual labels:  homeassistant
Lovelace Themes
Homebrew themes for homeassistant lovelace ui
Stars: ✭ 83 (-28.45%)
Mutual labels:  homeassistant
Home Assistant Configuration
My Home Assistant Config. For more Information visit ->
Stars: ✭ 102 (-12.07%)
Mutual labels:  homeassistant
Hass Bha Icons
Additional icons for Home Assistant to accompany the MDI icons
Stars: ✭ 75 (-35.34%)
Mutual labels:  homeassistant
Hugo Esp8266
Hugo is a 4-button ESP8266 Wi-Fi Remote, Arduino compatible and simple to use.
Stars: ✭ 77 (-33.62%)
Mutual labels:  homeassistant
Addon Grocy
Grocy - Home Assistant Community Add-ons
Stars: ✭ 97 (-16.38%)
Mutual labels:  homeassistant
Wiserhomeassistantplatform
Platform and related climate/sensors to support the Drayton Wiser Home Heating System
Stars: ✭ 65 (-43.97%)
Mutual labels:  homeassistant
Home Assistant Android
UNOFFICIAL Android app/frontend for Home Assistant (https://home-assistant.io)
Stars: ✭ 108 (-6.9%)
Mutual labels:  homeassistant
Homeassistant Config
Configuration for @brianjking & @KinnaT's Home Assistant Installation
Stars: ✭ 80 (-31.03%)
Mutual labels:  homeassistant
Addon Grafana
Grafana - Home Assistant Community Add-ons
Stars: ✭ 102 (-12.07%)
Mutual labels:  homeassistant
Monitor docker
Monitor Docker containers from Home Assistant
Stars: ✭ 76 (-34.48%)
Mutual labels:  homeassistant
Ha Bt Proximity
Distributed Bluetooth Room Presence Sensor for Home Assistant
Stars: ✭ 77 (-33.62%)
Mutual labels:  homeassistant
Home Assistant Config
My Home Assistant configuration & documentation.
Stars: ✭ 99 (-14.66%)
Mutual labels:  homeassistant
Addon Wireguard
WireGuard - Home Assistant Community Add-ons
Stars: ✭ 72 (-37.93%)
Mutual labels:  homeassistant
Ha philips android tv
Home Assistant custom component for the newer (2016+) Philips Android TVs
Stars: ✭ 104 (-10.34%)
Mutual labels:  homeassistant
Streamdeck Homeassistant
🏠 Use the Elgato Stream Deck as Home Assistant controller. Call any available service and toggle lights or resume your music.
Stars: ✭ 69 (-40.52%)
Mutual labels:  homeassistant
Addon Homebridge
 Homebridge - Community Hass.io Add-on for Home Assistant
Stars: ✭ 96 (-17.24%)
Mutual labels:  homeassistant
Addon Ssh
SSH & Web Terminal - Home Assistant Community Add-ons
Stars: ✭ 114 (-1.72%)
Mutual labels:  homeassistant
Appdaemon Scripts
Scripts running in Appdaemon for Homeassistant Automations
Stars: ✭ 108 (-6.9%)
Mutual labels:  homeassistant
Addon Aircast
AirCast - Home Assistant Community Add-ons
Stars: ✭ 100 (-13.79%)
Mutual labels:  homeassistant

Home Assistant setup

This layout was designed mobile-first.

hero_shot

Background

Home Assistant Core installation on Raspberry Pi 4, with MySQL.

More details here.


Skip to lovelace layout

Custom implementations

These are some of my custom implementations using Home Assistant.

Lo-fi beats

Plays Lo-fi beats live stream from YouTube.

This requires screen, mpv and youtube-dl/youtube-dlc to be installed.

configuration.yaml:

switch:
  platform: command_line
  switches:
    lofi_beats:
      command_on: echo "lofi_on" | netcat localhost 7900
      command_off: echo "lofi_off" | netcat localhost 7900

socat runs in the background (systemd service file) and listens for commands.

Once a switch is turned on, this script is called that starts the playback...

hass_socket_script.sh:

#!/bin/bash
read MESSAGE

if [[ $MESSAGE == 'lofi_on' ]]; then 
  screen -S lofi -dm /usr/bin/mpv --no-video $(/path/to/youtube-dlc -g -f 95 5qap5aO4i9A); fi
if [[ $MESSAGE == 'lofi_off' ]]; then screen -S lofi -X quit; fi
# Truncated. Full in ./hass_socket_script.sh

Soundbar control

Controls the volume of ALSA - 3.5mm port on the Raspberry Pi. Requires alsamixer to be installed.

This involves a input_number helper, an automation and a series of shell commands.

configuration.yaml:

# Truncated. Full in ./config
input_number:
  pi_volume:
    min: 0
    max: 100
    step: 5
automation: 
  - alias: Set soundbar volume
    trigger:
    - platform: state
      entity_id: input_number.pi_volume
    action:
    - service_template: shell_command.pi_volume_{{ trigger.to_state.state | int }}
shell_command:
  pi_volume_0: echo amixer_0 | netcat localhost 7900
  pi_volume_5: echo amixer_5 | netcat localhost 7900

Similar to above, the script calls the command amixer to increase/decrease the volume...

hass_socket_script.sh:

#!/bin/bash
read MESSAGE

if [[ $MESSAGE == 'amixer_0' ]]; then amixer -q cset numid=1 -- -10239; fi
if [[ $MESSAGE == 'amixer_5' ]]; then amixer -q cset numid=1 -- -7399; fi
# Truncated. Full in ./hass_socket_script.sh

Alexa devices control

With custom component Alexa Media Player, Home Assistant is able to control any thing that you're able to speak to Alexa.

This requires the use of input_boolean helpers to control the state of the entity.

E.g. to control a plug...

configuration.yaml:

switch:
  platform: template
  switches: 
    6a_plug:
      value_template: "{{ is_state('input_boolean.6a_plug_state', 'on') }}"
      turn_on:
        - service: input_boolean.turn_on
          entity_id: input_boolean.16a_plug_state
        - service: media_player.play_media
          entity_id: media_player.new_room_echo
          # Preferably set an Echo device that is rarely used as the echo device actually carries out the command in the foreground
          data:
            media_content_id: 'turn on 6a plug'
            media_content_type: custom
      turn_off:
        - service: input_boolean.turn_off
          entity_id: input_boolean.6a_plug_state
        - service: media_player.play_media
          entity_id: media_player.new_room_echo
          data:
            media_content_id: 'turn off 6a plug'
            media_content_type: custom

Lovelace layout

Dashboard

Jump to lovelace code

home_view

All cards in this view are in a single vertical stack.

Badges

  • CPU use
  • System load
  • Network in
  • Network out
  • HACS updates

This is the only view that contain badges.

Vertical stack 1

State row

  • /drive mount
  • ASUS laptop
  • always-on server
  • Front gate camera
  • Mesh router satellite

Lights card

  • Desk light
    • ... Color temp card
  • TV lamp
    • ... RGB card
  • Soundbar volume

Custom implementation that controls alsa volume, using input_boolean, shell_command and an automation.

Switch row I

  • Night light
  • TV lamp - Color flow
  • Lo-Fi beats
  • Lo-Fi beats 2
  • Jazz radio

Switch row II

  • AdGuard Home
  • Bedroom AC
  • Refresh Plex
  • qBittorrent alt. speed mode
  • 16A plug

Vertical stack 2

Graph row I

  • Bedroom temperature
  • Bedroom humidity

Indicates if there's any packet loss within the last hour.

Now Playing card

  • Automatically lists all active media players

Controls view

Jump to lovelace code

controls_view

Vertical stack 1

  • Front gate camera
  • Adaptive Lighting switches

Vertical stack 2

  • Bedroom AC
    • ... addl. controls

Info view

Jump to lovelace code

info_view

Vertical stack 1

TV state row

Tracks states of specific TVs.

Graph row I

  • CPU temp.
  • Internet health

Graph row II

  • Download speed (Speedtest.net)
  • Upload speed (Speedtest.net)

Custom-made sensor that uses the official Speedtest.net CLI instead of the rather inaccurate speedtest-cli.

Graph row III

  • Current network in/out
  • Today total traffic in/out

A combined card that graphs network usage within the last hour.

Custom-made sensor that gets network traffic from vnstat.

Vertical stack 2

Info row I

  • qBittorrent active torrents
  • qBittorrent upload/download speed

Info row II

  • SSD free %
  • /knox free %
  • /knox free space

Tile view

Jump to lovelace code

tile_view

Vertical stack 1

Internet graphs

  • Node ping
  • Internet ping

Graphs pings to local ISP node and Cloudflare DNS. This card is very helpful in isolating network issues.

Radarr/Sonarr cards

  • Radarr/Sonarr ongoing commands
  • Radarr/Sonarr queue

Vertical stack 2

Devices card

  • Network devices list

Using the Netgear integration, this card shows all network-connected devices. Dynamically sorted such that the last updated device is always on top.


Remote control view

Jump to lovelace code

rc_view

Spotify player

  • Spotify media player
    • Playlist shortcuts
    • Soundbar source
    • Bedroom Echo source

Alexa players

  • Household Echo media players
  • ... switches
    • Do Not Disturb
    • Repeat
    • Shuffle
  • Alexa Everywhere media player

Plex/TV view

Jump to lovelace code

plex_view

Vertical stack 1

Graph row I

  • Plex currently watching
  • Tautulli current bandwidth

Graph row II

  • Network in
  • Network out

The four graph cards provide an overview of Plex/network activity in one place and indicates potential network issues.

Vertical stack 2

Plex/TV players

  • Conditional cards...
    • Header cards
    • TV player cards
    • Plex media players

Custom plugins used

Integrations

Lovelace


Notes

  • Screenshots may not be up-to-date.
  • int are "internal" entities that are used inside templates.
  • Shutting down/Rebooting X200M involves a program named Assistant Computer Control that runs on the laptop.
    • A cURL request calls a IFTTT webhook which writes a specific phrase in a file inside OneDrive that the software is able to recognize and perform actions accordingly.
  • The header that is used for separating cards is from soft-ui.

Special thanks

  • to all authors above,
  • and all the very helpful folks over at the Discord.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].