Co jest potrzebne
- Docker z Compose na maszynie, która działa cały czas i jest w tej samej sieci LAN co Home Assistant, albo Home Assistant OS / Supervised dla dodatku.
- Apka Sensmos z portfelem. Hub rejestruje się do adresu portfela, który mu podasz.
Docker
git clone https://github.com/sensmos-network/sensmos-hub.git
cd sensmos-hub
cp .env.example .env # wpisz adres portfela w HUB_OWNER
docker compose up -d
docker compose logs -f # pokazuje device_id i PIN
Kontener używa sieci hosta: apka dociera do hubu na porcie 80 (znajduje go przez mDNS jako sensmos-<id>.local, jak płytkę ESP32) przy parowaniu, tunel sięga do Twojej sieci LAN, a ping mierzy prawdziwe łącze domowe.
Po pierwszym starcie hub pojawia się w apce na liście nodów tego portfela.
Dodatek Home Assistant
- Ustawienia → Dodatki → Sklep z dodatkami → ⋮ → Repozytoria → dodaj
https://github.com/sensmos-network/sensmos-hub. - Zainstaluj Sensmos Hub, wpisz owner (adres portfela) i opcjonalnie pin, uruchom.
- Log dodatku pokazuje id noda i PIN.
Parowanie i panel HA
- W apce otwórz hub → Ustawienia → Zdalny dostęp → Sparuj, będąc w tej samej sieci Wi-Fi. Podaj PIN. Apka zapisuje w hubie klucz parowania; klucz nigdy nie opuszcza Twojej sieci.
- Na karcie noda dodaj integrację Panel HA i wskaż adres Home Assistant w LAN, np.
192.168.1.20:8123. Przy dodatku to adres maszyny, na której on działa. - Od teraz panel otwiera się skądkolwiek, przez hub. Zdalny dostęp opisuje tunel dokładnie; zasady są te same: tylko adresy prywatne, bez przekierowania portów, tylko dla właściciela.
Co robi dziś
- Rejestruje się do Twojego portfela i trzyma jedno wychodzące, szyfrowane połączenie z siecią, jak nod.
- Mierzy łącze do kotwic (ping, TCP, HTTP, DNS); wyniki zasilają tę samą mapę i raporty łącza, co inne nody.
- Paruje się z maksymalnie czterema telefonami i otwiera tunel v2 do prywatnych adresów w Twojej sieci.
Jeszcze nie: radio LoRa po USB, lokalny broker MQTT i bufor danych, lokalna historia czujników, mapa offline. To kolejne kroki na roadmapie.
Pliki
Wszystko, czego hub potrzebuje, leży w jego katalogu danych (./data przy Dockerze, pamięć dodatku przy Home Assistant):
| plik | co to |
|---|---|
identity.json | para kluczy hubu; usuń, żeby dostać nową tożsamość (nowy nod) |
pairing.json | klucze parowania zapisane przez telefony |
pin.txt | PIN, jeśli go nie ustawisz |