Auteur: Security Brother

P1-monitor internet API

P1-monitor internet API

Deze handleiding geeft stap voor stap weer hoe de P1-monitor internet API geactiveerd kan worden.

Deze optie is beschikbaar in P1-monitor versie later dan 20210618 V1.3.1.

Deze API is een extra optie die niet nodig is voor normaal gebruik en staat daarom standaard ook uit.

Er zijn twee redenen om de API te activeren:

A: De toekomstige versies van Android en iOS apps zullen gebruik maken van de API als je buiten bereik bent van je Wifi netwerk. Dat wordt aangeven als de app uitkomt. Momenteel wordt daar nog Dropbox voor gebruikt.

B: Je wilt de P1 monitor data op afstand beschikbaar stellen aan andere gebruikers.

Hieronder staan de voorwaarden en stappen die je door moet lopen voor het activeren. De details van elke stap worden verderop in de tekst in detail toegelicht. Vrijwel alle instellingen kunnen via de P1-monitor gebruikersinterface worden ingesteld. Het lijkt wellicht ingewikkeld maar door de stappen consequent door te lopen is het relatief eenvoudig. Deze opzet gaat uit van een normale thuissituatie waar je de router van de Internet Service Provider (ISP) van bijvoorbeeld KPN of Ziggo gebruikt om te verbinden met het internet.

1: Instellen van een vast IP adres van de Raspberry Pi (Rpi)

2: Het aanmaken van een FQDN domeinnaam.

3: Het forwarden van poort 80 en 443 op je router.

4: Het aanmaken van het HTTPS certificaat.

5: Het aanmaken van API tokens.

6: Het testen van de API.

1: Instellen van een vast IP adres van de Raspberry Pi (Rpi)

Om de Rpi te kunnen bereiken over je thuisnetwerk moet het internetadres van je router via port fowarding naar het IP adres van de RPI worden gerouteerd. Dit kan alleen betrouwbaar als het IP adres van de Rpi vast staat ( een zogenaamd static IP adres) en niet wijzigt. Het vast instellen van de het IP adres van Rpi kan op twee manieren:

De voorkeur methode is static binding via de DHCP server van je router. Deze optie werkt altijd en voorkomt fouten in de configuratie. Zie hier een link van een voorbeeld voor KPN.

Als je de voorkeuroptie niet wil gebruiken dan kan je het IP adres via de P1 monitor instellen op de pagina config-netwerk.php pagina. Voordat je de IP adressen instelt moet je een aantal zaken controleren en weten.

Het(de) IP adres(sen) dat je wil gebruiken als je Rpi via een kabel is aangesloten (eth0) en/of Wifi (wlan0). Beide kunnen tegelijk worden gebruikt maar moeten uiteraard wel een andere IP adres zijn. Deze IP adressen moeten vrij zijn en bij voorkeur niet door de DHCP server worden gebruikt. Je kunt een vrij adres controleren door ping te gebruiken. Als de host geen antwoord geeft dan is het adres niet in gebruik.  En dan is dit IP adres dus te gebruiken oftewel vrij.

C:\Users\SecBro>ping 192.168.2.226
Pinging 192.168.2.226 with 32 bytes of data:
Reply from 192.168.2.28: Destination host unreachable.

Het IP adres van je router en je DNS server. In de meest gevallen is de thuis situatie is DNS server gelijk aan de router.  

In onderstaande voorbeeld wordt gebruikt gemaakt van de KPN router die werkt met 192.168.2.0/24 als netwerk range. In jouw geval kan het anders zijn. De P1 monitor geeft standaard in het grijs aan wat de adressen van de router/dns server zijn en kunnen gebruikt worden als indicatie.

Vast IP adres dialoog.
Bovenstaande afbeelding geeft het scherm weer als er geen vast IP adres is ingesteld.
Vast IP adres dialoog ingevuld.
Bovenstaande voorbeeld geeft aan hoe voor de bekabelde netwerkaansluiting IP 192.168.2.226 wordt gebruikt.

Waarschuwing: als je een fout maakt met de IP adressen dan kun effectief je zelf buiten sluiten omdat de Rpi niet meer bereikbaar is. Controleer de adressen dus extra voordat je deze opslaat. Een ander nadeel van deze optie is als je ISP een ander IP adres range gaat gebruiken of je wisselt van ISP dat je hoogst waarschijnlijk een nieuw IP adres range gaat gebruiken. Alle apparatuur die via DHCP een adres krijgen zullen werken maar de Rpi is niet meer te bereiken.

Kies de optie opslaan en dan zal het nieuwe IP adres worden ingesteld. Dit duurt normaal maar 10 a 15 seconden.

2: Het aanmaken van een FQDN domeinnaam.

Een FQDN ‘Fully Qualified Domain Name) is een volledig domeinnaam adres, inclusief hostnaam en een top level domein, zoals bijvoorbeeld mijn.p1-monitor.nl is de naam waar de API onder te vinden is op het Internet. Je kunt die zelf regelen als je al een FQDN hebt die gekoppeld is aan je Internet adres dat je van je ISP krijgt. Voorbeelden van dergelijk diensten zijn DuckDns, No-Ip, dynu.com. De P1-monitor heeft ondersteuning voor DuckDns ingebouwd.

Hoe je de FQDN ook regelt de naam moet ingesteld worden zoals hieronder aangeven. Ook als je een andere dienst gebruikt dan DuckDNS. Deze FQDN wordt voor het https TLS certificaat gebruikt.

Publieke domein naam.

Een DuckDns FQDN aanmaken

Ga naar https://www.duckdns.org/ en meld je aan via Google of op een van de andere manieren die worden aangeboden.

Vul in het veld domain de naam van je site. Het verstandig om hier een niet te herleiden naam te gebruiken. Dus niet P1-monitor.duckdns.org maar een abstracte naam zoals bijvoorbeeld kj2021m.duckdns.org. Klik op add domein. Doe deze actie vanuit je eigen netwerk dan wordt je publieke ISP IP adres meteen goed ingesteld.

Hiermee is je FQDN aangemaakt. Om te testen of deze ook correct werkt kun je het FQDN via ping uitproberen. Als alles goed gaat dan krijg je de volgende respons.

C:\Users\SecBro>ping kj2021m.duckdns.org

Pinging pt2109.duckdns.org [<je ISP IP>] with 32 bytes of data:
Reply from <je ISP IP>: bytes=32 time<1ms TTL=64
Reply from <je ISP IP>: bytes=32 time=1ms TTL=64
Reply from <je ISP IP>: bytes=32 time=1ms TTL=64
Reply from <je ISP IP>: bytes=32 time<1ms TTL=64

Ping statistics for <je ISP IP>:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 1ms, Average = 0ms

Het kan zijn dat dit niet meteen werkt en dat het even duurt voordat de DNS naam nog niet verwerkt is. Over het algemeen werkt dit binnen 5 minuten, maar het kan ook wel een uur duren. Als dit niet werkt dan moet dit probleem eerste opgelost worden voordat je verder gaat.

DuckDNS dialoog
DuckDns configuratie pagina.

Je ziet hier meerdere FQDN namen, dit is voor testwerk je hoeft maar een regel aan te maken.

Omdat je publieke ISP IP adres kan wijzigen moet DuckDNS op de hoogt gebracht worden. Dit gebeurt automatisch als in het token veld de token waarde uit het DuckDNS veld wordt overgenomen en de optie actief wordt geactiveerd. Eventueel kun je als een nieuwe ISP adres de periodieke automatische update forceren met de optie forceer update. Deze actie werkt alleen als de eerder genoemd ping test succesvol verliep.

DuckDNS dialoog voor auto update

3: Het forwarden van poort 80 en 443 op je router.

Dit is essentieel voor de correct werking en moet worden ingesteld in je router. Hieronder wordt het voorbeeld gegeven voor een KPN Experia V10A router. Voor andere routers moet je de handleiding raadplegen of zoeken op het Internet. Zoek op port forwarden.

Voorbeeld van de KPN router:

Deze routers zijn overigens ondingen. Als het niet lukt om in te loggen dan helpt een power cycle (spanning er af en weer op) meestal wel voor een dag of wat.

A: Login op je de V10A router

B: Kies op het tabblad network -> NAT -> Port mapping.

NAT router instelling

C: Kies de optie Add rule en maak twee regels voor poort 80 en 443 voor het vaste IP adres van je Rpi. In dit voorbeeld 192.168.2.226

Nat router instelling
NAT router instelling

Als alles goed is ingevoerd dan ziet de port mapping er als volgt uit.

NAT router regels

D: Log uit op de router.

In het voorbeeld wordt poort 443 gebruikt en dit kan. Maar het verstandiger een ander dan de standaard poort 443 te gebruiken. Apple App gebruikt standaard poort 22721 of je kunt een eigen poort kiezen als deze maar overeen komt met de App.  In de afbeelding wordt dan de “public port” 22721.

4: Het aanmaken van het HTTPS TLS certificaat.

Ga naar de pagina config-API.php en vul in het blok Internet API het email adres in en set de API via het Internet actief adres op aan. Het email adres is nodig om eventuele SSL/TLS certificaten te kunnen herstellen. Als dit ingevuld is kies dan voor opslaan. Na een paar minuten zal het scherm als hieronder uit zien als alles goed gaat.  Heb geduld het kan beste even duren!

Internet API dialoog

Je kunt het testen door in een browser je FQDN in te voeren. Als voorbeeld http://kj2021m.duckdns.org/ Als onderstaande melding komt dat werkt port forwarding en is de API bereikbaar.

NGINX 404 melding
NGINX 404 melding.

Met activeren van het Internet API worden de volgende acties uitgevoerd. De nginx webserver configuratie wordt aangepast. Er wordt een Lets Encrypt TLS certificaat gemaakt dat gekoppeld is aan de FQDN. Het certificaat wordt automatisch vernieuwd voordat het verloopt. Dit gebeurt dagelijks.

Waarschuwing: je kunt het API uitschakelen en daarmee wordt tevens het Lets Encrypt TLS certificaat verwijderd. Mocht je bedenken en de API weer willen activeren dat kan dat maximaal 7 keer per week. Daarna moet je een week wachten voordat Lets Encrypt het aanmaken van certificaat weer toestaat voor die FQDN. Als je het binnen de 7 dagen stuk hebt gemaakt en niet kunt wachten dan moet je een nieuwe FQDN aanmaken en kan het proces weer opnieuw worden uitgevoerd. Let op als je dat te vaak doet dan kan Lets Encrypt je ISP IP adres blokkeren. Waarmee je deze optie niet meer te gebruiken is.

