GithubHelp home page GithubHelp logo

moe01324 / home_automation Goto Github PK

View Code? Open in Web Editor NEW
33.0 7.0 2.0 11.11 MB

description of a Home Assistant/KNX home automation setup

home-automation home-assistant home-assistant-config home-assistant-configuration homeassistant knx homeassistant-config homeassistant-configuration home-automation-system lovelace

home_automation's Introduction

Home Automation

This page shall document and present the home automation I am running. Feel free to contact me with detailed questions.

Server

Server Lenovo ThinkCentre M93p Tiny Mini PC (i5 4570T 2.9 GHz, 8GB, 256GB Samsung SSD, HD Graphics 4600, WLAN)

Running Debian with Docker Images

  • Home Assistant - homeassistant/home-assistant:stable
  • Unifi Controller - jacobalberty/unifi:latest
  • Portainer - portainer/portainer
  • Grafana - grafana/grafana:latest
  • Influx - influxdb:latest
  • MotionEye - ccrisan/motioneye:master-amd64 - for CCTV
  • ESP Home - esphome/esphome:latest - to integrate ESP32 based sensors

Unifi Controller

Gives an nice UI to manage everything network related. Though I have to admit a little bit unstable when adding new stuff or making major changes. If everything runs, it runs flawless. Also provides the VPN endpoint to connect from the outside.

Portainer

To manage the docker containers via a web UI.

Grafana/Influx

For long term storage and visualisation of some data. Is then shown within the HA user interface.

Keepass

https://keepass.info/ To manage all the passwords.

Home Assistant

Home Assistant is used as a Visualization and Automation Tool. https://www.home-assistant.io/

Also using HACS to install and maintain additional integrations, components and themes. | HACS |https://github.com/hacs/integration |

General Setup

Please mind that I adapt (play around) with the system all the time -> Most probably the screenshots do NOT match the config provided here.

Configuration is available in the folder /haconfig_gh/

Screenshots Desktop

Screenshots Mobile

Screenshots from my android mobile.

UI / Lovelace

The UI config is available in the folder /haconfig_gh/. MUST have: HACS. https://community.home-assistant.io/t/custom-component-hacs/121727 To manage all custom components.

Themes

All Themes are installed via HACS.

Currently in use:

Custom Components

Again, I try to manage as much of these through HACS.

Other Stuff

  • Ventilation view For my ventilation view I customised an picture and put some ventilation values over it.

Automations

In my opinion a smart home is only really smart if most of the actions and adaptions happen automatically. Doing something via a stupid app is not smart.

  • Coffee Machine My coffee machine (https://xenia.coffee/) needs around 12-15 minutes to fully heat up. Therefore it gets switched on automatically in the morning. 6am during the week. 7am on the weekends. Runs for half an hour.

  • Window Blinds Rather complex setup... Trying to allow to use as much sun energy during the colder months, and try to avoid heating the house up during the warmer months. In addition some comfort features like closing the blinds in the bath at night.

  • Lights All main lights are controlled via KNX motion detectors. Usually I dont need to use any light switches. Also nice: open the terrace door, the terrace light goes on. To find/see the cats... ;-)

  • Garden Irrigation Can be scheduled via HA UI.

Telegram Integration

A Telegram Bot is integrated into HA. Allows to send me notifications. E.g. if I leave the house and windows are still open. In case the smoke detectors are alarming etc. Also I can send commands to the HA. Start the coffee machine if I am on my way back home.

KNX

Following KNX devices are used withing this installation. Some of the automation logic is directly on the devices, others is supported by automations within Home Assistant.

