Installatie van Omnik Data Logger

Terug naar index

Wat is de beste optie voor installatie?

In het vorige deel hebben we stil 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 geschikte optie zijn, maar ook een Raspberry PI (ook de wat oudere modellen) 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 tweede optie kan eigenlijk altijd als Python3 is geïnstalleerd. Op Windows blijft het wel even zoeken naar omniklogger.py. Op Linux is dit eigenlijk geen probleem. Docker is een nette methode maat die vergt wat meer geavanceerde kennis. De laatste optie is ideaal voor gebruikers van Home Assistant omdat de integratie, de installatie van updates en wordt vergemakkelijkt 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:

Installatie via PIP of PIP3 (en systemd)

Om het script in de achtergrond te laten werken is er voor Linux een een systemd service configuratie bestand.

Zie https://github.com/jbouwh/omnikdatalogger/tree/main/scripts/systemd voor omnikdatalogger.

Controleer voor de installatie eerst het service configuratie bestand. Dit hoort te zijn geïnstalleerd in /lib/systemd/system/. Pas eventuele opstart parameters aan in dit bestand. Een template vind je hier /usr/local/share/omnikdatalogger/omnikdatalogger.service.

Installeren met:

sudo pip3 install omnikdatalogger
sudo systemctl enable omnikdatalogger

Starten met:

sudo systemctl start omnikdatalogger

Controleren:

sudo systemctl status omnikdatalogger

Wanneer omnikdatalogger op deze wijze is geïnstalleerd zal de config.yaml (en evt config.ini) dit worden geplaatst in de map /etc/omnik/. Hiervoor zijn root rechten nodig.

Voor omnikdataloggerproxy geldt een vergelijkbare aanpak. 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 template vind je hier /usr/local/share/omnikdataloggerproxy/omnikdataloggerproxy.service. Een settings (of config) file kan, maar is niet strict 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 de netwerk pakketjes niet aan. Zie hiervoor ook https://jbsoft.nl/site/omnik-datalogger/logger-interception-using-omnik-datalogger/.

Docker

Voor omnikdatalogger en omnikdataloggerproxy zijn docker images beschikbaar. Deze zijn kant en klaar te gebruiken.

omnikdataloggerproxy kan met of zonder configuratie file 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 command-line de configuratie op te geven.

docker run --rm --serialnumber 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 voor omnikdataloggerproxy!

Als je Home Assistant gebruikt kan je de inhoud van config.yaml plaatsen binnen je bestaande supervised 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 of SSH om de config aan te passen.

Om AppDaemon te laten werken moet er een minimale configuratie staan in /config/appdaemon/appdaemon.yaml. B.v.

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 de officiele AppDaemon 4 pluging op Home Assistant installeren. Ook hier zit nog een stukje configuratie bij het tabje Configuration:

system_packages: []
python_packages:
  - cachetools
  - dsmr-parser
init_commands: []
log_level: info

Dit zorgt er voor dat alle afhankelijkheden worden 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 custom integration en er is officieel geen support vanuit Home Assitant.

Om HACS te installeren volg je de instructies op https://hacs.xyz.

Als alles is gelukt en Home Assistant opnieuw is opgestart heb je de beschikking over HACS binnen Home Assistant.

Binnen HACS kies je Automatisering en klikt op de + rechts onderin. Zoek naar Omnik Data Logger en selecteer deze kies INSTALLEER DEZE 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)