Wat is de beste optie voor installatie?
In het vorige deel hebben we nog gestaan bij omnikdataloggerproxy
. Inmiddels weet je of je dit script nodig hebt of niet. Belangrijk is dat we nu de data van de omvormer(s) tot onze beschikking hebben. Nu is het tijd voor een goede hosting van van omnikdatalogger
en evt. omnikdataloggerproxy
. Het verder uitwerken van de juiste configuratie kun je parallel doen! De opties die er zijn voor installatie zijn uitgebreid, maar het handigste is dat je een systeem hebt wat aan kan blijven staan om de logging te verwerken. Een laptop of pc gaat meestal uit en minder geschikt. Een NAS zoals Synology of QNAP kan een optische optie zijn, maar ook een Raspberry PI werkt het uitstekend. De volgende installatie vormen worden ondersteund:
- Uitpakken van een zip bestand en direct uitvoeren met Python3
- Installatie via PIP of PIP3 (en systemd)
- Installatie via Docker
- Installatie via AppDaemon in combinatie met Home Assistant en HACS
De eerste optie is prima voor testen, maar minder geschikt voor een definitieve opzet. De software wordt niet automatisch bijgewerkt. De optie kan eigenlijk altijd als Python3 is opgesteld. Op Windows blijft het wel even zoeken naar omniklogger.py
. Op Linux is eigenlijk geen probleem. Docker is een methode die vereist een wat meer geavanceerde kennis. De laatste optie is ideaal voor gebruikers van Home Assistant omdat de integratie, de installatie van updates en wordt weergegeven door. Nadeel is dat het even tijd kost om AppDaemon en HACS in te richten.
Uitpakken van een zip bestand en direct uitvoeren met Python3
Download de laatste release van de broncode:
- Voor
omnikdatalogger
: https://github.com/jbouwh/omnikdatalogger/releases
Pak het zip-bestand uit in de kaart waar je wilt dat de software draait. De scripts voor zich in de submap/apps/omnikdatalogger/
- Voor
omnikdataloggerproxy
: https://github.com/jbouwh/omnikdataloggerproxy/releases
Pak het zip-bestand uit in de map waar je wilt dat de software draait.De scripts voor zich in de submap/
Installatie via PIP of PIP3 (en systemd)
Om het script in de achtergrond te laten werken is er voor Linux een systeemconfiguratie bestand.
Zie https://github.com/jbouwh/omnikdatalogger/tree/main/scripts/systemd voor omnikdatalogger
.
Controleer voor de installatie eerst de service configuratie. Dit hoort te zijn ¯nstalleerd in /lib/systemd/system/
. Pas eventuele opstartparameters aan in dit bestand. Een sjabloon vind je hier /usr/local/share/omnikdatalogger/omnikdatalogger.service
.
Installeren ontmoet:
sudo pip3 installeer omnikdatalogger sudo systemctl schakel omnikdatalogger in
Begin ontmoet:
sudo systemctl start omnikdatalogger
Controleren:
sudo systemctl status omnikdatalogger
wanneer omnikdatalogger
op deze wijze is er¯nstalleerd zal de config.yaml
(en evt config.ini
) dit in de kaart geplaatst worden /etc/omnik/
. Hier zijn rootrechten nodig.
Voor omnikdataloggerproxy
een toepassing. Zie https://github.com/jbouwh/omnikdataloggerproxy voor meer informatie. Voor omnikdataloggerproxy
is het van belang om het serienummer van de omvormer op te geven. Een sjabloon vind je hier /usr/local/share/omnikdataloggerproxy/omnikdataloggerproxy.service
. Een instellingenbestand kan, maar is niet strikt noodzakelijk. Alle instellingen worden ook via de commandline ondersteund.
Let er wel op dat ook het NAT deel en de routering op de router nog moet worden geregeld anders komen het netwerk pakketjes niet aan. Zie ook https://jbsoft.nl/site/omnik-datalogger/logger-interception-using-omnik-datalogger/.
Docker
Voor omnikdatalogger
en omnikdataloggerproxy
zijn docker afbeeldingen beschikbaar. Deze zijn kant en klaar om te gebruiken.
omnikdataloggerproxy
kan met of zonder configuratiebestand worden gebruikt. Als je een configuratie bestand gebruikt dan zal omnikdataloggerproxy
standaard naar een configuratie bestand in de root map van de container zoeken. Voorbeeld:
docker run --rm -v ~/config.yaml:/config.yaml jbouwh/omnikdataloggerproxy
Zonder configuratie bestand kan ook door via de commandoregel de configuratie op te geven.
docker run --rm --serienummer NLDN123456789012 --listenaddress 0.0.0.0 --omniklogger 176.58.117.69 --omnikloggerport 10004
De Docker installatie zelf en het configureren van Docker laat ik hier buiten beschouwing.
Installatie via AppDaemon in combinatie met Home Assistant en HACS
Dit is alleen een oplossing voor de installatie van
omnikdatalogger
, niet vooromnikdataloggerproxy
!
Als je Home Assistant gebruikt kan je de inhoud van config.yaml
plaatsen binnen je bestaande bewaakt Home Assistant omgeving in /config/appdaemon/apps/apps.yaml
. Dit configuratie bestand deel je met alle AppDaemon apps die je draait. Gebruik de File editor plugin van SSH om de config aan te passagier.
Om AppDaemon te laten werken moet er een minimale configuratie staan in /config/appdaemon/appdaemon.yaml
. bv
appdaemon:
latitude: 0.0
longitude: 0.0
elevation: 0.0
time_zone: Europe/Amsterdam
plugins:
HASS:
type: hass
http:
url: http://homeassistant:5050/
admin:
api:
hadashboard:
logs:
main_log:
filename: /config/appdaemon/log/appdaemon.log
error_log:
filename: /config/appdaemon/log/appdaemon.err
Nu kun je de officiële AppDaemon 4 pluggen op Home Assistant installeren. Ook hier zit nog een stukje configuratie bij het tabje Configuratie
:
system_packages: [] python_packages: - cachetools - dsmr-parser init_commands: [] log_level: info
Dit zorgt voor alle afhankelijkheden worden automatisch geïnstalleerd als AppDaemon 4 wordt gestart.
De volgende stap is het installeren van HACS, de Home Assistant Community Store. HACS wordt gezien als een aangepaste integratie
en er is officieel geen ondersteuning vanuit Home Assitant.
Om HACS te installeren volg je de instructies op https://hacs.xyz.
Als alles is gelukt en Home Assistant is begonnen met je de beschikking over HACS binnen Home Assistant.
Binnen HACS kies je Automatisering
en klik op de + rechts onderin. Zoek naar Omnik datalogger
en selecteer deze kies INSTALLEERDEZE REPOSITORY IN HACS
.
Omdat de configuratie al op de juiste plaats staat zou HACS nu Omnik Data Logger moeten starten.
Ga verder naar: Slimme meter integratie (optioneel)