Device Link Image
MDT Glastaster II Smart BE-GT2TW.01 https://www.mdt.de/Glastaster_Smart.html
MDT Jalousieaktoren https://www.mdt.de/Jalousieaktoren.html
MDT CO2 Sensor https://www.mdt.de/CO2_Sensor.html
MDT IP Router https://www.mdt.de/Interfaces.html
MDT Presence Detector https://www.mdt.de/Praesenzmelder.html
MDT Binary Input https://www.mdt.de/Binaereingaenge.html
MDT Weather Station https://www.mdt.de/Praesenzmelder.html
MDT Stromversorgung 640mA https://www.mdt.de/Interfaces.html
ComfoConnect KNX C https://www.zehnder-systems.de/produkte-und-systeme/komfortable-wohnraumlueftung/zehnder-comfoconnect-knx-c

KNX Switches

I really like the fully customizable MDT Glastaster. Altough rarely used because every room has a presence detector from MDT.

Pretty default switch that controls lights and the coffee machine in the kitchen/dinner area. The nice thing about this switches is that they are really very customizable. E.g. the icons are adaptable, colors can be changed etc. When they are not used, they disable the display completely or show the time.

Second page of the kitchen/dinner area. Controlling window blinds and showing the outside temperature.

Switch at the main door. Top left shows if any windows/doors are open.

Network

Using Ubiquitu Unifi components. Good performance/price point in my opinion. https://www.ui.com/

Ubiquiti Unifi Security Gateway

2x Ubiquiti Unifi 8 Port Switch, POE

3x Ubiquiti Unifi Access Points

The Unifi Controller is running as a docker container.

Other Components

A quick overview of some other devices and compontents that are integrated into the overall solution.

Sonoff NS Panel Pro

SONOFF NSPanel Pro Smart Scene Wall Switch, is default state with the proprietary SW it´s rather useless. BUT. Following the instructions https://blakadder.com/android-panel-webview/ a default android webview and launcher can be installed. This allows to sideload any Andoird Apps, e.g. the Home Assistan Companion App.

Created an additional HA view, shows cameras, temps, train schedule etc.

Connection via WIFI, power is directly 220V. Powerconsumption between 3W at startup, scrolling on HA 2W, idle with screen on 1.6W, idle screen off 1W. Panel sleeps after 30sec, wakup via screenpress or "wave". To configure: https://github.com/seaky/nspanel_pro_tools_apk Unfortunately, the Doorbird App does not run properly on 480x480, the button to enable the intercom is "out of screen". Doorbird support says the minimum screen resolution is 640px in height...

Distribution Box

Houses all the fuses and KNX components.

Alpha Innotect Heatpump

LWAV82R1/3-HSV9M1/3 This also has a webserver/http interface. Integrated into Home Assistant via https://github.com/Bouni/Home-Assistant-Luxtronik It provides access to lots of data from the heatpump. Also controlling it would be possible, but I don't have the need to adapt anything regularly.

Zehnder Q350

A automated ventilation system that provides fresh air. No need to open windows to get fresh air into the house. Triggering different levels of ventilation by time based automation in HA. Integration via KNX into Home Assistant.

Nuki Smartlock

