Vandaag een uurtje of 4 aan het stoeien geweest met P1 monitor icm socat.
Zelf kom ik er niet uit, hopelijk kunnen jullie mij verder helpen
Mijn setup is als volgt:
SlimmeLezer, telnet staat geactiveerd op poort 23. Met Putty komt er data binnen
P1 monitor in een docker container (op mijn Windows 11 laptop).
Wat is het probleem?
Het dashboard geeft geen verbruik aan, er lijkt helemaal geen communicatie te zijn met de slimme meter.
Op de info.php pagina krijg ik geen data te zien. Voorbeeld:
Code: Selecteer alles
laatste verwerkte bericht uit de slimme meter:
laatste verwerkte minuten gegevens:
laatste verwerkte uur gegevens:
laatste verwerkte dag gegevens:
laatste verwerkte maand gegevens:
en
Code: Selecteer alles
start van P1 interface(elektrisch):
database start:
watchdog start:
UDP daemon start:
start Dropbox daemon:
start UDP broadcast daemon:
MQTT client start:
watermeter start:
GPIO daemon start:
KWh meter productie(S0) start:
notificatie start:
Het vreemde is dat er wel data lijkt binnen te komen, volgens de P1SerReader logfile
Code: Selecteer alles
2024-05-01 23:52:23,844
INFO
kWupdateStatusDb: min_verbr_KW_170 aangepast naar 0.17 kW. Voor tijdstip 2024-05-01 23:52:23
2024-05-01 23:50:26,813
INFO
kWupdateStatusDb: min_verbr_KW_170 aangepast naar 0.171 kW. Voor tijdstip 2024-05-01 23:50:26
2024-05-01 23:50:17,839
INFO
kWupdateStatusDb: min_verbr_KW_170 aangepast naar 0.172 kW. Voor tijdstip 2024-05-01 23:50:17
2024-05-01 23:47:26,757
INFO
kWupdateStatusDb: min_verbr_KW_170 aangepast naar 0.173 kW. Voor tijdstip 2024-05-01 23:47:26
2024-05-01 23:46:50,916
INFO
kWupdateStatusDb: min_verbr_KW_170 aangepast naar 0.175 kW. Voor tijdstip 2024-05-01 23:46:50
2024-05-01 23:46:41,825
INFO
kWupdateStatusDb: min_gelvr_KW_270 aangepast.naar 0.0 kW. Voor tijdstip 2024-05-01 23:39:12
2024-05-01 23:46:41,804
INFO
kWupdateStatusDb: max_gelvr_KW_270 aangepast naar 0.0 kW. Voor tijdstip 2024-05-01 23:39:12
2024-05-01 23:46:41,781
INFO
kWupdateStatusDb: min_verbr_KW_170 aangepast naar 0.176 kW. Voor tijdstip 2024-05-01 23:45:58
2024-05-01 23:46:41,761
INFO
kWupdateStatusDb: max_verbr_KW_170 aangepast naar 0.19 kW. Voor tijdstip 2024-05-01 23:39:12
Als ik de docker output bekijk, dan komt er iedere seconde een error bij. Zie hieronder
Code: Selecteer alles
docker compose up
[+] Running 1/0
✔ Container p1monitor-p1monitor-1 Created 0.0s
Attaching to p1monitor-1
p1monitor-1 | Restore file privileges
p1monitor-1 | Starting cron
p1monitor-1 | Starting periodic command scheduler: cron.
p1monitor-1 | Starting nginx
p1monitor-1 | Starting nginx: nginx.
p1monitor-1 | Starting php-fpm
p1monitor-1 | Starting multipurpose relay: socat.
p1monitor-1 | Starting p1mon
p1monitor-1 | [*] PHP folder /run/php/sessions wordt aangemaakt.
p1monitor-1 | 2024-05-01 23:55:03 Info: Start van programma met process id 149 en als user -> root
p1monitor-1 | 2024-05-01 23:55:03 Info: restore: Herstellen van gegevens gestart.
p1monitor-1 | 2024-05-01 23:55:03 Info: Controle op eerder gebruikt drive /dev/sda1 gestart.
p1monitor-1 | 2024-05-01 23:55:03 Info: Controle op eerder gebruikt drive /dev/sdb1 gestart.
p1monitor-1 | 2024-05-01 23:55:03 Info: Controle op eerder gebruikt drive /dev/sdc1 gestart.
p1monitor-1 | 2024-05-01 23:55:03 Info: Controle op eerder gebruikt drive /dev/sdd1 gestart.
p1monitor-1 | 2024-05-01 23:55:03 Info: restore geen folder gevonden op de drive. gestopt
p1monitor-1 | [*] P1UpgradeAide gestart.
p1monitor-1 | [*] Wifi power save wordt uitgezet.
p1monitor-1 | [*] Wifi power save is uitgezet.
p1monitor-1 | [*] failsave stop voor dat de processen weer worden gestart.
p1monitor-1 | [*] Processen worden gestopt, even geduld aub.
p1monitor-1 | [*] Geen pid gevonden voor proces P1Notifier, proces is niet actief.
p1monitor-1 | [*] Geen pid gevonden voor proces P1SerReader, proces is niet actief.
p1monitor-1 | [*] Geen pid gevonden voor proces P1GPIO, proces is niet actief.
p1monitor-1 | [*] Geen pid gevonden voor proces P1UdpBroadcaster, proces is niet actief.
p1monitor-1 | [*] Geen pid gevonden voor proces P1DropBoxDeamon, proces is niet actief.
p1monitor-1 | [*] Geen pid gevonden voor proces P1UdpDaemon, proces is niet actief.
p1monitor-1 | [*] Geen pid gevonden voor proces P1Db, proces is niet actief.
p1monitor-1 | [*] Geen pid gevonden voor proces P1Watchdog, proces is niet actief.
p1monitor-1 | [*] Geen pid gevonden voor proces P1PowerProductionS0, proces is niet actief.
p1monitor-1 | [*] Geen pid gevonden voor proces P1WatermeterV2, proces is niet actief.
p1monitor-1 | [*] Geen pid gevonden voor proces P1SolarEdgeReader, proces is niet actief.
p1monitor-1 | [*] Geen pid gevonden voor proces P1MQTT, proces is niet actief.
p1monitor-1 | [*] Geen pid gevonden voor proces /p1mon/p1monenv/bin/gunicorn, proces is niet actief.
p1monitor-1 | [*] Ram naar disk copy starten.
p1monitor-1 | [*] P1DbCopy Ram naar disk copy gereed.
p1monitor-1 | [*] 10 seconden wachttijd, zodat data veilig naar disk wordt gekopierd.
p1monitor-1 | [*] stop gereed.
p1monitor-1 | [*] 2 seconden wachttijd
p1monitor-1 | [*] P1SerReader process prioriteit verhoogd.
p1monitor-1 | [*] P1SerReader gestart.
p1monitor-1 | [*] 3 seconden wachttijd
p1monitor-1 | [*] P1Db gestart.
p1monitor-1 | [*] 3 seconden wachttijd
p1monitor-1 | [*] P1DropBoxDeamon gestart.
p1monitor-1 | [*] P1Watchdog gestart.
p1monitor-1 | [*] P1Weather -getweather gestart.
p1monitor-1 | [*] 2 seconden wachttijd
p1monitor-1 | [*] P1Weather --recover gestart.
p1monitor-1 | [*] P1UdpDaemon gestart.
p1monitor-1 | [*] P1UdpBroadcaster gestart.
p1monitor-1 | [*] P1Api.py gestart.
p1monitor-1 | [*] P1GPIO gestart.
p1monitor-1 | [*] P1Notifier gestart.
p1monitor-1 | [*] file rechten database bestanden aanpassen.
p1monitor-1 | [*] file rechten database bestanden correct gezet.
p1monitor-1 | [*] start gereed.
p1monitor-1 | Setting ramdisk rights
p1monitor-1 | Writing cron
p1monitor-1 | [2024-05-01 23:55:40 +0200] [523] [ERROR] Exception in worker process
p1monitor-1 | Traceback (most recent call last):
p1monitor-1 | File "/usr/local/lib/python3.11/dist-packages/gunicorn/arbiter.py", line 609, in spawn_worker
p1monitor-1 | worker.init_process()
p1monitor-1 | File "/usr/local/lib/python3.11/dist-packages/gunicorn/workers/base.py", line 142, in init_process
p1monitor-1 | self.run()
p1monitor-1 | File "/usr/local/lib/python3.11/dist-packages/gunicorn/workers/sync.py", line 126, in run
p1monitor-1 | self.run_for_one(timeout)
p1monitor-1 | File "/usr/local/lib/python3.11/dist-packages/gunicorn/workers/sync.py", line 63, in run_for_one
p1monitor-1 | self.notify()
p1monitor-1 | File "/usr/local/lib/python3.11/dist-packages/gunicorn/workers/base.py", line 75, in notify
p1monitor-1 | self.tmp.notify()
p1monitor-1 | File "/usr/local/lib/python3.11/dist-packages/gunicorn/workers/workertmp.py", line 45, in notify
p1monitor-1 | os.utime(self._tmp.fileno(), (new_time, new_time))
p1monitor-1 | FileNotFoundError: [Errno 2] No such file or directory
p1monitor-1 | [2024-05-01 23:55:41 +0200] [503] [ERROR] Worker (pid:523) exited with code 255
p1monitor-1 | [2024-05-01 23:55:41 +0200] [503] [ERROR] Worker (pid:523) exited with code 255.
p1monitor-1 | [2024-05-01 23:55:42 +0200] [524] [ERROR] Exception in worker process
p1monitor-1 | Traceback (most recent call last):
p1monitor-1 | File "/usr/local/lib/python3.11/dist-packages/gunicorn/arbiter.py", line 609, in spawn_worker
p1monitor-1 | worker.init_process()
p1monitor-1 | File "/usr/local/lib/python3.11/dist-packages/gunicorn/workers/base.py", line 142, in init_process
p1monitor-1 | self.run()
p1monitor-1 | File "/usr/local/lib/python3.11/dist-packages/gunicorn/workers/sync.py", line 126, in run
p1monitor-1 | self.run_for_one(timeout)
p1monitor-1 | File "/usr/local/lib/python3.11/dist-packages/gunicorn/workers/sync.py", line 63, in run_for_one
p1monitor-1 | self.notify()
p1monitor-1 | File "/usr/local/lib/python3.11/dist-packages/gunicorn/workers/base.py", line 75, in notify
p1monitor-1 | self.tmp.notify()
p1monitor-1 | File "/usr/local/lib/python3.11/dist-packages/gunicorn/workers/workertmp.py", line 45, in notify
p1monitor-1 | os.utime(self._tmp.fileno(), (new_time, new_time))
p1monitor-1 | FileNotFoundError: [Errno 2] No such file or directory
p1monitor-1 | [2024-05-01 23:55:42 +0200] [503] [ERROR] Worker (pid:524) exited with code 255
p1monitor-1 | [2024-05-01 23:55:42 +0200] [503] [ERROR] Worker (pid:524) exited with code 255.
p1monitor-1 | 2024-05-01 23:55:32 Info: Start van programma.
p1monitor-1 | 2024-05-01 23:55:32 Info: Main: wordt uitgevoerd als user -> p1mon
p1monitor-1 | 2024-05-01 23:55:42 Info: Main: FTP backup staat uit, crontab wordt gewist
p1monitor-1 | 2024-05-01 23:55:42 Info: Programma is succesvol gestopt.
p1monitor-1 | [2024-05-01 23:55:42 +0200] [525] [ERROR] Exception in worker process
p1monitor-1 | Traceback (most recent call last):
p1monitor-1 | File "/usr/local/lib/python3.11/dist-packages/gunicorn/arbiter.py", line 609, in spawn_worker
p1monitor-1 | worker.init_process()
p1monitor-1 | File "/usr/local/lib/python3.11/dist-packages/gunicorn/workers/base.py", line 142, in init_process
p1monitor-1 | self.run()
p1monitor-1 | File "/usr/local/lib/python3.11/dist-packages/gunicorn/workers/sync.py", line 126, in run
p1monitor-1 | self.run_for_one(timeout)
p1monitor-1 | File "/usr/local/lib/python3.11/dist-packages/gunicorn/workers/sync.py", line 63, in run_for_one
p1monitor-1 | self.notify()
p1monitor-1 | File "/usr/local/lib/python3.11/dist-packages/gunicorn/workers/base.py", line 75, in notify
p1monitor-1 | self.tmp.notify()
p1monitor-1 | File "/usr/local/lib/python3.11/dist-packages/gunicorn/workers/workertmp.py", line 45, in notify
p1monitor-1 | os.utime(self._tmp.fileno(), (new_time, new_time))
p1monitor-1 | FileNotFoundError: [Errno 2] No such file or directory
Ik gebruik de volgende docker compose yaml
Code: Selecteer alles
# Source: https://marcel.duketown.com/p1-monitor-docker-versie/
version: '3.8'
services:
p1monitor:
hostname: p1mon
image: mclaassen/p1mon
stop_grace_period: 1m # Setting this too short can cause db to get corrupted, source: https://marcel.duketown.com/p1-monitor-docker-versie/
ports:
- 30080:80
volumes:
- C:\Users\Jan\AppData\Local\Docker\data\p1monitor\data:/p1mon/data
- C:\Users\Jan\AppData\Local\Docker\data\p1monitor\usbdisk:/p1mon/mnt/usb
- C:\Users\Jan\AppData\Local\Docker\data\p1monitor\ramdisk:/p1mon/mnt/ramdisk
- C:\Users\Jan\AppData\Local\Docker\data\p1monitor\log:/var/log/p1monitor
tmpfs:
- /run
- /tmp
environment:
- SOCAT_CONF="-T60 pty,link=/dev/ttyUSB1,rawer,group-late=dialout,mode=660 tcp:192.168.8.215:23,forever,interval=30"
restart: unless-stopped
Mij valt op dat de file 03_xx lijkt te missen:
Code: Selecteer alles
C:\Users\Jan\AppData\Local\Docker\data\p1monitor\data>dir
Volume in drive C is OS
Volume Serial Number is 4A02-583C
Directory of C:\Users\Jan\AppData\Local\Docker\data\p1monitor\data
01/05/2024 23:46 <DIR> .
01/05/2024 18:12 <DIR> ..
01/05/2024 23:39 36.864 01_weer_historie.db
01/05/2024 23:46 12.288 02_temperatuur.db
01/05/2024 23:55 20.480 04_faseinformatie.db
01/05/2024 23:39 12.288 05_powerproduction.db
01/05/2024 23:39 12.288 06_watermeter.db
01/05/2024 23:55 20.480 config.db
01/05/2024 23:55 45.056 e_historie.db
01/05/2024 23:55 20.480 e_serial.db
01/05/2024 23:55 36.864 financieel.db
01/05/2024 23:40 32 session.txt
01/05/2024 23:55 16.384 status.db
01/05/2024 23:39 12.288 weer.db
12 File(s) 245.792 bytes
2 Dir(s) 595.365.224.448 bytes free
en
Code: Selecteer alles
C:\Users\Jan\AppData\Local\Docker\data\p1monitor\ramdisk>dir
Volume in drive C is OS
Volume Serial Number is 4A02-583C
Directory of C:\Users\Jan\AppData\Local\Docker\data\p1monitor\ramdisk
01/05/2024 23:58 <DIR> .
01/05/2024 18:12 <DIR> ..
01/05/2024 23:39 36.864 01_weer_historie.db
01/05/2024 23:55 12.288 02_temperatuur.db
01/05/2024 23:58 20.480 04_faseinformatie.db
01/05/2024 23:39 12.288 05_powerproduction.db
01/05/2024 23:39 12.288 06_watermeter.db
01/05/2024 23:57 552 basic.CB64-F0F3-7455-1428-F6C2.json
01/05/2024 23:58 20.480 config.db
01/05/2024 23:58 0 config.db-journal
01/05/2024 23:39 <DIR> dbx
01/05/2024 23:55 2 duckdns.status
01/05/2024 23:57 45.056 e_historie.db
01/05/2024 23:57 24.576 e_serial.db
01/05/2024 23:57 36.864 financieel.db
01/05/2024 23:57 879 p1msg.txt
01/05/2024 23:43 501 patch.status
01/05/2024 23:40 32 session.txt
01/05/2024 23:58 16.384 status.db
01/05/2024 23:55 371 upgrade-aide.status
01/05/2024 23:39 12.288 weer.db
18 File(s) 252.193 bytes
3 Dir(s) 595.370.504.192 bytes free
Heb zelf van alles al geprobeerd, versie 2.0.0 gebruikt, andere socat connectiestrings, ander apparaatnummers (ttyUSB0 ipv USB1, etc).
Alvast bedankt!