Testen van het TLS certificaat. Je kunt via ssllabs ( https://www.ssllabs.com/ssltest/index.html) de url invoeren. In dit voorbeeld kj2021m.duckdns.org. Na een paar minuten krijg je dan de veiligheid score.

SSL Labs TSL test resultaat
SSL LABS score

5: Het aanmaken van API tokens.

De API is beveiligt met toegang tokens. Een token is een soort wachtwoord voor API toegang. Je kunt een token toevoegen over verwijderen op de API config-API.php pagina. Zoals hieronder weergeven

API authenticatie tokens.
Api tokens aanmaken en verwijderen.

Als de nieuwe versie van de app uitkomt dan moet het token in de app worden ingevoerd.

6: Het testen van de API.

Je kunt de werking van de app ook testen met tools zoals curl. Hieronder een voorbeeld van een test met het token F12A05A9CEBA4D8E3AD6 het resultaat geeft aan hoelang de Rpi actief is.

curl -X GET -H "X-APIkey: F12A05A9CEBA4D8E3AD6" https:// kj2021m.duckdns.org /api/v1/status/19
[[19, "23:12:58", "Tijd verstreken sinds de laatste herstart:", 0]]

Als je meerder gebruikers van de API wil toepassen dat is het beste om voor elke gebruiker een eigen token te maken.  Mocht je de toegang dan willen ontzeggen dan kun je dat specifieke token verwijderen.  Minder dan 100 tokens hebben geen effect op de snelheid van de API.

Hiermee is de API actief en kan worden gebruikt voor de app of andere toepassingen.

Poort 80

Poort 80 moet worden ge-forward zodat Lets Encrypt automatisch het certificaat kan vernieuwen. Als je na het succesvol opzetten van een certificaat de poort dicht zet dan zal verloop het certificaat verlopen en niet meer werken.  Idealiter zou deze poort dicht staan maar dit is dus niet mogelijk. En omdat de forwarden op de router plaats vindt en niet op de Rpi kan de P1-monitor software de instellingen niet beïnvloeden.

P1-monitor download 202408 V2.4.2

P1-monitor download 202408 V2.4.2

P1 monitor is op de Raspberry Rpi3 en Rpi4 gebaseerde software om je slimme meter uit te lezen. Voor een meer uitgebreide beschrijving zie hier.

Het wordt sterk aanbevolen deze upgrade uit te voeren ook al zijn de wijzigingen niet relevant voor hoe je de P1 monitor gebruikt.

Upgrade of eerst installatie.

De software verkrijgen en installatie.

De P1 monitor software wordt geleverd als Raspberry Pi 3B/4 SDHC image die hieronder te downloaden is. De Rpi 5 wordt nog niet ondersteund. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.  Zie hieronder hoe je dat daarna de rest van de ruimte op de SDHC card kunt gebruiken met raspi-config tool.

BELANGRIJK 1

De Upgrade Assistent is vervangen voor Upgrade Aide. De upgrade assistent wordt niet meer ondersteund. Maak altijd eerst een manuele export als alternatief als de automatische upgrade faalt.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de Upgrade Aide.

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

  1. download het P1 monitor image file uit de download overzicht hieronder.
  2. pak het zip file uit en lees de bijlagen.
  3. kopieer het p1monYYYYMMDD-NN.NN-X.img file via de USB tool naar de SDHC card van minimaal 8GB (bij voorkeur een 32GB of 16GB). Let op! data op de card wordt overschreven en is niet meer te herstellen. (had ik al gehad over de export van data).
  4. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen. Het vergroten van het filesysteem gebeurt automatische als je de UpgradeAide gebruikt.
  5. plaats de SDHC card in de Pi.
  6. start de Pi, netwerk en P1 kabel aangesloten.
  7. Importeer de data, als je al eerdere versie hebt gebruikt.

FAQ

Mocht je vragen hebben kijk dan eerst in de FAQ of bezoek het forum.p1mon.nl

Problemen oplossen.

Image past niet op de SDHC card:

  1. Je kunt proberen de SDHC card opnieuw te formatteren met een dergelijk tool als de SD formatter.
  2. Installeer het image op een groter SDHC card. Het ongebruikte deel van de SDHC card kun je vrijgeven via de raspi-config tool met de optie Expand Filesystem.
  3. wis de browser cache als je layout problemen hebt.

Standaard wachtwoord besturingssysteem:

  1. Het standaard account en wachtwoord om in te kunnen loggen met SSH is p1mon met het wachtwoord  verandermij.
  2. Het advies is om dit wachtwoord na installatie aan te passen.

Juridisch spul en zo

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en Javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst of gebruik de upgrade aide.

DOWNLOAD

SDHC images

P1 monitor wordt ondersteunt op de Raspberry Pi 3B, Pi3 B+ of Pi4 (vanaf versie 0.9.11) de Rpi 5 wordt nog niet ondersteund.
Een Pi 2 kan werken maar geen garanties.  Een Pi Zero is nooit getest. Van de Pi 1 is bekend dat deze fouten geeft en verloop van tijd stopt / crasht door een gebrek aan ram geheugen. Er is minimaal 1GB aan ram nodig voor alle mogelijke functies!

Bugs en andere opgeloste fouten:

  • /boot/config.txt was niet meer compleet waardoor een aantal zaken uit vorige versies niet meer werkte.  Fan’s worden weer ondersteund en bluetooth staat uit en er wordt iets minder geheugen wordt gebruikt.
  • SOCAT gaf een aantal niet belangrijke waarschuwingen, aangepast.
  • Dropbox bibliotheek aangepast naar versie 12.0.2, dit is noodzakelijk om Dropbox te kunnen blijven gebruiken. De oude versies lager dan 12 wordt vanaf 1 januari 2026 niet meer ondersteund.
  • De watermeter tabel had een probleem in de tabel structuur, dit wordt automatisch opgelost bij het starten van de P1 monitor maar kan het opstarten eenmalig ongeveer 10 seconden trager maken.
  • Tarieven scherm gaf “vaste tarieven elektriciteit” weer i.p.v. “vaste tarieven gas”

Nieuw:

  • P1TcpTestServer toegevoegd voor het testen van socat. Dit script is niet nodig voor normale werking
  • Fail save voor corrupte data in stats.php toegevoegd. Corrupte data wordt nu onderdrukt, dit zou zelden nodig moeten zijn en duidt op een corrupte database.
  • -De ramdisk van 100MB naar 120MB vergroot om zodat er meer ruimte is voor P1Databaseoptimizer en andere processen.
  • Het netto verschil tussen fase geleverd en verbruikt is toegevoegd aan de main schermen.
  • Wissen van oude (achter geleven Dropbox bestanden), alle bestanden ouder dan twee uur worden uit de /p1mon/mnt/ramdisk/dbx folder gewist.
  • Logspacer cleaner van 70% vol naar 50% vol gewijzigd.
  • P1Databaseoptimizer toegevoegd, deze tool kan helpen om corrupte of vervuilde databases te herstellen.  Deze tool is niet nodig voor de normale werking maar kan gebruikt worden om sommige database problemen te verhelpen of de schade te beperken. De best optie is om automatische back-up’s te maken.

Let op wachtwoorden zijn altijd met HOOFDLETTERS!

Als je een bijdrage wil leveren om de kosten te dekken van de website of je wil je waardering te tonen dan kun je hier een donatie doen.

Klik op de een van twee knoppen en voer een bedrag naar keuze in. De voorkeur is om Bung te gebruiken omdat Paypal transactiekosten in rekening brengt.

Vragen, suggesties en bugs melden

BUGS

De watermeter kostenberekening werkt niet correct en sftp/ftps werkte niet correct met andere dan de standaardpoorten. Na het uitvoeren van de patch moet de P1-monitor worden herstart! Doe dit via het menu of via de command line via.

cd /p1mon/scripts
./p1mon.sh restart

P1-monitor download 202405 V2.4.1

P1-monitor download 202405 V2.4.1

P1 monitor is op de Raspberry Rpi3 en Rpi4 gebaseerde software om je slimme meter uit te lezen. Voor een meer uitgebreide beschrijving zie hier.

Het wordt sterk aanbevolen deze upgrade uit te voeren ook al zijn de wijzigingen niet relevant voor hoe je de P1 monitor gebruikt.

Upgrade of eerst installatie.

De software verkrijgen en installatie.

De P1 monitor software wordt geleverd als Raspberry Pi 3B/4 SDHC image die hieronder te downloaden is. De Rpi 5 wordt nog niet ondersteund. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.  Zie hieronder hoe je dat daarna de rest van de ruimte op de SDHC card kunt gebruiken met raspi-config tool.

BELANGRIJK 1

De Upgrade Assistent is vervangen voor Upgrade Aide. De upgrade assistent wordt niet meer ondersteund. Maak altijd eerst een manuele export als alternatief als de automatische upgrade faalt.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de Upgrade Aide.

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

  1. download het P1 monitor image file uit de download overzicht hieronder.
  2. pak het zip file uit en lees de bijlagen.
  3. kopieer het p1monYYYYMMDD-NN.NN-X.img file via de USB tool naar de SDHC card van minimaal 8GB (bij voorkeur een 32GB of 16GB). Let op! data op de card wordt overschreven en is niet meer te herstellen. (had ik al gehad over de export van data).
  4. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen. Het vergroten van het filesysteem gebeurt automatische als je de UpgradeAide gebruikt.
  5. plaats de SDHC card in de Pi.
  6. start de Pi, netwerk en P1 kabel aangesloten.
  7. Importeer de data, als je al eerdere versie hebt gebruikt.

FAQ

Mocht je vragen hebben kijk dan eerst in de FAQ of bezoek het forum.p1mon.nl

Problemen oplossen.

Image past niet op de SDHC card:

  1. Je kunt proberen de SDHC card opnieuw te formatteren met een dergelijk tool als de SD formatter.
  2. Installeer het image op een groter SDHC card. Het ongebruikte deel van de SDHC card kun je vrijgeven via de raspi-config tool met de optie Expand Filesystem.
  3. wis de browser cache als je layout problemen hebt.

Standaard wachtwoord besturingssysteem:

  1. Het standaard account en wachtwoord om in te kunnen loggen met SSH is p1mon met het wachtwoord  verandermij.
  2. Het advies is om dit wachtwoord na installatie aan te passen.

Juridisch spul en zo

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en Javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst of gebruik de upgrade aide.

DOWNLOAD

SDHC images

P1 monitor wordt ondersteunt op de Raspberry Pi 3B, Pi3 B+ of Pi4 (vanaf versie 0.9.11) de Rpi 5 wordt nog niet ondersteund.
Een Pi 2 kan werken maar geen garanties.  Een Pi Zero is nooit getest. Van de Pi 1 is bekend dat deze fouten geeft en verloop van tijd stopt / crasht door een gebrek aan ram geheugen. Er is minimaal 1GB aan ram nodig voor alle mogelijke functies!

Bugs en andere opgeloste fouten:

  • Labels van g_verbruik.php, e_levering.php en e_verbruik.php waren niet in de juiste kleur.
  • Fase-historie.php werd niet automatische aangepast (verschoof niet op het scherm).
  • Fase status gaf in de tekst voor L3 L2 weer voor stroom en spanning (status id’s 102 en 105).
  • Bugje in p1_port_shared_lib.py waar de tekst van de exceptie niet doorgeven werd. Met dank aan Aad B.
  • Ftp backup kon niet worden uitgeschakeld als Drobox back-up ook actief was. Met dank aan Aad B.
  • Diverse pagina’s vertaald zodat deze nu ook Engels en Frans weergegeven worden. Alle pagina’s zouden nu in het NL,EN en FR moeten werken. Met uitzondering van de resultaat van resets e.d. die is nog in het Nederlands maar wordt bij het onderhoud van de programma’s aangepast.
  • Diverse fouten uit verschillende PHP pagina’s gehaald die onnodige maar ongevaarlijke log meldingen geven.

Nieuw:

  • Locale en_US.UTF-8 toegevoegd, dit hoeft om de P1 monitor goed te laten functioren niet maar is gedaan op verzoek van een gebruiker.
  • Maximale gasverbruik per dag is op de g_verbruik.php pagina is nu in te stellen.
  • Rate-limiting op de internet API aangepast. Dit heeft alleen effect als de API wordt gebruikt voor de iOS app of andere externe gebruikers.
  • Upgrade van diverse Python libaries met name MQTT lib paho.mqtt is aangepast naar versie 2.0 waardoor P1MQTT aangepast moest worden.

Let op wachtwoorden zijn altijd met HOOFDLETTERS!

Als je een bijdrage wil leveren om de kosten te dekken van de website of je wil je waardering te tonen dan kun je hier een donatie doen.

Klik op de een van twee knoppen en voer een bedrag naar keuze in. De voorkeur is om Bung te gebruiken omdat Paypal transactiekosten in rekening brengt.

Vragen, suggesties en bugs melden

BUGS

P1-monitor download 202310 V2.4.0

P1-monitor download 202310 V2.4.0

P1 monitor is op de Raspberry Rpi3 en Rpi4 gebaseerde software om je slimme meter uit te lezen. Voor een meer uitgebreide beschrijving zie hier.

Het wordt sterk aanbevolen deze upgrade uit te voeren ook al zijn de wijzigingen niet relevant voor hoe je de P1 monitor gebruikt.

Upgrade of eerst installatie.

De software verkrijgen en installatie.

De P1 monitor software wordt geleverd als Raspberry Pi 3B/4 SDHC image die hieronder te downloaden is. De Rpi 5 wordt nog niet ondersteund. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.  Zie hieronder hoe je dat daarna de rest van de ruimte op de SDHC card kunt gebruiken met raspi-config tool.

BELANGRIJK 1

De Upgrade Assistent is vervangen voor Upgrade Aide. De upgrade assistent wordt niet meer ondersteund. Maak altijd eerst een manuele export als alternatief als de automatische upgrade faalt.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de Upgrade Aide.

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

  1. download het P1 monitor image file uit de download overzicht hieronder.
  2. pak het zip file uit en lees de bijlagen.
  3. kopieer het p1monYYYYMMDD-NN.NN-X.img file via de USB tool naar de SDHC card van minimaal 8GB (bij voorkeur een 32GB of 16GB). Let op! data op de card wordt overschreven en is niet meer te herstellen. (had ik al gehad over de export van data).
  4. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen. Het vergroten van het filesysteem gebeurt automatische als je de UpgradeAide gebruikt.
  5. plaats de SDHC card in de Pi.
  6. start de Pi, netwerk en P1 kabel aangesloten.
  7. Importeer de data, als je al eerdere versie hebt gebruikt.

FAQ

Mocht je vragen hebben kijk dan eerst in de FAQ of bezoek het forum.p1mon.nl

Problemen oplossen.

Image past niet op de SDHC card:

  1. Je kunt proberen de SDHC card opnieuw te formatteren met een dergelijk tool als de SD formatter.
  2. Installeer het image op een groter SDHC card. Het ongebruikte deel van de SDHC card kun je vrijgeven via de raspi-config tool met de optie Expand Filesystem.
  3. wis de browser cache als je layout problemen hebt.

Standaard wachtwoord besturingssysteem:

  1. Het standaard account en wachtwoord om in te kunnen loggen met SSH is p1mon met het wachtwoord  verandermij.
  2. Het advies is om dit wachtwoord na installatie aan te passen.

Juridisch spul en zo

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en Javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst of gebruik de upgrade aide.

DOWNLOAD

SDHC images

P1 monitor wordt ondersteunt op de Raspberry Pi 3B, Pi3 B+ of Pi4 (vanaf versie 0.9.11) de Rpi 5 wordt niet ondersteund.
Een Pi 2 kan werken maar geen garanties.  Een Pi Zero is nooit getest. Van de Pi 1 is bekend dat deze fouten geeft en verloop van tijd stopt / crasht door een gebrek aan ram geheugen. Er is minimaal 1GB aan ram nodig voor alle mogelijke functies!

Bugs en andere opgeloste fouten:

  • Notificatie e-mail van een te hoge spanning werkte wel als de grens werd overschreden maar er werd geen e-mail gestuurd als de spanning onder de grenswaarde zakte.
  • Logging van P1Notifier.py bevatte een module naam fout, dit geeft geen problemen maar mogelijk verwarring bij het lezen van de logging.
  • Alle scripts aangepast en kunnen nu rechtstreeks worden aangeroepen zonder pythonlaunch.sh. Bijvoorbeeld P1Db ipv P1Db.py.
  • De maand piekwaarde kWh in main-1/2 gaf de verkeerde datum aan.
  • Python en OS upgrades uitgevoerd.
  • Bij de weerinformatie kon een stad niet worden ingevoerd met een enkele aanhalingsteken in de naam zoals Braine-l’Alleud.
  • Fase actueel gaf geen Engelse of Franse tekst weer in de meters.
  • stats-h-gas.php gaf bij de zoom knop 12 jaar aan i.p.v. van 12 uur.
  • P1DbCopy aanpassingen waardoor deze meer informatie geeft.
  • SolarEdge fabrieksinstellingen werkte niet.
  • config-netwerk layout probleem wifi wachtwoord en SSID opgelost.
  • P1 poort e-mail notificatie bevatte een bug waardoor alleen een e-mail werd gestuurd als de fase notificatie actief was.
  • Timeout van e-mail berichten werd niet gebruikt bij notificaties.
  • Op een iPad verdween de legenda als daar op geklikt werd.

Nieuw:

  • Actuele fase informatie is nu zowel horizontaal als verticaal weer te geven. Te activeren door op het tweerichting pijltje te klikken in de knop. Pagina fase-a.php is vervallen.
  • config-systeem.php laat nu ook de versie informatie zien, dit is dezelfde informatie die op info.php te vinden is.
  • Diverse UI pagina’s aangepast zodat ze nu Nederlands, Engelse en Frans volledige weergeven, er moet nog wat werk gebeuren bij een aantal configuratie pagina’s.
  • p1mon.sh (start/stop script) aangepast zodat bij een stop de RAM data naar disk wordt gekopieerd om zeker te weten dat er geen open bestanden worden gekopieerd.
  • API heeft nu drie processen i.p.v van twee zodat UI schermen met meerdere bronnen sneller reageren.
  • Er werd onterecht veel geheugen naar de swap space gezet, de “swappiness” verlaagt via /etc/sysctl.conf door de regel vm.swappiness = 5 toe te voegen.
  • DuckDns geeft nu in het log aan welke DNS naam wordt gebruikt.
  • Notificatie is uitgebreid, er kunnen nu notificaties worden verzonden als het geleverde of verbruikte vermogen onder of boven een ingestelde grenswaarde komt. De meetwaarde bestaat uit de gemiddelde Watt waarde van de huidige minuut. De meting gebeurd met een interval van 30 seconden. De notificaties hebben een wachttijd van 60 seconden tussen het eerste notificatie en voordat dezelfde notificatie weer wordt verzonden. Oude code voor de UpgradeAssistent verwijderd in P1Watchdog.

Let op wachtwoorden zijn altijd met HOOFDLETTERS!

Als je een bijdrage wil leveren om de kosten te dekken van de website of je wil je waardering te tonen dan kun je hier een donatie doen.

Klik op de een van twee knoppen en voer een bedrag naar keuze in. De voorkeur is om Bung te gebruiken omdat Paypal transactiekosten in rekening brengt.

Vragen, suggesties en bugs melden

BUGS

Bij gebruik van SOCAT loopt de P1 monitor vast na een reboot. Met deze patch wordt dit verholpen. Pas de patch toe voordat er een reboot wordt uitgevoerd. Mocht het probleem al zijn opgetreden dan kan het worden opgelost door op de Rpi in te loggen de volgende commando’s uit te voeren.  

cd /p1mon/mnt/ramdisk
sudo chown p1mon:p1mon *.db
P1-monitor download 202307 V2.3.0

P1-monitor download 202307 V2.3.0

P1 monitor is op de Raspberry Rpi3 en Rpi4 gebaseerde software om je slimme meter uit te lezen. Voor een meer uitgebreide beschrijving zie hier.

Het wordt sterk aanbevolen deze upgrade uit te voeren ook al zijn de wijzigingen niet relevant voor hoe je de P1 monitor gebruikt.

Upgrade of eerst installatie.

De software verkrijgen en installatie.

De P1 monitor software wordt geleverd als Raspberry Pi 3B/4 SDHC image die hieronder te downloaden is. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.  Zie hieronder hoe je dat daarna de rest van de ruimte op de SDHC card kunt gebruiken met raspi-config tool.

BELANGRIJK 1

De Upgrade Assistent is vervangen voor Upgrade Aide. De upgrade assistent wordt niet meer ondersteund. Maak altijd eerst een manuele export als alternatief als de automatische upgrade faalt.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de Upgrade Aide.

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

  1. download het P1 monitor image file uit de download overzicht hieronder.
  2. pak het zip file uit en lees de bijlagen.
  3. kopieer het p1monYYYYMMDD-NN.NN-X.img file via de USB tool naar de SDHC card van minimaal 8GB (bij voorkeur een 32GB of 16GB). Let op! data op de card wordt overschreven en is niet meer te herstellen. (had ik al gehad over de export van data).
  4. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen. Het vergroten van het filesysteem gebeurt automatische als je de UpgradeAide gebruikt.
  5. plaats de SDHC card in de Pi.
  6. start de Pi, netwerk en P1 kabel aangesloten.
  7. Importeer de data, als je al eerdere versie hebt gebruikt.

FAQ

Mocht je vragen hebben kijk dan eerst in de FAQ of bezoek het forum.p1mon.nl

Problemen oplossen.

Image past niet op de SDHC card:

  1. Je kunt proberen de SDHC card opnieuw te formatteren met een dergelijk tool als de SD formatter.
  2. Installeer het image op een groter SDHC card. Het ongebruikte deel van de SDHC card kun je vrijgeven via de raspi-config tool met de optie Expand Filesystem.
  3. wis de browser cache als je layout problemen hebt.

Standaard wachtwoord besturingssysteem:

  1. Het standaard account en wachtwoord om in te kunnen loggen met SSH is p1mon met het wachtwoord  verandermij.
  2. Het advies is om dit wachtwoord na installatie aan te passen.

Juridisch spul en zo

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en Javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst of gebruik de upgrade aide.

DOWNLOAD

SDHC images

P1 monitor wordt alleen ondersteunt op de Raspberry Pi 3B, Pi3 B+ of Pi4 (vanaf versie 0.9.11).
Een Pi 2 kan werken maar geen garanties.  Een Pi Zero is nooit getest. Van de Pi 1 is bekend dat deze fouten geeft en verloop van tijd stopt / crasht door een gebrek aan ram geheugen. Er is minimaal 1GB aan ram nodig voor alle mogelijke functies!

Bugs en andere opgeloste fouten:

  • Upgrade naar Highcharts-Stock-11.1.0, diverse schermen aangepast aan de laatste standaarden. Veranderingen zijn afgeronde grafieken, legenda wordt nu doorgestreept en fonts ‘s zijn daar waar mogelijk aangepast en grotere geworden om de leesbaarheid te verhogen.
  • Upgrade Python bibliotheken.
  • P1SqlExport robuuster gemaakt, bij een corrupt database bestand wordt een melding gegeven maar niet gestopt. Je verliest data maar die was je toch al verloren zonder dat de export stopt.
  • I2C en SPI waren niet geactiveerd door dubbel probleem. Het /boot filesysteem is normaal readonly raspi-conf gaf niet aan dat /boot/config.txt niet te beschrijven was. config.txt is aangepast met de volgende regels: “dtparam=spi=on dtparam=i2c_arm=on”
  • Deze versie van het Raspberry heeft een bug dat libreadline.so.7 onbreekt. Dit is opgelost met door een link te maken in /usr/lib/arm-linux-gnueabihf met “sudo ln -s libreadline.so.8 libreadline.so.7”
  • Fase-a.php aangepast waardoor deze in totaal op een iPad past en de kleuren van Ampère kleuren nu mee met de kleuren van levering en verbruik.
  • P1WatermeterV2, P1WatermeterV2CounterSet, P1Weather aangepast en kunnen nu rechtstreeks worden aangeroepen zonder pythonlaunch.sh.
  • De watermeter verwijderden de minuten records alleen bij het opstarten en niet periodiek als de records ouder waren dan 31 dagen, hierdoor kan de ramdisk vol lopen als de Rpi of de P1monitor maanden niet was herstart. Als je geen upgrade uitvoert en de watermeter optie gebruikt en de database belasting op de info pagina is groter dan 70% dan wordt een herstart aanbevolen.
  • Scroll schermen van de import en UpgradeAide bleven niet op de scroll positie na het uitvoeren van deze acties.
  • MQTT financiële gegevens werden niet meer aangepast na de initiële start.
  • Debug melding werd getoond als de stad ID werd gebruikt bij de weerconfiguratie parameter.
  • Sommige tekst fouten in Franse teksten voor de tooltip van main-1 en main-2 verwijderd.
  • Diverse pagina’s aangepast zodat deze Nederlands, Engels en Frans ondersteunen. Dit is veel werk en wordt in de toekomst verder doorgevoerd. main-1.php, main-2.php en de gas schermen zijn nu volledig meertalig.

Nieuw:

  • Veel werk dat je niet ziet en maar beperkt merkt. Er is code is aangepast waardoor deze eenvoudiger is om te onderhouden en aan te passen.
  • Samba server wordt niet meer standaard gestart als het delen van bestanden uit staat. Dit verminderd geheugengebruik en de Rpi start een fractie sneller op.
  • Bij het stoppen van de P1 monitor wordt er 10 seconden gewacht om zeker te zijn dat de data van ram naar disk is gekopieerd.
  • Bij het starten van de P1SerReader wordt gecontroleerd of de e_serial niet corrupt is en vervangen indien wel. Dit geeft normaal gesproken geen data verlies. e_serial is een buffer database.
  • Standaardisatie van bewaartermijnen voor alle type data, minuten: 31 dagen, uren: 1096 dagen. Voor de dagen, maanden en jaren geldt onbeperkt. Dit wordt over meerdere versies uitgevoerd in deze versie zijn watermetingen, gas en Kwh verbruik/geleverd aangepast.
  • P1UpgradeAssist.py is al wat langer niet meer in gebruik en wordt nu niet meer ondersteund, mocht je van een versie ouder dan 1.5.0 gebruiken dan wordt geadviseerd de export/import optie te gebruiken. Versie 1.5.0. biedt de vervanger UpgradeAide.
  • Vanaf versie 1.8.0 is de watermeter database aangepast, als je een oudere versie dan 1.8.0 gebruikt doe dan eerste een upgrade naar 2.2.0 en daarna naar deze versie. Als je de watermeter niet gebruikt dan kun je een upgrade uitvoeren zonder verlies van data.
  • Fase informatie kW in main-1 en main-2 hebben nu drie decimalen (cijfers) achter de komma. Wat eerst bijvoorbeeld eerst 2.32 was is nu 2.230 geworden.
  • Weer informatie wordt nu via https opgehaald en niet meer via http, dit beschermt de API key.

Let op wachtwoorden zijn altijd met HOOFDLETTERS!

Als je een bijdrage wil leveren om de kosten te dekken van de website of je wil je waardering te tonen dan kun je hier een donatie doen.

Klik op de een van twee knoppen en voer een bedrag naar keuze in. De voorkeur is om Bung te gebruiken omdat Paypal transactiekosten in rekening brengt.

Vragen, suggesties en bugs melden

BUGS

De notificatie e-mail van een te hoge spanning werkt als de grens wordt overschreden maar er wordt geen mail gestuurd als de spanning onder de grenswaarde zakt. Bij de volgende overschrijding wordt wel weer een mail gestuurd.

De maand piekwaarde kWh in main-1/2 geeft een verkeerde datum aan.

P1-monitor download 202304 V2.2.0

P1-monitor download 202304 V2.2.0

P1 monitor is op de Raspberry Rpi3 en Rpi4 gebaseerde software om je slimme meter uit te lezen. Voor een meer uitgebreide beschrijving zie hier.

Het wordt sterk aanbevolen deze upgrade uit te voeren ook al zijn de wijzigingen niet relevant voor hoe je de P1 monitor gebruikt.

Upgrade of eerst installatie.

De software verkrijgen en installatie.

De P1 monitor software wordt geleverd als Raspberry Pi 3B/4 SDHC image die hieronder te downloaden is. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.  Zie hieronder hoe je dat daarna de rest van de ruimte op de SDHC card kunt gebruiken met raspi-config tool.

BELANGRIJK 1

De Upgrade Assistent is vervangen voor Upgrade Aide. De upgrade assistent wordt niet meer ondersteund. Maak altijd eerst een manuele export als alternatief  als de automatische upgrade faalt.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de Upgrade Aide.

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

  1. download het P1 monitor image file uit de download overzicht hieronder.
  2. pak het zip file uit en lees de bijlagen.
  3. kopieer het p1monYYYYMMDD-NN.NN-X.img file via de USB tool naar de SDHC card van minimaal 8GB (bij voorkeur een 32GB of 16GB). Let op! data op de card wordt overschreven en is niet meer te herstellen. (had ik al gehad over de export van data).
  4. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen. Het vergroten van het filesysteem gebeurt automatische als je de UpgradeAide gebruikt.
  5. plaats de SDHC card in de Pi.
  6. start de Pi, netwerk en P1 kabel aangesloten.
  7. Importeer de data, als je al eerdere versie hebt gebruikt.

FAQ

Mocht je vragen hebben kijk dan eerst in de FAQ of bezoek het forum.p1mon.nl

Problemen oplossen.

Image past niet op de SDHC card:

  1. Je kunt proberen de SDHC card opnieuw te formatteren met een dergelijk tool als de SD formatter.
  2. Installeer het image op een groter SDHC card. Het ongebruikte deel van de SDHC card kun je vrijgeven via de raspi-config tool met de optie Expand Filesystem.
  3. wis de browser cache als je layout problemen hebt.

Standaard wachtwoord besturingssysteem:

  1. Het standaard account en wachtwoord om in te kunnen loggen met SSH is p1mon met het wachtwoord  verandermij.
  2. Het advies is om dit wachtwoord na installatie aan te passen.

Juridisch spul en zo

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en Javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst of gebruik de upgrade aide.

DOWNLOAD

SDHC images

P1 monitor wordt alleen ondersteunt op de Raspberry Pi 3B, Pi3 B+ of Pi4 (vanaf versie 0.9.11).
Een Pi 2 kan werken maar geen garanties.  Een Pi Zero is nooit getest. Van de Pi 1 is bekend dat deze fouten geeft en verloop van tijd stopt / crasht door een gebrek aan ram geheugen. Er is minimaal 1GB aan ram nodig voor alle mogelijke functies!

Bugs en andere opgeloste fouten:

  • Een upgrade van Nginx gaf een probleem omdat de /run/php/sessions folder niet werd aangemaakt. Deze folder werd onterecht door /lib/systemd/system/nginx.service aangemaakt. Deze ontwerpfout is opgelost door de folder creatie door p1mon.sh laten uitvoeren. Dit probleem ontstaat alleen als je zelf een apt-get upgrade doet. Het zelf upgraden wordt niet aanbevolen, het is normaal niet nodig of gewenst.
  • Onderhoud aan de api /api/v1/financial uitgevoerd.
  • Upgrade naar OS kernel 6.1.21.
  • Upgrade naar PHP 7.4.
  • Upgrade naar Highcharts-Stock-10.3.3.
  • Upgrade Python libs.
  • P1SerTester, P1Watchdog, P1SqlExport, P1SqlImport, P1Db, P1DynamicPrices, P1SerReader aangepast en kan nu rechtstreeks worden aangeroepen zonder pythonlaunch.sh.
  • Vrijwel alle html/php pagina’s aangepast aan de nieuwe HighChart library en check gedaan op HTML compatibiliteit.
  • Fase pagina actueel is aangepast, de voltage wordt nu als “solid gauge” weergegeven met een kleur overgang waarbij als boven(253 V)  of ondergrens ( 207V) wordt overschreden rood kleurt.
  • De systeem reboot of halt(stop) werkte niet of onbetrouwbaar. Mocht dit niet werken log dan in op de Rpi en geef voor het stoppen “sudo halt” in of voor het herstarten “sudo reboot” in.
  • Help tekst hour api van powergas gaf minuten aan in plaats van hour.
  • “verwarming IN alternatief” in de UI scherm was met hoofdletters geschreven.
  • Franse tekst werd niet correct weergegeven in het ui configuratie scherm.
  • Systeem dump liet onterecht het patch scherm zien.
  • De export kon vastlopen als een database bestand niet de juiste rechten had.

Nieuw:

  • SPI en IC2 geactiveerd, dit is niet nodig voor de P1 monitor maar op verzoek van gebruikers zijn die opties geactiveerd.
  • /api/v1/financial/dynamic_tariff toegevoegd voor de energyzero flexibele gas en kWh tarieven.
  • Pagina Dynamische tarieven toegevoegd aan de kosten overzichten.
  • Export van Dynamische tarieven toegevoegd.
  • main-1 en main-2 laten piek kW waarde zien als de slimme meter de juiste informatie levert. De data is te vinden in de status api op de indexen 32 tot 35. Je kunt dit activeren via het configuratie menu display met de optie “verbergen van kW piek gegevens”.

Security patches en upgrade van diverse software bibliotheken uitgevoerd tot 2023-04-22

Let op wachtwoorden zijn altijd met HOOFDLETTERS!

Als je een bijdrage wil leveren om de kosten te dekken van de website of je wil je waardering te tonen dan kun je hier een donatie doen.

Klik op de een van twee knoppen en voer een bedrag naar keuze in. De voorkeur is om Bung te gebruiken omdat Paypal transactiekosten in rekening brengt.

Vragen, suggesties en bugs melden

BUGS

Een aantal schakelaars werkte niet goed in het configuratiescherm voor het scherm. Patch 1 lost dit op. Download het bestand. Het is een zip bestand dat direct gebruikt kan worden. Open de configuratie pagina “systeem” en klik de optie patch bestand uploaden aan. Na een minuut of twee zullen de aanpassingen doorgevoerd zijn. een herstart of reboot is niet nodig.

Patch 2 bevat ook de patch 1 aanpassingen patch 1 hoeft niet te worden toegepast. Patch 2 verbetert de export functie die ook voor de back-up gebruikt wordt. Indien een database of tabel corrupt was dan kon de export/back-up vastlopen. Deze versie slaat corrupte database bestanden over. Hoewel de patch niet noodzakelijk is wordt deze wel aanbevolen voor grensgevallen. Download het bestand. Het is een zip bestand dat direct gebruikt kan worden. Open de configuratie pagina “systeem” en klik de optie patch bestand uploaden aan. Na een minuut of twee zullen de aanpassingen doorgevoerd zijn. een herstart of reboot is niet nodig

Patch 3 bevat ook de patch 1 en 2 aanpassingen. Deze patch voert aanpassingen door in het actuele fase scherm die nu minder ruimte inneemt en zodat de pagina beter op een iPad wordt weergeven. Tevens kleurt de Ampère aanduiding mee met de terug leveren (groen) of verbruik (oranje). Na een minuut of twee zullen de aanpassingen doorgevoerd zijn. een herstart of reboot is niet nodig.

P1-monitor download 20221105 V2.1.0

P1-monitor download 20221105 V2.1.0

P1 monitor is op de Raspberry Rpi3 en Rpi4 gebaseerde software om je slimme meter uit te lezen. Voor een meer uitgebreide beschrijving zie hier.

Het wordt sterk aanbevolen deze upgrade uit te voeren ook al zijn de wijzigingen niet relevant voor hoe je de P1 monitor gebruikt. Er zijn diverse essentiële aanpassing doorgevoerd in de API en database. Daarnaast ondersteunt deze versie de iOS app beter.

Mocht je de software de moeite waard vinden wil je deze dan delen via social media e.d. Bedankt voor de ondersteuning.

Upgrade of eerst installatie.

De software verkrijgen en installatie.

De P1 monitor software wordt geleverd als Raspberry Pi 3B/4 SDHC image die hieronder te downloaden is. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.  Zie hieronder hoe je dat daarna de rest van de ruimte op de SDHC card kunt gebruiken met raspi-config tool.

BELANGRIJK 1

De Upgrade Assistent is vervangen voor Upgrade Aide in de vorige versie 1.5.0. Je kunt nog wel een upgrade doen met data uit versies voor 1.5.0. Maak altijd eerst een manuele export als alternatief  als de automatische upgrade faalt.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de upgrade assistent.

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

  1. download het P1 monitor image file uit de download overzicht hieronder.
  2. pak het zip file uit en lees de bijlagen.
  3. kopieer het p1monYYYYMMDD-NN.NN-X.img file via de USB tool naar de SDHC card van minimaal 8GB (bij voorkeur een 32GB of 16GB). Let op! data op de card wordt overschreven en is niet meer te herstellen. (had ik al gehad over de export van data).
  4. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen. Het vergroten van het filesysteem gebeurt automatische als je de UpgradeAide gebruikt.
  5. plaats de SDHC card in de Pi.
  6. start de Pi, netwerk en P1 kabel aangesloten.
  7. Importeer de data, als je al eerdere versie hebt gebruikt.

FAQ

Mocht je vragen hebben kijk dan eerst in de FAQ of bezoek het forum.p1mon.nl

Problemen oplossen.

Image past niet op de SDHC card:

  1. Je kunt proberen de donor SDHC card opnieuw te formatteren met een dergelijk tool als de SD formatter.
  2. Installeer het image op een groter SDHC card. Het ongebruikte deel van de SDHC card kun je vrijgeven via de raspi-config tool met de optie Expand Filesystem.
  3. wis de browser cache als je layout problemen hebt.

Standaard wachtwoord besturingssysteem:

  1. Het standaard account en wachtwoord om in te kunnen loggen met SSH is p1mon met het wachtwoord  verandermij.
  2. Het advies dit wachtwoord na installatie aan te passen.

Juridisch spul en zo

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en Javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst of gebruik de upgrade assistent of de opvolger upgrade aide.

DOWNLOAD

SDHC images

P1 monitor wordt alleen ondersteunt op de Raspberry Pi 3B, Pi3 B+ of Pi4 (vanaf versie 0.9.11).
Een Pi 2 kan werken maar geen garanties.  Een Pi Zero is nooit getest. Van de Pi 1 is bekend dat deze fouten geeft en verloop van tijd stopt / crasht door een gebrek aan ram geheugen. Er is minimaal 1GB aan ram nodig voor alle mogelijke functies!

Bugs en andere opgeloste fouten:

  • Stat.php onthield niet via de legenda ingestelde prognose kWh waarde.
  • Halt / poweroff van de Rpi via de UI werkte niet. (mocht je daar de workarround is inloggen op de Rpi en het commando sudo shutdown geven, de shutdown start na ongeveer een minuut en na totaal een minuut zal de shutdown compleet zijn.
  • Op de gas schermen de temperatuur as naar de rechterkant van het scherm verplaatst zodat dit consistent is met andere schermen.
  • Run_patch: “gefaald invalid literal for int() with base 10” melding opgelost in P1Watchdog.nl
  • P1Watchdog logging verminderd, voor fqdn_ping, deze wordt alleen bij het starten van de P1Watchdog weggeschreven.
  • Main-1/2 schermen geven de korte historie nu beter en vloeiender weer.
  • API call om het internet IP adres te achterhalen aangepast de oude url werkte niet meer. Nu wordt api64.ipify.org gebruikt.

Nieuw:

  • Programma cu toegevoegd aan image, dit is niet nodig voor de P1 monitor maar kan helpen met debuggen.
  • SOCAT: het is nu mogelijk (met extra hardware) de P1 data over het netwerk te gebruiken.
  • Je kunt nu zelf een serieel device instellen bijvoorbeeld /dev/ttyAMA0 (dit werkt niet zonder data inversie en is ook niet getest). Deze optie is getest met de hardware en hulp van smartgateways.nl
  • Graaddagen toegevoegd op basis van de weerinformatie. Let op bij het starten worden de Graaddagen eenmalig berekend dit vertraagd het opstarten met ongeveer 1 minuut op een Rpi3. Je kunt de stook/kamertemperatuur instellen op de weer configuratie pagina.
  • API aangepast voor historische temperatuur gegevens /api/v1/weather/x deze geeft nu ook graaddagen weer.
  • Update naar RpiOS Kernel Linux-5.15.74.

Security patches en upgrade van diverse software bibliotheken uitgevoerd tot 2022-11-01

Let op wachtwoorden zijn altijd met HOOFDLETTERS!

Vragen, suggesties en bugs melden

BUGS

Privacy verklaring. 

Privacy verklaring. 

Om een goede werking technische mogelijk te maken wordt het absolute minimum aan privacygegevens vastgelegd, Alleen het IP-adres van het apparaat dat de website bezoekt of software download en functionele cookies. De website maakt gebruik van Google Search als deze wordt gebruikt dan worden zoekgegevens met Google gedeeld. 

To make proper operation technically possible the absolute minimum of privacy data is recorded, Only the IP address of the device visiting the website or downloading software and functional cookies. The website uses Google Search when this is used then search data is shared with Google.

forum.p1mon.nl

forum.p1mon.nl

Ruud een enthousiaste gebruiker van de P1-monitor heeft het forum.p1mon.nl opgezet voor vragen en suggesties over de P1-monitor software en andere gelieerde producten. Dit geeft mij als ontwikkelaar van de P1-monitor meer tijd om aan te software te werken.

Uiteraard is het forum.p1mon.nl bedoeld om te helpen maar je kunt vaak zelf ook al zaken oplossen door de onderstaande zaken in acht te nemen.  Elke vraag kost tijd om te controleren van de mensen die bezig zijn met het ontwikkelen en onderhouden van de software.

  1. De P1-monitor is opzet als out-of-the-box oplossing. Er zijn maar een paar zaken nodig om de software te configureren. Het wellicht het allerbelangrijkste je kunt alles doen via de P1-monitor userinterface. Inloggen via ssh op de Rpi is niet nodig.
  2. Lees de instructies bij een elke nieuwe versie. Als er wijzigingen zijn waar je op moet letten dan wordt dat daar beschreven.
  3. Raadpleeg het FAQ op de deze site of op forum.p1mon.nl.
  4. Controleer de logs op de P1-monitor config-log.php pagina. Groen gekleurde regels zijn acties die goed verlopen zijn. Andere kleuren kunnen op een probleem duiden.
  5. Als je vraag stelt geef dan zoveel informatie als mogelijk mee. Maak het een vraag die te beantwoorden is!  
  6. Als je een vraag stelt geeft dan minimaal de volgende informatie.
    • Wat wil je bereiken of wat ging er mis?
    • Wat heb je gedaan?
    • Wat gebeurde er?
    • Welke versie van de P1-software gebruik je.
    • Welke type Rpi gebruik je?
    • Relevant detailinformatie zoals de webpagina waarop iets mis ging. Bijvoorbeeld main-1.php.  Op de info.php pagina kun je eenvoudig met knippen-en-plakken systeeminformatie over Raspberry Pi (Rpi) en het slimme meter telegram kopiëren naar de vraag.

Nieuwe functies aanvragen voor de software.

Als je een nieuwe functionaliteit aan de software wil toevoegen kijk dan eerst op de roadmap pagina. Mocht de functionaliteit er nog niet bij staan geef dan met zoveel detail als mogelijk wat je wil bereiken.  Als de functie als op de roadmap staat geef dan aan dat je ook interesse hebt in die functie.

Help de P1-monitor en schrijf je in op forum.p1mon.nl

P1-monitor roadmap

P1-monitor roadmap

De P1 monitor roadmap geeft aan welke opties of aanpassingen op de planning staan. Het geeft tevens de mogelijkheid ideeën aan te dragen voor de volgende versies. Als je wensen of ideeën hebt dan kun aangeven via een opmerking op deze pagina.  Alle ideeën zijn welkom. Het kan afhankelijk van de beschikbare tijd even duren voordat geplande opties daadwerkelijk worden gerealiseerd.

Deze pagina is alleen bedoel voor nieuwe opties of aanpassingen aan bestaande opties. Als je een hier bug plaatst dan wordt deze vriendelijk genegeerd.

Te onderzoeken :

  • “Dagteller” gas. Het zou handig zijn om een los tellertje te kunnen starten en stoppen. Om bijvoorbeeld bij starten van een douche beurt, of kook beurt, of gaskachel beurt, de teller te starten en er na te stoppen. Zo kan je (ongeveer) zien hoeveel 1 zo’n “beurt” aan gas kost (vermist er dan geen andere gebruikers zijn).
  • mogelijk maken om eigen opmerkingen toe te voegen, die een verhoogd of verlaagd energiegebruik verklaren.
  • Mogelijkheid van twee verschillende tarieven van terugleveren. Het eerste tarief is alleen maar geldig voor een vooraf opgegeven aantal KWH/jaar, het tweede tarief wordt daarboven gebruikt. Hierdoor krijg je beter inzicht in de daadwerkelijke opbrengsten van panelen als je meer opbrengt dan dat je verbruikt.
  • Alle schermen afschermen met een wachtwoord voor bijvoorbeeld internet toegang. 

Enphase Omvormer: Graag zou ik de mogelijkheid willen hebben om de bruto levering van mijn Enphase Enlighten zonnepanelen systeem via de Enphase API in te kunnen inlezen en zichtbaar te maken in P1monitor. Enphase biedt gratis 10 hits per minuut met een Max van 10.000 hits per maand aan (Watt free optie).
Documentatie: https://developer.enphase.com/docs (verzoeken 26). Als iemand zijn API key wil delen dan kan ik daar mee testen.

Growatt omvormer zonnepanelen uitlezen (verzoeken: 20)

Goodwe omvormer zonnepanelen uitlezen (verzoeken: 14)

Meerdere S0 kWh meters ondersteunen (verzoeken 11).

Ondersteuning van de toonwater.nl watermeter oplossing (verzoeken 10).

Omnik omvormer zonnepanelen uitlezen (verzoeken: 8)

sunnyportal.com (SMA omvormers) uitlezen en lokaal via Modbus (verzoeken 5)

Alarm bij waterlekkage, bijvoorbeeld (instelbaar) 200L in een half uur (verzoeken 5).

Back-up naar USB stick  (verzoeken 5).

SOLAX (zonnepanelen) API toevoegen (verzoeken 6).

SolarEdge data opnemen in MQTT data (verzoeken 5).

Ik heb een vraagje over de teruglever schakelaar. Is het mogelijk om een 0 -10kHz signaal te maken, die tussen de uitschakel – en inschakelpunt ligt? Het mooie hiervan is, dat je een 0-10V dc signaal kunt maken om bv een verwarmingsspiraal te sturen van 0-10V 0-230VAC. Ook andere apparatuur kun je zo aansturen.
Dus alleen als je energie teruglevert, dan pas een extern apparaat regelen afhankelijk van deze overproductie.
Dat zou gaaf zijn. Ik heb een boiler vat van 500ltr en een spiraal van 2kw. Dit ook met het oog op de toekomst als de salderingsregeling van start gaat (na 2023) In België betaal je 0,27 euro en bij teruglevering krijg je maar 0,03 euro terug. Dus dan wordt dit erg interessant. Mogelijk gerealiseerd met PWM uitgang van de Rpi. (verzoeken 5)

Pvoutput.org interface maken (verzoeken: 4)

Mindergas.nl interface maken (verzoeken 4).

Kamstrup Multical 402 warmte meter uitlezen (stadsverwarming) Mogelijk via de IR sensor of via OCR oplossing. (verzoeken : 4)

Wifi Watermeter van HomeWizard toevoegen. Deze heeft een optie om hem via een API uit te lezen. (verzoeken 4)

Watermeter uitlezen gebaseerd op een ESP32 die de pulsen via een UDP bericht verspreid (verzoeken 4).

Optie om zelf historische gegevens toe te voegen ( verzoeken: 3 ).

kWh S0 meting aanbieden via MQTT (* verzoeken 3).

Meerdere EPS32DeltaTemp’s ondersteunen (verzoeken: 2).

Actuele temperatuur instelbaar maken zodat ook negatieve en positieve waarde ingesteld kunnen worden tussen -30 en +120 graden o.i.d (verzoeken 2).

Tooltip configureerbaar maken zodat wanneer je over de L1, L2, L3 hovered. Zodat ik kan zien wat er allemaal aan Lx hangt (verzoeken 2).

Alerting via e-mail: als een dag of maandwaarde e.d. wordt overschreden (verzoeken 2).

De informatie van het verbruik scherm ook op een Google nest hub zichtbaar maken (verzoeken 2).

Log informatie naar een externe Syslog Server sturen (verzoeken 2).

Web interface via https raadplegen (verzoeken 2).

Teruglevering schakelaar viervoudig maken verschillende vermogens (verzoeken 2).

Connectix Slimme meter WiFi gateway ondersteuning (netwerk P1 telegram) (verzoeken 2).

Eigen dagverbruik weergeven tussen wat er zelf wordt opgewekt en wat er teruggeleverd wordt ( verbruik – zelf opgewekt = eigen verbruik (verzoeken 3).

SolarEdge lokaal over het LAN uitlezen (zonder de Internet API). Op basis van de code van H.E. (verzoeken 2).

RS485 kWh meters ondersteunen (verzoeken 2).

Notificatie als de back-up faalt (verzoeken 2).

Tarieven per periode op kunnen geven (verzoeken 2).

Dynamische tarieven toevoegen, deze opties is lastig te realiseren omdat de P1 monitor de kosten vast stelt op het moment dat ze worden gemaakt. Deze optie zou een herberekening beteken van de kosten. (verzoeken 3).

Schakelen van de GPIO poorten op Ampère waarden van de fasen meting. Dit voor alle drie de fasen apart (verzoeken 2).

Berekende Ampère waarde toevoegen aan historisch fase informatie ( verzoeken 2).

Ondersteuning van de https://smartgateways.nl/product/slimme-watermeter-gateway/ (verzoeken 2)

Hoog contrast kleuren versie maken Bijvoorbeeld het contrast tussen piek en dal groter gemaakt kunnen worden door het dal tarief donkerder te maken: dal oranje: #685418 dal groen: #506d12 (verzoeken 1).

Naast het schakelen op totaal vermogen via de GPIO aansluiting deze optie ook mogelijk maken voor elke fase L1, L2 en L3. Totaal is er dan op vier manieren te schakelen op vermogen Dus voor elke fase een eigen GPIO pin (verzoeken 1).

Met 1 of 2 lichtsensoren (en dan het gemiddelde van 2 sensoren) / luxmeters kan de lichtintensiteit van de zon worden gemeten en dit kan in een grafiek worden meegenomen samen met het opgewekte vermogen van de zonnepanelen gemeten uit de omvormer Mogelijk gebaseerd op de BH1750 sensor (verzoeken: 1).

Watermeter data rechtstreeks uit de slimme meter telegram lezen en verwerken codes: 0-n:24.1.0.255, 0-n:96.1.0.255, 0-n:24.2.1.255 (verzoeken: 1).

Laadpunt (Alfen Eve Pro Line) (verzoeken 1)

Op de main schermen selectief fase laten zien (verzoeken 1).

Aan de hand van een ultrasonische sensor (bv de HC-SR04) het niveau van een regenwaterput loggen en monitoren. De eindgebruiker moet dan wel de afstand tot 100%, 0% en diameter put ingeven (verzoeken 1).

Zonneschijn / licht intensiteit weergeven net als de buiten temperatuur. Meet stations van het KNMI geven iets dergelijks in globale straling (Q) en duur van zonneschijn (SQ) (verzoeken 1).

Main pagina’s een geheugen functie geven zodat de voorkeur voor main-1 of main-2 wordt bewaard (verzoeken 1).

Optie om voor de P1 poort de meeste gebruikte snelheden te proberen zodat deze ingevoerd kunnen worden. (verzoeken 1).

OPC-UA Client inbouwen zodat data naar OPC-UA server kan worden verzonden (verzoeken 1).

UV index uit openweathermap.org weergeven. De UV index kan mogelijk worden gebruikt als data voor de de zon intensiteit. Als de UV index kan worden getoond in de grafieken, gelijk aan de temperatuur, dan kunnen we de relatie meten/zien tussen opwekking elektriciteit en zon intensiteit (UV) (verzoeken 1).

Optie opnemen om watermeter tellerstanden zowel naar boven als naar beneden bij te stellen ( verzoeken 1).

Mdns of bonjour support onderzoeken (verzoeken 1).

Main verbruik en levering grafiek in een gauge onderbrengen (verzoeken 1).

Main scherm verbruik te schakelen tussen water of gas (verzoeken 1).

Toevoegen van ‘main-3.php’ scherm genaamd ‘Levering’. Met twee meters met het bruto en netto opgewekte vermogen (verzoeken 1).

kWh(S0) meter weergeven in de kWh verbruik/levering grafieken (optie Mike) (verzoeken 1).

kWh(S0) meting als verbruik meting opnemen (verzoeken 1).

Puls meting voor kWh/Watermeter via de seriële poort naar een Idee van Aad (verzoeken 1).

Onderzoek doen naar de S1 poort op de slimme meter (verzoeken 1).

De minuut grafiek voor elektrisch vermogen kWh ook als kWh weergeven en niet alleen de berekende minuut waarde. Wellicht een twee y-as met de prognose waarde o.i.d eventueel instelbaar maken zodat de gebruiker zelf kan kiezen (verzoeken 1).

De mogelijkheid om een kwartierberekening te voorzien naar voorbeeld van het (toekomstige) Belgische capaciteitstarief (verzoeken 1).

Speciaal voor Belgische gebruikers een huisbrandolie (=mazout) telling toe te voegen identiek aan de watermeter, maar dan met liters i.p.v. m3? Dit is gebaseerd op het meten van pulsen. (verzoeken 1)

(SMA TRIPOWER (3-fasig) 5.0) omvormer zonnepanelen uitlezen (verzoeken: 1)

SonOff apparatuur gebruiken voor tarief en/of teruglevering schakelingen als aanvulling voor de GPIO optie die nu beschikbaar is (verzoeken 1).

ITTT gebruiken voor tarief en/of teruglevering schakelingen als aanvulling voor de GPIO optie die nu beschikbaar is (verzoeken 1).

Google Nest-Hub scherm omdersteunen Ditdoor CATT op de RPi te installeren.
– inloggen op de pi waar P1 monitor op draait (of een andere als je die hebt)
– met “sudo pip3 install catt” catt installeren
– daarna “catt -d [naam nest-hub] cast_site http://ip-adress-van-de pi” (verzoeken 1).

Led strip (WS2812B bijvoorbeeld) aan sturen.

Er zijn 2 use cases die me handig lijken:
1) Het verbruik/productie van de laatste x uur weergegeven wordt met de kleur van de leds.
2) Een animatie met het verbruik en de productie. Snellere animatie is meer verbruik/productie.

Verzoeken (1)

berekening van het zelf verbruik in een grafiek of in cijfers per dag/week/maand…, dus combinatie van afname – opbrengst zonnepanelen en werkelijks injectie (verzoeken 1).

NTP server kunnen instellen (verzoeken 1).

www.callmebot.com als notificatie uitzoeken (verzoeken 1).

Ondersteuning voor P1 Monitor in TWCManager toevoegen (verzoeken 1).

Ginlong solis zonnepanelen uitlezen (verzoeken 1).

De API voor dagelijks zonnepanelen opbrengst via kwh/S0 meting in hoog en laag tarief uitbreiden naar totaal (verzoeken 1).

Investigate the possibility to support Swedish smart meters ( verzoeken 1).

GPIO schakelen op de ESP32Temperatuur (verzoeken 1).

De temperatuur van een Nest thermostaat uit te lezen en deze als verwarming mee te geven in de app.
https://developers.nest.com/reference/api-thermostat (verzoeken 1).

Notificatie: als er de gehele dag geen energie terug geleverd is door zonnepanelen o.i.d. (verzoeken 1).

Tarieven elektriciteit op basis van vermogen toevoegen:

In grootverbruik wordt vaak met staffels gewerkt:

– staffel 1: verbruik t/m x kWh: tarief 1

– staffel 2: verbruik daarboven t/m y kWh: tarief 2 (goedkoper)

– staffel 3: verbruik boven de z kWh: tarief 3

En daarbij kunnen piek en dal tijden bij aanbieders ook anders liggen (sommigen van 23.00 – 07.00 bijv), sommigen van 19.00 – 07.00 uur (verzoeken 1).

Pijuice (ups) ondersteuning toevoegen ( verzoeken 1 )

Kunnen jullie ook een 2e tab met euro icoon maken waar je de maand en jaar van je contract loopt nu loopt mijn maand van 28 tm 28 e van de maand en van oktober tot oktober (verzoeken 1).

Kosten overzicht dat je kan filteren op een eigen gewenste periode i.p.v de voor gedefinieerde jaren maanden en dagen (verzoeken 1).

SAJ zonnepanelen omvormer toevoegen (verzoeken 1).


Meerdere ESP32DELTATEMP sensoren kunnen toevoegen (meerdere bordjes, die ik op meerdere plekken in huis kan ophangen. Optie om in de userinterface een offset te geven aan de temperaturen van de ESP32DELTATEMP. Dus als ik de temperatuursensor calibreer met een nauwkeurige temp meter, ik niet met de hand de broncode moet aanpassen en opnieuw moet flashen (verzoeken 1).

ESP32Temperatuur compensatie in de UI van de P1 monitor kunnen instellen. (verzoeken 1).

SDM630 kWh meter ondersteuning toevoegen. Deze meter heeft een APi (json) via wifi. De beschrijving is hier te vinden.
https://homewizard-energy-api.readthedocs.io/endpoints.html#recent-measurement-api-v1-data
(verzoeken 1)

Watermeter data uit de slimme meter telegram lezen item 0-2:24.2.1 (verzoeken 1).

Data van de 1.6.0. telegram code toevoegen aan MQTT (verzoeken 1).

Dynamische EPEX stroomprijs. (verzoeken 1).

toon watermeter (verzoeken 1)

EPS32DeltaTemp

Esp3deltaTemp die meerdere temperatuur sensors ondersteund (verzoeken 1).

Onderdrukken van spikes of sags in de metingen en screensaver maken die het scherm na x periode uitzet (verzoeken 1).

Ondersteuning maken voor negatieve temperaturen (verzoeken 1).

Wifi automatische reconnect toevoegen als er geen IP adres wordt verkregen of als het IP adres verdwijnt. (verzoeken 1).

IOS (Apple) App

Weer informatie weergeven ( verzoeken 3 ).

TailScale support voor de App zodat geen port forwarding nodig is.

Dag waarden op het home scherm sneller laten verversen bij netwerk / wifi gebruik (verzoeken 1).

Tooltip van de temperatuur “verschil temperatuur” ontbreekt (verzoeken 1).

Klikken op de dagwaarde ( verbruik, gas en kosten, enz.) om bij de historische overzichten te komen (verzoeken 1).

Kleuren optie voor mensen met een kleuren zien stoornis (verzoeken 1).

Kosten kleuren op het home scherm groen/rood maken voor opbrengsten en kosten respectievelijk. Dit in plaats van de huidige goud gelige kleuren (verzoeken 1).

Kosten grenswaarden per maand instelbaar maken in tegenstelling toe de huidige eenmalig waarden die voor het hele jaar geldt (verzoeken 1).

 Een alarm (bv e-mail of pop-up melding uit de app) op de fases te zetten? Als je boven of in de buurt van je maximale aansluitwaarde per fase komt. Het zou bv kunnen met een bepaalde marge en/of minimale tijdsduur (om korte piekbelasting te negeren). (verzoeken 1).

Een tweede watermeter uitlezing via puls ondersteunen (verzoeken 1).

Indicatie van nieuwe versie van de software laten zien in de app, zoals dat nu ook in de P1-monitor software gebeurt. (verzoeken 1).

Alarm via e-email als de back faalt (verzoeken 1).

W of Kw waarde weergeven via de plus (s0) kWh metingen (verzoeken 1).

Wanneer je de pro-app opent kom je in het hoofdscherm (actueel electra verbruik, kWh verbruik vandaag, gas verbruik vandaag en de kosten vandaag). Is het mogelijk de ‘kosten vandaag’ uit te splisten zodat naast het totaal van de ‘kosten vandaag’ er ook de kosten van kWh en gas apart worden weergegeven. Ik weet dat de kostensplitsing te zien is op de kosten pagina, maar zou een waardevolle toevoeging zijn als dit ook is uitgesplitst in de hoofdpagina. (verzoeken 1).

https://github.com/caronc/apprise onderzoeken als notificatie systeem (verzoeken 1)

Wordt niet verder onderzocht of uitgevoerd.

De P1 monitor te installeren op een bestaande Raspberry Pi 3/4 waar Domoticz o.i.d. al is geïnstalleerd

Engels als tweede taal toevoegen.

LCD scherm direct op de Pi maken die geleverd of teruggeleverd vermogen aangeeft.

Er komt geen ondersteuning voor GPIO serial devices zoals de /dev/ttyAMA0. Dit is op te lossen met een hack door een link aan te maken maar dit wordt niet ondersteund!

Gemiddelde temperatuur in kosten overzicht tooltip.

Week waarden voor kWh, gas, watermeter, enz. worden niet toegevoegd.

pushbullet.com onderzoeken als notificatie optie, dis is alleen commercieel te gebruiken.

Onderzoek naar Messagebird waarmee een SMS kan worden gestuurd,alleen commercieel te gebruiken.

P1-monitor download 20220920 V2.0.0

P1-monitor download 20220920 V2.0.0

P1 monitor is op de Raspberry Rpi3 en Rpi4 gebaseerde software om je slimme meter uit te lezen. Voor een meer uitgebreide beschrijving zie hier.

Het wordt sterk aanbevolen deze upgrade uit te voeren ook al zijn de wijzigingen niet relevant voor hoe je de P1 monitor gebruikt. Er zijn diverse essentiële aanpassing doorgevoerd in de API en database. Daarnaast ondersteunt deze versie de iOS app beter.

Mocht je de software de moeite waard vinden wil je deze dan delen via social media e.d. Bedankt voor de ondersteuning.

Upgrade of eerst installatie.

De software verkrijgen en installatie.

De P1 monitor software wordt geleverd als Raspberry Pi 3B/4 SDHC image die hieronder te downloaden is. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.  Zie hieronder hoe je dat daarna de rest van de ruimte op de SDHC card kunt gebruiken met raspi-config tool.

BELANGRIJK 1

De Upgrade Assistent is vervangen voor Upgrade Aide in de vorige versie 1.5.0. Je kunt nog wel een upgrade doen met data uit versies voor 1.5.0. Maak altijd eerst een manuele export als alternatief  als de automatische upgrade faalt.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de upgrade assistent.

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

  1. download het P1 monitor image file uit de download overzicht hieronder.
  2. pak het zip file uit en lees de bijlagen.
  3. kopieer het p1monYYYYMMDD-NN.NN-X.img file via de USB tool naar de SDHC card van minimaal 8GB (bij voorkeur een 32GB of 16GB). Let op! data op de card wordt overschreven en is niet meer te herstellen. (had ik al gehad over de export van data).
  4. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen. Het vergroten van het filesysteem gebeurt automatische als je de UpgradeAide gebruikt.
  5. plaats de SDHC card in de Pi.
  6. start de Pi, netwerk en P1 kabel aangesloten.
  7. Importeer de data, als je al eerdere versie hebt gebruikt.

FAQ

Mocht je vragen hebben kijk dan eerst in de FAQ of bezoek het forum.p1mon.nl

Problemen oplossen.

Image past niet op de SDHC card:

  1. Je kunt proberen de donor SDHC card opnieuw te formatteren met een dergelijk tool als de SD formatter.
  2. Installeer het image op een groter SDHC card. Het ongebruikte deel van de SDHC card kun je vrijgeven via de raspi-config tool met de optie Expand Filesystem.
  3. wis de browser cache als je layout problemen hebt.

Standaard wachtwoord besturingssysteem:

  1. Het standaard account en wachtwoord om in te kunnen loggen met SSH is p1mon met het wachtwoord  verandermij.
  2. Het advies dit wachtwoord na installatie aan te passen.

Juridisch spul en zo

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en Javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst of gebruik de upgrade assistent of de opvolger upgrade aide.

DOWNLOAD

SDHC images

P1 monitor wordt alleen ondersteunt op de Raspberry Pi 3B, Pi3 B+ of Pi4 (vanaf versie 0.9.11).
Een Pi 2 kan werken maar geen garanties.  Een Pi Zero is nooit getest. Van de Pi 1 is bekend dat deze fouten geeft en verloop van tijd stopt / crasht door een gebrek aan ram geheugen. Er is minimaal 1GB aan ram nodig voor alle mogelijke functies!

Bugs en andere opgeloste fouten:

  • Fase-historie.php liet in de tooltip niet het zelf opgewekte vermogen zien.
  • Bug met grote temperatuur meter verholpen.
  • Afsluiten van de Rpi robuuster gemaakt.
  • Seriële data code bug kon de P1SerReader.py (zeldzaam) laten crashen.
  • main-1 en main-2 gaven i.p.v. het verbruikte water in L het aantal pulsen weer. Dit was alleen een probleem als de puls ongelijk is aan 1 liter. met dank aan Sven. Er wordt nu ook 1 cijfer achter de komma weergegeven.
  • Fase vermogen (fase-uiterste-d-w.php) gaf in de tooltip een afrondingsfout bij het weergeven van Watt waarden.
  • Tekst van de UDP broadcast aangepast voor de nieuw sneller manier van verwerken.
  • Logs worden vaker en sneller opgeruimd om te voorkomen dat de ram logruimte te vol raakt. Logs verwijderen wordt nu via crontab gedaan en niet meer via de P1Watchdog.
  • Detectie van het ontbreken van P1 poort data is iets sneller geworden (30 tot 50 seconden).
  • Debugdump aangepast, deze kon vastlopen als er niet voldoende ruimte was op het filesysteem.

Nieuw:

  • Update naar Bullseye de laatste versie van Raspberry Pi OS. Dit is typische iets van je ziet er niets van maar is noodzakelijk om de P1 monitor de komende jaren te kunnen blijven gebruiken. Een groot voordeel van Bullseye is dat meer zaken van het OS ook in ram gebeuren i.p.v op het SDHD kaartje waardoor het SDHC kaartje minder wordt belast. En het verbeterd de prestaties.
  • De boot partitie is read only gemaakt waardoor deze minder snel kan falen.
  • Snellere update van de main-x.php schermen die nu de meter weergave beter in sync met de faseweergave weergeven.
  • Virtuele Python omgeving geïmplementeerd inclusief diverse aanpassingen. Dit is de aanbevolen manier om Python op de meest stabiele manier te gebruiken.
  • Update van Python naar versie 3.9.2. Ook dit is om zeker te weten dat P1 monitor nog jaren vooruit kan.
  • PHP upgrade van 7.3 naar 7.4.
  • NGINX webserver upgrade 1.14.2 naar 1.18.0.
  • SAMBA tijdelijke bestanden verplaatst naar ram om de SDHC minder te belasten.
  • PHP session cookies worden in ram opgeslagen en niet meer op het SDHC kaartje.
  • P1WatermeterV2.py en P1PowerProductionS0.py meldt niet meer als er record worden toegevoegd. Dit om de logs minder te belasten.
  • Verbeterde de Internet API security met aangepaste Content-Security-Policy.
  • Fase actueel (fase-a.php) laat bij het Watt meter bij 0 Watt niet meer geleverd of verbruikt zien.
  • Het is nu mogelijk digitaal getekende patch bestanden te installeren.

Security patches en upgrade van diverse software bibliotheken uitgevoerd tot 2022-08-26

Let op wachtwoorden zijn altijd met HOOFDLETTERS!

Vragen, suggesties en bugs melden

BUGS

De kWh historie voor minuten houdt de legenda keuze voor prognose kWh gebruik niet vast.

De UI optie om de Rpi te stoppen werkt niet. Het beste alternatief is inloggen op de Rpi en het commando sudo shutdown in te voeren. Na een minuut of 3 zal de Rpi gestopt zijn.

P1-monitor download 20220601 V1.7.0

P1-monitor download 20220601 V1.7.0

P1 monitor is op de Raspberry Rpi3 en Rpi4 gebaseerde software om je slimme meter uit te lezen. Voor een meer uitgebreide beschrijving zie hier.

Het wordt sterk aanbevolen deze upgrade uit te voeren ook al zijn de wijzigingen niet relevant voor hoe je de P1 monitor gebruikt. Er zijn diverse essentiële aanpassing doorgevoerd in de API en database. Daarnaast ondersteunt deze versie de iOS app beter.

Mocht je de software de moeite waard vinden wil je deze dan delen via social media e.d. Bedankt voor de ondersteuning.

Upgrade of eerst installatie.

De software verkrijgen en installatie.

De P1 monitor software wordt geleverd als Raspberry Pi 3B/4 SDHC image die hieronder te downloaden is. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.  Zie hieronder hoe je dat daarna de rest van de ruimte op de SDHC card kunt gebruiken met raspi-config tool.

BELANGRIJK 1

Er is grote aanpassing gedaan aan de upgrade assistent, deze is beperkt compatibel met de vorige versie. Als de Upgrade assistent wordt gebruik met data van vorige versies dan is het noodzakelijk om ook een export van de vorige versie te doen en deze met de hand te importeren. Vanaf versie 0.9.15 en hoger kan de upgrade assistent weer zonder deze manuele upgrade worden uitgevoerd. Als dit niet wordt gedaan dan is historische data niet meer beschikbaar.

BELANGRIJK 2

De Upgrade Assistent is vervangen voor Upgrade Aide in de vorige versie 1.5.0. Je kunt nog wel een upgrade doen met data uit versies voor 1.5.0. Maak altijd eerst een manuele export als alternatief  als de automatische upgrade faalt.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de upgrade assistent.

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

  1. download het P1 monitor image file uit de download overzicht hieronder.
  2. pak het zip file uit en lees de bijlagen.
  3. kopieer het p1monYYYYMMDD-NN.NN-X.img file via de USB tool naar de SDHC card van minimaal 8GB (bij voorkeur een 32GB of 16GB). Let op! data op de card wordt overschreven en is niet meer te herstellen. (had ik al gehad over de export van data).
  4. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen. Het vergroten van het filesysteem gebeurt automatische als je de UpgradeAide gebruikt.
  5. plaats de SDHC card in de Pi.
  6. start de Pi, netwerk en P1 kabel aangesloten.
  7. Importeer de data, als je al eerdere versie hebt gebruikt.

FAQ

Mocht je vragen hebben kijk dan eerst in de FAQ of bezoek het forum.p1mon.nl

Problemen oplossen.

Image past niet op de SDHC card:

  1. Je kunt proberen de donor SDHC card opnieuw te formatteren met een dergelijk tool als de SD formatter.
  2. Installeer het image op een groter SDHC card. Het ongebruikte deel van de SDHC card kun je vrijgeven via de raspi-config tool met de optie Expand Filesystem.
  3. wis de browser cache als je layout problemen hebt.

Standaard wachtwoord besturingssysteem:

  1. Het standaard account en wachtwoord om in te kunnen loggen met SSH is p1mon met het wachtwoord  verandermij.
  2. Het advies dit wachtwoord na installatie aan te passen.

Juridisch spul en zo

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en Javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst of gebruik de upgrade assistent of de opvolger upgrade aide.

DOWNLOAD

SDHC images

P1 monitor wordt alleen ondersteunt op de Raspberry Pi 3B, Pi3 B+ of Pi4 (vanaf versie 0.9.11).
Een Pi 2 kan werken maar geen garanties.  Een Pi Zero is nooit getest. Van de Pi 1 is bekend dat deze fouten geeft en verloop van tijd stopt / crasht door een gebrek aan ram geheugen. Er is minimaal 1GB aan ram nodig!

Bugs en andere opgeloste fouten:

  • Bij het maken van een image wordt nu het standaard dhcpcd.conf file op het image geplaatst.
  • De correctie van de water meting en de kWh puls meting om ontbrekende records toe te voegen is een stuk sneller geworden. Gemiddelde duurde dat 250 seconden. De aanpassing duurt nu ongeveer 4 seconden.
  • De informatiepagina gaf het geheugengebruik verkeerd weer (te hoog).
  • Tekstfouten verholpen.
  • Indien er geen crontab file bestond dan werd de UpgradeAide onterecht gestopt.
  • Temperatuur-a.php update sneller en blijft niet langer “steken” bij grote temperatuurverschillen.
  • P1SerReader.py reageert nu sneller en met minder fouten als de P1 poort configuratie wordt aangepast.
  • Vastrechttarieven kunnen nu tot 999.999 euro worden ingevoerd.
  • Export van Excel liet tijdelijke bestanden staan.
  • Infinity wordt niet meer weergeven als de slimme meter geen spanning waarde (V) doorgeeft in fase-a.php.
  • Rechten probleem met P1NetworkConfig.log file opgelost.
  • Code van P1DbCopy.py aangepast  en verbeterd.
  • MQTT topic lijst is nu alfabetisch gesorteerd.
  • MQTT formatering van aangepast naar drie cijfers of vier cijfers achter de komma of gehele getallen.
  • Een CSS bug opgelost waardoor de weer info het scherm verminkte.

Nieuw:

  • Upgrade naar FontAwsome versie 6.1.1, deze versie maakt gebruik van iets anders vormgegeven icons.
  • Uiterste fase dag schermen toegevoegd voor V,A en W waarden. Hiermee wordt weergegeven wat de hoogste en laagste waarde van de drie fase L1,L2 en L3.
  • Email notificatie tekst aangepast als de P1 data ontbreekt.
  • Nieuw notificatieproces toegevoegd P1Notifier.py.
  • Boven en onderspanning (V) notificatie toegevoegd. let op hiervoor moet de optie ‘Historische fase informatie opslaan in de database’ aan staan en je slimme meter moet spanning informatie doorgeven.
  • Fase-historie laat nu de spanning zien met 1 cijfer achter de komma.
  • API voor P1 telegram toegevoegd zoals het uit de slimme meter komt. http://<IP>/api/v1/p1port/telegram en http://<IP>/api/v1/p1port/telegram/help.
  • Test voor auto recovery gestopt. In de folder /p1mon/data/ zullen nu geen extra bestanden met de extensie *.db.1, *.db.2, *.db.3 meer worden aangemaakt. Het uitschakelen heeft geen effect voor het gebruik.
  • MQTT heeft nu dagwaarden voor kWh, Gas en Water en financiële gegevens.
  • Ondersteuning voor slimme meters van grootverbruikers. Deze gebruiken een ander slimme meter P1 telegram met andere codes.

Grootverbruikers mode wordt ingeschakeld via het configuratie scherm P1 poort. Activeer de optie grootverbruiker.
  • Een optie toegevoegd waarmee waarden die de slimme meter niet doorgeeft toch berekend worden. Bijvoorbeeld de Watt waarde als stroom (A) en spanning (V) wel worden doorgegeven. Dit werkt alleen als de slimme meter de juiste fase informatie doorgeeft.
  • UI  ondersteund nu instellingen die passen bij grootverbruikers zoals een hoger vermogen (Watt) of stroom (A).
  • De scherm lay-out aangepast van e-levering, e-verbruik en g-verbruik dag, nu ziet dit scherm er beter uit op tablets. Je kunt er voor kiezen om in de UI Watt waarden in kW weer te geven

Security patches en upgrade van diverse software bibliotheken uitgevoerd tot 2022-05-28.

Let op wachtwoorden zijn altijd met HOOFDLETTERS!

Vragen, suggesties en bugs melden

BUGS

De nieuw font bibliotheek geeft af en toe een bug die een enorme thermometer laat zien. Dit probleem wordt onderzocht. Als je de weer informatie uitzet dan verdwijnt het probleem maar ook je weer informatie 🙂

De fase historie laat de in de tooltip het zelf opgewekte vermogen (Watt) niet zien.

ESP32DeltaTemp

ESP32DeltaTemp

EPS32DeltaTemp is en zelfbouwproject gebaseerd op de ESP32 van Espressif System. Dit kleine IoT apparaat is goedkoop en is relatief eenvoudig te programmeren. EP32DeltaTemp is gebouwd om in en uitgaande temperatuur te meten van vloerverwarming maar kan in principe voor elke toepassing worden gebruikt waar je de temperatuur wil meten. De centrale verwarming, de kamertemperatuur, enz.

Eigenschappen

Meet de temperatuur via twee digitale sensoren en geeft deze weer op het display van de ESP32, je kunt ook een ESP32 gebruiken zonder display.  Het display kan via een aanraaktoets  worden gewisseld tussen:

  1. De ingaande en uitgaande temperatuur met een grafiek die een indicatie geeft van het verschil tussen de twee temperaturen of de wifiverbinding actief is en wanneer de temperatuur wordt uitgelezen. De temperatuur wordt met een interval van 1 seconden gemeten.
  2. Het verschilscherm geef het verschil weer tussen de twee temperaturen en wanneer de meting plaats vindt.
  3. Info scherm: geeft de softwareversie weer, de gebruikt Service Set Identifier SSID (de naam van Wifi-netwerk) en het IP-adres dat de Eps32DeltTemp gebruikt.
  4. Tot slot: het scherm gaat automatisch uit na ongeveer 60 seconden. Het Heltec schermpje wordt snel slechter als dit altijd aan staat.

De informatie wordt optioneel verzonden via wifi UDP-berichten die door elke ander applicatie/programma gelezen kan worden op het lokale netwerk. Het Wifi IP-adres wordt via DHCP opgehaald iets wat de meeste thuisrouters standaard doen.

Benodigde hardware

De lijst die ik hier geef werkt en ik heb geen relatie met de genoemde leveranciers.
• 1 x Heltec EPS32 met oled display (10,55): link
• 2 x DS18B20 digitale temperatuur sensor (~€ 1,00): link
• 1 x Weerstand van 4K7: (€ 1,98) link
• Behuizing (optioneel) (€ 1,86): link
• Een USB – Naar micro usb kabel voor het programmeren en of de 5V voeding. Let er op dat de kabel spanninmg en data doorgeeft.
• Een Micro USB 5V voeding van minimaal 0.7 Ampère (mag meer zijn), een Raspberry Pi voeding is uitstekend. (Ongeveer € 4)
• Experimenteer print, een paar euro bijvoorbeeld link ( ongeveer € 7).
• Iets wat als tiptoets knop kan werken. Ik gebruik een 4mm schroefje.
Totaal ongeveer: € 30 euro afhankelijk van je voorkeur.
Uiteraard een soldeerbout, soldeertin en e.d. om de boel in elkaar te zetten.

Aansluitschema

ESP32 aansluitschema

Tip 5v aansluiting

Bij eerder Heltec Wifi Kit32 modules bevatte deze een 5v naar 3.3V spanningsregelaar die als je 5Volt op de pin (2) 5V zette dan werd dat omgezet naar 3.3V op de pin (3) ernaast.  Bij een recent module die ik gebruikte werkte dat niet meer waardoor er 5V op de 3.3V pin kwam te staan.  Je ziet op de module ook dat er minder spanningsregelaars op de module zijn geplaats. Het effect is dat de temperatuursensor s daar niet mee werken, die verwachten 3.3V. Bij deze module wordt de 5V op de Micro UBS connector wel omgezet naar 3.3V.  Als je alleen de micro-usb gebruikt dan zal je dit probleem niet optreden.

Benodigde software.

De ESP32 is eenvoudig te programmeren via de Arduino IDE als je deze nog niet hebt geïnstalleerd volg dan deze handleiding van  randomnerdtutorials.com. Deze handleiding legt tevens uit hoe je de ESP32  uitbreiding moet toevoegen die zijn standaard niet geïnstalleerd.  

De code maakt gebruik van een extra softwarebibliotheken die eenvoudig via de Arduino IDE te installeren zijn.  Deze kun je via de IDE  Sketch -> Include Libary -> Manage Libraries toevoegen.

  • OneWire
  • U8G2
  • DallasTemperature

Laad onderstaande code in de editor en pas eventueel de WIFI instellingen aan als je daar gebruik van wil maken en compileer deze door linksboven op verify te klikken.  Als dat goed gaat kun je de ESP32 aansluiten via de USB-kabel en de code uploaden naar de ESP32.   Om de code te kunnen testen moeten wel de temperatuur sensors worden aangesloten.

Wijzigingen van versie 1.0 naar versie 1.1

1: Versie nummer verhoogd naar v1.1
2: Meer debug/logging informatie toegevoegd voor de seriële monitor.
3: Debug meldingen naar het Engels omgezet.
4: Mogelijk bug met screen dim voorkomen door overflow.
5: Tijd van dimmen scherm naar ongeveer 1 minuut terug gebracht om het scherm te beschermen.
6: Gemiddelde waarde berekening aangepast om piek en dalen in de meting te onderdrukken en de code efficiënter gemaakt.
7: Controle automatische opnieuw de wifi verbinding opbouwen. Bij het wegvallen van de wiffi verbinding probeert de software een nieuw verbinding op te zetten.
8: Door DEBUG beter in te zetten is de runtime code ongeveer 3k bytes kleiner geworden. Markeer de DBUG code met // voor het compileren van de definitieve versie.
9: Voorloop nullen bug/feature opgelost in de JSON output in het UDP bericht. Met dank aan Siem.
10: JSON/UDP output aangepast: gemiddelde waarde bevat 1 decimaal en ruwe waarde twee decimalen.
11: Verschil scherm laat nu het absolute verschil zien zonder min teken.
12: De led op het board knippert elke keer als dat er geprobeerd wordt een UDP bericht te verzenden.
13: Bij het starten van de software gaat de led op board aan. aAs de WiFi werkt en de temperatuur sensors zijn gevonden dan gaat de led weer uit. Zie 12.

#include <U8g2lib.h>
#include <OneWire.h>
#include <DallasTemperature.h>
#include <WiFi.h>
#include <WiFiUdp.h>

/* note, the bat(tery) led rapid blinking is a hardware "feature" of the heltec board and can not be disabled by software */

/* user setting, change these to your needs. */
/*********************************************/
/* leave SSID empty if you don't need the UDP / WIFI messages *ssid = "" */
const char *ssid = "";          // your SSID.
const char *pwd  = "";         // your WPA WIFI password.

// board specific 
#define TOUCH_PIN T7       // connected to pin 27
#define ONE_WIRE_BUS 13    // DS18B20 on GPIO 13.
#define ONBOARD_LED  25    // ESP32 board specific led
/* end of user setting,                      */
/*********************************************/

const uint8_t udp_send_interval = 45;      // interval when an udp message will be send in 0.1 secs interval 45 = ~5 secs.
                                          // use a value between 1 and a maximum of 255.

const float temp_in_adjustmend  =  0.55;  // test en adjust these to values to compensate for differences
const float temp_out_adjustmend =  1.39;  // in the readout of the temp sensors and general offset error.

/***************** end of user settings ******/

//#define DEBUG 1                         // used during development to give more verbose output to 
                                        // the serial output place '//' before the line to deactivate

#define STR_BUF_SIZE 32
#define VERSION             "1.1"         // Software version.
#define TEMPERATURE_PRECISION 12          // set temp precision (9-12).
#define DISPLAY_WIDTH 128
#define DISPLAY_HEIGHT 64
#define DIM_SCREEN 450                   // Dim screen after about a minute.

OneWire           oneWire(ONE_WIRE_BUS);  // setup OneWire devices.
DallasTemperature tempSensors(&oneWire);  // tempSensor data.
DeviceAddress     tempDeviceAddress;      // temp adress for devices.
WiFiUDP           udp;                    // UDP sender.

int     numberOfDevices = 0;              // number of temperature devices found.
char    strbuf[STR_BUF_SIZE];             // buffer for display and serial print.
float   g_temp_in;
float   g_temp_out;
float   g_temp_in_avg;
float   g_temp_out_avg;
uint8_t temp_vdelta_arr_graphic[DISPLAY_WIDTH];
int     touch_value = 300;
bool    WIFIconnected = false;
//bool    onboard_led_on = true; // staus of the onboard led on or off

//U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0, /* reset=*/ 16, /* clock=*/15, /* data=*/4);   // (rotation, [reset [, clock, data]])
U8G2_SSD1306_128X64_NONAME_F_SW_I2C u8g2(U8G2_R0, /* clock=*/ 15, /* data=*/ 4, /* reset=*/ 16);

// IP address to send UDP data to.
const char *udpAddress = "255.255.255.255";  // udp broadcast address for the local lan only.
const int   udpPort    = 30721;              // udp port number to listen to as a client.

void setup() {
  
    // set led configuration
    pinMode( ONBOARD_LED, OUTPUT );
    digitalWrite( ONBOARD_LED, HIGH );  // led on to show the prg is running

    Serial.begin(115200);
    #if DEBUG
        Serial.println("Serial output started at 115200");
    #endif
    u8g2.begin();
    u8g2.clearBuffer();
    u8g2.setFont(u8g2_font_ncenB12_tf);
    u8g2.drawStr(20, 40, "ZTATZ.NL");
    u8g2.sendBuffer();
    delay( 3000 );

    // load temperature sensors.
    tempSensors.begin();

    // check if we can find the two temp sensors.
    u8g2.clearBuffer();
    while ( setTempPrecision() < 2 ) {
        tempSensors.begin();
        u8g2.drawStr(1, 12, "wacht op de");
        u8g2.drawStr(1, 26, "temperatuur");
        u8g2.drawStr(1, 40, "sensors.");
        u8g2.sendBuffer();
        delay(500);
    }

    // make sure we have some temperature values.
    readTemperatures();

    if ( String(ssid).length() > 0 ) {

        // try to connect to wifi.
        connectToWiFi(ssid, pwd);

        // Wait for connection
        for (uint8_t i = 0; i < 60; i++) {
            if (WiFi.status() == WL_CONNECTED ) {
                break; // we have a network connection
            }
            u8g2.clearBuffer();
            u8g2.drawStr(1, 12, "wacht op de");
            u8g2.drawStr(1, 27, "wifi");
            u8g2.drawStr(1, 41, "verbinding.");
            String str = "seconden: " + String( i );
            str.toCharArray(strbuf, STR_BUF_SIZE);
            u8g2.drawStr(1, 57, strbuf);
            u8g2.sendBuffer();
            delay(1000); // try every 1 secs
        }
    }
}

void loop()
{
    static uint8_t display_select_counter = 0;
    static uint16_t pseudo_secs = 0;
    static uint16_t dim_screen_secs = 0;
    static uint8_t touch_counter = 0;
    static uint8_t udp_send_counter = 0;
    static bool    wifi_retry_is_on = false;
    static bool    screen_dimmed_is_on = false;

    // pseudo timer.
    pseudo_secs++;
    dim_screen_secs++;

    //digitalWrite( ONBOARD_LED, HIGH ); 
    digitalWrite( ONBOARD_LED, LOW );  // set it show the prg ready with setup and entering the loop.

    if ( pseudo_secs > 599 ) {
        pseudo_secs = 0;  // reset secs to 0
    }

    if (dim_screen_secs > DIM_SCREEN && !screen_dimmed_is_on) {
        screen_dimmed_is_on = true;
        dim_screen_secs = 0;
        showDisplay(3);
        #ifdef DEBUG
            Serial.println("Dim Screen activated.");
        #endif
    }

    // read temperature values from sensors and update data buffers.
    // every second.
    if ( (pseudo_secs % 10 ) == 0 ) {
        readTemperatures();
        fillGraphicBufferValues();
        calcAvgTemperature( g_temp_in, g_temp_out );
        if (!screen_dimmed_is_on) {
            showDisplay(display_select_counter);
        }
    }

    // Send UDP broadcast messages.
    if ( WIFIconnected ) {
        udp_send_counter++;
        if ( udp_send_counter > udp_send_interval ) {
            digitalWrite( ONBOARD_LED, HIGH );   // onboard led flashes when a UDP message is send.
            udpSendMessage( makeJsonMessage() ); // SEND UPD message
            udp_send_counter = 0;
        }
    }

    // touch selection.
    touch_value = touchRead( TOUCH_PIN );

    if (touch_value < 50 ) {
        touch_counter++;
        if ( touch_counter > 4 ) { // must held the touch contact to filter out noise.
            touch_counter = 0;
            dim_screen_secs = 0;

            if (!screen_dimmed_is_on) {
                display_select_counter++;
            
                if ( display_select_counter > 2 ) {
                    display_select_counter = 0;        // remove blank screen option
                }
                
                showDisplay( display_select_counter ); // to get quick feedback on pressing touch "button".
                // screen_dimmed_is_on = false;
            } else {
                screen_dimmed_is_on = false;
                showDisplay(display_select_counter); // to get quick feedback on pressing touch "button".
            }
        }
    } else {
        touch_counter = 0; //reset the touch counter,
    }

    delay( 100 ); // 0.1 sec delay.
    if ( digitalRead( ONBOARD_LED ) ) { // reset the led after a short while. 
        digitalWrite( ONBOARD_LED, LOW );
    }
    
}

// function to connect to the wifi network
void connectToWiFi(const char * ssid, const char * pwd) {
    #ifdef DEBUG
        Serial.println("Connecting to the WiFi network: " + String(ssid));
    #endif

    // delete old config
    WiFi.disconnect(true);

    delay(1000);

    //register event handler
    WiFi.onEvent(WiFiEvent);

    //Initiate connection
    WiFi.begin(ssid, pwd);
}

//wifi event handler
void WiFiEvent(WiFiEvent_t event) {
    #ifdef DEBUG
        Serial.print("WiFiEvent: ");
        Serial.println(event);
    #endif
    switch (event) {
        case SYSTEM_EVENT_STA_CONNECTED:
            //When connected set
            #ifdef DEBUG
                Serial.println( "WiFi connected with Access point." );
            #endif
            break;
        case SYSTEM_EVENT_STA_GOT_IP:
            //When connected set
            #ifdef DEBUG
                Serial.print( "Wi-Fi connected! IP address: " );
                Serial.println( WiFi.localIP() );
            #endif
            //initializes the UDP state
            //This initializes the transfer buffer
            udp.begin(WiFi.localIP(), udpPort);
            WIFIconnected = true;
            break;
        case SYSTEM_EVENT_STA_DISCONNECTED:
            #ifdef DEBUG
                Serial.println( "Lost WiFi connection.." );
            #endif
            WIFIconnected = false;
            WiFi.disconnect(true);
            WiFi.begin(ssid, pwd);
            break;
    }
}

// function select display mode
void showDisplay(uint8_t index) {
  switch (index) {
    case 0:
      showTempInfo();
      break;
    case 1:
      showDeltaTempInfo();
      break;
    case 2:
      showInitInfo();
      break;
    case 3:
      // blank screen
      u8g2.clearBuffer();
      u8g2.sendBuffer();
      break;
  }
}

// function to show temperature on display.
void showDeltaTempInfo() {
    static bool temp_icon;

    floatTempFormater( abs(g_temp_in_avg - g_temp_out_avg) ).toCharArray(strbuf, STR_BUF_SIZE);

    #ifdef DEBUG
        Serial.println ( String("showDeltaTempInfo() delta temperature = ") + strbuf );
    #endif 

    u8g2.clearBuffer();
    u8g2.setFont(u8g2_font_fub30_tf);
    u8g2.drawStr(   5,  35, strbuf);
    u8g2.drawGlyph( 85, 35, 176 );
    u8g2.drawStr(   95, 35, "C" );

    u8g2.setFont(u8g2_font_ncenB18_tf);
    u8g2.drawStr( 8, 60, "verschil" );

    // activity icon toggle.
    u8g2.setFont(u8g2_font_open_iconic_gui_2x_t);
    if (temp_icon == true ) {
        u8g2.drawGlyph(112, 60, 66);
        temp_icon = false;
    } else {
        u8g2.drawGlyph(112, 60, 67);
        temp_icon = true;
    }

    u8g2.sendBuffer();
}

void showInitInfo() {
    u8g2.clearBuffer();
    u8g2.setFont(u8g2_font_courB10_tf);
    
    String str = "Version " + String(VERSION);
    
    #ifdef DEBUG
        Serial.println ( String("ShowInitInfo() ") + str );
    #endif
    
    str.toCharArray(strbuf, STR_BUF_SIZE);
    u8g2.drawStr(1, 15, strbuf);

    str = "SSID:" + String( ssid );
    str.toCharArray(strbuf, STR_BUF_SIZE);
    u8g2.drawStr(1, 30, strbuf);

    str = ipAddress2String( WiFi.localIP() );
    str.toCharArray(strbuf, STR_BUF_SIZE);
    u8g2.drawStr(1, 45, strbuf);

    u8g2.sendBuffer();
}

// function to show temperature on display.
void showTempInfo() {
    static bool temp_icon;

    u8g2.clearBuffer();
    u8g2.setFont(u8g2_font_ncenB18_tf);
    u8g2.drawStr(    0, 18, "in"  );
    u8g2.drawStr(    0, 40, "uit" );

    floatTempFormater(g_temp_in_avg).toCharArray(strbuf, STR_BUF_SIZE);
    u8g2.drawStr(38, 18, strbuf);

    floatTempFormater(g_temp_out_avg).toCharArray(strbuf, STR_BUF_SIZE);
    u8g2.drawStr(38, 40, strbuf);

    u8g2.setFont(u8g2_font_ncenB14_tf);
    u8g2.drawStr(   97, 16, "C" );
    u8g2.drawStr(   97, 38, "C" );
    u8g2.drawGlyph( 90, 16, 176 );
    u8g2.drawGlyph( 90, 38, 176 );

    for ( uint8_t i = 0; i < DISPLAY_WIDTH; i++ ) {
        u8g2.drawLine(i, 64, i, DISPLAY_HEIGHT - temp_vdelta_arr_graphic[i] );
    }

    // activity icon toggle.
    //u8g2.setFont(u8g2_font_siji_t_6x10);
    u8g2.setFont(u8g2_font_open_iconic_all_2x_t);
    if ( temp_icon == true ) {
        u8g2.drawGlyph(112, 20, 141);
        //u8g2.drawGlyph(111,20,57551);
        temp_icon = false;
    } else {
        //u8g2.drawGlyph(113,20,57373);
        temp_icon = true;
    }

    if ( WIFIconnected ) {
        u8g2.setFont(u8g2_font_open_iconic_all_2x_t);
        u8g2.drawGlyph( 112, 40, 247 );
        #ifdef DEBUG
            Serial.println ( String("showTempInfo() Wifi connected"));
        #endif 
    } else {
        #ifdef DEBUG
            Serial.println ( String("showTempInfo() Wifi not connected"));
        #endif 
    }

    u8g2.sendBuffer();
}

// function IPAdress conversion to string
String ipAddress2String(const IPAddress& ipAddress) {
    return String(ipAddress[0]) + String(".") + \
        String(ipAddress[1]) + String(".") + \
        String(ipAddress[2]) + String(".") + \
        String(ipAddress[3])  ;
}

// function to format json string.
String makeJsonMessage() {
    static unsigned int sequenceNumber;
    char tmpbuf[8];

    dtostrf( g_temp_in, 2, 2, tmpbuf );
    String str_tmp_in = String( tmpbuf );
    dtostrf( g_temp_out, 2, 2, tmpbuf );
    String str_tmp_out = String( tmpbuf );

    dtostrf( g_temp_in_avg, 2, 1, tmpbuf );
    String temp_in_avg = String( tmpbuf );
    dtostrf( g_temp_out_avg, 2, 1, tmpbuf );
    String temp_out_avg = String( tmpbuf );

    //{ "t_in": 23.1, "t_out":45.6, "seq":65000 }
    String msg = "{\"id\":\"ztatz_dt\",\"version\":" + String(VERSION) + ",\"t_unit\":\"C\"";
    msg = msg + ",\"t_in_avg\":" + temp_in_avg +
            ",\"t_out_avg\":"    + temp_out_avg + 
            ",\"t_in\":"         + str_tmp_in +
            ",\"t_out\":"        + str_tmp_out +
            ",\"seq\":"          + sequenceNumber +
            "}";

    sequenceNumber++;
    if ( sequenceNumber > 32768 ) {
        sequenceNumber = 0;  //wrap around to zero.
    }
    return msg;
}

// function to send the temperature via UDP
void udpSendMessage(String msg) {

    //alloc buffer space
    uint8_t bufsize = msg.length() + 1;
    uint8_t buffer[bufsize];
    msg.getBytes( buffer, bufsize );

    udp.beginPacket( udpAddress, udpPort );
    udp.write( buffer, bufsize - 1 ); //skip trailing zero.
    udp.endPacket();
}

// function to calculate the average values, based in AVG_TEMP_ARRAY_SIZE value
void calcAvgTemperature(float in, float out) {
    #define AVG_TEMP_ARRAY_SIZE 30         // takes about 3 secs to get a stable avg value. every 10 units is 1 second
    #define AVG_MAX_DELTA_FOR_REJECT 1.5  // degree Celsius.
    #define AVG_NUDGE 0.1                 // degree Celsius.

    static uint8_t sample_count = 0;
    static uint8_t temp_array_index = 0;
    static float temp_in_array[AVG_TEMP_ARRAY_SIZE];
    static float temp_out_array[AVG_TEMP_ARRAY_SIZE];
    static bool  enough_data = false; // only average values when there is enough data

    // drop values that are out of the range
    // if average buffer is true are set
    if ( enough_data == true) { 
        #ifdef DEBUG
            Serial.print("calcAvgTemperature delta(in)=");
            Serial.print( abs(g_temp_in_avg - in), DEC);
            Serial.print("avg = ");
            Serial.print( g_temp_in_avg , DEC);
            Serial.print("in = ");
            Serial.println( in, DEC);
        #endif
        if ( abs(g_temp_in_avg - in) > AVG_MAX_DELTA_FOR_REJECT ) {
            #ifdef DEBUG
                Serial.print("ERROR: temperature IN value out of expected range=");
                Serial.print( in , DEC);
                Serial.print(" avg=");
                Serial.println( g_temp_in_avg , DEC);
            #endif
            if ( in > g_temp_in_avg ) {
                in = in + AVG_NUDGE;
                #ifdef DEBUG
                    Serial.println("IN value nudged up.");
                #endif
            } else {
                in = in - AVG_NUDGE;
                 #ifdef DEBUG
                    Serial.println("IN value nudged down.");
                #endif
            }

        } // end of in value

        if ( abs(g_temp_out_avg - out) > AVG_MAX_DELTA_FOR_REJECT ) {
            #ifdef DEBUG
                Serial.print("ERROR: temperature OUT value out of expected range = ");
                Serial.print( out , DEC);
                Serial.print(" avg=");
                Serial.println( g_temp_out_avg , DEC);
            #endif
            if ( out > g_temp_out_avg ) {
                out = out + AVG_NUDGE;
                #ifdef DEBUG
                    Serial.println("OUT value nudged up.");
                #endif
            } else {
                out = out - AVG_NUDGE;
                 #ifdef DEBUG
                    Serial.println("OUT value nudged down.");
                #endif
            }

        } // end of OUT value

    } else {
        sample_count++;
    }

    // add to array to determine average value.
    // location in the array is not relevant for
    // the average calculation.
    if ( temp_array_index > AVG_TEMP_ARRAY_SIZE - 1) {
        temp_array_index = 0; // reset to start of array
    }
    temp_in_array[temp_array_index]  = in;
    temp_out_array[temp_array_index] = out;
    temp_array_index++;

    //sample_count++;
    if ( sample_count == AVG_TEMP_ARRAY_SIZE ) {
        enough_data = true;
    } else {
        // we don't have enough data so just send current non average value
        g_temp_in_avg  = in;
        g_temp_out_avg = out;
        #ifdef DEBUG
            Serial.print("Not enough data to calculate the average values, need " + String(AVG_TEMP_ARRAY_SIZE) + " sampels. sample_count=");
            Serial.println(sample_count, DEC);
        #endif
    }

    if (enough_data == true) { // ready to calc avg value
        #ifdef DEBUG
            Serial.print("Calculating the average values. sample_count=");
            Serial.println(  sample_count, DEC);
        #endif

        g_temp_in_avg = g_temp_out_avg = 0;
        for (uint8_t i = 0; i < AVG_TEMP_ARRAY_SIZE; i++) {
            g_temp_in_avg  = g_temp_in_avg  + temp_in_array[i];
            g_temp_out_avg = g_temp_out_avg + temp_out_array[i];
        }
        g_temp_in_avg  = g_temp_in_avg  / AVG_TEMP_ARRAY_SIZE;
        g_temp_out_avg = g_temp_out_avg / AVG_TEMP_ARRAY_SIZE;
    }

 
    #ifdef DEBUG
        Serial.print("IN=");
        Serial.print(in,DEC);
        Serial.print(" OUT=");
        Serial.print(out ,DEC);
        Serial.print(" delta(raw)=");
        Serial.println( floatTempFormater(out-in));
        Serial.print("g_temp_in_avg=");
        Serial.print(g_temp_in_avg,DEC);
        Serial.print(" g_temp_out_avg=");
        Serial.print(g_temp_out_avg,DEC);
        Serial.print(" delta(avg)=");
        Serial.println(floatTempFormater(g_temp_out_avg - g_temp_in_avg));
    #endif
}

// function to format float type.
String floatTempFormater(float in) {
    char  tmpbuf[10];
    dtostrf( in, 2, 1, tmpbuf );
    String str = String(tmpbuf);

    if ( str.length() < 4) {
        str = "0" + str;
    }
    return str;
}

// function to fill buffer with offset values to draw a graph.
void fillGraphicBufferValues() {
    uint8_t delta_value = abs(g_temp_in - g_temp_out) * 2; //two pixels is a degree.

    temp_vdelta_arr_graphic[0] = delta_value;
    if  ( temp_vdelta_arr_graphic[0] > 22 ) {
        temp_vdelta_arr_graphic[0] = 22;  // cap maximum graph height.
    }

    for (uint8_t i = DISPLAY_WIDTH - 1; i > 0; i-- ) {
        temp_vdelta_arr_graphic[i] = temp_vdelta_arr_graphic[i - 1];
    }
}

// function to show temperature on display.
void readTemperatures() {
    /* important add or subtract values to make sure both sensors give the right temperature.
        this must be done manualy once! See top of code for temp_in_adjustmend & temp_out_adjustmend
    */

    tempSensors.requestTemperatures();

    float tempCIndex_O = tempSensors.getTempCByIndex(0);
    float tempCIndex_1 = tempSensors.getTempCByIndex(1);

    #ifdef DEBUG
        Serial.print("getTempCByIndex(0) = ");
        Serial.print( tempCIndex_O, DEC);
        Serial.print(" getTempCByIndex(1) = ");
        Serial.print( tempCIndex_1, DEC);
        Serial.print( " delta(raw) = ");
        Serial.println( tempCIndex_O - tempCIndex_1, DEC );
    #endif

    if ( tempCIndex_O > -127 ) {
        g_temp_in = tempCIndex_O + (temp_in_adjustmend);  // error offset.
    }

    if ( tempCIndex_1 > -127 ) {
        g_temp_out = tempCIndex_1 + (temp_out_adjustmend);  // error offset.
    }

    #ifdef DEBUG
        Serial.print("g_temp_in = ");
        Serial.print( g_temp_in, DEC);
        Serial.print(" g_temp_out = ");
        Serial.print( g_temp_out, DEC);
        Serial.print( " delta = ");
        Serial.println( g_temp_in - g_temp_out, DEC );
    #endif

}

// function to print a device address
void printAddress(DeviceAddress deviceAddress) {
    #ifdef DEBUG
        for (uint8_t i = 0; i < 8; i++)
        {
            if (deviceAddress[i] < 16) Serial.print("0");
            Serial.print(deviceAddress[i], HEX);
        }
    #endif
}

// function to set temp device precision.
int setTempPrecision() {
    numberOfDevices = tempSensors.getDeviceCount();
    if ( numberOfDevices < 1 ) {
        #ifdef DEBUG
            Serial.println("Error no temperature sensors found!");
         #endif
        return 0;
    }
    // Loop through each device, print out address and set the precision
    for (int i = 0; i < numberOfDevices; i++)
    {
        // Search the wire for address
        if (tempSensors.getAddress(tempDeviceAddress, i)) {
            
            #ifdef DEBUG
                Serial.print("temperature sensors found, index = ");
                Serial.print(i, DEC);
                Serial.print(" with address: ");
                printAddress(tempDeviceAddress);
                Serial.println();

                Serial.print("Resolution set to ");
                Serial.print(TEMPERATURE_PRECISION, DEC);
                Serial.println(" bits.");
            #endif
            // set the resolution to TEMPERATURE_PRECISION bit (Each Dallas/Maxim device is capable of several different resolutions)
            tempSensors.setResolution(tempDeviceAddress, TEMPERATURE_PRECISION);
            #ifdef DEBUG
                Serial.print("Actual resolution set to : ");
                Serial.print(tempSensors.getResolution(tempDeviceAddress), DEC);
                Serial.println();
            #endif

        } else {
            #ifdef DEBUG
                Serial.print("Ghost device at address: ");
                Serial.print(i, DEC);
                Serial.print(" address not found, check power supply and cabling.");
            #endif
        }
    }
    return numberOfDevices;
}

Afstellen van de temperatuur sensors.

De sensors die ik gebruikt heb voor het testen wijken soms wel 1 graad Celsius of iets meer af van de werkelijkheid. Als je het belangrijk vindt dat de juiste temperatuur wordt aangeven dan kun je de sensors ijken. Dit kan via de UTP berichten of via de seriële logging van de Arduino IDE. Als je de seriële logging wil gebruiken dan moet je de DEBUG activeren door de // voor //#define DEBUG 1  te verwijderen.


   Serial.print(" in =");
   Serial.print(in,DEC); 
   Serial.print(" out =");
   Serial.print(out ,DEC); 
   Serial.print(" delta(raw) =");
   Serial.print( floatTempFormater(out-in));
   Serial.print(" temp_in_avg =");
   Serial.print(temp_in_avg,DEC);
   Serial.print(" temp_out_avg =");
   Serial.print(temp_out_avg,DEC);
   Serial.print(" delta(avg) =");
   Serial.println(floatTempFormater(temp_out_avg - temp_in_avg));
   

Met de twee variabelen temp_in_adjustmend en temp_out_adjustmend kun je de aanpassingen doorvoeren. Het is een kwestie van testen en aanpassen, testen aanpassen, enz. Het werkt het eenvoudigst als je eerst zorgt dat dezelfde waarde aangeven en daarna de waarde voor de werkelijke temperatuur aangeeft door bij beide dezelfde waarde aan te passen. Ik heb beide sensoren met duct tape bij elkaar geplaatst en in een doek gedaan tegen tocht e.d.

const float temp_in_adjustmend  =  0.36;
const float temp_out_adjustmend =  1.4;

UDP berichten

De UDP berichten zijn in JSON formaat.

{
"id":"ztatz_dt",
"version":1.0,
"t_unit":"C",
"t_in_avg":24.1,
"t_out_avg":22.0,
"t_in":24.298,
"t_out":22.150,
"seq":24464
}
  •  id: geeft de unieke naam aan van het type bericht.
  • version: versie van het bericht, in de toekomst kan het bericht uitgebreid worden.
  • t_unit: C is graden Celsius.
  • t_in_avg: de gemiddelde temperatuur in over de afgelopen 3 seconden.
  • t_out_avg: de gemiddelde temperatuur uit over de afgelopen 3 seconden.
  • t_in: de ruwe temperatuur in, wordt elke 0.1 seconde gemeten.
  • t_uit: de ruwe temperatuur uit, wordt elke 0.1 seconde gemeten.
  • seq: volgorde nummers van het bericht met een waarde van 1 tot 32768. Als de waarde 32769 wordt bereikt dan is het volgende nummer 1. Bij een reboot wordt altijd gestart met de waarde 1. Het doel is dat ontvangers kunnen vaststellen of ze een waarde al gehad hebben of er een gemist.

Onderstaande code geeft een simpele voorbeeld hoe je met Python de berichten kunt uitlezen.

#!/usr/bin/python

import socket
import time
import datetime

# bind all IP
HOST = '0.0.0.0' 
# Listen on Port 
PORT = 30721 
#Size of receive buffer   
BUFFER_SIZE = 1024    
# Create a TCP/IP socket
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
# Bind the socket to the host and port
s.bind((HOST, PORT))
while True:
    # Receive BUFFER_SIZE bytes data
    # data is a list with 2 elements
    # first is data
    #second is client address
    data = s.recvfrom(BUFFER_SIZE)
    if data:
        #print received data
        print( datetime.datetime.fromtimestamp(time.time()).strftime('%H:%M:%S') +' ' + str(data[0]) )
# Close connection
s.close()
P1-monitor download 20220330 V1.6.0 patch 1

P1-monitor download 20220330 V1.6.0 patch 1

P1 monitor is op de Raspberry Rpi3 en Rpi4 gebaseerde software om je slimme meter uit te lezen. Voor een meer uitgebreide beschrijving zie hier.

Het wordt sterk aanbevolen deze upgrade uit te voeren ook al zijn de wijzigingen niet relevant voor hoe je de P1 monitor gebruikt. Er zijn diverse essentiële aanpassing doorgevoerd in de API en database. Daarnaast ondersteunt deze versie de iOS app beter.

Mocht je de software de moeite waard vinden wil je deze dan delen via social media e.d. Bedankt voor de ondersteuning.

Upgrade of eerst installatie.

De software verkrijgen en installatie.

De P1 monitor software wordt geleverd als Raspberry Pi 3B/4 SDHC image die hieronder te downloaden is. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.  Zie hieronder hoe je dat daarna de rest van de ruimte op de SDHC card kunt gebruiken met raspi-config tool.

BELANGRIJK 1

Er is grote aanpassing gedaan aan de upgrade assistent, deze is beperkt compatibel met de vorige versie. Als de Upgrade assistent wordt gebruik met data van vorige versies dan is het noodzakelijk om ook een export van de vorige versie te doen en deze met de hand te importeren. Vanaf versie 0.9.15 en hoger kan de upgrade assistent weer zonder deze manuele upgrade worden uitgevoerd. Als dit niet wordt gedaan dan is historische data niet meer beschikbaar.

BELANGRIJK 2

De Upgrade Assistent is vervangen voor Upgrade Aide in de vorige versie 1.5.0. Je kunt nog wel een upgrade doen met data uit versies voor 1.5.0. Maak altijd eerst een manuele export als alternatief  als de automatische upgrade faalt.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de upgrade assistent.

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

  1. download het P1 monitor image file uit de download overzicht hieronder.
  2. pak het zip file uit en lees de bijlagen.
  3. kopieer het p1monYYYYMMDD-NN.NN-X.img file via de USB tool naar de SDHC card van minimaal 8GB (bij voorkeur een 32GB of 16GB). Let op! data op de card wordt overschreven en is niet meer te herstellen. (had ik al gehad over de export van data).
  4. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen. Het vergroten van het filesysteem gebeurt automatische als je de UpgradeAide gebruikt.
  5. plaats de SDHC card in de Pi.
  6. start de Pi, netwerk en P1 kabel aangesloten.
  7. Importeer de data, als je al eerdere versie hebt gebruikt.

FAQ

Mocht je vragen hebben kijk dan eerst in de FAQ of bezoek het forum.p1mon.nl

Problemen oplossen.

Image past niet op de SDHC card:

  1. Je kunt proberen de donor SDHC card opnieuw te formatteren met een dergelijk tool als de SD formatter.
  2. Installeer het image op een groter SDHC card. Het ongebruikte deel van de SDHC card kun je vrijgeven via de raspi-config tool met de optie Expand Filesystem.
  3. wis de browser cache als je layout problemen hebt.

Standaard wachtwoord besturingssysteem:

  1. Het standaard account en wachtwoord om in te kunnen loggen met SSH is p1mon met het wachtwoord  verandermij.
  2. Het advies dit wachtwoord na installatie aan te passen.

Juridisch spul en zo

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en Javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst of gebruik de upgrade assistent of de opvolger upgrade aide.

DOWNLOAD

SDHC images

P1 monitor wordt alleen ondersteunt op de Raspberry Pi 3B, Pi3 B+ of Pi4 (vanaf versie 0.9.11).
Een Pi 2 kan werken maar geen garanties.  Een Pi Zero is nooit getest. Van de Pi 1 is bekend dat deze fouten geeft en verloop van tijd stopt / crasht door een gebrek aan ram geheugen. Er is minimaal 1GB aan ram nodig!

Opgelost: Tekstfouten verwijderd.

Opgelost: SqlExport faalde als bepaalde opties niet actief waren, zoals kWh puls meting o.i.d.

Opgelost: P1NginxConfig.py time-out voor het vernieuwen van het certificaat naar 60 seconden gezet. Dit was 10 seconden waardoor de vernieuwing soms faalde.

Opgelost: Als het API Lets Encrypt certificaat vernieuwd wordt dan neemt de Nginx server dit nu over zonder dat een herstart nodig is.

Opgelost: P1 poort time-out voor de notificatie dat er geen data binnenkomt vergroot van 30 sec naar 45 seconden.

Opgelost: Index van de periode werd niet correct weggeschreven op de pagina’s met minimum en maximum data.

Opgelost: Import scherm gaf verkeerde header tekst weer.

DROPBOX

LET OP Dropbox moet opnieuw worden geautoriseerd als je een oudere versie dan 1.4.1 gebruikt.

Nieuw: het info.php scherm laat de status van de netwerktijd (ntp) zien. De update gebeurt normaal om de 30 minuten.

Nieuw: de status database bevat op index 125 het verschil in tijd tussen de Rpi en het P1 poort telegram. Dit werkt alleen met slimme meters die deze informatie doorgeven. Dit is ook te zien op de info webpagina boven de P1 telegram.

Nieuw: De berekening voor het weergeven van de systeem ram gebruik is aangepast. Met dank aan Intelwolf.

Security patches en upgrade van diverse software bibliotheken uitgevoerd tot 2022-03-21.

Let op wachtwoorden zijn altijd met HOOFDLETTERS!

Vragen, suggesties en bugs melden

BUGS

Helaas is bij het maken van het image de test data niet gewist van het bestand In /etc/dhcpcd.conf staan de laatste vier regels als volgt. Dit is niet correct. De patch 1 versie heeft deze bug niet meer. Ik ga mijn nu even diep schamen en sorry voor de verwarring. Mocht je nog de 1.6.0 versie met patch level 0 draaien dan staat hieronder hoe je de bug kan verwijderen. Dit is alleen nodig bij netwerk problemen.

In /etc/dhcpcd.conf

static routers=192.168.2.254 #P1MON_ROUTER 2021-12-08 13:04:06
interface wlan0 #P1MON_WLAN0_INTERFACE 2022-03-05 15:58:32
static ip_address=192.168.2.221/24 #P1MON_WLAN0_IP 2022-03-05 15:58:32
static domain_name_servers= 1.1.1.1 8.8.8.8 9.9.9.9 #P1MON_DNS 2022-03-29 21:45:58

Fix optie 1:

Pas het bestand /etc/dhcpcd.conf aan door alleen de onderstaande regel te laten staan

static domain_name_servers= 1.1.1.1 8.8.8.8 9.9.9.9 #P1MON_DNS 2022-03-29 21:45:58

Als het bestand aangepast is dan kun met het commando “sudo systemctl daemon-reload; sleep 1; sudo systemctl restart dhcpcd” het netwerk opnieuw starten.

Fix optie 2:

vul in het netwerk configuratie scherm(config-netwerk.php) in de velden IP adres eth0, IP adres wlan0, IP adres router, IP adres DNS server de IP addresen die je wil gebruiken en sla deze op. Als je DHCP wil blijven gebruiken dan kun je na een minuut of zo de velden wissen en dan saven. De waarde in het velden moeten wijzigen om het bestand /etc/dhcpcd.conf te wijzigen. Zelf als de velden leeg zijn dan moet de inhoud van de velden aangepast worden omdat alleen een wijziging van de velden het achterliggend proces start.

Op de info pagina wordt het geheugen gebruik verkeerd weergegeven. Ik heb een geheugen parameter verkeerd beoordeeld. In mijn geval was het verbruik ongeveer 80% na de correctie 34%. Deze fix is in de volgende versie beschikbaar. het kan overigens geen kwaad het is weergave die niet correct is en het heeft geen effect op de werking.

Deze bug wordt veroorzaakt doordat er geen controle was of er een crontab bestand was voor de p1mon user.

Fix optie 1: schakel de ftp back-up optie in en save deze, daarna mag deze weer uit of aanblijven omdat je back-ups wel een goed idee vindt.

Fix optie 2: log in op de rpi en voer het commando crontab < /dev/null uit.

P1-monitor download 20211203 V1.5.0

P1-monitor download 20211203 V1.5.0

P1 monitor is op de Raspberry Rpi3 en Rpi4 gebaseerde software om je slimme meter uit te lezen. Voor een meer uitgebreide beschrijving zie hier.

Het wordt sterk aanbevolen deze upgrade uit te voeren ook al zijn de wijzigingen niet relevant voor hoe je de P1 monitor gebruikt. Er zijn diverse essentiële aanpassing doorgevoerd in de API en database. Daarnaast ondersteunt deze versie de iOS app beter.

Mocht je de software de moeite waard vinden wil je deze dan delen via social media e.d. Bedankt voor de ondersteuning.

Upgrade of eerst installatie.

De software verkrijgen en installatie.

De P1 monitor software wordt geleverd als Raspberry Pi 3B/4 SDHC image die hieronder te downloaden is. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.  Zie hieronder hoe je dat daarna de rest van de ruimte op de SDHC card kunt gebruiken met raspi-config tool.

BELANGRIJK

Er is grote aanpassing gedaan aan de upgrade assistent, deze is beperkt compatibel met de vorige versie. Als de Upgrade assistent wordt gebruik met data van vorige versies dan is het noodzakelijk om ook een export van de vorige versie te doen en deze met de hand te importeren. Vanaf versie 0.9.15 en hoger kan de upgrade assistent weer zonder deze manuele upgrade worden uitgevoerd. Als dit niet wordt gedaan dan is historische data niet meer beschikbaar.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de upgrade assistent.

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

  1. download het P1 monitor image file uit de download overzicht hieronder.
  2. pak het zip file uit en lees de bijlagen.
  3. kopieer het p1monYYYYMMDD-NN.NN-X.img file via de USB tool naar de SDHC card van minimaal 8GB (bij voorkeur een 32GB of 16GB). Let op! data op de card wordt overschreven en is niet meer te herstellen. (had ik al gehad over de export van data).
  4. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen. Het vergroten van het filesysteem gebeurt automatische als je de UpgradeAide gebruikt.
  5. plaats de SDHC card in de Pi.
  6. start de Pi, netwerk en P1 kabel aangesloten.
  7. Importeer de data, als je al eerdere versie hebt gebruikt.

FAQ

Mocht je vragen hebben kijk dan eerst in de FAQ of bezoek het forum.p1mon.nl

Problemen oplossen.

Image past niet op de SDHC card:

  1. Je kunt proberen de donor SDHC card opnieuw te formatteren met een dergelijk tool als de SD formatter.
  2. Installeer het image op een groter SDHC card. Het ongebruikte deel van de SDHC card kun je vrijgeven via de raspi-config tool met de optie Expand Filesystem.
  3. wis de browser cache als je layout problemen hebt.

Standaard wachtwoord besturingssysteem:

  1. Het standaard account en wachtwoord om in te kunnen loggen met SSH is p1mon met het wachtwoord  verandermij.
  2. Het advies dit wachtwoord na installatie aan te passen.

Juridisch spul en zo

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en Javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst of gebruik de upgrade assistent of de opvolger upgrade aide.

DOWNLOAD

SDHC images

P1 monitor wordt alleen ondersteunt op de Raspberry Pi 3B, Pi3 B+ of Pi4 (vanaf versie 0.9.11).
Een Pi 2 kan werken maar geen garanties.  Een Pi Zero is nooit getest. Van de Pi 1 is bekend dat deze fouten geeft en verloop van tijd stopt / crashed door een gebrek aan ram geheugen. Er is minimaal 1GB aan ram nodig!

Opgelost: De status van piek en dal tarief werd niet goed verwerkt waardoor de kWh S0 puls meting en de tarief schakelaar niet goed werkte.

Opgelost: In het netwerk menu werd een hint IP adres in het grijs weergegeven. Dit kan verwarrend zijn. De text “suggestie” aan de tekst toegevoegd.

Opgelost: e-mail functie geeft meer details weer bij problemen.

DROPBOX

LET OP Dropbox moet opnieuw worden geautoriseerd als je een oudere versie dan 1.4.1 gebruikt.

Nieuw: Upgrade naar PHP 7.3.

Nieuw: De temperatuur actueel meter loopt nu van -30 tot 90. Dit was -30 tot 60 graden. En het scherm geeft het verschil tussen in en output nu weer.

Nieuw: Alle historische schermen kunnen voor de uren, dagen en maanden nu alle beschikbare data in de database weergeven. Voorheen was dat alleen de laatste dagen, of een paar maanden. Let op dat maakt de schermen wel trager want er moet soms tot 20 keer zoveel data worden opgehaald.

Nieuw: De USB stick ondersteunen nu ook NTFS en exFAt. Het wordt nog steeds aanbevolen om FAT32 sticks te gebruiken.

Nieuw: De USB stick ondersteunen nu ook NTFS en exFAt. Het wordt nog steeds aanbevolen om FAT32 sticks te gebruiken.

Nieuw: Verbeterde meldingen op de pagina’s info.php en config-P1poort.php als er geen data op de P1 poort binnen komt.

Nieuw: Upgrade Aide vervangt de Upgrade Assistent. Er kunnen nog wel updates worden gedaan met de Upgrade Assistent van oudere versies. vanaf deze versie kan de UpdateAide worden gebruikt. Deze oplossing is veel sneller en lost problemen op die Belgische gebruikers hadden bij upgrades. Dit voordeel werkt helaas pas bij de volgende upgrade.

Nieuw: Vastrechtkosten kunnen nu maximaal 999.999 euro zijn dat was 99.99 euro.

Nieuw: Excel export van de database is nu beschikbaar via het config in-export pagina.

Nieuw: In en export pagina ondersteund nu ook Engels en Frans.

Nieuw: E-mail configuratiescherm geeft aan als er geen TO, CC of BCC ontvangers zijn opgegeven.

Security patches en upgrade van diverse software bibliotheken uitgevoerd tot aan 2021-10-02.

Let op wachtwoorden zijn altijd met HOOFDLETTERS!

Vragen, suggesties en bugs melden

BUGS

Historieschermen instellingen

De historieschermen houden de keuze  week, dagen, maanden enz. niet goed vast ze verspringen een knop naar links. 

Export blijft hangen op 2%

De meeste eenvoudige workaround is in het configuratie menu -> kWh puls te activeren. Zet de optie kWh S0 puls meting actief op aan. Daarna zal de export werken. Je kunt na de export de optie kWh puls weer uitzetten.  Daarna kunnen er zoveel exports gemaakt worden als gewenst.

P1-monitor FAQ

P1-monitor FAQ

Frequently Asked Questions Een lijst met veelgestelde vragen.

Installatie van het image

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de upgrade assistent.

  1. Als de software al eerder hebt gebruikt maak dan een export van de data of gebruik de Update Assistent.
  2. Download het P1 monitor zip bestand.
  3. Pak het zip file uit en lees de bijlagen. Voor macOS kun je het “Archiveringshulpprogramma” of “The Unarchiver” gebruiken.
  4. Kopieer het p1monXXXX.img file via de MS Windows USB tool of macOS balinaEtcher naar de SDHC card van minimaal 8GB maar 16GB wordt aanbevolen. Groter mag uiteraard ook.
  5. Let op! data op de SDHC card wordt overschreven en is niet meer te herstellen.
  6. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen. Bij het gebruik van de upgrade assistent wordt dit automatisch gedaan.
  7. Plaats de SDHC card in de Pi.
  8. Start de Pi, netwerk en P1 kabel aangesloten.
  9. Gebruik de IOS app, je router, een tooltje zoals Angry IP Scanner of Fing om het IP adres van de P1 monitor te vinden.
  10. Voer het IP adres in Internet Browser (Chrome, Firefox, enz).
  11. Je kunt in het setup scherm (steeksleuteltje links onderin het menu) de snelheid van de P1 poort instellen. Standaard staat de P1 monitor op het DSMR 3 protocol 9600 7E1 (7 databits, even parity, 1 stop bit) het kan zijn dat je de instellingen moet aanpassen naar het DSMR 4 protocol 115200 8N1 (8 databits, geen parity, 1 stop bit).
  12. Op de info(rmatie) pagina kun je onderin zien of er data uit de slimme meter komt.
  13. Optioneel: Importeer de data, als je een eerdere versie hebt gebruikt.

Inloggen op de Raspberry Pi

Je kunt op de rasbperry pi inloggen met een ssh client zoals putty (Windows) of vSSH(mac). Inloggen kan met het account “p1mon” en het wachtwoord “verandermij” Met sudo is het mogelijke om root commando’s uit te voeren.

Is de P1 software ook los van het SDHC image te installeren?

Het simpele antwoord is nee. We leveren de P1 monitor als complete oplossing waarmee we beter kunnen garanderen dat de P1 monitor goed werkt en blijft werken. Het lijkt een vervelende eigenschap maar door de applicatie als compleet ecosysteem te behandelen halen we een zeer hoge betrouwbaarheid en relatief weinig hulp vragen. Als we er losse software van maken hebben we een aparte helpdesk nodig. Nadeel is een Pi die je alleen hiervoor gebruikt, maar wel een die het altijd doet. Het is onwaarschijnlijk dat we dit ooit zullen aanpassen. Mocht je toch de software willen installeren dan zou dit kunnen maar we geven hier geen ondersteuning op.

Aanpassen van de Sqlite database

Het importeren van gebruiksgegevens is (nog) geen optie van de P1 monitor.  Er zijn op dit moment twee manieren om min of meer veilig de data in de database te laden of aan te passen.  Beide hebben voor en nadelen afhankelijk van de situatie.  Optie 1 is een hack op de import en exportfunctie, optie 2 is gebruik maken van een sqlite database editor.

Voordat je wijziging doorvoert is het verstandig om een export te maken en deze veilig te stellen mocht er iets mis gaan.

1:  in en export functie gebruiken. De export functie doet niet anders dan een verzameling van SQL commando’s aanmaken met alle data daarin. Als de data in het exportfile wordt aangepast dan kan de data met de import functie worden geladen.  Het is niet ingewikkeld maar het is handig als je iets enige SQL kennis hebt. Het voordeel van deze manier is dat de p1 monitor blijft draaien en dat je geen nieuwe data moet missen.  Aanpak:

  • Maak een export van uit de p1 monitor
  • Pak het export zip file uit zodat er een (onder Windows met de optie Extract All) in dit voorbeeld heet het file test.zip.
  • Open de uitgepakte folder ???\test\p1mon\export. Daar staan de volgende files in:
    • historiexxxxx (de gas en e-waarde historie)
    • finacieelxxxxx.  (de financiële gegevens)
    • 01_weer_historiexxxxx (weer historie)
    • Configuratie (configuratie, het is beter deze niet te wijzigen tenzij je weet wat je doet)
    • weerxxxxxx (huidige weer informatie)
  • Bekijk de bestanden om te zien wat je wil aanpassen, bestanden die je niet wil aanpassen kun je verwijderen.
  • In dit voorbeeld ga ik ervan uit dat je alleen historiexxxxx (de gas en e-waarde historie) wil aanpassen. Dus alle andere bestanden kunnen dan weg.
  • Open het historie bestand met een tekst editor (write, notepad++) het maakt niet uit als het maar een platte tekst editor is MS Word kan ook maar dan moet je het bestand opslaan als ascii tekst bestand.
  • Je mag alle regels in het bestand laten staan of alles weghalen. Het SQL commando “replace into e_history_min (TIMESTAMP….  “  Vervangt het bestaande record in de database, het kost dan alleen meer tijd bij de import.
  • In dit voorbeeld nemen we een regel en alle andere regels worden verwijderd.
  • replace into e_history_min (TIMESTAMP, VERBR_KWH_181, VERBR_KWH_182,GELVR_KWH_281, GELVR_KWH_282, VERBR_KWH_X, GELVR_KWH_X,TARIEFCODE,ACT_VERBR_KW_170,ACT_GELVR_KW_270, VERBR_GAS_2421) values (‘2018-02-21 00:02:00′,’9296.694′,’9340.233′,’664.965′,’1756.033′,’0.00300000000061′,’0.0′,’D’,’0.21′,’0.0′,’0.0′);
  • Als je in deze regel de minuut waarde wil aanpassen va 9296.694 naar 8000.00 pas dit dan aan. Dit kun je net zo lang herhalen met extra records of met maar 1 record net wat je nodig hebt.
  • Pak de folder structuur weer in (maak er een zip file van)
  • Importeer het bestand.

2:  sqlite database editor.

Met de database editor zoals (http://sqlitebrowser.org/) kun je de via een eenvoudige gebruikersinterface de database inhoud bewerken. Echter om de data te kunnen bewerken moet de database niet door de P1 monitor worden aangepast.

  • Eerst moet de P1 monitor worden gestopt en de rechten op het database bestand worden aangepast. In dit voorbeeld wordt de historie database gebruikt.
  • Ga naar het setup menu -> bestanden -> data. Maakt het mogelijk op via samba/file share de bestanden te kopiëren naar je pc. Kopieer het bestand e_historie.db
  • Log in op de P1 montor als p1mon (wachtwoord verandermij of nog beter je hebt het wachtwoord aangepast). Gebruik hiervoor putty.
  • cd /p1mon/scripts
  • ./p1mon.sh stop (duurt even)
  • cd p1mon/mnt/ramdisk
  • mv e_historie.db e_historie.db.old
  • cd /p1mon/data
  • cp e_historie.db e_historie.db.old (dit is een veiligheidskopie)
  • chmod a+rw e_historie.db (dit is nodig om als de versie van de database op je pc is aangepast weer terug te kunnen schrijven).
  • Open het e_historie.db bestand met sqlite database editor en pas dit aan zoals je wilt.
  • Kopier het het e_historie.db terug naar de p1 via samba.
  • Log in op p1 montor.
  • cd /p1mon/scripts
  • ./p1mon start
  • Nu moet alles weer werken inclusief de aanpassingen.

Layout van de pagina is niet correct.

Als de layout van de pagina er niet goed uitziet of je ziet een knipperend uitroepteken/vraagteken waar een icoon moet staan wis dan de browser cache. Browsers bewaren (cache) veel gebruikte bestanden zoals afbeeldingen, css, iconen, enz. Door de browser cache te wissen wordt de laatste versie van het bestand geladen.

Het wachtwoord resetten / wissen.

De P1 monitor heeft twee relevante wachtwoorden. Een wachtwoord dat je in de browser gebruikt (de User Interface UI) Hieronder wordt het resetten/wissen van heet UI wachtwoord toegelicht.

Je kunt het wachtwoord wissen door het bestand /p1mon/mnt/ramdisk/session.txt te verwijderen. Na het verwijderen wordt op het inlogscherm gevraagd een nieuw wachtwoord in te stellen.

Methode 1: Log in op de Rasberry Pi via ssh met account p1mon en het wachtwoord verandermij (tenzij je het wachtwoord al veranderd hebt zoals het hoort). Voer het commando rm /p1mon/mnt/ramdisk/session.txt. in. Je kunt nu via het inlogscherm een nieuw wachtwoord instellen.

Methode 2: set een verbinding op met een sftp client zoals FileZilla met de volgend opties.
Protocol: sftp
Host: het IP-adres van de Rasberry Pi
Inlog type: normaal
Gebruiker: p1mon
Wachtwoord: verandermij (tenzij je het wachtwoord al veranderd hebt zoals het hoort ).

Zoek de folder /p1mon/mnt/ramdisk/ op en verwijder het bestand session.txt. Je kunt nu via het inlogscherm een nieuw wachtwoord instellen.

Hoe weet dat er een nieuw versie beschikbaar is.

nieuwe versie

De p1 monitor kan periodieke automatische controleren of er een nieuwe versie beschikbaar is. In het setup menu op de pagina systeem, kies de optie Nieuwe P1 monitor versie controle. Als er een nieuwe versie beschikbaar is dan wordt dit automatische zichtbaar in de user interface.

Als alternatief kan de website periodiek worden bezocht. Zie ook deze toelichting.

Is de software geschikt voor de Raspberry Pi4

De P1 software is vanaf versie 0.9.11 geschikt voor de Raspberry Pi4, eerdere versies van de software zijn niet geschikt. Versie 0.9.11 komt in Juli 2019 beschikbaar.

Weer API gebruiken

De weer informatie wordt verkregen via openweathermap.org website. Om deze website te kunnen gebruiken moet je een gratis account aanmaken op de website en een API key verkrijgen.

1: Maak een gratis account aan op de https://home.openweathermap.org/users/sign_in

2: maak via de link https://home.openweathermap.org/api_keys een API key aan

3: knip en plak de key in het P1 monitor veld api key en geeft in het veld je stad aan. Voer bij de stad minimaal drie karakters in. Je kunt tevens een landcode opgeven in het formaat stad, landcode bijvoorbeeld amsterdam,nl vs amsterdam,us om te voorkomen de verkeerde locatie wordt ingesteld.

4: save de instellingen

De API-update ongeveer elke half uur de weergegevens.

Vergroten van het SDHC-filesysteem

Je kunt remote inloggen met SSH op de Pi zie ook de tip Inloggen op de Raspberry pi. Via de Pi configuratie tool kun je dan het filesysteem vergroten. Met het commando “sudo raspi-config –expand-rootfs“.  Na dit commando moet de Pi worden herstart via het setup menu -> systeem -> herstart of stop systeem. Nota bene: als je de upgrade assistent gebruik dan wordt dit automatisch gedaan.

kWh per minuut?

Wat is kilowattuur per minuut, hoe kan dit?  De slimme meter geeft aan wat het verbruik per tijdseenheid is bij kWh.  Volgends de definitie is dit 1 Watt (W) staat gelijk aan 1 Joule (J) per seconde (s): 1 W = 1 J/s.  1 kilowatt = 1.000 Watt.  1 kWh is wat een apparaat met een vermogen van 1.000 Watt (1 kW) in één uur verbruikt.  In de P1 monitor nemen we de waarde van kWh op tijdstip T1 en tijdstip T2 (dat is T1 + 1 minuut)  waarbij we de KWh waarde van T2 – T1 aftrekken. Stel T1 is 10kWh en T2 is 10.005 kWh dan is er tijdens die minuut dus 10.005 – 10kWh verbruikt is 0.005 kWh.  De “echte” kWh waarde wordt dan 0.005 * 60 minuten wat 0,3kWh over een uur.

p1 poort instellen

Slimme meters gebruiken helaas verschillende snelheden van de P1 poort. De P1 monitor wordt standaard geleverd met een instelling van 9600 7 bits even pariteit en 1 stop bit (9600 7E1). Andere veel gebruikte instellingen zijn 1152008N1 of 11152007E1. Als er geen data binnen komt dan moeten de instellingen worden gewijzigd in het setup menu -> P1 poort.  Als deze instelling niet correct staat dan kan de P1 monitor niet functioneren.

Database retentie

Onderstaande overzicht geeft de retentie termijnen (bewaartijd) weer van de P1 monitor database. Oudere data wordt automatisch verwijderd.

Algemene retentie termijnen (bewaart tijd)
Slimme meter data 7 dagen / 1 dag*
fase informatie 7 dagen / 1 dag*
fase piek en dal waarden dagen 1096 dagen
Elektrisch en gas waarden interval minuten 31 dagen
Elektrisch en gas waarden interval uren 1096 dagen
Elektrisch en gas waarden interval dagen Onbeperkt
Elektrisch en gas waarden interval maanden Onbeperkt
Elektrisch en gas waarden interval jaren Onbeperkt
Elektrisch opwekking (levering) interval minuten 31 dagen
Elektrisch opwekking (levering) interval uren 1096 dagen
Elektrisch opwekking (levering) interval dagen 1096 dagen
Elektrisch opwekking (levering) interval maanden Onbeperkt
Elektrisch opwekking (levering) interval jaren Onbeperkt
Financiële gegevens interval dagen Onbeperkt
Financiële gegevens interval maanden Onbeperkt
Financiële gegevens interval jaren Onbeperkt
Momentele weer gegevens 32 dagen
Weer historie interval uren 1096 dagen
Weer historie interval dagen 1096 dagen
Weer historie interval maanden Onbeperkt
Weer historie interval jaren Onbeperkt
Watermeter historie interval minuten 31 dagen
Watermeter historie interval uren 1096 dagen
Watermeter historie interval dagen Onbeperkt
Watermeter historie interval maanden Onbeperkt
Watermeter historie interval jaren Onbeperkt
Binnen temperatuur data 24 uur
Binnen temperatuur minuten 7 dagen
Binnen temperatuur uren 366 dagen
Binnen temperatuur dagen Onbeperkt
Binnen temperatuur maanden Onbeperkt
Binnen temperatuur jaren Onbeperkt
*als de P1 data elke seconde wordt verwerkt dan is de retentie 1 i.p.v van 7 dagen

Dropbox

De Dropbox back-up optie heeft een probleem dat soms niet alle oude bestanden verwijderd worden. Dit is een probleem in Dropbox API die niet door de P1 monitor software opgelost kan worden. Het lijkt erop dat de index van bestanden in Dropbox niet compleet of corrupt raakt. Soms helpt het om de bestanden uit de folder te verplaatsen en dan weer terug te plaatsen.

Installeren bij andere software

We ondersteunen geen installatie van de P1 monitor als applicatie bij een Pi die andere software draait.  Hoewel dit technische wel mogelijk is zal dat tot veel vragen voor ondersteuning leiden en die tijd besteed ik liever aan het oplossen van bugs en het verbeteren en uitbreiden van de P1 monitor.  De P1 monitor is stabiel een heeft vrijwel geen storingen, dit is alleen goed te doen als de combinatie van hardware, besturingssysteem en applicatie als geheel kan worden onderhouden.  Het is wel toegestaan om de software ergens bij te zetten zolang dit niet als commercieel product wordt aangeboden.

Fase gegevens zijn niet zichtbaar

Niet alle slimme meters geven fase informatie over vermogen (Watt),  stroom (A) of spanning (Volt) door. Sommige meters geven helemaal geen fase informatie door en andere maar één of alle drie de fasen.

Soms alleen vermogen of spanning of stroom. De P1 monitor kan alleen weergeven wat wordt aangeboden door de slimme meter.  Het zou mogelijke zijn om de spanning, vermogen of ampères te berekenen als twee van de andere waarden beschikbaar zijn. Echter omdat de ampères alleen als geheel getal worden doorgeven (0,1,2, enz.) zou dit te veel afwijking geven in de berekende waarde.  Je kunt zien welke gegevens doorgeven worden door het slimme meter telegram te bekijken op de informatiepagina op je P1 monitor.  Je kunt de telegram codes daar inzien.

  • Vermogen kW verbruik L1: 1-0:21.7.0
  • Vermogen kW verbruik L2: 1-0:41.7.0
  • Vermogen kW verbruik L3: 1-0:61.7.0
  • Vermogen kW terug geleverd L1: 1-0:22.7.0
  • Vermogen kW terug geleverd L2: 1-0:42.7.0
  • Vermogen kW terug geleverd L3: 1-0:62.7.0
  • Spanning L1: 1-0:32.7.0
  • Spanning L2: 1-0:52.7.0
  • Spanning L3: 1-0:72.7.0
  • Ampères L1: 1-0:31.7.0
  • Ampères L2: 1-0:51.7.0
  • Ampères L3: 1-0:71.7.0

Reset/aanpassen van de watermeterstand (versie 0.9.17 en hoger).

1: De datum die je opgeeft in het veld “watermeterstand timestamp” moet in een tijdstip zijn dat later is dan het eerste record in de database.

2: Vult de stand in in het veld “watermeter stand in m³” bijvoorbeeld 1000 of 3032.44

3: Zet de schakelaar “watermeterstand reset” op aan.

4: Save de pagina, rechtsboven op de pagina.

5: het veld “watermeterstand status” geeft als alles goed is gegaan de tekst “aanpassing verwerkt” aan.

Je kunt dit zoveel keer doen als je wilt, de daadwerkelijk gemeten pulsen worden niet aangepast alleen de weergave wordt aangepast.

Een vast IP adres instellen voor Ethernet of Wifi

Als je een vast IP adres wil instellen dan wordt aangeraden omdat via DHCP reservation(binding) te realiseren. Dit doe je door in je router bij de optie dhcp op basis van het hardware adres (MAC) van de wifi en/of ethernet kaart een IP adres toe te wijzen.

De router zal dan bij het starten van de RPI elke keer het zelfde ingestelde adres geven aan de RPI. Het voordeel van deze manier van toewijzen is dat je altijd toegang tot de RPI houdt over het netwerk.

Je kunt ook een vast IP adres instellen op de RPI maar dan loop je het risico bij een fout dat je niet meer bij de RPI kan (zie het Internet). Om dat op te lossen zou je dan een keyboard en display moeten aansluiten op de RPI.

Het vast instellen van een IP adres direct op de RPI wordt afgeraden.

Upgrade assistent

Belangrijk! De upgrade assistent kan niet gebruikt worden door Belgische gebruikers. In België is de codering van dal en piek gebruik anders dan in Nederland. Zie de FAQ over upgraden voor Belgische gebruikers.

De upgrade assistent lost het probleem op van dat instellingen verloren gaan bij het upgraden van de P1 monitor. De P1 monitor wordt bij elke upgrade geleverd als complete pakket (een SDHC image). Dit heeft diverse voordelen maar het grootste nadeel is dat de database en diverse andere instellingen daarmee verloren gaan. Om de gegevens veilig te stellen is een tijdelijk opslag medium nodig, hiervoor wordt een standaard USB drive gebruikt die met FAT of FAT32 is geformatteerd.  Let op NTFS het standaard formaat van de Windows wordt niet ondersteunt.

Maak voor de zekerheid een export die je altijd kan gebruiken als er iets mis gaat met de upgrade assistent

Hoe te gebruiken.

1: download de laatste versie van de P1 monitor software en zorg dat het SHDC image gereed is om op een SDHC kaartje te zetten. Het is ideaal als je een tweede kaartje hebt maar je kunt ook het huidige SDHC kaartje gebruiken.  Als je een tweede SDHC kaartje hebt plaats daar dan de nieuwe versie van de software op.

2: formatteer de USB stick met FAT32/FAT en plaats deze in van de vrij USB poorten van de Raspberry Pi.

3: Start de Upgrade assistent via het setup menu -> in en export  ->  upgrade assistent  als alles goed gaat dan wordt onderstaande log getoond.

2020-09-18 10:01:09 Start van programma.
2020-09-18 10:01:09 Veiligstellen van gegevens gestart
2020-09-18 10:01:09 Controle op eerder gebruikt drive sda1 gestart.
2020-09-18 10:01:09 Controle op eerder gebruikt drive sdb1 gestart.
2020-09-18 10:01:09 Folder /p1monitor bestaat op device sdb1
2020-09-18 10:01:10 folder /p1mon/mnt/usb/p1monitor bestaat al niet aangemaakt.
2020-09-18 10:01:10 folder /p1mon/mnt/usb/p1monitor/data bestaat al niet aangemaakt.
2020-09-18 10:01:10 folder /p1mon/mnt/usb/p1monitor/wifi bestaat al niet aangemaakt.
2020-09-18 10:01:10 status database/p1mon/mnt/ramdisk/config.db wordt gekopieerd.
2020-09-18 10:01:10 /p1mon/mnt/ramdisk/config.db naar /p1mon/mnt/usb/p1monitor/data/config.db.p1ua gekopieerd.
2020-09-18 10:01:10 Start van SQL export dit duurt op en Pi3 ongeveer 10 a 15 seconden, geduld aub!
2020-09-18 10:01:27 /p1mon/var/p1mon-sql-export-P1UPGRADEASSIST.zip naar /p1mon/mnt/usb/p1monitor/data/p1mon-sql-export-P1UPGRADEASSIST.zip.p1ua gekopieerd.
2020-09-18 10:01:27 Export door P1SqlExport succesvol.
2020-09-18 10:01:28 USB device sdb1 unmount uitgevoerd.
2020-09-18 10:01:28 Verwerking gereed.

4: Laat de USB stick in de Raspberry Pi zitten!

5:  Shutdown de Pi via het setup menu -> systeem -> stop.  Verwijder het SDHC kaartje.

6:  Als je een tweede SHDC kaartje hebt met de nieuwe software plaats die dan. Zo niet plaats dan de nieuwe software op je het SHDC kaartje en plaats het kaartje terug.

7: De USB stick zit nog steeds in de Raspberry Pi en de een SHDC kaartje met de nieuwe software is geplaats. Start de Raspberry Pi door de voeding aan te sluiten of te onderbreken en weer aan te sluiten.

8: Bij het starten van de P1 monitor wordt gecontroleerd of er een USB stick aanwezig  zo ja dan wordt de data automatische geïmporteerd, de wifi herstelt en het SDHC kaart automatisch vergroot naar de maximale ruimte. Hiervoor moet de Pi worden herstart maar dit gebeurt geheel automatisch.  Na ongeveer 15 a 20 minuten is alle data geïmporteerd.   Het is van groot belang dat de Pi niet wordt uitgezet tijden de  aanpassingen. 

Heb geduld!.

Tot slot de data op de USB stick wordt gewist zodat bij een herstart niet nog een keer de data wordt geïmporteerd. Je kunt de USB stick laten zitten of verwijderen.

Data redden van een corrupt SDHC kaartje.

Het  SDHC kaartje van de Rpi kan spontaan de geest geven.  De eerste stap die je dan kan nemen is een nieuw kaartje regelen en de back-up terug zetten.  Als je nu echt of denkbeeldig voor de kop kan slaan dat je een back-up hebt dan is dit een vriendelijk herinnering dat een back-up hebben echt handig is.

Mocht je geen back-up hebben dan hier een stappen die je kunt nemen om mogelijke nog data te redden.  Alle historische data en 99% van de configuratie staat in Sqlite database files. De volgende stappen geven aan hoe je dat database bestanden van het corrupte kaartje kunt halen. In dit voorbeeld wordt er vanuit gegaan dat je een nieuw SDHC kaartje hebt gemaakt met de P1 monitor software.  Je kunt delen van de stappen aanpassen aan je eigen situatie. Je kunt de bestanden van het defecte kaartje ook vrij eenvoudig via Linux kopiëren.

Waarschuwing: het kaartje is defect je kunt dus lastig vaststellen of de database bestanden nog correct zijn. Als het kopiëren al lukt dan wil nog niet zeggen de database bestanden goed werken.

Om deze stappen uit te kunnen voeren heb je een USB -SDHC adapter nodig.

1: De P1 monitor draait weer met een andere kaartje, hij hoeft niet aangesloten te zijn aan de slimme meter maar dat mag wel. Plaats het corrupte kaartje met adapter in de USB poort.

2: login op de Rpi als gebruiker P1mon met het wachtwoord “verandermij” of met het aangepaste wachtwoord als je dit al gewijzigd had.

3: voer de volgende commando’s uit.

  • cd /p1mon/scripts/
  • ./p1mon.sh stop
  • cd /p1mon/data
  • rm *.db
  • cd /p1mon/mnt/ramdisk/
  • rm *.db
  • cd /p1mon/scripts/
  • sudo ./mount-clone.sh sda
  • cd /mnt/clone/data
  • cd /mnt/clone/p1mon/data/
  • cp *.db /p1mon/data/
  • sudo umount /mnt/clone/boot /mnt/clone
  • ./p1mon.sh start

4: export de data via de export functie van de P1 monitor. Dit maakt een dump en zorgt ervoor dat mogelijke defect in database bestanden gevonden worden.

5: voer de volgende commando’s uit

  • cd /p1mon/scripts/
  • ./p1mon.sh stop
  • cd /p1mon/data
  • rm *.db
  • cd /p1mon/mnt/ramdisk/
  • rm *.db
  • ./p1mon.sh start

6: importeer de eerder gemaakte export. Hiermee is gered wat gered kan worden.

Mocht je problemen ondervinden dat bestanden niet te lezen zijn of foutmeldingen geven dan kan het script sudo ./setok.sh in de folder /p1mon/scripts worden uitgevoerd..

Nieuwe versie van de P1 monitor indicatie

Als er een nieuwe versie van de software beschikbaar komt van de software. Dan wordt er rechtsboven in de pagina het icoon weergeven.

P1 monitor nieuwe versie

Dit moet je wegens privacy zelf aanzetten in het configuratiescherm systeem en dan de optie “Nieuwe P1 monitor versie controle” aan zetten.  De software kijkt periodiek op www.ztatz.nl of er een nieuwe versie gepubliceerd is.  Als er andere versie beschikbaar is dan wordt het icoon weergegeven.  Let op dat gebeurt eenmalig en wordt niet bij elke versie wijzing gedaan maar alleen bij de huidige versie + 1.  Dit wordt gedaan om te voorkomen dat er onnodig veel netwerk verzoeken naar de www.ztatz.nl wordt gedaan.  Stel je hebt versie 1 actief en versie 2 komt beschikbaar dan verschijnt het icoon. Als echter versie 3, 4, enz. Beschikbaar komt dan wordt dit niet weergeven in het icoon.

P1 monitor image past niet op SDHC-kaartje

SDHC-kaartjes of het nu 4GB  of 64GB is zijn per fabrikant anders. Dit kan problemen geven als je een 4GB of 8GB image op een SHDC- kaart wil zetten dat even groot is. Als het image maar 1 byte groter is dan het kaartje waar je de image op wil plaatsen dan zal het overzetten niet lukken. Vandaar dat er ook een 4GB image wordt geleverd voor mensen die nog met een 8GB kaartje werken. Het advies is om minimaal een 16GB kaartje te gebruiken maar 32GB mag uiteraard ook. Hoe groter het SDHC-kaartje des te langer de levensduur. Het is overigens lastig om nog 4GB kaartjes te kopen. Het 4GB kaartje wat wordt gebruikt om het image te maken is duurder dan een 16GB kaartje.

Upgraden voor Belgische gebruikers.

De upgrade assistent kan niet gebruikt worden door Belgische gebruikers omdat de codering van dal en piek gegevens andersom werken dan in Nederland. Hoe mooi zou het zijn in “een Europa” ☹

Volg onderstaande procedure  om te data fouten te voorkomen of zelf voor het eerste gebruik. Het is een vervelende procedure en ik ben bezig om na te denken hoe dit te automatiseren is.

1: Als de P1-monitor al wordt gebruikt maak dan een export.

2: Haal de P1 poort seriële kabel  uit de slimme meter, niet uit de Raspberry Pi.  

3: Installeer / set de nieuwe software op een SDHC kaartje.

4: Start de nieuw versie en stel de volgende parameters in. Op de pagina P1 poort (config-P1poort.php).  In het kader seriële instellingen de seriële parameters zoals snelheid e.d.. in het kader P1 Telegram -> dag/nacht mode -> België.

5: Plaats de P1 poort seriële kabel terug in de slimme meter.

6: Controleer op de in info.php pagina of er data binnen komt en of dal en piek conform verwachting werkt.  Als dit correct werkt dan kan de import worden gedaan. Zo niet pas de instellingen aan totdat de data correct wordt verwerkt.

7: importeer de eerder gemaakte export.

Met excuses namens de Europese unie….

Gebruik maken van gmail en de P1 monitor.

Gmail is te gebruiken via de een zogenaamd app wachtwoord.  Hieronder de stappen die je moet doorlopen.

Ga naar https://myaccount.google.com en log in op het account dat je wil gebruiken om e-mails te versturen.

Klik links op beveiliging/security en activeer Verificatie in 2stappen/2-step verfication

 Klik daarna op App-wachtwoorden/App Passwords

Kies de optie Anders(aangepaste naam)/ Other (Custom name). Kies een zinnige naam P1monitor o.i.d. en druk op de Generen/Generate.  Hierna verschijnt dan onderstaande venster.

Het wachtwoord is de code in het gele vlak (deze zijn niet geldig) zonder de spaties. Vul die in in de P1 monitor notificatie scherm.  Zoals hieronder aangeven.

Sla deze instelling op en gebruik de test knop voor een test bericht.

P1-monitor IOS pro en tools app

P1-monitor IOS pro en tools app

De app werkt alleen in samenwerking met de P1 monitor softwareversie 2.0.0 of hoger.

P1-monitor 2024

Deze app geeft via de iPad of iPhone toegang tot de P1 monitor data. De app kan lokaal worden gebruikt of op afstand via het internet. De app vervangt de app uit 2020 en is completer dan de 2020 versie.

Download on the app Store

P1-monitor pro 2020

Deze app maakt geeft via je mobiel of tablet toegang tot de P1 monitor data.  De app kan lokaal worden gebruik of op afstand via een (gratis) Dropbox account. Deze app wordt niet verder ontwikkelt maar is nog te installeren voor gebruikers die app eerder hebben gekocht. Het wordt aanbevolen de 2024 versie te gebruiken.

Waarom is de app niet gratis?

Apple vraag helaas alleen al voor het uitbrengen van een app 99 euro per jaar. Het doel is de app kosten dekkend te maken. Daarnaast is het een mooie manier om de P1 monitor te sponsoren of een donatie te doen. Mijn dank aan iedereen die app al heeft gekocht en/of heeft gedoneerd.

Roadmap

De roadmap voor de app is onder gebracht bij de P1 monitor roadmap

Dropbox

De app gebruikt Dropbox als tussenlaag zodat je de P1 monitor niet hoeft te koppelen met het Internet waardoor het gebruik veel veiliger is dan als je het grote boze internet toegang geeft tot je thuis netwerk. Je kunt daarnaast ook alleen lokaal toegang geven door geen gebruikt te maken van Dropbox. Of andersom alleen Dropbox gebruiken. Of met ander woorden beide opties kunnen tegelijk aan staan of een van de twee opties

De updates via Dropbox voor de dag waarden op het home scherm en historie werkt met een vertraging van een paar minuten. Normaal is een minuut of zes.

Activeren van app toegang in de P1 monitor.

Netwerk toegang: setup menu -> systeem -> activeer de optie “UDP broadcast daemon” aan.

UDP deamon aan

Dropbox toegang: setup menu -> bestanden -> DropBox API configuratie && Dropbox gegevens delen

dropbox delen van data

De app update de informatie onder normale omstandigheden met een vertraging tussen de 1 en 10 seconden.

P1-monitor tools

De P1-monitor tools is een (gratis) app die helpt bij het testen of instellen van de P1-monitor. Deze app bevat een momenteel twee functies:

1: Het vinden van de P1-monitor(s) op het lokale/huis netwerk. Dit maakt het eenvoudiger het IP adres van de P1-monitor/Rpi te vinden zodat je geen monitor hoeft aan te sluiten.

2: Het testen van de internet API. je kunt hiermee een vast zet van gegevens opvragen die slimme meter heeft verstuurd. Hiervoor moet je wel een software versie 1.5.x of hoger gebruiken.

Download on the app Store

Android app

Komt er ook een Android app? Ik heb te weinig tijd om ook een Android app te ondersteunen. Er is genoeg informatie beschikbaar zodat wellicht een derde een Android app kan ontwikkelen. Er is iemand die interesse heeft getoond om de Andriod app te ontwikkelen en technische ondersteuning is toegezegd.

P1-monitor pro 2020

Download on the app Store

P1-monitor tools

Download on the app Store

P1-monitor software download

P1-monitor software download

Misbruik van de downloadserver door veelvoudig downloaden wordt beloont met een IP ban!

Er wordt gebruik gemaakt van een nieuwe fileserver. Laat via een reactie weten als je een oudere versie nodig hebt. De downloads met de het rode download icoon komen van de nieuwe fileserver.

Deze pagina is gemaakt om snel een overzicht te geven van alle beschikbare versies. Ga naar de pagina van de specifiek versie voor details over upgraden en te volgen stappen.

hard drive fail

Als de P1 monitor software wil ondersteunen dan is een donatie mogelijke via PayPal. Deze software wordt gemaakt door thee om te zetten naar code.

Als je een bijdrage wil leveren om de kosten te dekken van de website of je wil je waardering te tonen dan kun je hier een donatie doen.

Klik op de een van twee knoppen en voer een bedrag naar keuze in. De voorkeur is om Bung te gebruiken omdat Paypal transactiekosten in rekening brengt.

Vragen kun je stellen op forum.p1mon.nl

Elke versie heeft een specifiek wachtwoord!

Let op alle wachtwoorden met hoofdletters.

P1-monitor download 20211002 V1.4.1

P1-monitor download 20211002 V1.4.1

P1 monitor is op de Raspberry Rpi3 en Rpi4 gebaseerde software om je slimme meter uit te lezen. Voor een meer uitgebreide beschrijving zie hier.

Het wordt sterk aanbevolen deze upgrade uit te voeren ook al zijn de wijzigingen niet relevant voor hoe je de P1 monitor gebruikt. Er zijn diverse essentiële aanpassing doorgevoerd in de API en database. Daarnaast ondersteunt deze versie de iOS app beter.

Mocht je de software de moeite waard vinden wil je deze dan delen via social media e.d. Bedankt voor de ondersteuning.

Upgrade of eerst installatie.

De software verkrijgen en installatie.

De P1 monitor software wordt geleverd als Raspberry Pi 3B/4 SDHC image die hieronder te downloaden is. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.  Zie hieronder hoe je dat daarna de rest van de ruimte op de SDHC card kunt gebruiken met raspi-config tool.

BELANGRIJK

Er is grote aanpassing gedaan aan de upgrade assistent, deze is beperkt compatibel met de vorige versie. Als de Upgrade assistent wordt gebruik met data van vorige versies dan is het noodzakelijk om ook een export van de vorige versie te doen en deze met de hand te importeren. Vanaf versie 0.9.15 en hoger kan de upgrade assistent weer zonder deze manuele upgrade worden uitgevoerd. Als dit niet wordt gedaan dan is historische data niet meer beschikbaar.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de upgrade assistent.

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

  1. download het P1 monitor image file uit de download overzicht hieronder.
  2. pak het zip file uit en lees de bijlagen.
  3. kopieer het p1monYYYYMMDD-NN.NN-X.img file via de USB tool naar de SDHC card van minimaal 8GB (bij voorkeur een 32GB of 16GB). Let op! data op de card wordt overschreven en is niet meer te herstellen. (had ik al gehad over de export van data).
  4. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen. Het vergroten van het filesysteem gebeurt automatische als je de UpgradeAide gebruikt.
  5. plaats de SDHC card in de Pi.
  6. start de Pi, netwerk en P1 kabel aangesloten.
  7. Importeer de data, als je al eerdere versie hebt gebruikt.

FAQ

Mocht je vragen hebben kijk dan eerst in de FAQ

Problemen oplossen.

Image past niet op de SDHC card:

  1. Je kunt proberen de donor SDHC card opnieuw te formatteren met een dergelijk tool als de SD formatter.
  2. Installeer het image op een groter SDHC card. Het ongebruikte deel van de SDHC card kun je vrijgeven via de raspi-config tool met de optie Expand Filesystem.
  3. wis de browser cache als je layout problemen hebt.

Standaard wachtwoord besturingssysteem:

  1. Het standaard account en wachtwoord om in te kunnen loggen met SSH is p1mon met het wachtwoord  verandermij.
  2. Het advies dit wachtwoord na installatie aan te passen.

Juridisch spul en zo

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst!

DOWNLOAD

SDHC images

P1 monitor wordt alleen ondersteunt op de Raspberry Pi 3B, Pi3 B+ of Pi4 (vanaf versie 0.9.11).
Een Pi 2 kan werken maar geen garanties.  Een Pi Zero is nooit getest. Van de Pi 1 is bekend dat deze fouten geeft en verloop van tijd stopt / crashed door een gebrek aan ram geheugen. Er is minimaal 1GB aan ram nodig!

Opgelost: main-1.php, main-2.php, e-levering, e-verbruik verwerkte 1 sec verwerking niet goed.

Opgelost: main-2 geeft betere header teksten weer als water uitgeschakeld is.

Opgelost: http naar https routering verbeterd zodat LetsEncrypt sneller en beter werkt.

Opgelost: DNS probleem opgelost voor een aantal routers.

Opgelost: werkt met de nieuwe manier van aanloggen die Dropbox vanaf 30 september 2021 eist. De app moet nog worden aangepast. Door deze aanpassing moet je Dropox opnieuw authenticeren. Een import werkt helaas niet.

DROPBOX

LET OP Dropbox moet opnieuw worden geautoriseerd!

Nieuw: de basic.json bestand/UDP bericht is uitgebreid met een data valid flag en de FQDN voor de internet API waardoor de app automatisch geconfigureerd kan worden. Basic versie nummer naar 7 gezet van versie 6.

Nieuw: Python libs systeem breed gemaakt, nodig omdat meerdere Rpi users die gebruiken.

Nieuw: QR code toegevoegd die het eenvoudiger maakt de app in te stellen.

Security patches en upgrade van diverse software bibliotheken uitgevoerd tot aan 2021-10-02.

Let op wachtwoorden zijn altijd met HOOFDLETTERS!

De 8GB versie die op 3 okotober tot 19:30 te downloaden was bevatte versie 1.4.0. Onderstaande 8GB image bevat wel de juiste 1.4.1 versie.

BUGS

Versie 1.3.0 tot versie 1.4.1 (deze versie ) heeft een probleem met het wegschrijven van dal en piek tarief status. Dit geeft problemen met de tariefschakeling en de piek en dal indicatie van de S0 kWh puls meting.

Je kunt dit oplossen door het toevoegen van onderstaande regel in het script /p1mon/scripts/p1_port_shared_lib.py. Voeg toe aan de functie.

def insert_db_serial_record( data_set=None, status=None ,dbstatus=None, dbserial=None, flog=None ):

Net onder try:

dbstatus.strset( str( data_set['tarief_code'] ), 85, flog )

Hierna moet de P1-software worden herstart.

cd /p1mon/scripts

./p1mon.sh restart

P1-monitor download 20210909 V1.4.0

P1-monitor download 20210909 V1.4.0

WAARSCHuWING DEZE VERSIE BEVAT EN BUG VOOR BEPAALDE ROUTERS MET NAME FRITZBOX. HET ADVIES DEZE VERSIE NIET TE GEBRUIKEN TOT DAT DIT OPGELOST IS.

P1 monitor is op de Raspberry Rpi3 en Rpi4 gebaseerde software om je slimme meter uit te lezen. Voor een meer uitgebreide beschrijving zie hier.

Het wordt sterk aanbevolen deze upgrade uit te voeren ook al zijn de wijzigingen niet relevant voor hoe je de P1 monitor gebruikt. Er zijn diverse essentiële aanpassing doorgevoerd in de API en database. Daarnaast ondersteunt deze versie de iOS app beter.

Deze tussenversie is met name intressant als je de Solar Edge informatie gebruikt of als je een versie gebruikt lager dan 1.3.0. Als je al 1.3.0. gebruikt dan kun je deze versie overslaan.

Mocht je de software de moeite waard vinden wil je deze dan delen via social media e.d. Bedankt voor de ondersteuning.

Upgrade of eerst installatie.

De software verkrijgen en installatie.

De P1 monitor software wordt geleverd als Raspberry Pi 3B/4 SDHC image die hieronder te downloaden is. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.  Zie hieronder hoe je dat daarna de rest van de ruimte op de SDHC card kunt gebruiken met raspi-config tool.

BELANGRIJK

Er is grote aanpassing gedaan aan de upgrade assistent, deze is beperkt compatibel met de vorige versie. Als de Upgrade assistent wordt gebruik met data van vorige versies dan is het noodzakelijk om ook een export van de vorige versie te doen en deze met de hand te importeren. Vanaf versie 0.9.15 en hoger kan de upgrade assistent weer zonder deze manuele upgrade worden uitgevoerd. Als dit niet wordt gedaan dan is historische data niet meer beschikbaar.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de upgrade assistent.

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

  1. download het P1 monitor image file uit de download overzicht hieronder.
  2. pak het zip file uit en lees de bijlagen.
  3. kopieer het p1monYYYYMMDD-NN.NN-X.img file via de USB tool naar de SDHC card van minimaal 8GB (bij voorkeur een 32GB of 16GB). Let op! data op de card wordt overschreven en is niet meer te herstellen. (had ik al gehad over de export van data).
  4. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen. Het vergroten van het filesysteem gebeurt automatische als je de UpgradeAide gebruikt.
  5. plaats de SDHC card in de Pi.
  6. start de Pi, netwerk en P1 kabel aangesloten.
  7. Importeer de data, als je al eerdere versie hebt gebruikt.

FAQ

Mocht je vragen hebben kijk dan eerst in de FAQ

Problemen oplossen.

Image past niet op de SDHC card:

  1. Je kunt proberen de donor SDHC card opnieuw te formatteren met een dergelijk tool als de SD formatter.
  2. Installeer het image op een groter SDHC card. Het ongebruikte deel van de SDHC card kun je vrijgeven via de raspi-config tool met de optie Expand Filesystem.
  3. wis de browser cache als je layout problemen hebt.

Standaard wachtwoord besturingssysteem:

  1. Het standaard account en wachtwoord om in te kunnen loggen met SSH is p1mon met het wachtwoord  verandermij.
  2. Het advies dit wachtwoord na installatie aan te passen.

Juridisch spul en zo

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst!

DOWNLOAD

SDHC images

P1 monitor wordt alleen ondersteunt op de Raspberry Pi 3B, Pi3 B+ of Pi4 (vanaf versie 0.9.11).
Een Pi 2 kan werken maar geen garanties.  Een Pi Zero is nooit getest. Van de Pi 1 is bekend dat deze fouten geeft en verloop van tijd stopt / crashed door een gebrek aan ram geheugen. Er is minimaal 1GB aan ram nodig!

Opgelost: de Solar Edge API verwerking van dag/nacht verdeling voor dagen, maanden en jaren niet correct.

Opgelost: de config pagina voor de P1 poort laat sneller zien als er geen data binnen komt.

Opgelost: de solarEdge schermen lieten soms de dubbele waarden zien.

Opgelost: meterreadings-d-m3.php hield de keuze voor het wel of niet laten zien van water of gas niet vast.

Opgelost: jQuery validate update.

Opgelost: MQTT gaf in de browser error melding als er geen topics waren gepubliceerd of MQTT niet actief was.

Nieuw: het is nu mogelijk om elke seconden berichten uit de slimme meter te verwerken. Dit kan uiteraard alleen als de slimme meter dat daadwerkelijk elke seconde een bericht stuurt. Via de configuratie pagina P1 poort kan dit via de optie “maximale verwerkingssnelheid” aan worden gezet. Let op dit geef een hoge(re) belasting op de Rpi. Het is getest op de Rpi3/Rpi4 en werkt daar goed op. Oudere of andere Rpi’s zijn niet getest.

Nieuw: de configuratie pagina P1 poort kan nu ook Engels of Frans weergeven.

Nieuw: P1SerReader aangepast zodat 1 seconde verwerking mogelijk is, inclusief verwerking van P1 telegrammen over het netwerk. Dit een aanzienlijke code aanpassing. De volgende pagina’s zijn hiervoor tevens aangepast main-1.php, main-2.php, info.php, e-levering.php, e-verbruik.php, fase-a.php, fase-historie.php.

Nieuw: Om te voorkomen dat P1 monitor webpagina’s geïndexeerd worden door Google, Bing, enz. is elke pagina voorzien van de meta tag <meta name=”robots” content=”noindex”>. Het indexeren (het kunnen vinden van de webpagina’s) geldt alleen voor die gevallen waar de gebruiker de Rpi heeft verbonden met het Internet. Dit kan direct of door port forwarden worden gerealiseerd. Bij de standaardinstellingen van de P1 monitor worden de webpagina’s niet geïndexeerd omdat Google, Bing enz. de pagina’s niet kunnen bereiken. Google gaat goed om met deze meta tag en zal pagina’s die al te vinden zijn op termijn verwijderen.

Nieuw: De tarief en piek/dal schakel functie op de GPIO poort werkte voorheen met +3.3V voor aan en 0V voor uit. Er is nu een optie om de signalen te inverteren. Aan wordt dan 0V een uit 3.3V. Dit om relais aan te sturen die omgekeerd werken.

Nieuw: In de main-1/2 schermen wordt nu de hoogste en laagste kW dagwaarden weergeven, dit was voorheen alleen de hoogste dagwaarde.

Nieuw: gas en watermeting informatie uitschakelen in de main-1/main-2 schermen. Dit voor diegene die geen gas gebruiken of de watermeter toepassen.

Nieuw: API via het internet nu mogelijk via https.

Nieuw: API veiliger gemaakt en XXS scripting filtering aangebracht.

Nieuw: /boot/config.txt aangepast zodat HDMI geforceerd aangezet wordt. Mocht iemand later dan op het moment van booten een monitor willen aansluiten.

Nieuw: Python bibliotheken, Rpi besturingssysteem upgrades naar de laatste versie.

Security patches en upgrade van diverse software bibliotheken uitgevoerd tot aan 2021-09-06

Let op wachtwoorden zijn altijd met HOOFDLETTERS!

De download is geblokkeerd wegens de bugs, zo gauw deze opgelost zijn wordt de nieuwe versie beschikbaar gemaakt. Sorry voor het ongemak.

Als je een bijdrage wil leveren om de kosten te dekken van de website e.d. dan kan kun je hier een donatie doen.

BUGS

1 seconde update werkt niet de UI

main-1, main-2,e-levering, e-verbruik geven nog steeds per 10 seconden de waarden weer en helaas niet elke seconde. Dit is opgelost in de volgende versie. Als je echter handig bent met code dan kun je de volgende regel aanpassen in de php bestanden. var p1TelegramMaxSpeedIsOn      = <?php if ( config_read( 154 ) == 1 ) { echo "true;"; } else { echo "false\n"; } ?>  De waarde 154 stond op 155.

Tijd van de Rpi wordt niet gezet

Een aantal mensen hebben aangeven dat ze problemen hebben met de tijd en dat deze niet goed gezet wordt via het internet. Het probleem valt helaas niet door mij te reproduceren. Het kan zijn dat het uitzetten van IP6 en de laatste Linux versie dit probleem geeft. Als je handig bent met Linux dan kun je volgende aanpassing proberen. Mocht dit het probleem oplossen laat het dan weten via een reactie.

1: ga naar het config-netwerk scherm op de Rpi

2: Vast IP adres, vul de velden in van van eth0/wlan/gateway en DNS (Het adres van de DNS mag ook 8.8.8.8 zijn) dit is een ip adres van Google DNS. Kies voor opslaan.

3: log in op de Rpi met p1mon

4: cd /p1mon/scripts

5: Voer de volgende twee commando’s uit. ./P1NetworkConfig.py -sip wlan0 en ./P1NetworkConfig.py -sip eth0 De eerste is voor Wifi de tweede voor kabelnetwerk. gebruik alleen die je daadwerkelijk gebruikt.

6: Nu moet het werken. Eventueel kan de tijd gezet worden met het commando: sudo date -s “2021-09-13 20:5301” wel de juiste tijd gebruiken.

P1-monitor download 20210618 V1.3.1

P1-monitor download 20210618 V1.3.1

DIT IS NIET DE LAATSTE VERSIE. DE LAATSTE VERSIE IS TE VINDEN ALS EERSTE ARTIKEL OP DE WEBSITE.

P1 monitor is op de Raspberry Rpi3 en Rpi4 gebaseerde software om je slimme meter uit te lezen. Voor een meer uitgebreide beschrijving zie hier.

Het wordt sterk aanbevolen deze upgrade uit te voeren ook al zijn de wijzigingen niet relevant voor hoe je de P1 monitor gebruikt. Er zijn diverse essentiële aanpassing doorgevoerd in de API en database. Daarnaast ondersteunt deze versie de iOS app beter.

Deze tussenversie is met name intressant als je de Solar Edge informatie gebruikt of als je een versie gebruikt lager dan 1.3.0. Als je al 1.3.0. gebruikt dan kun je deze versie overslaan.

Mocht je de software de moeite waard vinden wil je deze dan delen via social media e.d. Bedankt voor de ondersteuning.

Upgrade of eerst installatie.

De software verkrijgen en installatie.

De P1 monitor software wordt geleverd als Raspberry Pi 3B/4 SDHC image die hieronder te downloaden is. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.  Zie hieronder hoe je dat daarna de rest van de ruimte op de SDHC card kunt gebruiken met raspi-config tool.

BELANGRIJK

Er is grote aanpassing gedaan aan de upgrade assistent, deze is beperkt compatibel met de vorige versie. Als de Upgrade assistent wordt gebruik met data van vorige versies dan is het noodzakelijk om ook een export van de vorige versie te doen en deze met de hand te importeren. Vanaf versie 0.9.15 en hoger kan de upgrade assistent weer zonder deze manuele upgrade worden uitgevoerd. Als dit niet wordt gedaan dan is historische data niet meer beschikbaar.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de upgrade assistent.

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

  1. download het P1 monitor image file uit de download overzicht hieronder.
  2. pak het zip file uit en lees de bijlagen.
  3. kopieer het p1monYYYYMMDD-NN.NN-X.img file via de USB tool naar de SDHC card van minimaal 8GB (bij voorkeur een 32GB of 16GB). Let op! data op de card wordt overschreven en is niet meer te herstellen. (had ik al gehad over de export van data).
  4. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen. Het vergroten van het filesysteem gebeurt automatische als je de UpgradeAide gebruikt.
  5. plaats de SDHC card in de Pi.
  6. start de Pi, netwerk en P1 kabel aangesloten.
  7. Importeer de data, als je al eerdere versie hebt gebruikt.

FAQ

Mocht je vragen hebben kijk dan eerst in de FAQ

Problemen oplossen.

Image past niet op de SDHC card:

  1. Je kunt proberen de donor SDHC card opnieuw te formatteren met een dergelijk tool als de SD formatter.
  2. Installeer het image op een groter SDHC card. Het ongebruikte deel van de SDHC card kun je vrijgeven via de raspi-config tool met de optie Expand Filesystem.
  3. wis de browser cache als je layout problemen hebt.

Standaard wachtwoord besturingssysteem:

  1. Het standaard account en wachtwoord om in te kunnen loggen met SSH is p1mon met het wachtwoord  verandermij.
  2. Het advies dit wachtwoord na installatie aan te passen.

Juridisch spul en zo

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst!

DOWNLOAD

SDHC images

P1 monitor wordt alleen ondersteunt op de Raspberry Pi 3B, Pi3 B+ of Pi4 (vanaf versie 0.9.11).
Een Pi 2 kan werken maar geen garanties.  Een Pi Zero is nooit getest. Van de Pi 1 is bekend dat deze fouten geeft en verloop van tijd stopt / crashed door een gebrek aan ram geheugen. Er is minimaal 1GB aan ram nodig!

Opgelost: de solar edge pagina’s werden alleen getoond als de kWh S0 display optie aan stond.

Opgelost: spelfouten verwijderd.

Opgelost: De Solar Edge API timestamp geeft bij uren niet altijd de gehele minuten weer waardoor timestamp anders is dan de P1 monitor verwacht. Alle tijden worden nu gecontroleerd voordat ze naar de P1 database worden weggeschreven.

Opgelost: P1SqlImport gaf een ongevaarlijke ERROR melding als een import database bestand geen records bevatte.

Opgelost: timeout van config-read.php gezet, dit voorkomt dat web pagina’s falen, het kan bij een ge-locked database de opbouw van de pagina maximaal 5 minuten vertragen.

Nieuw: De Solar Edge configuratie en database kunnen teruggezet worden naar de “fabriekstand”, Alle configuratie en database gegeven worden dan gewist.

Nieuw: LetsEncrypt ondersteuning toegevoegd.

Nieuw: DuckDNS toegevoegd ondersteuning toegevoegd voor dynamische DNS toewijzing.

Nieuw: De netwerkconfiguratie pagina kan nu ook Engels en Frans tekst weergeven.

Security patches en upgrade van diverse software bibliotheken uitgevoerd tot aan 2021-06-18

Let op wachtwoorden zijn altijd met HOOFDLETTERS!

Als je een bijdrage wil leveren om de kosten te dekken van de website e.d. dan kan kun je hier een donatie doen.

BUGS

de Solar Edge API verwerking van dag/nacht verdeling voor dagen, maanden en jaren werkt niet goed bij de updates’. Dit is ondertussen opgelost en zit in de volgende versie.

De SolarEdge schermen minuut, uur, dag, maand en jaar geven soms de dubbele waarde weer. Met F5 de browser wissen kan helpen. Dit is ondertussen opgelost en zit in de volgende versie.

P1-monitor download 202106 V1.3.0

P1-monitor download 202106 V1.3.0

DIT IS NIET DE LAATSTE VERSIE. DE LAATSTE VERSIE IS TE VINDEN ALS EERSTE ARTIKEL OP DE WEBSITE.

P1 monitor is op de Raspberry Rpi3 en Rpi4 gebaseerde software om je slimme meter uit te lezen. Voor een meer uitgebreide beschrijving zie hier.

Het wordt sterk aanbevolen deze upgrade uit te voeren ook al zijn de wijzigingen niet relevant voor hoe je de P1 monitor gebruikt. Er zijn diverse essentiële aanpassing doorgevoerd in de API en database. Daarnaast ondersteunt deze versie de iOS app beter.

Mocht je de software de moeite waard vinden wil je deze dan delen via social media e.d. Bedankt voor de ondersteuning.

Upgrade of eerst installatie.

De software verkrijgen en installatie.

De P1 monitor software wordt geleverd als Raspberry Pi 3B/4 SDHC image die hieronder te downloaden is. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.  Zie hieronder hoe je dat daarna de rest van de ruimte op de SDHC card kunt gebruiken met raspi-config tool.

BELANGRIJK

Er is grote aanpassing gedaan aan de upgrade assistent, deze is beperkt compatibel met de vorige versie. Als de Upgrade assistent wordt gebruik met data van vorige versies dan is het noodzakelijk om ook een export van de vorige versie te doen en deze met de hand te importeren. Vanaf versie 0.9.15 en hoger kan de upgrade assistent weer zonder deze manuele upgrade worden uitgevoerd. Als dit niet wordt gedaan dan is historische data niet meer beschikbaar.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de upgrade assistent.

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

  1. download het P1 monitor image file uit de download overzicht hieronder.
  2. pak het zip file uit en lees de bijlagen.
  3. kopieer het p1monYYYYMMDD-NN.NN-X.img file via de USB tool naar de SDHC card van minimaal 8GB (bij voorkeur een 32GB of 16GB). Let op! data op de card wordt overschreven en is niet meer te herstellen. (had ik al gehad over de export van data).
  4. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen. Het vergroten van het filesysteem gebeurt automatische als je de UpgradeAide gebruikt.
  5. plaats de SDHC card in de Pi.
  6. start de Pi, netwerk en P1 kabel aangesloten.
  7. Importeer de data, als je al eerdere versie hebt gebruikt.

FAQ

Mocht je vragen hebben kijk dan eerst in de FAQ

Problemen oplossen.

Image past niet op de SDHC card:

  1. Je kunt proberen de donor SDHC card opnieuw te formatteren met een dergelijk tool als de SD formatter.
  2. Installeer het image op een groter SDHC card. Het ongebruikte deel van de SDHC card kun je vrijgeven via de raspi-config tool met de optie Expand Filesystem.
  3. wis de browser cache als je layout problemen hebt.

Standaard wachtwoord besturingssysteem:

  1. Het standaard account en wachtwoord om in te kunnen loggen met SSH is p1mon met het wachtwoord  verandermij.
  2. Het advies dit wachtwoord na installatie aan te passen.

Juridisch spul en zo

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst!

DOWNLOAD

SDHC images

P1 monitor wordt alleen ondersteunt op de Raspberry Pi 3B, Pi3 B+ of Pi4 (vanaf versie 0.9.11).
Een Pi 2 kan werken maar geen garanties.  Een Pi Zero is nooit getest. Van de Pi 1 is bekend dat deze fouten geeft en verloop van tijd stopt / crashed door een gebrek aan ram geheugen. Er is minimaal 1GB aan ram nodig!

Opgelost: Pythons packages naar de laatste versie gebracht.

Opgelost: rpi-clone upgrade naar versie 2.0.22

Opgelost: tool tip van de kostenschermen gaf Liter weer terwijl dit kubieke meters zou moeten zijn.

Opgelost: bug in api/v2/watermeter/ met de parameter starttime en de optie round. Dit had geen effect op de werking van de P1 monitor.

Opgelost: spelfouten verholpen. Met dank aan Arjan.

Opgelost: diverse Python libs vernieuwd.

Opgelost: Euro per dag / dagen in het tool tip kader gaf kWh verbruik: niet weer. Met dank aan Reijer.

Opgelost: pyhton core upgrade uitgevoerd.

Opgelost: financial API werkte niet met de ROUND optie.

Opgelost: round optie in API calls gaf een .0 terug in de calls’. Dit is aangepast. Dit heeft geen effect op de P1 monitor maar kan gebruik door derde applicaties raken.

Opgelost: API lib Falcon upgrade naar versie 3.0.1.

Opgelost: stats-d-gas.php liet de P1 pagina header staan als deze was uitgezet. Met dank aan Luc.

Opgelost: Als er te veel oude bestanden in de Dropbox ram folder staan dan worden deze na twee uur verwijderd. Dit probleem kan ontstaan als er geen ruimte beschikbaar op Dropbox of de authenticatie niet correct gaat.

Opgelost: kWh S0 laatste melding werd getoond terwijl deze niet actief was.

Nieuw: NFS fileserver service verwijderd om geheugen en CPU te besparen en de Rpi te hardenen.

Nieuw: Python onnodig packages verwijderd (scipy).

Nieuw: kWh tool tip waarden geven nu 4 i.p.v van 3 cijfers achter de komma weer. Dit voor meters die 0.0000 puls waarden gebruiken.

Nieuw: SolarEdge API zonnepanelen data kan nu worden verwerkt. Met dank aan Timothy, Stefan, Simon, Gert, en Ton.

Nieuw: Beperkte extra taal ondersteuning voor Engels en Frans. Deze ondersteuning wordt op termijn uitgebreid. In te stellen in het display menu. BEST EFFORT FRANS. Op dit moment wordt op een paar pagina’s zowel Nederlands, Engels en Frans ondersteund. Dit wordt in de volgende versies uitgebreid omdat het heel veel werk is om de pagina’s aan te passen.

Currently, Dutch, English and French are supported on a few pages. This will be expanded in the following versions because it is a lot of work to change the pages.

Actuellement, le néerlandais, l’anglais et le français sont pris en charge sur quelques pages. Cela sera développé dans les versions suivantes car il faut beaucoup de travail pour changer les pages.

Nieuw: Bij nieuwe installatie wordt voortaan de P1 poort snelheid van 1152008N1 gebruikt omdat dit de meest gebruikte snelheid is. Voorheen was dit de 96007E1 instelling. Dit heeft geen effect bij upgrades e.d.

Security patches en upgrade van diverse software bibliotheken uitgevoerd tot aan 2021-05-23

Let op wachtwoorden zijn altijd met HOOFDLETTERS!

Als je een bijdrage wil leveren om de kosten te dekken van de website e.d. dan kan kun je hier een donatie doen.

BUGS

Als je gebruik wil maken van de Solar Edge data voor de dag, week, maand en jaar wil bekijken, dan moet display de kWh S0 ook aan staan. Ook al wordt deze niet gebruikt.

Je kunt dit zelf oplossen door in de regel  if ( checkDisplayIsActive( 129 ) == false) { return; } 129 te vervangen door 147 als volgt if ( checkDisplayIsActive( 147 ) == false) { return; } voor de bestanden /p1mon/www/powerproduction-api-h.php, /p1mon/www/powerproduction-api-d.php, /p1mon/www/powerproduction-api-m.php, /p1mon/www/powerproduction-api-j.php.

De SolarEdge updates werken niet goed. Waardoor de P1 monitor te weinig aangeeft. Dit wordt onderzocht.

Update: 11-06-2021: De reden van de bug gevonden. De API geeft niet alle data correct weer en wordt aangevuld. De waarde voor het tijdstip 12:00 is volgens de API om 12:07 0,5010 kWh en de waarde van 12:00 uur is om 12:20 1,5410 kWh. De aanname is/was dat API het waarde van de afgelopen 15 minuten weergeeft. Dat is blijkbaar niet correct de waarde van 12:00 – 12:15 wordt weergeven en zal dus pas na 12:15 (elke kwartier correct zijn). De huidige software ging uit van de eerste verwerking (complete data). Code wordt momenteel aangepast,. Wanneer het klaar is? Als het klaar is……

P1-monitor Rpi HAT

P1-monitor Rpi HAT

Een van de gebruikers van de P1 monitor wil een Rpi HAT maken die het aansluiten van een watermeter, kWh en andere sensors eenvoudiger maakt. Deze pagina is bedoeld om vragen te stellen en suggesties te doen over de Rpi HAT.

SPECIFICATIES

Realisatie:
– 2x aansluiting voor een watermeter met NPN detector.
– 4x S0 aansluiting voor NPN detector (met 5V pullup)
– 2x 24V sourcing digitale uitgang.

LINKS

https://a360.co/3bpihCs

https://a360.co/3ogHR1u

https://imgur.com/a/aCmOVa7

ROADMAP

Versie met reguliere niet SMD onderdelen (verzoeken 1).

0-10V voor een verwarmingselement (verzoeken 1).

Een temperatuursensor (verzoeken 1).

een led op de PI HAT die ook op de sensor zit (verzoeken 1).

Koeling fan (verzoeken 1)

Extra GND aansluitingen (verzoeken 1).


Een BMP180 Barometric Pressure/Temperature/Altitude Sensor en die waarden dan in p1mon software ( verzoeken 1)

Stroomstoten via een stroomklem mogelijk maken (verzoeken 2).

P1-monitor download 202103

P1-monitor download 202103

P1 monitor is op de Raspberry Rpi3 en Rpi4 gebaseerde software om je slimme meter uit te lezen. Voor een meer uitgebreide beschrijving zie hier.

Het wordt sterk aanbevolen deze upgrade uit te voeren ook al zijn de wijzigingen niet relevant voor hoe je de P1 monitor gebruikt. Er zijn diverse essentiële aanpassing doorgevoerd in de API en database. Daarnaast ondersteunt deze versie de iOS app beter.

Mocht je de software de moeite waard vinden wil je deze dan delen via social media e.d. Bedankt voor de ondersteuning.

Upgrade of eerst installatie.

De software verkrijgen en installatie.

De P1 monitor software wordt geleverd als Raspberry Pi 3B/4 SDHC image die hieronder te downloaden is. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.  Zie hieronder hoe je dat daarna de rest van de ruimte op de SDHC card kunt gebruiken met raspi-config tool.

BELANGRIJK

Er is grote aanpassing gedaan aan de upgrade assistent, deze is beperkt compatibel met de vorige versie. Als de Upgrade assistent wordt gebruik met data van vorige versies dan is het noodzakelijk om ook een export van de vorige versie te doen en deze met de hand te importeren. Vanaf versie 0.9.15 en hoger kan de upgrade assistent weer zonder deze manuele upgrade worden uitgevoerd. Als dit niet wordt gedaan dan is historische data niet meer beschikbaar.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de upgrade assistent.

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

  1. download het P1 monitor image file uit de download overzicht hieronder.
  2. pak het zip file uit en lees de bijlagen.
  3. kopieer het p1monYYYYMMDD-NN.NN-X.img file via de USB tool naar de SDHC card van minimaal 8GB (bij voorkeur een 32GB of 16GB). Let op! data op de card wordt overschreven en is niet meer te herstellen. (had ik al gehad over de export van data).
  4. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen. Het vergroten van het filesysteem gebeurt automatische als je de UpgradeAide gebruikt.
  5. plaats de SDHC card in de Pi.
  6. start de Pi, netwerk en P1 kabel aangesloten.
  7. Importeer de data, als je al eerdere versie hebt gebruikt.

FAQ

Mocht je vragen hebben kijk dan eerst in de FAQ

Problemen oplossen.

Image past niet op de SDHC card:

  1. Je kunt proberen de donor SDHC card opnieuw te formatteren met een dergelijk tool als de SD formatter.
  2. Installeer het image op een groter SDHC card. Het ongebruikte deel van de SDHC card kun je vrijgeven via de raspi-config tool met de optie Expand Filesystem.
  3. wis de browser cache als je layout problemen hebt.

Standaard wachtwoord besturingssysteem:

  1. Het standaard account en wachtwoord om in te kunnen loggen met SSH is p1mon met het wachtwoord  verandermij.
  2. Het advies dit wachtwoord na installatie aan te passen.

Juridisch spul en zo

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst!

DOWNLOAD

SDHC images

P1 monitor wordt alleen ondersteunt op de Raspberry Pi 3B, Pi3 B+ of Pi4 (vanaf versie 0.9.11).
Een Pi 2 kan werken maar geen garanties.  Een Pi Zero is nooit getest. Van de Pi 1 is bekend dat deze fouten geeft en verloop van tijd stopt / crashed door een gebrek aan ram geheugen.

Wat is er veranderd in versie 202103-1.2.0

Opgelost: de oude watermeter standen werden niet goed geconverteerd naar de nieuwe database.

Opgelost: diverse spelfouten verholpen. Voel je vrij dit te melden.

Opgelost: de kostenschermen lieten de tooltip niet zien als extra data zoals water, gas of kWh ontbrak voor die dag, maand of jaar. Nu wordt de tooltip wel getoond.

Opgelost: config-tarief.php gaf de verkeerde tooltip kosten weer (kWh). Met dank aan Rob.

Opgelost: kleine code verbetering in P1WatermeterV2.py. Met dank aan Aad

Opgelost: beter verwerken voor back-up van SFTP, optimalisatie van de code en betere foutmeldingen. Met dank aan Aad.

Opgelost: config-water.php code schoonheidsfout verholpen. Met dank aan Aad.

Opgelost: config-io bewaarde de ingestelde waarde niet. Met dank aan Bert.

Nieuw: PHP 7.3 upgrade uitgevoerd.

Nieuw: De P1 monitor automatisch controle voor een nieuwe software versie werkt ook als er oudere versies van de software in gebruik zijn. Er wordt ongeveer 1 maal per 24 uur gecontroleerd of er een nieuwe versie beschikbaar is.

Nieuw: Het minuten overzicht (stats.php) en (powerproduction-min.php) hebben nu de mogelijkheid om kWh prognose te laten zien naast of i.p.v. van de kWh minuut grafiek.

Nieuw: via de config pagina kan de header boven elke pagina worden uitgeschakeld, dit is handig voor kleinere schermen zoals tablets e.d.

Nieuw: Een configuratie scherm voor log informatie toegevoegd.

Nieuw: nginx configuratie aangepast waardoor er meer naar ram en minder naar het SDHC kaartje wordt geschreven om zo de levensduur te verbeteren van het SDHC kaartje.

Nieuw: De details van de weer informatie verdwijnen als de muis wordt bewogen. Op mobile apparaten kun je klikken of 10 seconden wachten dan verdwijnt de detailinformatie ook.

Nieuw: MQTT client programma wordt alleen gestart als dit door de gebruiker wordt ingesteld. Dit beperkt ram gebruik en CPU gebruik. Let op deze opties staat standaard uit en moet worden geactiveerd ook als je een import doet of de upgrade assistent gebruikt.

Nieuw: MQTT geeft nu ook het eigen opgewekte vermogen weer van de kWh S0 meting. topic id = p1monitor/powerproduction/minute/xxxxx.

Nieuw: Import functie werkt nu ook als een deel van de export corrupt is.

Security patches en upgrade van diverse software bibliotheken uitgevoerd tot aan 2021-02-26

Let op wachtwoorden zijn altijd met HOOFDLETTERS!

Als je een bijdrage wil leveren om de kosten te dekken van de website e.d. dan kan kun je hier een donatie doen.

BUGS

De temperatuur weergave voor dagen, maanden en jaren van opgewekte kWH is niet correct. Dit is opgelost in de volgende versie.

P1 monitor download 202102

P1 monitor download 202102

WAARSCHUWING ER ZIT EEN BUG IN WATERMETER CONVERSIE. ALS JE DE WATERMETER OPTIE GEBRUIKT HEBT DAN DEZE VERSIE NIET INSTALLEREN! ER WORDT AAN GEWERKT!

P1 monitor is op de Raspberry Rpi3 en Rpi4 gebaseerde software om je slimme meter uit te lezen. Voor een meer uitgebreide beschrijving zie hier.

Het wordt sterk aanbevolen deze upgrade uit te voeren ook al zijn de wijzigingen niet relevant voor hoe je de P1 monitor gebruikt. Er zijn diverse essentiële aanpassing doorgevoerd in de API en database. Daarnaast ondersteunt deze versie de iOS app beter.

Mocht je de software de moeite waard vinden wil je deze dan delen via social media e.d. Bedankt voor de ondersteuning.

Upgrade of eerst installatie.

De software verkrijgen en installatie.

De P1 monitor software wordt geleverd als Raspberry Pi 3B/4 SDHC image die hieronder te downloaden is. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.  Zie hieronder hoe je dat daarna de rest van de ruimte op de SDHC card kunt gebruiken met raspi-config tool.

BELANGRIJK

Er is grote aanpassing gedaan aan de upgrade assistent, deze is beperkt compatibel met de vorige versie. Als de Upgrade assistent wordt gebruik met data van vorige versies dan is het noodzakelijk om ook een export van de vorige versie te doen en deze met de hand te importeren. Vanaf versie 0.9.15 en hoger kan de upgrade assistent weer zonder deze manuele upgrade worden uitgevoerd. Als dit niet wordt gedaan dan is historische data niet meer beschikbaar.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de upgrade assistent.

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

  1. download het P1 monitor image file uit de download overzicht hieronder.
  2. pak het zip file uit en lees de bijlagen.
  3. kopieer het p1monYYYYMMDD-NN.NN-X.img file via de USB tool naar de SDHC card van minimaal 8GB (bij voorkeur een 32GB of 16GB). Let op! data op de card wordt overschreven en is niet meer te herstellen. (had ik al gehad over de export van data).
  4. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen. Het vergroten van het filesysteem gebeurt automatische als je de UpgradeAide gebruikt.
  5. plaats de SDHC card in de Pi.
  6. start de Pi, netwerk en P1 kabel aangesloten.
  7. Importeer de data, als je al eerdere versie hebt gebruikt.

FAQ

Mocht je vragen hebben kijk dan eerst in de FAQ

Problemen oplossen.

Image past niet op de SDHC card:

  1. Je kunt proberen de donor SDHC card opnieuw te formatteren met een dergelijk tool als de SD formatter.
  2. Installeer het image op een groter SDHC card. Het ongebruikte deel van de SDHC card kun je vrijgeven via de raspi-config tool met de optie Expand Filesystem.
  3. wis de browser cache als je layout problemen hebt.

Standaard wachtwoord besturingssysteem:

  1. Het standaard account en wachtwoord om in te kunnen loggen met SSH is p1mon met het wachtwoord  verandermij.
  2. Het advies dit wachtwoord na installatie aan te passen.

Juridisch spul en zo

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst!

DOWNLOAD

SDHC images

P1 monitor wordt alleen ondersteunt op de Raspberry Pi 3B, Pi3 B+ of Pi4 (vanaf versie 0.9.11).
Een Pi 2 kan werken maar geen garanties.  Een Pi Zero is nooit getest. Van de Pi 1 is bekend dat deze fouten geeft en verloop van tijd stopt / crashed door een gebrek aan ram geheugen.

Wat is er veranderd in versie 202102-1.1.0

Opgelost: Probleem dat bij het opstarten in de december de P1UdpDaemon.py in een oneindige loop kwam.

Opgelost: Pyhton lib upgrades.

Opgelost: afrondingsverschillen tussen de App en fase-a.php pagina.

Opgelost: rpi-poe hat instellingen aangepast aan de laatste resultaten met dank aan Aad. zie /boot/config.txt

Opgelost: p1mon.sh aangepast waardoor het proces P1PowerProductionS0.py sneller wordt gestopt.

Opgelost: login bypass is niet meer mogelijk, met dank aan Ronald en zoon voor het melden.

Opgelost: by.php heet nu bye.php met dank aan Ronald.

Opgelost: P1PowerProductionS0.py aangepast, bevatte een niet meer gebruikt buffer (timestamp_buffer_list) verwijderd.

Opgelost: Watermeter reset verbeterd, geeft nu een log weer wat er aangepast wordt.

Nieuw: Software patch level informatie toegevoegd aan de info.php pagina.

Nieuw: Rpi software update naar de laatste versie, drivers en kernel.

Nieuw: IP6 support verwijderd. belangrijk als je netwerk geen IP4 ondersteunt dan zal deze versie niet goed werken.

Nieuw: Image verkleint waardoor de download kleiner wordt.

Nieuw: de UI laat nu ook de minuten waarden zien voor de watermeter.

Nieuw: API api/v1/powerproduction/ aangepast de waarde PRODUCTION_PSEUDO_KW is gewijzigd naar PRODUCTION_PSEUDO_W er worden nu Watts in plaats van kW terug gegeven. Mocht je gebruik maken van deze API voor externe toepassingen houdt hier dan dan rekening mee.

Nieuw: API /api/v2/watermeter is nieuwe en ondersteunt nu ook als extra minuten waarden. /api/v1/watermeter/ is niet meer beschikbaar. Dit is alleen van belang als je met een andere product de API gebruikt. Let op. De V1 api maakte onterecht gebruik van /api/v1/watermeter/min ipv /api/v1/watermeter/minute dat is in de V2 versie aangepast. Sorry voor het mogelijke ongemak. Alleen van belang als je de API extern gebruikt.

Nieuw: MQTT topics van de watermeter zijn aangepast van p1monitor/watermeter/hour/* naar p1monitor/watermeter/minute/* Dit is alleen van belang als de MQTT gebruikt voor andere zaken. het heeft geen invloed op de werking van de P1 monitor.

Nieuw: als er een kopie van ram naar disk wordt gemaakt van de database dan worden er 3 back-up kopieën gemaakt voor nood restore doeleinden.

Nieuw: de Watermeter heeft nu een eigen pagina in de configuratie pagina’s.

Nieuw: reset van Watermeter en opgewekte kWh detecteren nu dat de database leeg is en geven hier een melding over.

Nieuw: SQL export bestand is ongeveer 0.5% kleiner dan de vorige versie.

Nieuw: Info scherm heeft de optie om de systeem data naar het clipboard te kopiëren. Dit kan helpen bij het melden van bugs of andere problemen.

Security patches en upgrade van diverse software bibliotheken uitgevoerd tot aan 2020-11-11

Let op wachtwoorden zijn altijd met HOOFDLETTERS!

Als je een bijdrage wil leveren om de kosten te dekken van de website e.d. dan kan kun je hier een donatie doen.

BUGS

Voor het oplossen van de watermeter kan onderstaande procedure gevolgd worden. Hiervoor is wel enige handigheid met Linux nodig, Deze oplossing zit ook in de versie die begin maart wordt uitgebracht

Log in als p1mon en blijf in de home folder

Voer de volgende commando’s uit

wget  https://filedn.com/l8vmeQ01DPdF9TPNf863O2y/202102-patch-2.gz

tar -zxf 202102-patch-2.gz

cd 202102-patch-2

./runme.sh

Als dit goed gaat dan kan de export van voor de upgrade worden geïmporteerd.

P1-monitor download 202012

P1-monitor download 202012

P1 monitor is op de Raspberry Rpi3 en Rpi4 gebaseerde software om je slimme meter uit te lezen. Voor een meer uitgebreide beschrijving zie hier.

Het wordt sterk aanbevolen deze upgrade uit te voeren ook al zijn de wijzigingen niet relevant voor hoe je de P1 monitor gebruikt. Er zijn diverse essentiële aanpassing doorgevoerd in de API en database.

Mocht je de software de moeite waard vinden wil je deze dan delen via social media e.d. Bedankt voor de ondersteuning.

Upgrade of eerst installatie.

De software verkrijgen en installatie.

De P1 monitor software wordt geleverd als Raspberry Pi 3B/4 SDHC image die hieronder te downloaden is. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.  Zie hieronder hoe je dat daarna de rest van de ruimte op de SDHC card kunt gebruiken met raspi-config tool.

BELANGRIJK

Er is grote aanpassing gedaan aan de upgrade assistent, deze is beperkt compatibel met de vorige versie. Als de Upgrade assistent wordt gebruik met data van vorige versies dan is het noodzakelijk om ook een export van de vorige versie te doen en deze met de hand te importeren. Vanaf versie 0.9.15 en hoger kan de upgrade assistent weer zonder deze manuele upgrade worden uitgevoerd. Als dit niet wordt gedaan dan is historische data niet meer beschikbaar.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de upgrade assistent.

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

  1. download het P1 monitor image file uit de download overzicht hieronder.
  2. pak het zip file uit en lees de bijlagen.
  3. kopieer het p1monYYYYMMDD-NN.NN-X.img file via de USB tool naar de SDHC card van minimaal 8GB (bij voorkeur een 32GB of 16GB). Let op! data op de card wordt overschreven en is niet meer te herstellen. (had ik al gehad over de export van data).
  4. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen. Het vergroten van het filesysteem gebeurt automatische als je de UpgradeAide gebruikt.
  5. plaats de SDHC card in de Pi.
  6. start de Pi, netwerk en P1 kabel aangesloten.
  7. Importeer de data, als je al eerdere versie hebt gebruikt.

FAQ

Mocht je vragen hebben kijk dan eerst in de FAQ

Problemen oplossen.

Image past niet op de SDHC card:

  1. Je kunt proberen de donor SDHC card opnieuw te formatteren met een dergelijk tool als de SD formatter.
  2. Installeer het image op een groter SDHC card. Het ongebruikte deel van de SDHC card kun je vrijgeven via de raspi-config tool met de optie Expand Filesystem.
  3. wis de browser cache als je layout problemen hebt.

Standaard wachtwoord besturingssysteem:

  1. Het standaard account en wachtwoord om in te kunnen loggen met SSH is p1mon met het wachtwoord  verandermij.
  2. Het advies dit wachtwoord na installatie aan te passen.

Juridisch spul en zo

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst!

DOWNLOAD

SDHC images

P1 monitor wordt alleen ondersteund op de Raspberry Pi 3B, Pi3 B+ of Pi4 (vanaf versie 0.9.11).
Een Pi 2 kan werken maar geen garanties.  Een Pi Zero is nooit getest. Van de Pi 1 is bekend dat deze fouten geeft en verloop van tijd stopt / crashed door een gebrek aan ram geheugen.

Wat is er veranderd in versie 202012-1.0.0

Opgelost: config-io.php gaf een verminkt bericht weer als de watermeter nog nooit gebruikt was.

Opgelost: Diverse tooltip waarden komen niet overeen met de grafiek omdat er te veel samples getoond worden de volgende schermen zijn aangepast met andere tijdsperiodes:

  • stats-h.php
  • stats-h-gas.php

Opgelost: De waarde van de totale watermeterstand werd niet doorgegeven via UDP of Dropbox als de nieuwe meterstand lager was dan de vorige. Bijvoorbeeld bij het plaatsen van een nieuwe meter.

Opgelost: samba waarschuwing melding voor pid file /lib/systemd/system/?mbd.service verholpen.

Opgelost: P1DbCopy zet nu file rechten correct als de rechten niet kloppen.

Opgelost: Spelfouten verwijderd.

Opgelost: Niet alle tooltips gebruikt het juiste timestamp formaat.

Opgelost: config_read() aangepast, bug met ontbrekende index opgelost.

Opgelost: log folder die te snel vol loopt wordt nu sneller gecontroleerd en max maximaal 80% vol zijn (logspacecleaner.sh).

Opgelost: Tijdstip tariefschakeling, laatste schakeling timestamp werd onterecht gezet, dit was een cosmetische probleem.

Opgelost: diverse plekken waar financieel verkeerd gespeld wat als finaciel.

Opgelost: de fase-a.php gaf de grafiek van de Ampere meter niet goed weer, bij een waarde van 27A werd de grafiek niet goed ingevuld. Met dank aan Michel voor het melden.

Opgelost: de standaard waarde voor back-up van elke minuut veranderd naar 1 maal per dag om 00:05. Dit omdat sommige gebruikers dit vergaten aan te passen.

Nieuw: Opgewekte kWh die via een S0 puls wordt gemeten toegevoegd.

Nieuw: Upgrade naar Linux 5 (van 4).

Nieuw: API uitgebreid met opgewekte vermogen /api/v1/powerproduction/{minute/hour/day/month/year}.

Nieuw: Upgrade van fontawesome bibilotheek naar versie 5.15.1.

Nieuw: info.php uitgebreid met de S0 puls energie opwekking informatie.

Nieuw: GPU geheugen verlaagd van 64MB naar 16Mb zodat er meer geheugen is voor zaken die wel worden gebruikt (/boot/config.txt).

Nieuw: range selector laat nu in alle schermen ook alle trends zien. Voorheen was dat alleen de eerste data set.

Nieuw: Opgewekte kWh database wordt nu ook naar de Dropox data folder gekopieerd voor de IOS pro app.

Nieuw: op het info scherm kan via een button het slimme meter telegram naar het clipboard worden gekopieerd.

Nieuw: Audio uitgeschakeld in /boot/config.text. Wordt niet gebruikt door de P1 monitor.

Nieuw: BlueTooth uitgeschakeld in /boot/config.txt Wordt niet gebruikt door de P1 monitor.

Nieuw: De powersave mode van de Wifi is uitgeschakeld, dit helpt bij situaties waar de Wifi weg kan vallen. Met Dank aan Ruud voor de suggestie.

Nieuw: De meterstanden pagina bestaat nu uit twee delen kWh en M3 (water & gas).

Security patches en upgrade van diverse software bibliotheken uitgevoerd tot aan 2020-11-11

Let op wachtwoorden zijn altijd met HOOFDLETTERS!

Als je een bijdrage wil leveren om de kosten te dekken van de website e.d. dan kan kun je hier een donatie doen.

kWh meter met S0 meting.

kWh meter met S0 meting.

De P1 monitor ondersteunt vanaf versie 202012-1.0.0 het uitlezen van een kWh puls meter  (S0) voor het bijvoorbeeld het uitlezen van wat er met zonnepanelen aan kWh wordt opgewekt.

De werking is relatief simpel. Elke puls die de kWh meter geeft vertegenwoordigd een hoeveelheid kWh.  Deze pulsen worden dan opgeteld en per minuut, uur, dag, maand of jaar weergegeven.

Het maakt niet zoveel welke kWh meter je gebruikt mits deze een S0 uitgang heeft die aangesloten kan worden op de GPIO poort.  De meeste moderne meters werken niet echt met een mechanisch relais o.i.d. maar maken gebruik van een transistor meestal wordt een open collector aansluiting gebruikt.  Helaas zijn dit meters die minimaal 5 volt nodig hebben om te werken.

Ik maak zelf gebruik van de HIKING DDS238-2 65A die kan werken met een S0 spanning tussen de 5 en 27 Volt.  Deze meter kan daarom niet direct op de GPIO poort worden aangesloten en een level shifter is daarom noodzakelijk. Als je deze meter direct aansluit op de GPIO poort dan zullen er veel onterechte pulsen worden gedetecteerd!

Er zijn meerdere manieren om de level conversie te realiseren. Onderstaand schema laat zien hoe de HIKING DDS238-2 kan worden aangesloten. Dit geldt in principe voor elke meter met een open collector transistor die werkt op 5V.

kWh S) opto-coupler

Uiteraard kun je ook andere level shifters gebruiken of hack’s met weerstanden. Echter bovenstaande opzet is getest en geeft geen onterechte pulsen. let bij het aansluiten van de kWh meter dat de S0 aansluiting een plus en min heeft!

Instellen van de kWh meter.

Om de puls te kunnen verwerken moet je een aantal zaken instellen zoals hieronder weergegeven.

kwh productie instelingen

GPIO pin selectie: een GPIO pin die vrij is en niet voor iets anders wordt gebruikt.

kWh S0 puls meting actief: of er daadwerkelijk pulsen verwerkt worden. Als de de S0 meting niet gebruikt laat deze dan op uit staan. Dat verminderd RAM en database gebruik.

Pulswaarde in kWh: elke meter heeft daar een eigen waarde voor. In het voorbeeld van de HIKING DDS238-2 65A worden er 2000 pulsen per kWh gegeven. Dit wil dus zeggen dat elke plus een waarde van 1/2000 = 0.0005 kWh. Zie de specificaties van je kWh meter voor de juiste waarde.

Omdat er feitelijk alleen verbruik per tijd wordt gemeten en geen totale meterstand beschikbaar is om door te geven is het mogelijk om de totale meterstand aan te passen met de volgende velden.

kWh meterstand hoog tarief in kWh: de tellerstand die je bij de gemeten pulsen wil optellen voor hoog tarief.

kWh meterstand laag tarief in kWh: de tellerstand die je bij de gemeten pulsen wil optellen voor laag tarief.

De meeste meters hebben alleen een totaal telwerk. Je moet dus zelf bepalen of en hoe je totale meterstand wil verdelen. In de P1 monitor worden de kWh tellerstanden voor hoog en laag tarief opgeteld.

kWh meterstand timestamp: is de datum/tijd dat je de ingeven hoog en laag tarieven wil laten verwerken.

kWh meterstand reset: zet deze op aan en klik op opslaan rechtsboven in om de aanpassing door te voeren.

De velden meterstand hoog, laag en totaal geven de actuele stand aan.

Tijdstip kWh puls: geeft aan wanneer de laatste kWh plus verwerkt is.

P1-monitor watermeter

P1-monitor watermeter

Vanaf versie 201912-0.9.14(Maxine) heeft de P1 monitor de mogelijkheid om de watermeter uit te lezen. Een van de uitdagingen is dat watermeters geen data leveren zoals een slimme meter.

Watermeter

Voor de P1 monitor is gekozen dit op te lossen via een inductieve nabijheidssensor die de pulsen  “leest” via een roterend schijfje in de watermeter. Zie de foto met het rode schijfje linksonder met een metalen plaatje er op. De pulsen worden aangeboden op de GPIO-poort van de Raspberry Pi en worden zo omgezet naar het aantal gebruikte liters water.  

In principe kan elke manier van het lezen van watermeter pulsen worden gebruikt mits deze compatibel is met de 3.3V logica van de Raspberry Pi.

Onderstaande beschrijving geeft de opzet weer die we aanbevelen en die we getest hebben. Mocht je een andere opzet willen gebruiken let dan op dat de IO van de Pi 3.3V is en geen 5V. Met 5V kan de Pi GPIO stuk gaan. Daarnaast geldt dat de puls niet mag denderen en daarmee valse water pulsen afgeeft.

De P1 monitor pulslezer.

watermeter level converter

Wat heb je nodig:

puls lezer met print
puls lezer printplaat

printed circuit board opto coupler

Een van gebruikers heeft een printed circuit board gemaakt met de opto-coupler als je interesse hebt dan kun je een email sturen naar

Geef bij het e-mail verzoek aan of je alleen een PCB wil, een niet gesoldeerde PCB met onderdelen of een complete gesoldeerde PCB. Of je een donatie wil doen en voor welke bedrag. Dit om de onderdelen kosten te dragen. Afhankelijk van de voorraad wordt de PCB geleverd.

Montage op de watermeter

Voor montage op watermeter ligt het uiteraard aan de vorm en type van je watermeter dit is een manier. Voel je vrij om dit anders aan op te lossen.  Deze oplossing (model Groenewoud) is bedacht door een P1 monitor gebruiker.

Een kunststof hemelwater pijpklem (in dit voorbeeld een 75MM klem) voor een watermeter met diameter van ongeveer 82mm. Een 4mm schroeven en moertjes, wat afstand busjes om de afstand van de puls lezer en een gereedschap klem van rond de 16mm om de puls lezer vast te zetten.  Een klein metalen stoelhoekje met wat gaatjes. Het stoelhoekje maak je plat en tordeer je 90 graden om deze vast te kunnen zetten op de kunststof beugel en gereedschap klem. Uiteraard kun je ook een stukje aluminium/ metaal strook of ander materiaal gebruiken om de 90 graden hoek te gebruiken.

watermeter met puls lezer

3D adapter voor de watermeter

Een van P1 monitor gebruikers heeft een 3D geprinte adapter gemaakt die je hier kunt vinden. Of voor de Sensus 620 met M16 adapter een andere 3D montage beugel

 Elster v200 montage

Ronald heeft een methode gevonden om de  Elster V200 (Dunea) via een plexiglas plaatje van 9cm x 4,5cm te monteren.  Borging en de afstand afstellen gaat dmv een aantal M3 ringetjes en 2 schroeven in gaten van de Elster. De sensor mag niet boven het rode wieltje gemonteerd worden, maar met een overlap van zo’n 50% zie onderstaande afbeelding.

Elster v200 watermeter met sensor

Voorbeeld van montage op Iron Aquadis watermeter.

Alternatieve sensor

Ronald heeft een alternatieve sensor gemaakt. Hier de handleiding en datasheet. Ik heb de sensor niet gemaakt en kan dus geen vragen over de sensor beantwoorden. Je kan een vraag achter laten en wellicht kan een andere gebruiker een antwoord geven.

Aansluiten op de pi

Raspberry Pi 3/4 GPIO pin layour

Het wordt aanbevolen de pins 2/4 voor 5V  6/9 voor 0 /Aarde/Ground te gebruiken maar de keuze is volledig aan vrij.  Voor de GPIO poort wordt GPIO17 (pin11) aangeraden omdat dit de standaard is voor de P1 monitor maar ook deze is vrij te kiezen.

Instellen van watermeter.

In de P1monitor kan de waarde van de puls worden ingesteld, meestal is dit 1 liter per puls. De gebruikt GPIO-poort en de actuele watermeter stand. Omdat feitelijk alleen het gebruik gemeten wordt en niet de momentele meterstand kan deze ook worden ingesteld zodat deze correct wordt weergeven.

P1-monitor download 202009

P1-monitor download 202009

P1 monitor is op de Raspberry Rpi3 en Rpi4 gebaseerde software om je slimme meter uit te lezen. Voor een meer uitgebreide beschrijving zie hier.

Het wordt sterk aanbevolen deze upgrade uit te voeren ook al zijn de wijzigingen niet relevant voor hoe je de P1 monitor gebruikt. Er zijn diverse essentiële aanpassing doorgevoerd in de API en database.

Mocht je de software de moeite waard vinden wil je deze dan delen via social media e.d. Bedankt voor de ondersteuning.

Upgrade of eerst installatie.

De software verkrijgen en installatie.

De P1 monitor software wordt geleverd als Raspberry Pi 3B/4 SDHC image die hieronder te downloaden is. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.  Zie hieronder hoe je dat daarna de rest van de ruimte op de SDHC card kunt gebruiken met raspi-config tool.

BELANGRIJK

Er is grote aanpassing gedaan aan de upgrade assistent, deze is beperkt compatibel met de vorige versie. Als de Upgrade assistent wordt gebruik met data van vorige versies dan is het noodzakelijk om ook een export van de vorige versie te doen en deze met de hand te importeren. Vanaf versie 0.9.15 en hoger kan de upgrade assistent weer zonder deze manuele upgrade worden uitgevoerd. Als dit niet wordt gedaan dan is historische data niet meer beschikbaar.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de upgrade assistent.

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

  1. download het P1 monitor image file uit de download overzicht hieronder.
  2. pak het zip file uit en lees de bijlagen.
  3. kopieer het p1monYYYYMMDD-NN.NN-X.img file via de USB tool naar de SDHC card van minimaal 8GB (bij voorkeur een 32GB of 16GB). Let op! data op de card wordt overschreven en is niet meer te herstellen. (had ik al gehad over de export van data).
  4. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen. Het vergroten van het filesysteem gebeurt automatische als je de UpgradeAide gebruikt.
  5. plaats de SDHC card in de Pi.
  6. start de Pi, netwerk en P1 kabel aangesloten.
  7. Importeer de data, als je al eerdere versie hebt gebruikt.

FAQ

Mocht je vragen hebben kijk dan eerst in de FAQ

Problemen oplossen.

Image past niet op de SDHC card:

  1. Je kunt proberen de donor SDHC card opnieuw te formatteren met een dergelijk tool als de SD formatter.
  2. Installeer het image op een groter SDHC card. Het ongebruikte deel van de SDHC card kun je vrijgeven via de raspi-config tool met de optie extend
  3. wis de browser cache als je layout problemen hebt.

Standaard wachtwoord besturingssysteem:

  1. Het standaard account en wachtwoord om in te kunnen loggen met SSH is p1mon met het wachtwoord  verandermij.
  2. Het advies dit wachtwoord na installatie aan te passen.

Juridisch spul en zo

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst!

DOWNLOAD

SDHC images

P1 monitor wordt alleen ondersteunt op de Raspberry Pi 3B, Pi3 B+ of Pi4 (vanaf versie 0.9.11).
Een Pi 2 kan werken maar geen garanties.  Een Pi Zero is nooit getest. Van de Pi 1 is bekend dat deze fouten geeft en verloop van tijd stopt / crashed door een gebrek aan ram geheugen.

Wat is er veranderd in versie 202009-0.9.18

Opgelost: in de main schermen 1 en 2 ontbrak in de tooltip tekst de kosten voor water. Met dank aan Stefan voor het melden.

Opgelost: De jaar schermen gaf op de x-as maanden weer i.p.v van jaren. Met dank aan Hans voor het melden.

Opgelost: Dropbox authenticatie codes die met een – karakter starten worden nu ook verwerkt.

Opgelost: De test knop voor de back-up werkte niet. Met dank aan Jeroen voor het melden.

Opgelost: Tekst fout in de header van verwarming-a.php aangepast van actule naar actuele. Met dank aan Wim.

Opgelost: Main-2 gaf bij de tooltip voor hoogste verbruik levering aan in plaats van verbruik. Met dank aan Ad.

Opgelost: meterreadings-d.php gaf voor dal en piek de heldere kleuren weer voor de dal tarieven en visa versa voor de piek tarieven.

Opgelost: config-ui.php aangepast geeft nu m3/u aan voorheen was dit m3.

Opgelost: config-io tekstfout verholpen.

Opgelost: als het wachtwoord ingevuld is en je klikte op home werd je toch ingelogd.

Opgelost: In de kostenschermen werd de KWH verbruik onderdrukt in de tooltip als water of gas gedeactiveerd was. Met dank aan Paul.

Opgelost: Bij het meten van de (binnen)temperatuur werd er geen record opgeslagen bij de 1e van de maand en de eerste maand.

Nieuw: Pyhton bibliotheken naar de laatste versie gebracht (17 augustus 2020).

Nieuw: een aantal API’s uitgebreid met een “range” optie, die alle records weergeven die in de voldoen aan het format. Deze aanpassing waren noodzakelijk voor de nieuwe IOS app.

Nieuw: API’s geven een foutmelding bij een verkeerde starttime invoer.

Nieuw: Pi-Poe-Hat fan control settings toegevoegd aan /boot/config.txt dit regelt de fan snelheid op basis van de temperatuur.

Nieuw: De locatie/stad van de weer informatie kan nu ook via de city id / stad id worden ingesteld.

Nieuw: fase-a.php aangepast, in de Ampère grafiek wordt nu levering en verbruikt aangegeven en de Ampère waarde ondersteunt meerder instellingen dan voorheen.

Security patches en upgrade van diverse software bibliotheken uitgevoerd tot aan 2020-09-01.

Let op wachtwoorden zijn altijd met HOOFDLETTERS!

Als je een bijdrage wil leveren om de kosten te dekken van de website e.d. dan kan kun je hier een donatie doen.

P1-monitor download 202006

P1-monitor download 202006

P1 monitor is op de Raspberry PI3 en Pi4 gebaseerde software om je slimme meter uit te lezen. Voor een meer uitgebreide beschrijving zie hier.

Mocht je de software de moeite waard vinden wil je deze dan delen via social media e.d. Bedankt voor de ondersteuning.

Upgrade of eerst installatie.

De software verkrijgen en installatie.

De P1 monitor software wordt geleverd als Raspberry Pi 3B/4 SDHC image die hieronder te downloaden is. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.  Zie hieronder hoe je dat daarna de rest van de ruimte op de SDHC card kunt gebruiken met raspi-config tool.

BELANGRIJK

Er is grote aanpassing gedaan aan de upgrade assistent, deze is beperkt compatibel met de vorige versie. Als de Upgrade assistent wordt gebruik met data van vorige versies dan is het noodzakelijk om ook een export van de vorige versie te doen en deze met de hand te importeren. Vanaf versie 0.9.15 en hoger kan de upgrade assistent weer zonder deze manuele upgrade worden uitgevoerd. Als dit niet wordt gedaan dan is historische data niet meer beschikbaar.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de upgrade assistent.

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

  1. download het P1 monitor image file uit de download overzicht hieronder.
  2. pak het zip file uit en lees de bijlagen.
  3. kopieer het p1monYYYYMMDD-NN.NN-X.img file via de USB tool naar de SDHC card van minimaal 8GB (bij voorkeur een 32GB of 16GB). Let op! data op de card wordt overschreven en is niet meer te herstellen. (had ik al gehad over de export van data).
  4. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen. Het vergroten van het filesysteem gebeurt automatische als je de UpgradeAide gebruikt.
  5. plaats de SDHC card in de Pi.
  6. start de Pi, netwerk en P1 kabel aangesloten.
  7. Importeer de data, als je al eerdere versie hebt gebruikt.

FAQ

Mocht je vragen hebben kijk dan eerst in de FAQ

Problemen oplossen.

Image past niet op de SDHC card:

  1. Je kunt proberen de donor SDHC card opnieuw te formatteren met een dergelijk tool als de SD formatter.
  2. Installeer het image op een groter SDHC card. Het ongebruikte deel van de SDHC card kun je vrijgeven via de raspi-config tool met de optie extend
  3. wis de browser cache als je layout problemen hebt.

Standaard wachtwoord besturingssysteem:

  1. Het standaard account en wachtwoord om in te kunnen loggen met SSH is p1mon met het wachtwoord  verandermij.
  2. Het advies dit wachtwoord na installatie aan te passen.

Juridisch spul en zo

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst!

DOWNLOAD

SDHC images

P1 monitor wordt alleen ondersteunt op de Raspberry Pi 3B, Pi3 B+ of Pi4 (vanaf versie 0.9.11).
Een Pi 2 kan werken maar geen garanties.  Een Pi Zero is nooit getest. Van de Pi 1 is bekend dat deze fouten geeft en verloop van tijd stopt / crashed door een gebrek aan ram geheugen.

Wat is er veranderd in versie 202004-0.9.17 (Maxine)

Opgelost: wachtwoord voor de login wordt als de browser zich aan de html opties houdt niet meer opgeslagen in de browser.

Opgelost: als in de fase historie geen data werd aangeboden voor L1 Watt of L3 Ampere dan werd een waarde als 999999999 aangegeven.

Opgelost: in het configuratie scherm bestanden kon door het invoeren van enter/return per ongeluk het wissen van de database worden gestart. Met dank aan Adriaan voor het melden.

Opgelost: selectie knoppen van de zichtbaarheid van grafieken is iets kleiner gemaakt waardoor deze beter zichtbaar is.

Opgelost: P1Semaphore.py gaf een waarschuwing van een verouderde Pyhton module. Met dank aan Kees voor het melden.

Opgelost: Het script P1Backup.py werkte onduidelijk als er een geforceerde back-up nodig is de juist aanroep is P1Backup.py -fb yes in de deze versie is de optie P1Backup.py -fb voldoende. Met dank aan Eelco voor het melden.

Opgelost: de kostenschermen konden een dubbel waarde geven bij de tweede keer dat de pagina werd ververst. Met dank aan Friso voor het melden.

Opgelost: Log2Ram start nu sneller waardoor de boot tijd ongeveer 90 seconden sneller is.

Opgelost: Nginx start nu nadat Log2Ram is gestart service bestand van log2ram is aangepast.

Opgelost: de main-1 en main-2 schermen geven nu ook de dag kosten van water weer.

Opgelost: logging van de samba service is nu conform de moderne manier van loggen.

Opgelost: help tekst van de binnentemperatuur gaf IN in plaats van OUT weer, heeft geen effect op de werking.

Nieuw: de watermeter stand reset laat nu de voortgang zien op de configuratie pagina.

Nieuw: diverse tooltip teksten toegevoegd bij de configuratie en reset van de watermeter.

Nieuw: fase historie scherm geeft een waarschuwing als de database niet geactiveerd is.

Nieuw: in het fase dashboard (fase-a.php) kan het maximale vermogen (Watt) en Amperage (A) worden ingesteld via het configuratie scherm display.

Nieuw: in het fase dashboard (fase-a.php) kan elke meter individueel worden verborgen of zichtbaar worden gemaakt.

Nieuw: alle Pyhton packages naar de laatste versie gebracht.

Nieuw: de fase vermogen indicatie op main-1.php en main-2.php wordt verborgen als het vermogen nul (0) is. Dit omdat diverse meters alleen bepaalde fase informatie doorgeven.

Nieuw: onterechte foutmelding als er geen watermeter wordt gebruikt verwijderd in P1Db.py. Met dank aan Eelco voor het melden.

Nieuw: aanpassingen gedaan zodat meer data via Dropbox wordt gedeeld t.b.v. van de nieuw IOS app. De app is nog in ontwikkeling en nog niet beschikbaar.

Nieuw: De Chrome browser laat vanaf versie 83 nu randen zien om de input velden en buttons e.d. dat is een keuze van de Chrome ontwikkelaars. Als dit niet bevalt dan wordt Firefox aanbevolen. Zie https://blog.chromium.org/2020/03/updates-to-form-controls-and-focus.html

Security patches en upgrade van diverse software bibliotheken uitgevoerd tot aan 2020-03-01.

Als je een bijdrage wil leveren om de kosten te dekken van de website e.d. dan kan kun je hier een donatie doen.

P1-monitor download 202004

P1-monitor download 202004

P1 monitor is op de Raspberry PI3 en Pi4 gebaseerde software om je slimme meter uit te lezen. Voor een meer uitgebreide beschrijving zie hier.

Mocht je de software de moeite waard vinden wil je deze dan delen via social media e.d. Bedankt voor de ondersteuning.

Upgrade of eerst installatie.

De software verkrijgen en installatie.

De P1 monitor software wordt geleverd als Raspberry Pi 3B/4 SDHC image die hieronder te downloaden is. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.  Zie hieronder hoe je dat daarna de rest van de ruimte op de SDHC card kunt gebruiken met raspi-config tool.

BELANGRIJK

Er is grote aanpassing gedaan aan de upgrade assistent, deze is beperkt compatibel met de vorige versie. Als de Upgrade assistent wordt gebruik met data van vorige versies dan is het noodzakelijk om ook een export van de vorige versie te doen en deze met de hand te importeren. Vanaf versie 0.9.15 en hoger kan de upgrade assistent weer zonder deze manuele upgrade worden uitgevoerd. Als dit niet wordt gedaan dan is historische data niet meer beschikbaar.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de upgrade assistent.

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

  1. download het P1 monitor image file uit de download overzicht hieronder.
  2. pak het zip file uit en lees de bijlagen.
  3. kopieer het p1monYYYYMMDD-NN.NN-X.img file via de USB tool naar de SDHC card van minimaal 8GB (bij voorkeur een 32GB of 16GB). Groter dan 32GB heeft geen meerwaarde wegens het FAT32 filesysteem. Let op! data op de card wordt overschreven en is niet meer te herstellen. (had ik al gehad over de export van data).
  4. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen.
  5. plaats de SDHC card in de Pi.
  6. start de Pi, netwerk en P1 kabel aangesloten.
  7. Importeer de data, als je al eerdere versie hebt gebruikt.

FAQ

Mocht je vragen hebben kijk dan eerst in de FAQ

Problemen oplossen.

Image past niet op de SDHC card:

  1. Je kunt proberen de donor SDHC card opnieuw te formatteren met een dergelijk tool als de SD formatter.
  2. Installeer het image op een groter SDHC card. Het ongebruikte deel van de SDHC card kun je vrijgeven via de raspi-config tool met de optie extend
  3. wis de browser cache als je layout problemen hebt.

Standaard wachtwoord besturingssysteem:

  1. Het standaard account en wachtwoord om in te kunnen loggen met SSH is p1mon met het wachtwoord  verandermij.
  2. Het advies dit wachtwoord na installatie aan te passen.

Juridisch spul en zo

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst!

DOWNLOAD

SDHC images

P1 monitor wordt alleen ondersteund op de Raspberry Pi 3B, Pi3 B+ of Pi4 (vanaf versie 0.9.11).
Een Pi 2 kan werken maar geen garanties.  Een Pi Zero is nooit getest. Van de Pi 1 is bekend dat deze fouten geeft en verloop van tijd stopt / crashed door een gebrek aan ram geheugen.

Wat is er veranderd in versie 202004-0.9.16 (Maxine)

Opgelost: logging van MQTT verlaagd als deze niet gebruikt wordt.

Opgelost: de tooltip laat nu geen as gegevens meer doorschemeren in de tooltip.

Opgelost: als de weer locatie veranderd was dan kon het zijn dat het tot 30 min duurde voordat de juiste stad/locatie werd weergegeven.

Opgelost: alle Python packages naar de laatste versie gebracht.

Opgelost: melding dat een scherm uit staat werkt weer.

Opgelost: GPIO tarief schakelaar schakelt nu ook meerdere keren.

Opgelost: Dropbox Daemon geeft nu minder onterechte waarschuwingen en vraagt en geeft een lagere CPU belasting.

Opgelost: Diverse waarschuwingen opgelost in configuratie schermen zodat er minder gelogd wordt en de SDHC minder belast wordt.

Nieuw: main-1 en main-2 schermen bevatten nu de watermeter dag totaal verbruik.

Nieuw: de kWh verbruik schermen uur, dag, maand en jaar zijn voorzien van de buitentemperatuur informatie op veelvoudige verzoek van donateurs. Bedankt voor de donaties!

Nieuw: Fase informatie database toegevoegd en API uitgebreid met /api/v1en /phase en /api/v1/phase/help

Nieuw: Fase informatie schermen actueel en historie voor Watt,Volt en Ampere toegevoegd. Let op: deze optie wordt alleen ondersteund door bepaalde slimme meters en moet geactiveerd worden in de P1 monitor. Het gebruik van de deze optie vormt een aanzienlijke belasting en als de optie niet wordt gebruikt dan is het beter deze uit te laten staan.

Nieuw: export & import ondersteunen de fase informatie.

Nieuw: de tooltip van het stats.php scherm geeft ook de uur kWh waarde prognose weer.

Nieuw: MQTT geeft ook de fase informatie W,V en A als topics door.

Nieuw: in de temperatuur schermen kan de tekst van in en uit aangepast worden. Bijvoorbeeld naar invoer en retour.

Security patches en upgrade van diverse software bibliotheken uitgevoerd tot aan 2020-03-01.

Als je een bijdrage wil leveren om de kosten te dekken van de website e.d. dan kan kun je hier een donatie doen.

P1-monitor download 202002

P1-monitor download 202002

Dit is niet de laatste versie. Voor alle downloads zie de software archief pagina waar alle versies van de P1 monitor te vinden zijn inclusief de laatste versie.

LET OP DIT IS NIET DE LAATSTE VERSIE!

P1 monitor is op de Raspberry PI3 en Pi4 gebaseerde software om je slimme meter uit te lezen. Voor een meer uitgebreide beschrijving zie hier.

Mocht je de software de moeite waard vinden wil je deze dan delen via social media e.d. Bedankt voor de ondersteuning.

Upgrade of eerst installatie.

De software verkrijgen en installatie.

De P1 monitor software wordt geleverd als Raspberry Pi 3B/4 SDHC image die hieronder te downloaden is. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.  Zie hieronder hoe je dat daarna de rest van de ruimte op de SDHC card kunt gebruiken met raspi-config tool.

BELANGRIJK

Er is grote aanpassing gedaan aan de upgrade assistent, deze is beperkt compatibel met de vorige versie. Als de Upgrade assistent wordt gebruik met data van vorige versies dan is het noodzakelijk om ook een export van de vorige versie te doen en deze met de hand te importeren. Vanaf versie 0.9.15 en hoger kan de upgrade assistent weer zonder deze manuele upgrade worden uitgevoerd. Als dit niet wordt gedaan dan is historische data niet meer beschikbaar.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de upgrade assistent.

  1. download het P1 monitor image file uit de download overzicht hieronder.
  2. pak het zip file uit en lees de bijlagen.
  3. kopieer het p1monYYYYMMDD-NN.NN-X.img file via de USB tool naar de SDHC card van minimaal 8GB (bij voorkeur een 32GB of 16GB). Groter dan 32GB heeft geen meerwaarde wegens het FAT32 filesysteem. Let op! data op de card wordt overschreven en is niet meer te herstellen. (had ik al gehad over de export van data).
  4. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen.
  5. plaats de SDHC card in de Pi.
  6. start de Pi, netwerk en P1 kabel aangesloten.
  7. Importeer de data, als je al eerdere versie hebt gebruikt.

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

FAQ

Mocht je vragen hebben kijk dan eerst in de FAQ

Problemen oplossen.

Image past niet op de SDHC card:

  1. Je kunt proberen de donor SDHC card opnieuw te formatteren met een dergelijk tool als de SD formatter.
  2. Installeer het image op een groter SDHC card. Het ongebruikte deel van de SDHC card kun je vrijgeven via de raspi-config tool met de optie extend
  3. wis de browser cache als je layout problemen hebt.

Standaard wachtwoord besturingssysteem:

  1. Het standaard account en wachtwoord om in te kunnen loggen met SSH is p1mon met het wachtwoord  verandermij.
  2. Het advies dit wachtwoord na installatie aan te passen.

Juridisch spul en zo

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst!

DOWNLOAD

SDHC images

P1 monitor wordt alleen ondersteund op de Raspberry Pi 3B, Pi3 B+ of Pi4 (vanaf versie 0.9.11).
Een Pi 2 kan werken maar geen garanties.  Een Pi Zero is nooit getest. Van de Pi 1 is bekend dat deze fouten geeft en verloop van tijd stopt / crashed door een gebrek aan ram geheugen.

Wat is er veranderd in versie 202002-0.9.15 (Maxine)

Opgelost: link ontbrak naar moment javascript library waardoor het resetten van de watermeter niet werkte.

Opgelost: main-1 en main-2 schermen gaven de fase waarde niet meer door, dit was een bug/feature van de nieuwe HighChart Library. 

Opgelost: icoon in het linker menu was niet blauw bij het selecteren van de watermeter pagina’s.

Opgelost: icoon in het linker menu was niet blauw bij het selecteren van de io configuratie pagina.

Opgelost: tooltip werkt weer als alle opties in de legenda actief zijn in de kosten schermen.

Opgelost: meterstanden van watermeter gaf nul aan als er voor die dag nog geen water puls was opgetreden en de legenda voor piek verbruik werkte niet.

Opgelost: de gas, water en kosten overzichten gaven in de timestamp niet de juiste formaat weer (met dank aan Jaap).

Opgelost: P1SerReader – WARNING – getCurrentWatermeterCount: onnodige waarschuwing in logfile verholpen die optreed als je geen watermeter gebruikt met dank aan Anko.

Opgelost: de server adres in de ftp backup staat nu ook : als karakter toe waardoor ftp://mijn.server.nl kan worden gebruikt.

Opgelost: meterreadings-d.php laat de beide y-assen aan linker kant zien om te voorkomen dat de y-assen niet goed te lezen zijn.

Opgelost: ftp back-up probleem met het maken van een tijdelijk bestand opgelost.

Opgelost: diverse tekstfouten verholpen met dank aan Arjan.

Opgelost: tariefschakelaar werkte niet correct voor bepaalde tijden.

Nieuw: het is nu mogelijk een test notificatie email te versturen via het setup scherm. Met dank aan Gert-Jan.

Nieuw: laden van grafieken in de user interface is sneller gemaakt.

Nieuw: de kW & kWh maximale waarde voor de gebruikers interface zijn verhoogd.

Nieuw: verwarming-a laat nu ook negatieve temperatuur waarden zien voor als binnen en buiten temperatuur wordt gebruikt.

Nieuw: stats.php heeft nu een help icoon die aangeeft hoe we kWh waarde per minuut berekenen.

Nieuw: code verbeterd van de weer tooltip.

Nieuw: voor de debug / problemen met de P1 poort is de P1SerTester.py script aangepast voor eenvoudiger gebruik.

Nieuw: MQTT client optie toegevoegd waarmee de slimme meter, weer, watermeter en binnentemperatuur via topics verstuurd kunnen worden. Het is een Beta(test) optie en eventuele ervaring met het gebruik is welkom.

Nieuw:  grote aanpassing gedaan aan de Upgrade Assistent, deze is beperkt compatibel met de vorige versie.  Als de Upgrade Assistent wordt gebruik van met data van vorige versies dan is het noodzakelijk om ook een export van de vorige versie te doen en deze met de hand te importeren. Vanaf versie 0.9.15 en hoger kan de upgrade assistent weer zonder deze manuele export / import worden gebruikt.

Security patches en upgrade van diverse software bibliotheken uitgevoerd tot aan 13-02-2020.

Als je een bijdrage wil leveren om de kosten te dekken van de website e.d. dan kan kun je hier een donatie doen.

BUG’s

Notificatie email met gmail werkt niet in alle gevallen. Wordt onderzocht.

P1-monitor download 201912

P1-monitor download 201912

Dit is niet de laatste versie. Voor alle downloads zie de software archief pagina waar alle versies van de P1 monitor te vinden zijn inclusief de laatste versie.

LET OP DIT IS NIET DE LAATSTE VERSIE!

P1 monitor is op de Raspberry PI3 en Pi4 gebaseerde software om je slimme meter uit te lezen. Voor een meer uitgebreide beschrijving zie hier.

Mocht je de software de moeite waard vinden wil je deze dan delen via social media e.d. Bedankt voor de ondersteuning.

Upgrade of eerst installatie.

De software verkrijgen en installatie.

De P1 monitor software wordt geleverd als Raspberry Pi 3B/4 SDHC image die hieronder te downloaden is. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.  Zie hieronder hoe je dat daarna de rest van de ruimte op de SDHC card kunt gebruiken met raspi-config tool.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de upgrade assistent.

  1. download het P1 monitor image file uit de download overzicht hieronder.
  2. pak het zip file uit en lees de bijlagen.
  3. kopieer het p1monYYYYMMDD-NN.NN-X.img file via de USB tool naar de SDHC card van minimaal 8GB (bij voorkeur een 32GB of 16GB). Groter dan 32GB heeft geen meerwaarde wegens het FAT32 filesysteem. Let op! data op de card wordt overschreven en is niet meer te herstellen. (had ik al gehad over de export van data).
  4. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen.
  5. plaats de SDHC card in de Pi.
  6. start de Pi, netwerk en P1 kabel aangesloten.
  7. Importeer de data, als je al eerdere versie hebt gebruikt.

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

FAQ

Mocht je vragen hebben kijk dan eerst in de FAQ

Problemen oplossen.

Image past niet op de SDHC card:

  1. Je kunt proberen de donor SDHC card opnieuw te formatteren met een dergelijk tool als de SD formatter.
  2. Installeer het image op een groter SDHC card. Het ongebruikte deel van de SDHC card kun je vrijgeven via de raspi-config tool met de optie extend
  3. wis de browser cache als je layout problemen hebt.

Standaard wachtwoord besturingssysteem:

  1. Het standaard account en wachtwoord om in te kunnen loggen is p1mon met het wachtwoord  verandermij.
  2. Het advies dit wachtwoord na installatie aan te passen.

Juridisch spul en zo

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst!

DOWNLOAD

SDHC images

P1 monitor wordt alleen ondersteund op de Raspberry Pi 3B, Pi3 B+ of Pi4 (vanaf versie 0.9.11).
Een Pi 2 kan werken maar geen garanties.  Een Pi Zero is nooit getest. Van de Pi 1 is bekend dat deze fouten geeft en verloop van tijd stopt / crashed door een gebrek aan ram geheugen.

Wat is er veranderd in versie 201912-0.9.14 (Maxine)

watermeter met puls lezer

Ondersteuning voor het uitlezen van de watermeter toegevoegd. Hiervoor is een extra stukje hardware nodig.

Status API bevat nu dag/piek / dal/laag tarief status op ID 85.  Opvragen via http://<IP>/api/v1/status/85?json=object met als opties leeg, P of D.

Sourcecode opgeknapt, rtSatusDb() aangepast naar rtStatusDb().

Stat.php (minuten) gaf in plaats van kWh per minuut , kW aan dit de waarde zijn nu grofweg een factor 60 kleiner. Dit wil helaas niet zeggen dat je minder energie bent gaan gebruiken.

De database kan nu via het setup menu -> bestanden worden gewist / gereset. De database wordt volledig gewist en opnieuw opgebouwd alsof het een nieuwe installatie is.

De nieuwe versie (update) icoon bovenaan het scherm heeft een link naar de laatste versie van de P1 monitor software.

Notificatie van de het ontbreken van de een P1 telegram ging onterecht af bij het terug gaan in de tijd zoals van zomertijd naar wintertijd.

GPIO-code bibliotheek aangepast.

Schakelen via de GPIO-pin gebaseerd het tarief schakel moment. Je kunt aan de hand van het tarief (piek of dal) een GPIO-pin schakelen, je kunt tevens twee perioden instellen wanneer er geschakeld moet worden.

Main-1 en main-2 geven de kilo Watt waarde nu weer met drie cijfers achter de komma, dit heeft alleen effect voor meters die per Watt de waarde doorgeven. Oude meters geven de waarde in stapjes van 10 Watt weer. Dit is niet te beïnvloeden door de P1 monitor.

API voor uur, dag, maand en jaar watermeter toegevoegd.

In- en Exportfuncties aangepast voor watermeter database.

Moment.js javaScript libiary toegevoegd (wis je browser cache).

Watermeter standen pagina’s toegevoegd voor uren, dagen, maanden en jaren.

Watermeter laatste puls tijdstip aan info.php pagina toegevoegd.

Watermeter stand opgenomen in de main-1 en main-2 pagina’s.

Watermeter informatie en pagina’s zichtbaar te maken via de UI-configuratie.

Watermeter stand toegevoegd aan de meterstanden pagina.

Config-tarief.php aangepast zodat de kosten voor drinkwater kunnen worden opgevoerd.

Financiële tabellen voor jaar, maand en dag uitgebreid zodat deze ook de waterkosten verwerken.

Finaciele API’s aangepast zodat deze ook de waterkosten weergeven <ip>/api/v1/financial/day,month,year.

Kosten schermen (dag, maand, jaar) bevatten nu ook de kosten en verbruik van water.

Watermeter stand (in m3) toegevoegd aan de Dropbox data (voor de app).

Watermeter stand (in m3) toegevoegd aan het UDP broadcast bericht

HighChart library upgrade naar versie 8.0.0.

Mocht de ttyUSB* wijzigen door het insteken van andere USB devices dan wordt deze automatische aangepast.

Seriële device in gebruik: /dev/ttyUSB1 wordt nu weergeven op het config-P1poort scherm.

Bug opgelost dat de P1Watchdog kon crashen na gebruik van Upgrade Assistent terwijl er nog geen slimme meter telegram was ontvangen.

Security patches uitgevoerd tot aan 2019-12-21

Als je een bijdrage wil leveren om de kosten te dekken van de website e.d. dan kan kun je hier een donatie doen.

BUG’s

De watermeter reset werkt niet. De watermeter teller werkt zelf wel. De workaround is inloggen op de pi met het account p1mon en het volgende commando in voeren. ln -s /p1mon/www/js/moment-3.x/min/ /p1mon/www/js/moment-link De pagina moet opnieuw worden geladen.

De main schermen geven de fase informatie niet meer weer. De bijlage lost dit op maar vraagt wel wat handigheid met de command promt en ftp.

Er zit een probleem in grafisch HighChart library onder Safari, Firefox en Brave werkt de tooltip niet als je ingezoomd bent. Chrome werkt wel goed. Is gemeld bij de ontwikkelaars. [UPDATE] is ondertussen opgelost in zit in de volgende versie

De tariefschakelaar voor de GPIO werkt niet goed bij bepaalde tijdstippen, dit is opgelost in de volgende versie.

P1-monitor

P1-monitor

Dit is niet de laatste versie. Voor alle downloads zie de software archief pagina waar alle versies van de P1 monitor te vinden zijn inclusief de laatste versie.

LET OP DIT IS NIET DE LAATSTE VERSIE!

P1 monitor is op de Raspberry PI 3 gebaseerde software om je “slimme” meter uit te lezen. De slimme meter heeft een zogenaamde P1 poort/aansluiting waar elke 10 seconden de laatste waarden uit te lezen zijn. Als je huidige en historisch elektriciteit verbruik wil meten dan is P1 monitor de oplossing voor je. Hieronder een simpel schema hoe de P1 monitor werkt.

P1 monitor principe
P1 monitor principe

Op zoek naar de download van de software? het archief van alle versies kun je hier vinden.

Gebruik

P1 monitor heeft een aantal schermen waar de huidige en historische waarden zijn te raadplegen en een scherm waar zaken als de tarieven elektriciteit en andere gegevens ingevoerd worden. De meeste schermen verklaren zichzelf, onderstaande afbeeldingen geven een impressie.

ACTUEEL VERBRUIK

Geeft aan welk elektrisch vermogen er wordt gebruikt (links boven), het vermogen van vandaag en de kosten. Onderin wordt het actuele verbruik van de laatste 4 uur weergegeven.

Actuele verbruik

HOME

Dit scherm geeft zowel het verbruik als het geleverd vermogen weer. Het geleverd vermogen is met name interessant voor als er zelf elektriciteit opwekt met bijvoorbeeld zonnepanelen.

Verbruik en geleverd vermogen zijn identiek qua lay-out. De meter geeft aan wat het huidige vermogen is wat wordt verbruikt of terug geleverd. Met een zon of maan symbool wordt aangeven of piek of dal tarief van de leverancier van toepassing is. Het klok en pijl omhoog symbool geven aan hoeveel en op welke moment van de dag maximaal vermogen is geleverd of verbruikt. Totaal vandaag geeft het aantal verbruikte kWh per dag en de kosten van die dag. Daaronder wordt met een grafiek met een interval van 10 sec (maximale mogelijkheid van de slimme meter) de laatste 10 minuten weergegeven.

Home pagina
Home

GRAFIEK

Dit overzicht geeft met de kleuren geel het verbruikte vermogen weer en met de kleur groen het terug geleverde vermogen. Er kan via de vooringestelde intervallen linksboven worden ingezoomd. Er kan tevens met de horizontale scrollbar een vrij in te stellen interval worden gekozen. Daarnaast kan met de optie rechtsboven gekozen worden of alleen verbruikte vermogen of geleverd vermogen worden gekozen of beide. Er kan voor minuten, uren, dagen, maanden of jaren worden gekozen. Hieronder de minuten screenshot.

Schreenshot minuten scherm.

Screenshot dagen: alle grafieken hebben een pop up als met de muis over een grafiek element wordt bewogen (zweven met de muis).

Screenshot dagen.

Screenshot: maanden, geleverd vermogen is uitgeschakeld.

Screenshot maanden
Screenshot maanden.

FINANCIEEL

De werking van de financiële overzichten is gelijk aan die van de grafieken maar geeft aan wat de kosten of opbrengsten zijn van per dag, maand of jaar.

Screenshot financieel
Screenshot financieel.

INSTELLINGEN

Met deze pagina kunnen parameters worden ingesteld voor het gebruik. De TARIEVEN ELEKTRICITEIT zijn de kWh prijzen zonder het vastrechtgedeelte van de elektriciteit. Deze kan in het vakje vastrecht worden opgevoerd.

SYSTEEM kan worden gebruikt om de P1 monitor te herstarten of te stoppen. Bij het stoppen of herstarten wordt er zeker gesteld dat alle gegevens vanuit het geheugen naar de SD-card worden geschreven. Het herstarten door de voeding uit de Raspberry Pi te halen kan ook maar kan tot data verlies leiden.

Met BESTANDEN DELEN kan toegang gekregen worden via SAMBA naar alle bestanden of alleen de databestanden. Normaal staat deze uit maar als er een back-up wil maken dan kan de optie Database worden gekozen. Als alternatief kan de exportfunctie worden gebruikt.

P1 POORT SLIMME METER: De P1 poort kan gebruik maken van andere instellingen per netbeheerder. Zie de pop-up in de user interface (UI) voor bekende waarden.

EX -/IMPORTEREN GEGEVENS met export worden alle gegevens uit de SQLite database naar SQL statements in een zip file weggeschreven. Het exporteren is primair bedoeld om de gegevens veilig te stellen als er een nieuwe versie van P1 monitor uitkomt. Importeren is bedoeld voor het inlezen en werkt alleen met een P1 monitor exportfile.

NETWERK INSTELLINGEN maakt het mogelijke Wi-FI met WPA te gebruiken het wordt echter aanbevolen een bedraad netwerk te gebruiken.

API er is een beperkte API beschikbaar die de huidige gegevens in JSON kan aanleveren voor bijvoorbeeld een domotica product als de FIBARO Home Center 2.

Screenshot instellingen
Screenshot instellingen

INFORMATIE

Dit scherm geeft diverse zaken weer over de werking (of als het tegen zit het niet werken) van de P1 monitor.

DATABASE: Er wordt gebruikt gemaakt van een SQLite database. Die in diverse bestanden (databases) de huidige en historische gegevens bijhoudt. De database draait in RAM omdat dit sneller is en de SDHC kaart er minder snel van slijt (lees stuk gaat). Om te voorkomen dat de gegevens verloren gaan wordt er periodiek (minimaal binnen 15 min) een kopie van de RAM-database naar de SDHC kaart geschreven. Dit gaat volledig automatisch.

P1 POORT STATUS: deze geeft aan of er gegevens uit de P1 te lezen zijn. Als erg geen gegevens kunnen worden gelezen dat wordt dit aangeven. Op PC’s wordt tevens een geluidsignaal afgegeven.

PROCESSEN: De P1 monitor heeft drie primaire programma’s draaien die zorgen dat gegevens tijdig gelezen worden, een database en een bewakingsprogramma die diverse huishoudelijke zaken uitvoert.

SYSTEEM: tijd sinds de laatste (her)start, besturingssysteem versie, de Python versie die gebruikt wordt en de versie van P1 monitor.

NETWERK: diverse zaken die netwerk gerelateerd zijn, zoals is er Internet toegang (belangrijk voor de juiste tijd) en de IP-adressen van het vaste en eventuele Wi-Fi netwerk.

SLIMME METER: hier is te zien wat de ruwe gegevens zijn uit de slimme meter (elke 10 seconden aangepast). Processor, database en geheugen belasting geven respectievelijke weer hoe druk de processor is, hoeveel ruimte de database in beslag neemt en hoeveel RAM geheugen er in gebruik is.

Screenshot informatie
Screenshot informatie

Wat heb ik nodig en wat zijn de kosten

Het goede nieuws is de P1 monitor software is gratis (zie Juridisch spul en zo).

  • Raspberry Pi 3 B Starter Kit compleet, gezien voor 59 euro, de Pi, SDHC card 8Gb, Voeding, netwerk kabel en behuizing.
  • De P1 kabel kost ongeveer 20 euro, even googelen op “p1 kabel slimme meter”.  Ik geef  de voorkeur aan kabels gebaseerd op de  FT232R chip.
  • Het spreekt vanzelf dat je een slimme meter moet hebben. Indien er nog geen slimme meter  is geplaatst kan deze worden aanvraagt bij de netbeheerder en deze wordt geplaatst voor ongeveer 70 euro (zie de website van uw netbeheerder) of even geduld  hebben en wachten tot de netbeheerder deze gratis komt plaatsen.

Juridisch spul en zo

Creative Commons-Licentie

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

De software verkrijgen en installatie.

De P1 monitor  software wordt geleverd als Raspberry Pi 3 B  SDHC 8GB image.  Die hieronder te downloaden is. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.

  1. Download het P1 monitor image file hier,
  2. Pak het zip file uit en lees de leesmij.txt
  3. kopieer het p1monYYYYMMDD.img file via de USB tool naar de lege 8GB SDHC card. Let op! data op de card wordt overschreven en is niet meer te herstellen.
  4. Sluit de Raspberry Pi aan op het netwerk via de kabel en plaatst de P1 kabel in een van de USB poorten.
  5. Sluit de RJ11 stekker aan op slimme meter (kleine stekker aan de P1 kabel)
  6. Sluit de voeding aan op de Raspberry PI. Na ongeveer 1 minuut zal de Raspberry PI gereed zijn voor gebruik. Bij gebruik van een Raspberry PI kan het starten wat langer duren.
  7. Nu komt het lastig stuk, het IP adres achterhalen van de P1 monitor. De meeste thuisnetwerken werken met het automatisch uitgeven van IP adressen. via DHCP als je toegang tot je Internet router hebt van Ziggo, Kpn dan kun je daar het adres vinden van de P1 monitor.  Als alternatief kun je een netwerkscanner tooltje voor je mobiel gebruiken als Fing – Network Tools van Domotz Ltd (Google is je vriend).
  8. Vul het IP adres is in de browser naar keuze. http://<het ipadress>

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

P1-monitor download 201909

P1-monitor download 201909

Dit is niet de laatste versie. Voor alle downloads zie de software archief pagina waar alle versies van de P1 monitor te vinden zijn inclusief de laatste versie.

LET OP DIT IS NIET DE LAATSTE VERSIE!

P1 monitor is op de Raspberry PI3 en Pi4 gebaseerde software om je slimme meter uit te lezen. Voor een meer uitgebreide beschrijving zie hier.

Belangrijk mocht je problemen ondervinden bij het maken van een export dan kun je de volgende commando’s uitvoeren nadat je ingelogd bent op de Pi 3/4.

cd /p1mon/scripts
sudo chmod a+rwx *.py
cd /var/log/p1monitor
sudo chmod a+rw *.log

Upgrade of eerst installatie.

De software verkrijgen en installatie.

De P1 monitor software wordt geleverd als Raspberry Pi 3B/4 SDHC image die hieronder te downloaden is. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.  Zie hieronder hoe je dat daarna de rest van de ruimte op de SDHC card kunt gebruiken met raspi-config tool.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de upgrade assistent.

  1. download het P1 monitor image file uit de download overzicht hieronder.
  2. pak het zip file uit en lees de bijlagen.
  3. kopieer het p1monYYYYMMDD-NN.NN-X.img file via de USB tool naar de SDHC card van minimaal 8GB (bij voorkeur een 32GB of 16GB). Groter dan 32GB heeft geen meerwaarde wegens het FAT32 filesysteem. Let op! data op de card wordt overschreven en is niet meer te herstellen. (had ik al gehad over de export van data).
  4. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen.
  5. plaats de SDHC card in de Pi.
  6. start de Pi, netwerk en P1 kabel aangesloten.
  7. Importeer de data, als je al eerdere versie hebt gebruikt.

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

FAQ

Mocht je vragen hebben kijk dan eerst in de FAQ

Problemen oplossen.

Image past niet op de SDHC card:

  1. Je kunt proberen de donor SDHC card opnieuw te formatteren met een dergelijk tool als de SD formatter.
  2. Installeer het image op een groter SDHC card. Het ongebruikte deel van de SDHC card kun je vrijgeven via de raspi-config tool met de optie extend
  3. wis de browser cache als je layout problemen hebt.

Standaard wachtwoord besturingssysteem:

  1. Het standaard account en wachtwoord om in te kunnen loggen is p1mon met het wachtwoord  verandermij.
  2. Het advies dit wachtwoord na installatie aan te passen.

Juridisch spul en zo

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst!

DOWNLOAD

SDHC images

P1 monitor wordt alleen ondersteund op de Raspberry Pi 3B, Pi3 B+ of Pi4 (vanaf versie 0.9.11).
Een Pi 2 kan werken maar geen garanties.  Een Pi Zero is nooit getest. Van de Pi 1 is bekend dat deze fouten geeft en verloop van tijd stopt / crashed door een gebrek aan ram geheugen.

Wat is er veranderd in versie 0.9.12 (Maxine)

  • In de api help werd onterecht in het path “/?” Opgegeven en de trailing / is niet toegestaan.
  • Verwarming-min.php had een API bug, deze werkt nu weer correct.
  • P1UpgradeAssistent neemt nu ook de custom www folder mee in een upgrade.
  • Rechten van logfiles gelijke gemaakt, voor toekomstige log file viewer.
  • Het weer setup scherm geeft nu sneller de juist en laatste meting weer van de ingegeven stad (met dank aan Wim ).
  • Bug verholpen dat bij de weer meting, waarbij niet de juiste tijd werd weergegeven.
  • Pi boot code update onder meer voor de Pi4.
  • Exim4 email server gedeactiveerd om geheugen te besparen en is niet nodig voor de P1 monitor software.
  • Oude niet meer gebruikte PHP-service verwijderd om RAM verbruik te verminderen.
  • Optie ingebouwd voor slimme meters uit België die anders omgaan met de slimme meter telegram codes. Of in ieder geval de Fluvius leverancier. Fluvius draait dag en nacht tarieven om. Dit is in te stellen in het setup menu van de P1 poort, kies voor Nederland voor “normale” verwerking of voor België voor de aanpassing.
  • Gas meting met de telegram code 0-1:24.2.3 worden nu ook verwerkt, deze gas-code wordt in België gebruikt.
  • NGINX (webserver) upgrade uitgevoerd.
  • p1mon.sh start script aangepast, zodat alle processen bij een manuele herstart ook daadwerkelijk gestopt worden. Het lijkt erop dat onder het Buster OS dit anders werkt en niet altijd de bestaande processen stopte.
  • Kleine aanpassingen aan P1Wachtdog.py zodat deze signals beter verwerkt.
  • Log cleaning naar het distributie image aangepast.
  • Security patches tot en met 31-08-2019.

Als je een bijdrage wil leveren om de kosten te dekken van de website e.d. dan kan kun je hier een donatie doen.

P1-monitor download 201910

P1-monitor download 201910

Dit is niet de laatste versie. Voor alle downloads zie de software archief pagina waar alle versies van de P1 monitor te vinden zijn inclusief de laatste versie.

LET OP DIT IS NIET DE LAATSTE VERSIE!

P1 monitor is op de Raspberry PI3 en Pi4 gebaseerde software om je slimme meter uit te lezen. Voor een meer uitgebreide beschrijving zie hier.

Mocht je de software de moeite waard vinden wil je deze dan delen via social media e.d. Bedankt voor de ondersteuning.

Upgrade of eerst installatie.

De software verkrijgen en installatie.

De P1 monitor software wordt geleverd als Raspberry Pi 3B/4 SDHC image die hieronder te downloaden is. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.  Zie hieronder hoe je dat daarna de rest van de ruimte op de SDHC card kunt gebruiken met raspi-config tool.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de upgrade assistent.

  1. download het P1 monitor image file uit de download overzicht hieronder.
  2. pak het zip file uit en lees de bijlagen.
  3. kopieer het p1monYYYYMMDD-NN.NN-X.img file via de USB tool naar de SDHC card van minimaal 8GB (bij voorkeur een 32GB of 16GB). Groter dan 32GB heeft geen meerwaarde wegens het FAT32 filesysteem. Let op! data op de card wordt overschreven en is niet meer te herstellen. (had ik al gehad over de export van data).
  4. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen.
  5. plaats de SDHC card in de Pi.
  6. start de Pi, netwerk en P1 kabel aangesloten.
  7. Importeer de data, als je al eerdere versie hebt gebruikt.

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

FAQ

Mocht je vragen hebben kijk dan eerst in de FAQ

Problemen oplossen.

Image past niet op de SDHC card:

  1. Je kunt proberen de donor SDHC card opnieuw te formatteren met een dergelijk tool als de SD formatter.
  2. Installeer het image op een groter SDHC card. Het ongebruikte deel van de SDHC card kun je vrijgeven via de raspi-config tool met de optie extend
  3. wis de browser cache als je layout problemen hebt.

Standaard wachtwoord besturingssysteem:

  1. Het standaard account en wachtwoord om in te kunnen loggen is p1mon met het wachtwoord  verandermij.
  2. Het advies dit wachtwoord na installatie aan te passen.

Juridisch spul en zo

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst!

DOWNLOAD

SDHC images

P1 monitor wordt alleen ondersteund op de Raspberry Pi 3B, Pi3 B+ of Pi4 (vanaf versie 0.9.11).
Een Pi 2 kan werken maar geen garanties.  Een Pi Zero is nooit getest. Van de Pi 1 is bekend dat deze fouten geeft en verloop van tijd stopt / crashed door een gebrek aan ram geheugen.

Wat is er veranderd in versie 201910-0.9.13 (Maxine)

  • De tooltip teksten zijn aangepast voor de main-1 en main-2 schermen als de telegram code wijziging/instelling voor België  wordt gebruikt.
  • Aanpassing aan de upgrade assistent, de status database wordt niet meer mee gekopieerd. Werkt bij de volgende upgrade van 0.9.13 naar 0.9.14.
  • De schermen stats-X-gas.php schermen zijn aangepast om een tooltip bug te fixen, de juiste waarde wordt nu voor uur, dag, maand, jaar weergeven.
  • De schermen stats-X-gas.php schermen zijn aangepast om een tooltip bug te fixen, de juiste waarde wordt nu voor uur, dag, maand, jaar weergeven.
  • Dag/piek en dag/nacht indicator aangepast zodat deze ook voor Belgie correct werkt, lost een bug op die in de kostenschermen de verkeerde kleur werd weergegeven.
  • De kosten schermen aangepast. De donkere kleuren zijn nu voor nacht/dal en de lichtere kleuren voor de dag/piek.
  • Screensaver optie toegevoegd met zowel in en uitschakel tijd.
  • Raspbian update naar de laatste versie.
  • PHP versie update.
  • GPIO Zero python package toegevoegd voor de PowerSwitcher toepassing. Hiermee kan als vermogen terug geleverd wordt een GPIO pen worden geactiveerd.
  • Security patches tot en met 14-10-2019.

Als je een bijdrage wil leveren om de kosten te dekken van de website e.d. dan kan kun je hier een donatie doen.

P1-monitor download 201907

P1-monitor download 201907

Dit is niet de laatste versie. Voor alle downloads zie de software archief pagina waar alle versies van de P1 monitor te vinden zijn inclusief de laatste versie.

LET OP DIT IS NIET DE LAATSTE VERSIE!

P1 monitor is op de Raspberry PI3 en Pi4 gebaseerde software om je slimme meter uit te lezen. Voor een meer uitgebreide beschrijving zie hier.

Upgrade of eerst installatie.

De software verkrijgen en installatie.

De P1 monitor software wordt geleverd als Raspberry Pi 3B/4 SDHC image die hieronder te downloaden is. Om de het image naar een SDHC card te kopiëren is een image tool nodig als je deze niet hebt dan kun je USB Image tool downloaden.  Zie hieronder hoe je dat daarna de rest van de ruimte op de SDHC card kunt gebruiken met raspi-config tool.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst! Gebruik eventueel de upgrade assistent.

  1. download het P1 monitor image file uit de download overzicht hieronder.
  2. pak het zip file uit en lees de bijlagen.
  3. kopieer het p1monYYYYMMDD-NN.NN-X.img file via de USB tool naar de SDHC card van minimaal 8GB (bij voorkeur een 32GB of 16GB). Groter dan 32GB heeft geen meerwaarde wegens het FAT32 filesysteem. Let op! data op de card wordt overschreven en is niet meer te herstellen. (had ik al gehad over de export van data).
  4. Mocht je een groter SDHC card willen gebruiken dan kan je via de raspi-config tool de gehele SDHC card gebruiken. Dit is zeker aan te bevelen om slijtage van de SDHC card te verminderen.
  5. plaats de SDHC card in de Pi.
  6. start de Pi, netwerk en P1 kabel aangesloten.
  7. Importeer de data, als je al eerdere versie hebt gebruikt.

Veel plezier met de P1 monitor en laat weten hoe het bevalt.

FAQ

Mocht je vragen hebben kijk dan eerst in de FAQ

Problemen oplossen.

Image past niet op de SDHC card:

  1. Je kunt proberen de donor SDHC card opnieuw te formatteren met een dergelijk tool als de SD formatter.
  2. Installeer het image op een groter SDHC card. Het ongebruikte deel van de SDHC card kun je vrijgeven via de raspi-config tool met de optie extend
  3. wis de browser cache als je layout problemen hebt.

Standaard wachtwoord besturingssysteem:

  1. Het standaard account en wachtwoord om in te kunnen loggen is p1mon met het wachtwoord  verandermij.
  2. Het advies dit wachtwoord na installatie aan te passen.

Juridisch spul en zo

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

De rechten van onderliggende softwareproducten zijn qua licentierechten niet gewijzigd Dit geldt voor bijvoorbeeld het besturingssysteem en javascript bibliotheken. De rechten van onderliggende producten gaan voor deze licentie.

DE SOFTWARE IS GELEVERD “ZOALS”, ZONDER GARANTIE VAN ENIGE SOORT, INCLUSIEF MAAR NIET BEPERKT OP DE GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL. IN GEEN GEVAL ZAL HET AUTEURS OF COPYRIGHT HOLDERS AANSPRAKELIJK ZIJN VOOR ENIGE EISEN, SCHADE OF ANDERE AANSPRAKELIJKHEID IN VERBAND MET DE SOFTWARE OF HET GEBRUIK VAN DE SOFTWARE.

Samengevat: gebruik is voor eigen risico.

Mocht je een eerdere versie van de P1 monitor gebruiken exporteer dan deze data eerst!

DOWNLOAD

SDHC images

P1 monitor wordt alleen ondersteund op de Raspberry Pi 3B, Pi3 B+ of Pi4 (vanaf versie 0.9.11).
Een Pi 2 kan werken maar geen garanties.  Een Pi Zero is nooit getest. Van de Pi 1 is bekend dat deze fouten geeft en verloop van tijd stopt / crashed door een gebrek aan ram geheugen.

Wat is er veranderd in versie 0.9.11 (Maxine)

Bug / feature fixes:
Bug fixes / Nieuwe zaken:

  • Aanpassingen gedaan om slijtage en voortijdig overlijden van de SDHC kaart te voorkomen. De log bestanden (via log2ram) en webserver cache files worden naar ram geschreven. Deze worden 1 maal per uur ge-synced naar de SDHC kaart als er wijzigen zijn in de files en bij een nette herstart. Dit heeft als positieve bijwerking dat prestaties van de API en de logging iets is verbeterd. Voor diegene die aanpassingen doen aan de software de log locatie van de P1 monitor logs is gewijzigd van /p1mon/var/log/ naar /var/log/p1monitor/. Omdat dit een ramlocatie wordt deze periodiek gecontroleerd dat deze niet te vol is. Als deze voor meer dan 95% vol is dan wordt het oudste log bestand gewist.
  • P1UpgradeAssist.py aangepast zodat alleen reeds verwerkt records in e_serial worden gekopieerd, dit om dubbel verwerking te voorkomen. Met dank aan Jac.
  • Cursor in de user interface laat nu op alle plekken consequent een klik pointer zien (handje), wis de browser cache als dit niet mocht werken. Met dank aan Jakwiba.
  • Meterstanden overzicht laat nu ook het gas verbruik in de tooltip zien. Met dank aan Henny.
  • Het overzicht van wifi SSID’s laat nu geen dubbele SSID’s zien. Dit kan voorkomen als er Wifi repeaters of mesh Wifi wordt gebruikt.
  • Afrondingsproblemen in sync gebracht voor diverse schermen die dezelfde dag kWh gegevens weergeven.
  • API catalogus sorteert nu netjes op naam en met de bijbehorende help path.
  • Gas meting wordt nu beter verwerkt voor meters die met een hogere frequentie dan 1 kee