An add-on smart lock to the front door. Bluethooth controlled (optional WIFI bridge available) and battery powered. Also comes with a keypad that is mounted outside the door. No need to take a key with you any more. In addition I can provided temporary access by giving out temporary keycodes. Works flawless. Integrated into Home Assistant (unfortunately the API does not provide a userID for an Unlock right now, feature request is raised with Nuki.

Sonos One

One in the kitchen, one in the office. Just for some background music. Integrated into Homeassistant.

Alarm System

Presence/motion detectors and window sensors are used to detect any movement if the house is set to "away mode".

Smoke Detectors

Are also integrated into Homeassistant.

Garden Irrigation

A Raspberry Pi connect to some relays that are controlling Rainbird water valves. Integrated into Homeassistant for automation and control.

Actual control of the relays is done via http://wiringpi.com/ , from a very simple script from: https://pirelay.jasonfindlay.com/ Explained usage: https://www.raspberrypi.org/forums/v...=60008#p474778 Not fancy, but working. ;-)

Weather data

To receive local rain data the API at http://at-wetter.tk/api/v1/station/11036/regen is used. This allows to disable irrigation when it was anyway raining in the last few hours.

Wifi Smart Plugs

In the garage U use a pair of Gosund WLAN Smart plugs to allow control via HomeAssistant. Just added them via the Smart Life Andoird App, the Tuya HA integration finds them. More info in the HA forum: https://community.home-assistant.io/t/wifi-gosund-plug/97932 Downside: this goes via the Tuya/Gosund cloud...

Local alternative could be: https://github.com/rospogrigio/localtuya

CCTV cameras

The CCTV cameras are integrated via Motioneye. After trying multiple different opensource solutions, Motioneye could fullfil most of the requirements (useful motion detection with recording and notification, nice UI, easy setup, integration into HA). https://github.com/ccrisan/motioneye/wiki

Integration into HA works with 2 options, either including a Panel Iframe, https://www.home-assistant.io/integrations/panel_iframe/ , or just displaying a camera component with the correct RTSP stream. Also webhooks can be used to receive notifications from motioneye.

ESP32 Sensors

Garage Temp Sensor & Display

Via ESP Home and Home Assistant this little device collects and displays data in the garage (which is a detached building, but has Wifi coverage).

ESPHome code: https://github.com/moe01324/home_automation/blob/master/esp/garage-esphome Case for 3d printing: https://www.thingiverse.com/thing:2937731/files The case takes the small LCD and the ESP8266. The sensor is just glued to the side.

Media Control

Following adamaze with https://github.com/adamaze/esphome_volume_knob a ESP8266 together with a rotary encoder and a small 3d printed case create a physical controller for the office Sonos. Volume, pause, next track etc.

ESPHome Yaml: https://github.com/moe01324/home_automation/blob/master/esp/mediacontroller.yaml

Version2, includes a 128x128 oled display to show the currently playing song.

STL at thingyverse: https://www.thingiverse.com/thing:4751921

Links

Following online resource were quite helpful for me: https://community.home-assistant.io/ https://knx-user-forum.de https://community.home-assistant.io/t/knx-cookbook/230972 The HA KNX Cookbook https://github.com/adonno/Home-AssistantConfig Gave inspiration to document everything

If you found this helpful, feel free to buy me a coffee: https://www.buymeacoffee.com/t2JeMGFmx

home_automation's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

c3tax mtwliefting

home_automation's Issues

Help understanding KWL in automations.yaml

Hi Moe,

thank you for your cool HA Setup and your Inspirations!

I have some small questions to your KWL Setup and i hope you can help me to understand your Setup?! :-)

Could you explain the following Automation to me? What is exactly done/what Group-Adresses are these or why are you doing this Automation? I understand, that you set KWL to Stufe 1 at 8:00, to 2 at 17:20 and to 1 at 22:00.

in automations.yaml

- alias: Lüftung ausschalten
  trigger:
    at: '08:00:00'
    platform: time
  condition: []
  action:
  - data:
      entity_id: switch.kwl_stufe_1
    service: switch.turn_on
## Lüftung am Nachmittag einschalten
- alias: Lüftung einschalten
  trigger:
    at: '17:20:00'
    platform: time
  condition: []
  action:
  - data:
      entity_id: switch.kwl_stufe_2
    service: switch.turn_on
## Lüftung am Abend ausschalten    
- alias: Lüftung Abend ausschalten
  trigger:
    at: '22:00:00'
    platform: time
  condition: []
  action:
  - data:
      entity_id: switch.kwl_stufe_1
    service: switch.turn_on

But what are you exactly doing here? what are the group Adresses 6/7/2 and 6/7/4?

## KWL Modus korrekt setzen
- alias: KWL Auto
  trigger:
  - at: '10:00'
    platform: time
  condition: []
  action:
  - data:
      address: 6/7/4
      payload: '0'
    service: knx.send
  - data:
      address: 6/7/2
      payload: '0'
    service: knx.send

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.