tomas.lorinc@gmail.com
IoT specialist
Programmer
Trainer
Rapid prototyper
if (!☕) cup.refill();
uses computing power, machine learning and predictive technology to make complex decisions based on the data they gather
uses internet connected devices to control and monitor appliances and systems like security, heating and lighting. Smart home technology, can help to make our homes more secure, comfortable and energy efficient
Basket of remotes
Tens of apps
Hub for everything
Data security
Lack of support
Price
problems
Designed as IH
Everything connected
Different wirings
Local server
One App
Home Assistant
BlackBox
BlackBox
BlackBox
BlackBox
Home Assistant
...
45EF903DA8
192.168.1.23:443
Mobile App
Home Assistant
light.hue.living_room
state
color
brightness
saturation
10 bulbs + 1 bridge = 550 EUR
zigbee
45EF903DA8
192.168.1.23:443
Mobile App
Home Assistant
light.hue.living_room
state
color
brightness
saturation
10 bulbs + 1 bridge = 160 EUR
currently not possible
zigbee
45EF903DA8
Home Assistant
light.lidl.living_room
state
color
brightness
saturation
10 bulbs + 1 bridge = 170 EUR
Conbee II
zigbee
45EF903DA8
Home Assistant
light.lidl.living_room
10 bulbs + 1 bridge = 170 EUR 550EUR
Conbee II
Mobile App
EMULATED
light.hue.living_room
zigbee
Home Assistant
light.lidl.living_room
Conbee II
Mobile App
light.hue.living_room
light.hue.kitchen
light.hue.kitchen
zigbee
zigbee
EMULATED
https://www.home-assistant.io/integrations/#all
https://demo.home-assistant.io
Open source home automation that puts local control and privacy first.
Free
Open Source
Portable
Local
Python
Unified access
...
Companion App
Operating System
Core
core is already built in OS
OS | Path |
---|---|
Home Assistant OS | /config |
Docker | /config |
OS X | ~/.homeassistant |
Linux | ~/.homeassistant |
Windows | %APPDATA%/.homeassistant |
The configuration.yaml file is the main YAML file used by Home Assistant to gather all of the information about the users desired configuration.
HomeAssistant OS extensions are called addons
light:
- platform: mqtt
name: "Ziarovka 1"
command_topic: "namakana_domacnost/ziarovka_1"
- platform: mqtt
name: "Ziarovka 2"
command_topic: "namakana_domacnost/ziarovka_2"
ziarovka_1
ziarovka_2
HomeAssistant
23°
23°
73%
73%
light:
- platform: mqtt
name: "Ziarovka 1"
command_topic: "namakana_domacnost/ziarovka_1"
- platform: mqtt
name: "Ziarovka 2"
command_topic: "namakana_domacnost/ziarovka_2"
ziarovka_1
ziarovka_2
HomeAssistant
light:
- platform: mqtt
name: "Ziarovka 1"
command_topic: "namakana_domacnost/ziarovka_1"
- platform: mqtt
name: "Ziarovka 2"
state_topic: "namakana_domacnost/ziarovka_2"
command_topic: "namakana_domacnost/ziarovka_2/set"
light:
- platform: mqtt
name: "Ziarovka 1"
command_topic: "namakana_domacnost/ziarovka_1"
- platform: mqtt
name: "Ziarovka 2"
state_topic: "namakana_domacnost/ziarovka_2"
command_topic: "namakana_domacnost/ziarovka_2/set"
qos: 2
payload_on: "zapni_sa"
payload_off: "vypni_sa"
# Configure a default setup of Home Assistant (frontend, api, etc)
default_config:
# Text to speech
tts:
- platform: google_translate
group: !include groups.yaml
automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml
light:
- platform: mqtt
name: "Master Bedroom Ceiling Light Spot"
command_topic: "namakany_den/home/bedroom/light/ceiling_light_spot/set"
state_topic: "namakany_den/home/bedroom/light/ceiling_light_spot"
- platform: mqtt
name: "Master Bedroom Ceiling Light 1"
command_topic: "namakany_den/home/bedroom/light/ceiling_light_1/set"
state_topic: "namakany_den/home/bedroom/light/ceiling_light_1"
brightness_command_topic: "namakany_den/home/bedroom/light/ceiling_light_1/brightness/set"
brightness_state_topic: "namakany_den/home/bedroom/light/ceiling_light_1/brightness"
- platform: mqtt
unique_id: "NEURON-1_3.07"
name: "Master Bedroom Ceiling Light 2"
command_topic: "namakany_den/home/bedroom/light/ceiling_light_2/set"
state_topic: "namakany_den/home/bedroom/light/ceiling_light_2"
payload_on: "1"
payload_off: "0"
qos: 2
- platform: group
name: All lights
entities:
- light.master_bedroom_ceiling_light_1
- light.master_bedroom_ceiling_light_2
- light.master_bedroom_ceiling_light_spot
binary_sensor:
- platform: mqtt
unique_id: NEURON-1_1.01_input"
name: Bedroom motion
state_topic: "namakany_den/home/bedroom/motion"
qos: 2
device_class: motion
Documentation
HomeAssistant Core extensions are called integrations
ziarovka_1
ziarovka_3
HomeAssistant
ziarovka_2
pir_1
Virtual House
HomeAssistant
test.mosquitto.org:1883
MQTT
3x light
1x motion sensor
3x light
1x light group
1x motion sensor
1x automation
[
{
"id": "f64da792.f41b08",
"type": "ui_switch",
"z": "f646ebb8.6f3998",
"name": "",
"label": "Ceiling light 2",
"tooltip": "",
"group": "4690d742.c49a28",
"order": 2,
"width": 0,
"height": 0,
"passthru": true,
"decouple": "false",
"topic": "",
"style": "",
"onvalue": "1",
"onvalueType": "str",
"onicon": "",
"oncolor": "",
"offvalue": "0",
"offvalueType": "str",
"officon": "",
"offcolor": "",
"x": 600,
"y": 140,
"wires": [
[
"638bafde.eb8ae8"
]
]
},
{
"id": "66342f6f.e37c28",
"type": "ui_switch",
"z": "f646ebb8.6f3998",
"name": "",
"label": "Spot Light",
"tooltip": "",
"group": "4690d742.c49a28",
"order": 1,
"width": 0,
"height": 0,
"passthru": true,
"decouple": "false",
"topic": "",
"style": "",
"onvalue": "ON",
"onvalueType": "str",
"onicon": "",
"oncolor": "",
"offvalue": "OFF",
"offvalueType": "str",
"officon": "",
"offcolor": "",
"x": 590,
"y": 180,
"wires": [
[
"b909abfe.03b0f8"
]
]
},
{
"id": "666f43ba.898a64",
"type": "ui_switch",
"z": "f646ebb8.6f3998",
"name": "",
"label": "Ceiling light 1",
"tooltip": "",
"group": "4690d742.c49a28",
"order": 5,
"width": 0,
"height": 0,
"passthru": true,
"decouple": "false",
"topic": "",
"style": "",
"onvalue": "ON",
"onvalueType": "str",
"onicon": "",
"oncolor": "",
"offvalue": "OFF",
"offvalueType": "str",
"officon": "",
"offcolor": "",
"x": 600,
"y": 100,
"wires": [
[
"37d63375.8386b4"
]
]
},
{
"id": "1a132084.6088d7",
"type": "mqtt in",
"z": "f646ebb8.6f3998",
"name": "",
"topic": "namakany_den/home/bedroom/light/ceiling_light_1/set",
"qos": "0",
"datatype": "auto",
"broker": "630b9a9e.ae7fdc",
"x": 240,
"y": 100,
"wires": [
[
"666f43ba.898a64"
]
]
},
{
"id": "4b1a4dde.3afd8c",
"type": "mqtt in",
"z": "f646ebb8.6f3998",
"name": "",
"topic": "namakany_den/home/bedroom/light/ceiling_light_2/set",
"qos": "0",
"datatype": "auto",
"broker": "630b9a9e.ae7fdc",
"x": 240,
"y": 140,
"wires": [
[
"f64da792.f41b08"
]
]
},
{
"id": "e17d4cbb.8c802",
"type": "mqtt in",
"z": "f646ebb8.6f3998",
"name": "",
"topic": "namakany_den/home/bedroom/light/ceiling_light_spot/set",
"qos": "0",
"datatype": "auto",
"broker": "630b9a9e.ae7fdc",
"x": 250,
"y": 180,
"wires": [
[
"66342f6f.e37c28"
]
]
},
{
"id": "37d63375.8386b4",
"type": "mqtt out",
"z": "f646ebb8.6f3998",
"name": "",
"topic": "namakany_den/home/bedroom/light/ceiling_light_1",
"qos": "0",
"retain": "",
"broker": "630b9a9e.ae7fdc",
"x": 1150,
"y": 100,
"wires": []
},
{
"id": "638bafde.eb8ae8",
"type": "mqtt out",
"z": "f646ebb8.6f3998",
"name": "",
"topic": "namakany_den/home/bedroom/light/ceiling_light_2",
"qos": "2",
"retain": "",
"broker": "630b9a9e.ae7fdc",
"x": 1150,
"y": 140,
"wires": []
},
{
"id": "b909abfe.03b0f8",
"type": "mqtt out",
"z": "f646ebb8.6f3998",
"name": "",
"topic": "namakany_den/home/bedroom/light/ceiling_light_spot",
"qos": "0",
"retain": "",
"broker": "630b9a9e.ae7fdc",
"x": 1160,
"y": 180,
"wires": []
},
{
"id": "88d35466.420068",
"type": "ui_button",
"z": "f646ebb8.6f3998",
"name": "",
"group": "4690d742.c49a28",
"order": 6,
"width": 0,
"height": 0,
"passthru": false,
"label": "Motion sensor",
"tooltip": "",
"color": "",
"bgcolor": "",
"icon": "directions_walk",
"payload": "",
"payloadType": "str",
"topic": "",
"x": 600,
"y": 240,
"wires": [
[
"d75e845f.259018"
]
]
},
{
"id": "866b8ec3.b5c53",
"type": "mqtt out",
"z": "f646ebb8.6f3998",
"name": "",
"topic": "namakany_den/home/bedroom/motion",
"qos": "2",
"retain": "",
"broker": "630b9a9e.ae7fdc",
"x": 1120,
"y": 240,
"wires": []
},
{
"id": "d75e845f.259018",
"type": "trigger",
"z": "f646ebb8.6f3998",
"name": "",
"op1": "ON",
"op2": "OFF",
"op1type": "str",
"op2type": "str",
"duration": "3",
"extend": false,
"overrideDelay": false,
"units": "s",
"reset": "",
"bytopic": "all",
"topic": "topic",
"outputs": 1,
"x": 800,
"y": 240,
"wires": [
[
"866b8ec3.b5c53"
]
]
},
{
"id": "e0567db8.f116b",
"type": "ui_gauge",
"z": "f646ebb8.6f3998",
"name": "",
"group": "4690d742.c49a28",
"order": 3,
"width": 0,
"height": 0,
"gtype": "gage",
"title": "Brightness",
"label": "units",
"format": "{{value}}",
"min": 0,
"max": "255",
"colors": [
"#ffffff",
"#e6e600",
"#ffaa00"
],
"seg1": "",
"seg2": "",
"x": 970,
"y": 300,
"wires": []
},
{
"id": "a1c0dd65.c287e8",
"type": "mqtt in",
"z": "f646ebb8.6f3998",
"name": "",
"topic": "namakany_den/home/bedroom/light/ceiling_light_1/brightness/set",
"qos": "0",
"datatype": "auto",
"broker": "630b9a9e.ae7fdc",
"x": 280,
"y": 300,
"wires": [
[
"e37360da.c91918"
]
]
},
{
"id": "e37360da.c91918",
"type": "ui_slider",
"z": "f646ebb8.6f3998",
"name": "",
"label": "Ceiling 1 Light Brightness",
"tooltip": "",
"group": "4690d742.c49a28",
"order": 4,
"width": 0,
"height": 0,
"passthru": true,
"outs": "all",
"topic": "",
"min": 0,
"max": "255",
"step": "10",
"x": 710,
"y": 300,
"wires": [
[
"e0567db8.f116b",
"cd0f393b.ff9dd8"
]
]
},
{
"id": "cd0f393b.ff9dd8",
"type": "mqtt out",
"z": "f646ebb8.6f3998",
"name": "",
"topic": "namakany_den/home/bedroom/light/ceiling_light_1/brightness",
"qos": "",
"retain": "",
"broker": "630b9a9e.ae7fdc",
"x": 1130,
"y": 340,
"wires": []
},
{
"id": "4690d742.c49a28",
"type": "ui_group",
"name": "Virtual House",
"tab": "29d862c5.7c4876",
"order": 1,
"disp": true,
"width": "6",
"collapse": false
},
{
"id": "630b9a9e.ae7fdc",
"type": "mqtt-broker",
"name": "",
"broker": "test.mosquitto.org",
"port": "1883",
"clientid": "",
"usetls": false,
"compatmode": false,
"keepalive": "60",
"cleansession": true,
"birthTopic": "",
"birthQos": "0",
"birthRetain": "false",
"birthPayload": "",
"closeTopic": "",
"closeQos": "0",
"closeRetain": "false",
"closePayload": "",
"willTopic": "",
"willQos": "0",
"willRetain": "false",
"willPayload": ""
},
{
"id": "29d862c5.7c4876",
"type": "ui_tab",
"name": "Bedroom",
"icon": "dashboard",
"disabled": false,
"hidden": false
}
]
# Configure a default setup of Home Assistant (frontend, api, etc)
default_config:
# Text to speech
tts:
- platform: google_translate
group: !include groups.yaml
automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml
light:
- platform: mqtt
name: "Master Bedroom Ceiling Light Spot"
command_topic: "namakany_den/home/bedroom/light/ceiling_light_spot/set"
state_topic: "namakany_den/home/bedroom/light/ceiling_light_spot"
- platform: mqtt
name: "Master Bedroom Ceiling Light 1"
command_topic: "namakany_den/home/bedroom/light/ceiling_light_1/set"
state_topic: "namakany_den/home/bedroom/light/ceiling_light_1"
brightness_command_topic: "namakany_den/home/bedroom/light/ceiling_light_1/brightness/set"
brightness_state_topic: "namakany_den/home/bedroom/light/ceiling_light_1/brightness"
- platform: mqtt
unique_id: "NEURON-1_3.07"
name: "Master Bedroom Ceiling Light 2"
command_topic: "namakany_den/home/bedroom/light/ceiling_light_2/set"
state_topic: "namakany_den/home/bedroom/light/ceiling_light_2"
payload_on: "1"
payload_off: "0"
qos: 2
- platform: group
name: All lights
entities:
- light.master_bedroom_ceiling_light_1
- light.master_bedroom_ceiling_light_2
- light.master_bedroom_ceiling_light_spot
binary_sensor:
- platform: mqtt
unique_id: NEURON-1_1.01_input"
name: Bedroom motion
state_topic: "namakany_den/home/bedroom/motion"
qos: 2
device_class: motion
abstract representation of physical device
pointer to the physical device
physical device
Different Dashboards
Let's not forget our Brothers
10%