Dzięki modułowi map w HA można wyświetlać bieżące pozycje osób, samochodów oraz zwierzaków (psa).
Lokalizacja na mapie w HA
Pozycjonowanie osób
Weryfikacja pozycji GPS
Konfiguracja w aplikacji Home Assistant na telefon:
Ustawienia>Aplikacja towarzysząca
ustawić:
nazwę urządzenia
Działanie w tle
Zarządzaj sensorami
Jednorazowa dokładna lokalizacja: Włączony
Lokalizacja w tle: Włączony
Strefa lokalizacji: Włączony
(Opcjonalnie) Lokalizacja geokodowana: Włączony
Zezwolić na lokalizację aplikacji
(opcjonalnie) wyłączyć powiadomienia z aplikacji – jeżeli tylko do weryfikacji lokalizacji.
Weryfikacja obecności w domu
Dla tych osób, które nie mają włączonej lokalizacji w aplikacji lub nie używają aplikacji wykrycie obecności w domu odbywa się na podstawie integracji PING. Poszczególne telefony mają przypisane na routerze statyczne adresy IP (na podstawie adresów MAC). W ustawieniach osoby w HA jest przypisana odpowiednia integracja PING dla telefonu danej osoby.
Pozycjonowanie samochodów
Pozycjonowanie samochodów na mapie odbywa się na podstawie lokalizatorów GPS umieszczonych w samochodach. Domyślnie dane z lokalizatora GPS wysyłane są do serwera i widoczne w na mapie HA oraz w aplikacji Traccar.
Z powodu bezpieczeństwa zależało mi aby wszelkie informacje nie były przechowywane na „obcych” serwerach lokalizacji – stąd konfiguracja własnego serwera do śledzenia samochodów.
Lokalizacja samochodów w Traccar
Hardware
Lokalizator GPS MKING MK08 wersja OBD2 – koszt ok 110PLN (listopad 2025), link
Karta SIM VigrinMobile – koszt ok 5PLN, plus 30PLN/rok
Software
Aplikacja: Traccar
Aplikacja na telefon GPS.MIKING (tylko na potrzeby wstępnej konfiguracji i weryfikacji)
Konfiguracja
Wymagania: HA wystawione na zewnątrz z poprawnie skonfigurowanym HTTPS i DNS.
Instalacja aplikacji traccar w HA.
Przekierowanie portu na routerze dla aplikacji traccar na wewnętrzny IP serwera HA.
Konfiguracja lokalizatora GPS MKING MK08
Włożenie aktywnej karty SIM do lokalizatora
Instalacja w samochodzie oraz opcjonalne włączenie silnika, poczekanie kilka minut na pierwszy odczyt lokalizacji
Weryfikacja lokalizacji na mapie w aplikacji na telefon: GPS.MIKING
Zmiana hasła lokalizatora w aplikacji GPS.MIKING
Odczyt ustawień lokalizatora – wysłanie SMSa na numer telefonu lokalizatora: CXZT W odpowiedzi można zweryfikować: oryginalny adres serwera lokalizacji oraz ID urządzenia
Ustawienie nowego serwera lokalizacji: IP <adres_IP_serwera_Traccar> <port_serwera> przykładowo: IP moj_dom.duckdns.org 1234 odpowiedź SMS: SET IP OK
weryfikacja lokalizacji przez wysłanie SMS: G1234 odpowiedź SMS: link do lokalizacji na google
Konfiguracja w Traccar
Konfiguracja protokołu urządzeń Należy w addonie Traccar zmodyfikować plik traccar.xml, aby ustawić właściwy protokół komunikacyjny dla lokalizatorów GPS – w moim przypadku protokół to H02
<!-- Enter you custom configuration below this line --> <entry key='h02.port'>5013</entry>
(opcjonalnie) Dodajemy przekierowanie portu skonfigurowanego powyżej na routerze na wewnętrzny IP serwer HA – tylko dla przypadku, gdy HA jest wystawione do internetu i ma zewnętrzny adres IP.
Dodajemy urządzenie w ustawieniach podając ID urządzenia
Konfiguracja w HA
Integracja w HA przy użyciu integracji Traccar Server.
Przykładowe atrybuty
Dla wygody prezentacji na mapie dla każdego z samochodu dodanie osoby:
nazwa
zdjęcie
nazwa encji z lokalizacją (encja z integracji)
Pozycjonowanie zwierzaków
Analogicznie jak pozycjonowanie ludzi czy samochodów na mapie w HA można prezentować lokalizację zwierzaków.
Hardware
Tractive – wymagane dedykowane urządzenie oraz opłacanie abonamentu.
Software
Intergracja w HA: Tractive – wymagane aktywne konto w aplikacji na telefon Tractive
Aby ikona na mapie w HA pokazywała zdjęcie należy zrobić kroki analogicznie jak dla samochodu.
HA działa jako kontener na dockerze. Nie jest to najprostsza konfiguracja, ale jedna z najbardziej elastycznych. Z jednej strony mamy możliwość aktualizacji HA, a z drugiej możliwość uruchomienia dodatkowego oprogramowania – w moim przypadku: Ebusd oraz Samba.
Dodatki
Aplikcje
Cel
Advanced SSH & Web Terminal
Terminal SSH
DuckDNS + Ngnix
Konfiguracja SSL plus wystawienie HA do internetu
ESPHome Device Builder
ESPHome – oprogramowanie dla chipów i czujników
File editor
Edycja plików
Frigate
Podgląd kamer, analiza ruchu, serwer NVR
Home Assistant Google Drive Backup
Automatyczne backupy w chmurze
Mosquitto broker
Serwer MQTT
Music Assistant Server
Serwer multimediów
SQLite Web
Klient SQL dla SQLLite
TasmoAdmin
Zarządzanie urządzeniami Tasmota
TasmoBackup
Backup urządzeń Tasmota
Traccar
Śledzenie samochodów
Uptime Kuma
Monitoring urządzeń
Zigbee2MQTT
Obsługa urządzeń Zigbee
HACS
Niestandardowe integracje
Integracja
Cel
HACS
Moduł do pobierania dodatkowych komponentów i integracji
AI Automation Suggester
Optymalizacje konfiguracji HA
Alarmo
Panel alarmu
Antistorm
Prognoza burz i opadów
Disk Space
Sensor wielkości dysku
Frigate
Integracja z frigate
Media player template
Dedykowany player dla niestandardowych urządzeń multimedialnych
TP-Link Router
Obsługa routerów TP-Link
Uptime Kuma
Integracja z Uptime Kuma
Viomise
Integracja dla odkurzacza Viomi SE and Xiaomi STY02YM, STYJ02YM
Duża ilość urządzeń w domowej sieci wifi powoduje zawsze problemy z dostępnością wszystkich urządzeń. Do monitoringu działania urządzeń wykorzystuje dodatek „Uptime Kuma” do HA
Konfiguracja
Ustawienia pojedynczego monitora dla urządzenia
Powiadomienia wysyłam bezpośrednio poprzez HA na komórkę. Większość urządzeń monitoruje na odpowiednim temacie MQTT – przykład powyżej.
Aby pominąć błędne powiadomienia:
dla MQTT – heartbeat: 60 sek oraz ilość prób: 5,
dla ping – heartbeat: 300 sek oraz ilość prób: 5,
Konfiguracja HA
Za pomocą dodatkowej integracji HACS: „Uptime Kuma HACS integration: standardowej integracji dodane są sensory do HA, dodatkowo wykorzystany Dashboard HACS: button-card.oraz vertical i horizonatal stack.
Prosty projekt odczytujący z analogowego licznika dane i przekazujący informację do HomeAssistant przez MQTT. Projekt wykorzystuje bibliotekę uczenia maszynowego Tensorflow Lite do analizy obrazu.
Hardware
ESP32 + OV2640 2.0MP camera module + antena (koszt ok 10$)
Integracja z kotłem Valliant VC 186 oraz sterownikiem pogodowym VC400 korzysta z protokołu eBUS. Jako adapter eBUS wykorzystywana jest płytka w wersji 2.2 zbudowana na podstawie strony eBus Adapter 3. Od czasu jego zlutowania (2020) pojawiło się kilka nowszych wersji adaptera, ale nie zamierzam zmieniać, bo działa bardzo skutecznie. Komunikacja z HA jest za pomocą serwera MQTT.
Schemat blokowy
Wygląd płytki adaptera eBus z UART
Oprogramowanie
Korzystam z ebusd uruchomionego na Linuxie (Debian) jako serwis.
Oczywiście wartości mqtthost, mqttport, mqttuser, mqttpass należy ustawić na poprawne.
Aby zmieniać niektóre wartości (krzywa grzewcza, stany liczników gazu) ebusd musi działać w trybie instalatora. Weryfikację, czy dany parametr jest modyfikowalny można sprawdzić w projekcie GIT https://github.com/john30/ebusd-configuration wyszukując odpowieni plik dla instalacji.
Weryfikacja działania ebusd
ebusctl info
dla mojej instalacji komenda zwraca
version: ebusd 24.1.24.1
update check: OK
device: /dev/ttyUSB0, serial
access: install
signal: acquired
symbol rate: 22
max symbol rate: 1441
min arbitration micros: 0
max arbitration micros: 3168
min symbol latency: 0
max symbol latency: 15
scan: finished
reconnects: 0
masters: 3
messages: 432
conditional: 7
poll: 110
update: 16
address 03: master #11
address 08: slave #11, scanned "MF=Vaillant;ID=BAI00;SW=0516;HW=7401", loaded "vaillant/bai.308523.inc" ([id_hw=7401]), "vaillant/08.bai.csv"
address 10: master #2
address 15: slave #2, scanned "MF=Vaillant;ID=40000;SW=0139;HW=7301", loaded "vaillant/15.400.csv"
address 31: master #8, ebusd
address 36: slave #8, ebusd
Problemy
Ponieważ rozwiązanie działało już przez kilka lat nastąpiło przepełnienie liczników (ebusd/bai/PrEnergyXXX) odpowiedzialnych za zliczanie zużycia gazu.
Poniżej komendy do zresetowania odpowiednich liczników:
#odczyt
ebusctl read -V -c bai PrEnergyCountHwc1
#zapis
ebusctl write -c bai PrEnergySumHc1 0
ebusctl write -c bai PrEnergySumHwc1 0
ebusctl write -c bai PrEnergyCountHc1 0
ebusctl write -c bai PrEnergyCountHwc1 0
Jeżeli przy zapisie są błędy „ERR: element not found” powyższe komendy należy wykonać w trybie instalatora (parametr „–accesslevel=install”).
Home Assistant
Karta ogrzewania w HA
Rozwiązanie bazuje na cyklicznym odczycie danych przez MQTT. Aby oczytać jakąś wartość należy najpierw wysłać wiadomość odpowiedni topic MQTT. Do testowania najlepiej użyć klienta umożliwiającego podłączenie się bezpośrednio do serwera MQTT, np. MQTT Explorer
Zużycie gazu można wyliczyć na podstawie liczników PrEnergySumHwc1 oraz PrEnergySumHw1. Na podstawie pomiarów należy wyliczyć stosunek zużycia gazu do sumy PrEnergySumHwc1 i PrEnergySumHw1.
Komponent do wprowadzenia poprzednich wartości odczytanych
Kiedyś wymyśliłem, że przydałaby się informacja, czy w garażu jest zaparkowany samochód. Wyszło całkiem proste urządzenie, które poza identyfikacją samochodu, jednocześnie weryfikuje – czy jest otwarta, czy zamknięta brama garażowa oraz mierzy temperaturę i wilgotność w garażu. Koszt ok 40 PLN (bez obudowy i zasilacza na microUSB).
Czujnik temperatury jest opcjonalny.
Ważne jest umiejscowienie całego urządzenia – na suficie, czujnik odległości skierowany w dół, nad końcem otwartej bramy garażowej, dzięki temu można wyłapać stany (otwarty garaż, auto/zamknięty garaż, brak auta/zamknięty garaż) dodatkowo czujnik musi być umieszczony nad zaparkowanym autem.
Wykorzystane komponenty:
Czujnik odległości HC-SR04
Czujnik SI7021 (ja wykorzystałem wolny czujnik od Sonoff TH10, TH16, itd.)
Wemos D1 mini
Poniżej schemat:
plus podłączenie SI7021 na D5 (pin 12). Na schemacie nie zaznaczono masy i podłączenie zasilania do Wemos D1 mini.
Oprogramowanie
Należy wcześniej zainstalować dodatek ESPHome w HomeAssistant.
Poniżej konfiguracja Wemos D1 mini w ESPHome. Należy dodatkowo utworzyć plik secrets.yaml w EspHome.
Istnieje oczywiście możliwość integracji przez moduł eth, ale ponieważ jest on kosztowny zaprojektowałem proste rozwiązanie wykorzystując wolne wyjścia w domowej centrali Satel Integra. Nie jest to dwukierunkowa integracja, a jedynie przekazywanie informacji od alarmu do HomeAssistant. Dzięki temu można stworzyć fajne automatyzacje na podstawie wykrytego ruchu. Koszt integracji ok 50 PLN
W tym rozwiązaniu akumulator w centrali alarmowej jest wykorzystywany jako UPS dla RaspberryPI, co oczywiście skraca czas działania alarmu przy długich wyłączeniach prądu.
NodeMCU (alternatywnie Wemos D1 mini – tańsze rozwiązanie, ja miałem pod ręką akurat wolny chipset NodeMCU)
Schemat blokowy
Zastosowałem 25W przetwornicę napięcia, aby z alarmu zasilić od razu RaspberryPI na którym jest uruchomiony HomeAssistant. Dzięki temu w przypadku braku zasilania RPi działa aż do wyczerpania baterii w alarmie.
Ważne jest użycie i skonfigurowanie odpowiednich wyjść w na płycie Integra – nie wszystkie wyjścia są wyjściami wysokoprądowymi.
Uwaga na schemacie nie zaznaczono masy.
Widok płytki od strony elementów
Software
Alarm
Konfiguracja w systemie alarmowym jest wykonana w oprogramowaniu DLOADX.
Wyjścia typu Out są wysterowane przez 3 sekundy przez wejścia z czujek PIR
Jedno z moich pierwszych urządzeń to pilot na podczerwień (odbiornik i nadajnik) oraz pomiar temperatury, wilgotności i ciśnienia (szacunkowy koszt ok 40 PLN, bez zasilacza). Jest też gotowy shield IR do Wemos D1 mini – co jest prostszym rozwiązaniem niż lutowanie całości.
Wykorzystane komponenty:
Wemos D1 mini
BME280
nadajnik i odbiornik podczerwieni
Poniżej schemat logiczny:
Układ połączeń
Uwaga – należy jak najdalej odsunąć czujnik BME280 od Wemos D1
Oprogramowanie
Do układu Wemos D1 mini zostało wgrane oprogramowanie Tasmota Sensor. Wcześniej używałem ESPHome, ale w tym przypadku trudniej obsługiwać sterowanie różnymi pilotami na podczerwień. Tasmota Sensor rozpoznaje kody pilotów różnych dostawców., dzięki czemu skrypty w HomeAssistant są prostsze. Opcjonalnie można by też użyć wersji tasmota-ir, aby obsłużyć więcej różnych dostawców urządzeń IR.
Konfiguracja
Tasmota Sensor
Dodatkowo w Tasmocie jest ustawiona konfiguracja połączenia do serwera MQTT.
Odczyt kodów IR z pilota najlepiej przeprowadzić z poziomu konsoli Tasmota.
HomeAssistant
Czujnik BME280 wykrywany jest automatycznie przez HA.
Przykładowy skrypt wysyłający kod IR do urządzenia: