NEWS
Adapter WM-Bus / Kampstrup Multical 21
-
@wolfgangfb sagte in Adapter WM-Bus / Kampstrup Multical 21:
Ich bin kein große Freund von "neuaufsetzen" oder "hauptsache geht" denn es gibt bestimmt ein nächstes mal und ich wüsste gerne, auf was ich achten muss.
Bin ich bei dir, nur wenn du es jetzt nicht mehr "einfach kaputt" kriegst, kannst du auch die gewonnene Zeit ggf. später bei einer Neuinstallation reinvestieren (sollte aber nicht nötig werden wenn du die beiden Dateien sicherst).
bzgl. Stick: kann ich gerne kundtun, allerdings
- bin ich da auch derzeit etwas egoistisch. Erstmal warten ob ich meinen Key bekomme, dann ordern... (sonst sind ev. wieder alle weg )
- ist der Preis nicht so ganz ausschlaggebend bei mir, sondern die Lieferfähigkeit, wobei ich natürlich bei einem Preis < 30,- € auch nicht unbedingt zu tiefst traurig bin.
- muss ich erst testen ob es damit wirklich geht. Dann habe nur ich die Knete versemmelt.
-
Es gibt noch ein Problem: Der Stick wird nur erkannt bzw. ausgelesen, wenn kein anderer Stick im Raspi steckt. Wenn ich den Sonoff Zigbee 3 Stick zusätzlich beim Booten im Raspi habe geht das ganze nicht:
pi@raspberrypi:~ $ systemctl status wmbusmeters * wmbusmeters.service - "wmbusmeters service" Loaded: loaded (/lib/systemd/system/wmbusmeters.service; enabled; vendor preset: enabled) Active: active (running) since Sun 2022-04-17 17:57:50 CEST; 2h 34min ago Docs: https://github.com/weetmuts/wmbusmeters man:wmbusmeters(1) Process: 640 ExecStartPre=/bin/mkdir -p /var/log/wmbusmeters/meter_readings (code=exited, status=0/SUCCESS) Process: 652 ExecStartPre=/bin/chown -R wmbusmeters:wmbusmeters /var/log/wmbusmeters (code=exited, status=0/SUCCESS) Process: 656 ExecStartPre=/bin/mkdir -p /run/wmbusmeters (code=exited, status=0/SUCCESS) Process: 657 ExecStartPre=/bin/chown -R wmbusmeters:wmbusmeters /run/wmbusmeters (code=exited, status=0/SUCCESS) Process: 662 ExecStart=/usr/sbin/wmbusmetersd /run/wmbusmeters/wmbusmeters.pid (code=exited, status=0/SUCCESS) Main PID: 668 (wmbusmetersd) Tasks: 3 (limit: 4915) CPU: 5.278s CGroup: /system.slice/wmbusmeters.service `-668 /usr/sbin/wmbusmetersd /run/wmbusmeters/wmbusmeters.pid Apr 17 17:57:50 raspberrypi wmbusmetersd[668]: (config) "alarmtimeout" "1h" Apr 17 17:57:50 raspberrypi wmbusmetersd[668]: (config) "alarmexpectedactivity" "mon-sun(00-23)" Apr 17 17:57:50 raspberrypi wmbusmetersd[668]: (config) "ignoreduplicates" "true" Apr 17 17:57:50 raspberrypi wmbusmetersd[668]: (config) "" "" Apr 17 17:57:50 raspberrypi systemd[1]: Started "wmbusmeters service". Apr 17 17:57:50 raspberrypi wmbusmetersd[668]: (config) loading meter file /etc/wmbusmeters.d/MyTapWater Apr 17 17:57:50 raspberrypi wmbusmetersd[668]: (config) name=MyTapWater Apr 17 17:57:50 raspberrypi wmbusmetersd[668]: (config) id=57813696 Apr 17 17:57:50 raspberrypi wmbusmetersd[668]: (config) key=<notprinted> Apr 17 17:57:50 raspberrypi wmbusmetersd[668]: (wmbusmeters) using log file /var/log/wmbusmeters/wmbusmeters.log
pi@raspberrypi:~ $ tail -f /var/log/wmbusmeters/wmbusmeters.log (shell) output: >>><<< (shell) return code 1 (shell) 680 exited (serial) registered regular callback HOT_PLUG_DETECTOR(0) every 2 seconds (wmbusmeters) waiting for telegrams (serial) EVENT thread interrupted (serial) waiting for stop (serial) EVENT thread interrupted (serial) TIMER thread interrupted [2022-04-17_17:57:52] (memory) rss 3182592 peak 3.03 MiB
Ziehe ich den Zigbee und den IM871a raus und stecke den IM871a wieder rein, dann läuft wieder alles.
Wie bekomme ich beide Sticks sauber konfiguriert?
-
@wolfgangfb Das hängt damit zusammen in welcher Reihenfolge Linux die Geräte an den USB-Ports findet.
Wenn du bspw.
device=/dev/ttyUSB0:im871a:c1
nutzt, muss auch am "ttyUSB0" der IM-Stick erkannt worden sein. hat er da den ZigBee erkannt...Bei
device=auto:c1
scannt er alle USB-Ports durch bis er den IM-Stick findet und nutzt dann auch den korrekten Eintrag.Oder man nutzt den Unique-Namen, der ist immer gleich egal an welchem USB-Port was steckt/erkannt wurde:
ls -al /dev/serial/by-id/
Hier mal ein Beispiel (ist allerdings ein ZigBee-Stick ) :device=/dev/serial/by-id/usb-Texas_Instruments_XDS110__03.00.00.15__Embed_with_CMSIS-DAP_L1100G3W-if00:im871a:c1
-
@sborg
So, wieder eine SD Karte defekt, wieder neu installiert und wieder Probleme
Die Konfigurationsdateien habe ich vom alten System übernommen.
Bin für alle Hinweise dankbar.pi@raspberrypi:~/wmbusmeters-master $ systemctl status wmbusmeters ● wmbusmeters.service - "wmbusmeters service" Loaded: loaded (/lib/systemd/system/wmbusmeters.service; enabled; vendor preset: enabled) Active: failed (Result: exit-code) since Thu 2022-07-21 20:31:03 CEST; 30min ago Docs: https://github.com/weetmuts/wmbusmeters man:wmbusmeters(1) CPU: 33ms Jul 21 20:31:03 raspberrypi systemd[1]: wmbusmeters.service: Scheduled restart job, restart counter is at 3. Jul 21 20:31:03 raspberrypi systemd[1]: Stopped "wmbusmeters service". Jul 21 20:31:03 raspberrypi systemd[1]: wmbusmeters.service: Start request repeated too quickly. Jul 21 20:31:03 raspberrypi systemd[1]: wmbusmeters.service: Failed with result 'exit-code'. Jul 21 20:31:03 raspberrypi systemd[1]: Failed to start "wmbusmeters service".
-- Journal begins at Mon 2022-04-04 14:17:02 CEST, ends at Thu 2022-07-21 20:55:59 CEST. -- Jul 21 20:55:59 raspberrypi sudo[2216]: pam_unix(sudo:session): session closed for user root Jul 21 20:55:59 raspberrypi systemd[1]: /lib/systemd/system/plymouth-start.service:16: Unit configured to use KillMode=> Jul 21 20:55:58 raspberrypi systemd[1]: Reloading. Jul 21 20:55:58 raspberrypi sudo[2216]: pam_unix(sudo:session): session opened for user root(uid=0) by pi(uid=1000) Jul 21 20:55:58 raspberrypi sudo[2216]: pi : TTY=pts/0 ; PWD=/home/pi/wmbusmeters-master ; USER=root ; COMMAND=/u> Jul 21 20:55:54 raspberrypi sudo[2201]: pam_unix(sudo:session): session closed for user root Jul 21 20:55:54 raspberrypi systemd[1]: /lib/systemd/system/plymouth-start.service:16: Unit configured to use KillMode=> Jul 21 20:55:54 raspberrypi systemd[1]: Reloading. Jul 21 20:55:54 raspberrypi sudo[2201]: pam_unix(sudo:session): session opened for user root(uid=0) by pi(uid=1000) Jul 21 20:55:54 raspberrypi sudo[2201]: pi : TTY=pts/0 ; PWD=/home/pi/wmbusmeters-master ; USER=root ; COMMAND=/u> Jul 21 20:55:50 raspberrypi sudo[2199]: pam_unix(sudo:session): session closed for user root Jul 21 20:55:25 raspberrypi sudo[2199]: pam_unix(sudo:session): session opened for user root(uid=0) by pi(uid=1000) Jul 21 20:55:25 raspberrypi sudo[2199]: pi : TTY=pts/0 ; PWD=/home/pi/wmbusmeters-master ; USER=root ; COMMAND=/u> Jul 21 20:51:26 raspberrypi sudo[2173]: pam_unix(sudo:session): session closed for user root Jul 21 20:51:26 raspberrypi systemd[1]: /lib/systemd/system/plymouth-start.service:16: Unit configured to use KillMode=> Jul 21 20:51:25 raspberrypi systemd[1]: Reloading. Jul 21 20:51:25 raspberrypi sudo[2173]: pam_unix(sudo:session): session opened for user root(uid=0) by pi(uid=1000) Jul 21 20:51:25 raspberrypi sudo[2173]: pi : TTY=pts/0 ; PWD=/home/pi/wmbusmeters-master ; USER=root ; COMMAND=/u> Jul 21 20:51:03 raspberrypi sudo[2156]: pam_unix(sudo:session): session closed for user root Jul 21 20:51:03 raspberrypi systemd[1]: /lib/systemd/system/plymouth-start.service:16: Unit configured to use KillMode=> Jul 21 20:51:03 raspberrypi systemd[1]: Reloading. Jul 21 20:51:03 raspberrypi sudo[2156]: pam_unix(sudo:session): session opened for user root(uid=0) by pi(uid=1000) Jul 21 20:51:03 raspberrypi sudo[2156]: pi : TTY=pts/0 ; PWD=/home/pi/wmbusmeters-master ; USER=root ; COMMAND=/u> J
-
@wolfgangfb sagte in Adapter WM-Bus / Kampstrup Multical 21:
wieder eine SD Karte defekt
Deswegen habe ich nach der x-ten defekten umgestellt
Was mich da stört ist :Jul 21 20:55:54 raspberrypi sudo[2201]: pi : TTY=pts/0 ; PWD=/home/pi/wmbusmeters-master ; USER=root ; COMMAND=/u> Jul 21 20:55:50 raspberrypi sudo[2199]: pam_unix(sudo:session): session closed for user root Jul 21 20:55:25 raspberrypi sudo[2199]: pam_unix(sudo:session): session opened for user root(uid=0) by pi(uid=1000)
Hast du da ev. als root die Dateien kopiert/editiert? Das muss sicher nicht als root laufen.
-
Der User ist davon überzeugt, dass seine ganzen Problemchen natürlich nie was mit seiner root Shell zutun haben können, wenn ich mich richtig erinnere. Ich würde ihn in dem Glauben lassen. Alles andere könnte ihn verstören.
Edit: Ich glaube ich verwechsel da jemanden...
-
@sborg sagte in Adapter WM-Bus / Kampstrup Multical 21:
@wolfgangfb sagte in Adapter WM-Bus / Kampstrup Multical 21:
wieder eine SD Karte defekt
Deswegen habe ich nach der x-ten defekten umgestellt
Auf was? USB Stick? Festplatte? SSD? Oder ganz weg vom Raspberry?
Was mich da stört ist :
Jul 21 20:55:54 raspberrypi sudo[2201]: pi : TTY=pts/0 ; PWD=/home/pi/wmbusmeters-master ; USER=root ; COMMAND=/u> Jul 21 20:55:50 raspberrypi sudo[2199]: pam_unix(sudo:session): session closed for user root Jul 21 20:55:25 raspberrypi sudo[2199]: pam_unix(sudo:session): session opened for user root(uid=0) by pi(uid=1000)
Hast du da ev. als root die Dateien kopiert/editiert? Das muss sicher nicht als root laufen.
Ja, ich habe tatsächlich die Konfigurationsdateien mit sudo kopiert. Aber: Welche Rechte sind denn jetzt falsch?
Laut Doku musste ich dochsudo vi /etc/wmbusmeters.d/MyTapWater
und
sudo vi /etc/wmbusmeters.conf
machen, damit gehören doch diese beiden Dateien root.
Welche Besitzer bzw. Gruppen sind denn jetzt genau falsch? -
@thomas-braun sagte in Adapter WM-Bus / Kampstrup Multical 21:
Der User ist davon überzeugt, dass seine ganzen Problemchen natürlich nie was mit seiner root Shell zutun haben können, wenn ich mich richtig erinnere. Ich würde ihn in dem Glauben lassen. Alles andere könnte ihn verstören.
Edit: Ich glaube ich verwechsel da jemanden...
Das glaube ich auch. Ich melde mich mit ssh pi@ip an und wenn in einer Doku "sudo" steht, dann mache ich das, wenn nicht, dann nicht. Aber ich gebe zu, dass ich an den Stellen, an denen die Ausgabe von der in der Doku abweicht, schnell überfordert/unsicher bin und auch mal probiere etwas mit sudo zu erzwingen (wenn z.B. permission denied kommt).
Deshalb meine Frage: Macht es einen Unterschied, ob ich mit
sudo vi /etc/wmbusmeters.conf
eine Datei erzeuge oder diese per
sudo cp /opt/iobroker/Wolfgang/wmbusmeters.conf /etc/wmbusmeters.conf
aus meiner alte Installation übernehme?
-
@wolfgangfb sagte in Adapter WM-Bus / Kampstrup Multical 21:
Macht es einen Unterschied ... eine Datei erzeuge oder diese per ...
Ja. Beim 1. erzeugst du ggf. eine neue Datei, die dann root:root gehört (oder du editierst sie falls es sie schon gab).
Beim 2. kopierst du die Datei "nur". Da du als User nicht in "/etc" schreiben darfst, würde das hier wg. des "sudos" aber funktionieren. Das prekäre daran ist allerdings, dass du die User-/Gruppenrechte der Quelldatei mit übernimmst. So könnte die Datei nun pi:pi gehören
@wolfgangfb sagte in Adapter WM-Bus / Kampstrup Multical 21:
Welche Besitzer bzw. Gruppen sind denn jetzt genau falsch?
Leider weigert sich mein Wasserwerk mir meinen AES-Schlüssel zu überlassen. Deswegen wird das bei mir nix --> ich habe es weder installiert, noch weiß ich was genau richtig ist. Ich kriege nur immer "Pickel am *rsch" ( ) wenn immer alles unter/mit root läuft. Das ist zu 99% entweder unnötig oder schlichtweg schlecht umgesetzt (es geht hier nicht um das kopieren von einer Konfiguration nach /etc etc. Das ist root [oder mittels sudo]vorbehalten und völlig richtig).
...und weil nur root dann auch damit arbeiten darf, sind dann 80% der daraus resultierenden Fehler einfach nur fehlende Zugriffsrechte (weil dann eben nur root wieder darf).Auf was? USB Stick? Festplatte? SSD? Oder ganz weg vom Raspberry?
Nach paar Monaten hatte ich die faxen dicke, auch die Performance ging in die Knie. QuadCore I5 mit 3.4GHz, 16GB RAM, 512MB +1TB SSD als Intel NUC. Stromsparend, genügend Ressourcen (mein ioB braucht mittlerweile ~ 5GB RAM alleine), da sich nichts dreht Silence und wg. Proxmox gleich noch paar LXC/VMs
-
@sborg
Hallo
Ich bitte noch einmal um Hilf/Unterstützung weil ich einfach nicht weiterkomme.
Ich habe noch eine "alte" Bastelinstallation gefunden, auf der die Wasseruhr zumindest teilweise läuft.
Ich habe jetzt alle Konfigurationsdateien auf beiden Systemen verglichen, alle Rechte sind zu 100% gleich und alle Inhalte sind zu 100% gleich.
Auf beiden Systemen ist NodeJS 16.16.0 und npm 8.11.0systemctl status wmbusmeters
liefert auf dem alten Bastelrechner:
pi@raspberrypi202:/var/log/wmbusmeters/meter_readings $ systemctl status wmbusmeters ● wmbusmeters.service - "wmbusmeters service" Loaded: loaded (/lib/systemd/system/wmbusmeters.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2022-07-18 19:45:10 CEST; 6 days ago Docs: https://github.com/weetmuts/wmbusmeters man:wmbusmeters(1) Process: 562 ExecStartPre=/bin/mkdir -p /var/log/wmbusmeters/meter_readings (code=exited, status=0/SUCCESS) Process: 587 ExecStartPre=/bin/chown -R wmbusmeters:wmbusmeters /var/log/wmbusmeters (code=exited, status=0/SUCCESS) Process: 621 ExecStartPre=/bin/mkdir -p /run/wmbusmeters (code=exited, status=0/SUCCESS) Process: 627 ExecStartPre=/bin/chown -R wmbusmeters:wmbusmeters /run/wmbusmeters (code=exited, status=0/SUCCESS) Process: 669 ExecStart=/usr/sbin/wmbusmetersd /run/wmbusmeters/wmbusmeters.pid (code=exited, status=0/SUCCESS) Main PID: 793 (wmbusmetersd) Tasks: 3 (limit: 2060) CPU: 6min 1.502s CGroup: /system.slice/wmbusmeters.service └─793 /usr/sbin/wmbusmetersd /run/wmbusmeters/wmbusmeters.pid Jul 18 19:45:08 raspberrypi202 systemd[1]: Starting "wmbusmeters service"... Jul 18 19:45:10 raspberrypi202 wmbusmetersd[669]: (wmbusmeters) started /run/wmbusmeters/wmbusmeters.pid Jul 18 19:45:10 raspberrypi202 systemd[1]: Started "wmbusmeters service". pi@raspberrypi202:/var/log/wmbusmeters/meter_readings $
auf dem neu aufgesetzten Wunschrechner:
pi@raspberrypi:/lib/systemd/system $ systemctl status wmbusmeters ● wmbusmeters.service - "wmbusmeters service" Loaded: loaded (/lib/systemd/system/wmbusmeters.service; enabled; vendor preset: enabled) Active: failed (Result: exit-code) since Mon 2022-07-25 12:09:41 CEST; 21min ago Docs: https://github.com/weetmuts/wmbusmeters man:wmbusmeters(1) Process: 7245 ExecStartPre=/bin/mkdir -p /var/lib/wmbusmeters/meter_readings (code=exited, status=0/SUCCESS) Process: 7246 ExecStartPre=/bin/chown -R wmbusmeters:wmbusmeters /var/log/wmbusmeters (code=exited, status=1/FAILUR> CPU: 30ms Jul 25 12:09:41 raspberrypi systemd[1]: wmbusmeters.service: Scheduled restart job, restart counter is at 3. Jul 25 12:09:41 raspberrypi systemd[1]: Stopped "wmbusmeters service". Jul 25 12:09:41 raspberrypi systemd[1]: wmbusmeters.service: Start request repeated too quickly. Jul 25 12:09:41 raspberrypi systemd[1]: wmbusmeters.service: Failed with result 'exit-code'. Jul 25 12:09:41 raspberrypi systemd[1]: Failed to start "wmbusmeters service".
auf dem alten kommen auch die Werte der Uhr an:
pi@raspberrypi202:/var/log/wmbusmeters/meter_readings $ tail -f /var/log/wmbusmeters/wmbusmeters.log telegram=|23442D2C963681571B168D209C2CA12622ABDE79EDA81A54|0000B99F00006E8E00000D14|+578968 telegram=|23442D2C963681571B168D209D2DA12622ABDE79EDA81A54|0000B99F00006E8E00000D14|+578984 telegram=|2A442D2C963681571B168D20A03CA12622278E78|02FF2000000413B99F000044136E8E0000615B0D616714|+579031 telegram=|23442D2C963681571B168D20A13DA12622ABDE79EDA81A54|0000B99F00006E8E00000D14|+579047 telegram=|23442D2C963681571B168D20A24CA12622ABDE79EDA81A54|0000B99F00006E8E00000D14|+579062 telegram=|23442D2C963681571B168D20A44EA12622ABDE79EDA81A54|0000B99F00006E8E00000D14|+579094 telegram=|23442D2C963681571B168D20A54FA12622ABDE79EDA81A54|0000B99F00006E8E00000D14|+579110 telegram=|23442D2C963681571B168D20A65CA12622ABDE79EDA81A54|0000B99F00006E8E00000D14|+579126 telegram=|23442D2C963681571B168D20A75DA12622ABDE79EDA81A54|0000B99F00006E8E00000D14|+579141 telegram=|2A442D2C963681571B168D20A85EA12622278E78|02FF2000000413B99F000044136E8E0000615B0D616714|+579157
(auf dem neuen logischerweise nicht weil var/log/wmbusmeters/wmbusmeters.log garnicht existiert).
Was beim alten nicht geht ist die Einbindung der Daten in IO-Broker
Der Datenpunkt
mqtt.0.wmbusmeters.57813696
hat einen aktuellen Zeitsstempel, enthält aber Werte vom 13.04.2022 (Zeitpunkt zu dem ich den Bastelrechner zuletzt mit der Wasseruhr getestet habe.
pi@raspberrypi202:/var/log/wmbusmeters/meter_readings $ ls -la insgesamt 32 drwxr-xr-x 2 wmbusmeters wmbusmeters 4096 25. Jul 00:00 . drwxr-xr-x 3 wmbusmeters wmbusmeters 4096 24. Jul 00:00 .. -rw-rw-rw- 1 wmbusmeters wmbusmeters 350 31. Okt 2021 _2021-10-31 -rw-rw-rw- 1 wmbusmeters wmbusmeters 339 10. Nov 2021 _2021-11-10 -rw-rw-rw- 1 wmbusmeters wmbusmeters 351 10. Nov 2021 MyTapWater_2021-11-10 -rw-rw-rw- 1 wmbusmeters wmbusmeters 354 13. Apr 16:24 MyTapWater_2022-04-13 -rw-rw-rw- 1 wmbusmeters wmbusmeters 353 24. Jul 23:59 MyTapWater_2022-07-24 -rw-rw-rw- 1 wmbusmeters wmbusmeters 354 25. Jul 12:42 MyTapWater_2022-07-25
(Die Werte vom 24.7 und 25.7 stimmen mit der Uhr überein)
Der Grund dürfte meiner Meinung nach im mqtt Adapter liegen, der bleibt rotError starting MQTT server on 0.0.0.0:1883: Error: listen EADDRINUSE: address already in use 0.0.0.0:1883 mqtt.0 2022-07-25 12:44:24.056 info Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason mqtt.0 2022-07-25 12:44:24.050 error Cannot create server: Error: listen EADDRINUSE: address already in use 0.0.0.0:1883
pi@raspberrypi202:/var/log/wmbusmeters/meter_readings $ sudo netstat -tulpen | grep 1883 tcp 0 0 127.0.0.1:1883 0.0.0.0:* LISTEN 118 13017 595/mosquitto tcp6 0 0 ::1:1883 :::* LISTEN 118 13018 595/mosquitto
Irgendwas scheint sich da zu beißen.
Es wäre schön, wenn ich auf dem alten Bastelrechner auch wieder mqtt und mosquitto zum laufen bringen würde. Aber viel wichtiger ist, dass der wmbusmeters auf dem neuen Rechner läuft.
Ich bin für jeden Hinweis zur Fehlersuche dankbar. -
@wolfgangfb
Hmmm, ich habe jetzt nochmal eine neu Installation gemacht. Also ein nacktes raspbian auf einen Stick geschrieben und dann der Anleitung von matze-dev
Installationsbeschreibung-ioBroker-Rasp-PI+IMST871A.pdf
von Punkt 1 bis 27 100% 1:1 gefolgt (natürlich mit meinen Daten) und nach Punkt 27 erscheint:pi@raspberrypi:~/mosquitto-2.0.11 $ systemctl status wmbusmeters ● wmbusmeters.service - "wmbusmeters service" Loaded: loaded (/lib/systemd/system/wmbusmeters.service; enabled; vendor preset: enabled) Active: inactive (dead) Docs: https://github.com/weetmuts/wmbusmeters man:wmbusmeters(1)
Bei seinem Bild hat er das aus dem Verzeichnis wmbusmeters-master aufgerufen, aber wenn man 1:1 der Anleitung folgt müsste man im Verzeichnis mosquitto-2.0.11 sein.
Aber ansonsten sieht die Ausgabe gut aus.
Ein Verzeichnis /var/log/wmbusmeters/ ist zu diesem Zeitpunkt noch nicht angelegt, ob das so sein soll oder nicht weiß ich nicht.Jetzt habe ich den Schritt 28
sudo init 6
gemacht und unmittelbar darauf kommt bei
C:\Users\wolfgang>ssh pi@192.168.1.203 pi@192.168.1.203's password: Linux raspberrypi 5.15.32-v7l+ #1538 SMP Thu Mar 31 19:39:41 BST 2022 armv7l The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. Last login: Mon Jul 25 22:24:25 2022 pi@raspberrypi:~ $ systemctl status wmbusmeters ● wmbusmeters.service - "wmbusmeters service" Loaded: loaded (/lib/systemd/system/wmbusmeters.service; enabled; vendor preset: enabled) Active: failed (Result: exit-code) since Mon 2022-07-25 22:24:22 CEST; 2min 18s ago Docs: https://github.com/weetmuts/wmbusmeters man:wmbusmeters(1) Process: 669 ExecStartPre=/bin/mkdir -p /var/lib/wmbusmeters/meter_readings (code=exited, status=0/SUCCESS) Process: 670 ExecStartPre=/bin/chown -R wmbusmeters:wmbusmeters /var/log/wmbusmeters (code=exited, status=1/FAILURE) CPU: 46ms Jul 25 22:24:22 raspberrypi systemd[1]: wmbusmeters.service: Scheduled restart job, restart counter is at 3. Jul 25 22:24:22 raspberrypi systemd[1]: Stopped "wmbusmeters service". Jul 25 22:24:22 raspberrypi systemd[1]: wmbusmeters.service: Start request repeated too quickly. Jul 25 22:24:22 raspberrypi systemd[1]: wmbusmeters.service: Failed with result 'exit-code'. Jul 25 22:24:22 raspberrypi systemd[1]: Failed to start "wmbusmeters service". pi@raspberrypi:~ $
Also vor dem Reboot lief der Dienst noch und nach dem Neustart beschwert er sich, mit "repeated too quickly"
Vielleicht hilft dieser Hinweis ja den Linux Experten um das Problem einzugrenzen.
Ich verstehe die ZeileProcess: 670 ExecStartPre=/bin/chown -R wmbusmeters:wmbusmeters /var/log/wmbusmeters (code=exited, status=1/FAILURE) CPU: 46ms
dass der Dienst versucht /var/log/wmbusmeters mit den Rechten wmbusmeters:wmbusmeters zu versehen, dieses Verzeichnis existiert aber nicht. Jetzt müsste man eben mal wissen, wann und von wem das angelegt werden müsste.
Bei der eigentlichen Installation sind mir folgende Punkte aufgefallen:
Bei Schritt 9 und 10 kommt:sudo make DEBUG=true fatal: Kein Git-Repository (oder irgendeines der Elternverzeichnisse): .git fatal: Kein Git-Repository (oder irgendeines der Elternverzeichnisse): .git fatal: Kein Git-Repository (oder irgendeines der Elternverzeichnisse): .git fatal: Kein Git-Repository (oder irgendeines der Elternverzeichnisse): .git fatal: Kein Git-Repository (oder irgendeines der Elternverzeichnisse): .git fatal: Kein Git-Repository (oder irgendeines der Elternverzeichnisse): .git New version number generates new build_debug/version.h Building _ g pi@raspberrypi:~/wmbusmeters-master $ sudo make install fatal: Kein Git-Repository (oder irgendeines der Elternverzeichnisse): .git fatal: Kein Git-Repository (oder irgendeines der Elternverzeichnisse): .git fatal: Kein Git-Repository (oder irgendeines der Elternverzeichnisse): .git fatal: Kein Git-Repository (oder irgendeines der Elternverzeichnisse): .git fatal: Kein Git-Repository (oder irgendeines der Elternverzeichnisse): .git fatal: Kein Git-Repository (oder irgendeines der Elternverzeichnisse): .git New version number generates new build/version.h Building _
und bei Schritt 14 kommt:
pi@raspberrypi:~ $ sudo mkdir /etc/wmbusmeters.d mkdir: das Verzeichnis „/etc/wmbusmeters.d“ kann nicht angelegt werden: Die Datei existiert bereits
-
sudo mkdir /var/log/wmbusmeters sudo chown -R wmbusmeters:wmbusmeters /var/log/wmbusmeters/ sudo systemctl restart wmbusmeters systemctl status wmbusmeters
Lüppt hier:
pi@mysterium:~ $ systemctl status wmbusmeters.service ● wmbusmeters.service - "wmbusmeters service" Loaded: loaded (/lib/systemd/system/wmbusmeters.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2022-07-25 23:25:25 CEST; 3s ago Docs: https://github.com/weetmuts/wmbusmeters man:wmbusmeters(1) Process: 2585 ExecStartPre=/bin/mkdir -p /var/lib/wmbusmeters/meter_readings (code=exited, status=0/SUCCESS) Process: 2588 ExecStartPre=/bin/chown -R wmbusmeters:wmbusmeters /var/log/wmbusmeters (code=exited, status=0/SUCCESS) Process: 2592 ExecStartPre=/bin/mkdir -p /run/wmbusmeters (code=exited, status=0/SUCCESS) Process: 2595 ExecStartPre=/bin/chown -R wmbusmeters:wmbusmeters /run/wmbusmeters (code=exited, status=0/SUCCESS) Process: 2598 ExecStart=/usr/sbin/wmbusmetersd /run/wmbusmeters/wmbusmeters.pid (code=exited, status=0/SUCCESS) Main PID: 2607 (wmbusmetersd) Tasks: 3 (limit: 4915) CPU: 3.597s CGroup: /system.slice/wmbusmeters.service └─2607 /usr/sbin/wmbusmetersd /run/wmbusmeters/wmbusmeters.pid Jul 25 23:25:25 mysterium systemd[1]: Starting "wmbusmeters service"... Jul 25 23:25:25 mysterium wmbusmetersd[2598]: (wmbusmeters) started /run/wmbusmeters/wmbusmeters.pid Jul 25 23:25:25 mysterium systemd[1]: Started "wmbusmeters service".
Da fehlt eine Zeile in der
/etc/systemd/system/multi-user.target.wants/wmbusmeters.service
Da müsste nochExecStartPre=-/bin/mkdir -p /var/log/wmbusmeters
rein.
Muss man das Verzeichnis halt selber anlegen. -
@thomas-braun
Hallo Thomas
Zuerst einmal ganz vielen Dank für Deine Hilfe. Wir (ich) komme(n) dem Ziel näher!
Wenn ichsudo mkdir /var/log/wmbusmeters sudo mkdir /var/log/wmbusmeters/meter_readings sudo chown -R wmbusmeters:wmbusmeters /var/log/wmbusmeters/ sudo systemctl restart wmbusmeters systemctl status wmbusmeters
mache kommt
pi@raspberrypi:/var/log/wmbusmeters/meter_readings $ systemctl status wmbusmeters ● wmbusmeters.service - "wmbusmeters service" Loaded: loaded (/lib/systemd/system/wmbusmeters.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2022-07-26 12:44:29 CEST; 10min ago Docs: https://github.com/weetmuts/wmbusmeters man:wmbusmeters(1) Process: 583 ExecStartPre=/bin/mkdir -p /var/lib/wmbusmeters/meter_readings (code=exited, status=0/SUCCESS) Process: 601 ExecStartPre=/bin/chown -R wmbusmeters:wmbusmeters /var/log/wmbusmeters (code=exited, status=0/SUCCESS) Process: 609 ExecStartPre=/bin/mkdir -p /run/wmbusmeters (code=exited, status=0/SUCCESS) Process: 617 ExecStartPre=/bin/chown -R wmbusmeters:wmbusmeters /run/wmbusmeters (code=exited, status=0/SUCCESS) Process: 629 ExecStart=/usr/sbin/wmbusmetersd /run/wmbusmeters/wmbusmeters.pid (code=exited, status=0/SUCCESS) Main PID: 638 (wmbusmetersd) Tasks: 3 (limit: 4915) CPU: 389ms CGroup: /system.slice/wmbusmeters.service └─638 /usr/sbin/wmbusmetersd /run/wmbusmeters/wmbusmeters.pid Jul 26 12:44:29 raspberrypi wmbusmetersd[638]: (config) "ignoreduplicates" "true" Jul 26 12:44:29 raspberrypi wmbusmetersd[638]: (config) "" "" Jul 26 12:44:29 raspberrypi systemd[1]: Started "wmbusmeters service". Jul 26 12:44:29 raspberrypi wmbusmetersd[638]: (config) loading meter file /etc/wmbusmeters.d/MyTapWater Jul 26 12:44:29 raspberrypi wmbusmetersd[638]: (config) name=MyTapWater Jul 26 12:44:29 raspberrypi wmbusmetersd[638]: (config) id=57813696 Jul 26 12:44:29 raspberrypi wmbusmetersd[638]: (config) key=<notprinted> Jul 26 12:44:29 raspberrypi wmbusmetersd[638]: [67B blob data] Jul 26 12:44:29 raspberrypi wmbusmetersd[638]: [57B blob data] Jul 26 12:44:29 raspberrypi wmbusmetersd[638]: (wmbusmeters) using log file /var/log/wmbusmeters/wmbusmeters.log pi@raspberrypi:/var/log/wmbusmeters/meter_readings $
das sieht schon mal sehr gut aus.
Hier die Frage: Wo muss an dem Installationsskript etwas geändert werden (bzw. wann müssen die Verzeichnisse angelegt werden)
Aber die Werte stimmen noch nicht:
Auf dem Bastelrechner kommt bei:
pi@raspberrypi202:/var/log/wmbusmeters $ tail /var/log/wmbusmeters/wmbusmeters.log [2022-07-26_13:01:00] Started config im871a[00100776] on /dev/ttyUSB0 listening on c1 telegram=|23442D2C963681571B168D2016CFFC2622B15179EDA8A222|00003FA000006E8E00000D14|+666958 telegram=|23442D2C963681571B168D2017DCFC2622B15179EDA8A222|00003FA000006E8E00000D14|+666975 telegram=|2A442D2C963681571B168D2018DDFC26229FF878|02FF20000004133FA0000044136E8E0000615B0D616714|+666991 telegram=|23442D2C963681571B168D2019DEFC2622B15179EDA8A222|00003FA000006E8E00000D14|+667007 telegram=|23442D2C963681571B168D201ADFFC2622B15179EDA8A222|00003FA000006E8E00000D14|+667023 telegram=|23442D2C963681571B168D201BECFC2622B15179EDA8A222|00003FA000006E8E00000D14|+667040 telegram=|23442D2C963681571B168D201CEDFC2622B15179EDA8A222|00003FA000006E8E00000D14|+667056
bei der Neuinstallation kommt:
pi@raspberrypi:/var/log/wmbusmeters $ tail /var/log/wmbusmeters/wmbusmeters.log (wmbus) 008 : 1b dll-version (wmbus) 009 : 16 dll-type (Cold water meter) (wmbus) 010 : 8d ell-ci-field (ELL: Extended Link Layer II (8 Byte)) (wmbus) 011 : 20 ell-cc (slow_resp sync) (wmbus) 012 : 28 ell-acc (wmbus) 013 : 1efd2622 sn (AES_CTR) (wmbus) 017 : f6bf payload crc (calculated 9249 ERROR) (wmbus) 019 CE: 50AD571682258280A4768FABCD3E1E3E68E82E2FEBA229B1 failed decryption. Wrong key? telegram=|_2A442D2C963681571B168D20281EFD2622F6BF50AD571682258280A4768FABCD3E1E3E68E82E2FEBA229B1|+1292 (wmbus) telegram from 57813696 ignored by all configured meters!
(Die Konfigurationsdateien sind identisch)
Bastelrechner:
pi@raspberrypi202:/var/log/wmbusmeters/meter_readings $ more /etc/wmbusmeters.d/MyTapWater name=MyTapWater #type=multical21 id=57813696 key=E4E7EAF6FD17EAFB9587BC2996783C63
Neuinstallation:
pi@raspberrypi:/var/log/wmbusmeters $ more /etc/wmbusmeters.d/MyTapWater name=MyTapWater #type=multical21 id=57813696 key=E4E7EAF6FD17EAFB9587BC2996783C63 pi@raspberrypi:/
In das Verzeichnis meter_readings wird nichts geschrieben. Ob das daran liegt, weil alle Telegramme wegen falscher Prüfsumme verworfen werden oder weil noch etwas anderes fehlt weiß ich nicht.
-
@wolfgangfb sagte in Adapter WM-Bus / Kampstrup Multical 21:
Hier die Frage: Wo muss an dem Installationsskript etwas geändert werden (bzw. wann müssen die Verzeichnisse angelegt werden)
Ich hab ein Issue hinterlassen. Muss sich der Developer von wmbusmeter anschauen.
Zum Rest kann ich nix sagen, ich verwende das nicht. Ich hab den wmbusmeter nur mal kurz kompiliert und den Fehler gesucht.
Es gibt aber eine recht umfangreiche Readme dazu und auch ein Wiki habe ich glaube ich gesehen. Vielleicht schaust du da mal nach den Einstellungen?
-
@wolfgangfb sagte in Adapter WM-Bus / Kampstrup Multical 21:
(wmbus) 017 : f6bf payload crc (calculated 9249 ERROR)
(wmbus) 019 CE: 50AD571682258280A4768FABCD3E1E3E68E82E2FEBA229B1 failed decryption. Wrong key?Warst du ev. mit dem neuen Konfigurationsfile mal mit Windows zugegen oder mittels WinSCP oä. auf den neuen Rechner übertragen? Er meckert da einen falschen AES-Schlüssel an (den du sicherlich korrekt 1:1 kopiert hast). Nicht das hinter dem Key noch ein (unsichtbares) Carriage Return steht
Vielleicht sicherheitshalberdos2unix /etc/wmbusmeters.d/MyTapWater
Falls Befehl auf dem System nicht vorhanden:sudo apt install dos2unix
-
@sborg
Ich habe das mit dos2unix probiert (obwohl ich mir sicher bin, dass ich nichts in Windows hatte), hat aber nichts gebracht., gleiche Fehlermeldung. -
@wolfgangfb Schade
Ich habe mir noch einmal deine Anfänge zu Beginn des Threads durchgelesen. Da ich nicht weiß ob er das wirklich zum korrekten dekodieren braucht (auch hinsichtlich dass es bei deinem funktionierendem Bastelrechner identisch ist), aber nur Versuch macht kluch.
Ändere mal in deiner /etc/wmbusmeters.d/MyTapWater Zeile #3 und nimm den "type" wieder mit rein. -
@sborg
Hat funktioniert, warum weiß der Geier. Ich finde es schon erstaunlich, dass auf 3 Neuinstallationen 3 verschiedene Konfigurationen notwendig sind um die Werte auszulesen. Ich hätte gerne mal einen Installationsskript, dass zu 100% funktioniert.
Als nächstes nehme ich jetzt mqtt und mosquitto in Angriff -
@wolfgangfb Dann "clone" dir doch einfach die kpl. funktionsfähige SD-Card. Stirbt deine aktuelle, geclonte rein, davon booten und externes Backup vom ioB einspielen --> Fertig (+diese gleich wieder clonen )
Dann brauchst du auch keine Installationsskripte etc. mehr.
-
Ich brauhe mal wieder Hilfe.
Ich habe ein neues System aufgesetzt:pi@raspberrypi:~/mosquitto-2.0.11 $ systemctl status wmbusmeters.service * wmbusmeters.service - "wmbusmeters service" Loaded: loaded (/lib/systemd/system/wmbusmeters.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2022-10-29 18:18:56 CEST; 1min 41s ago Docs: https://github.com/weetmuts/wmbusmeters man:wmbusmeters(1) Process: 3124 ExecStartPre=/bin/mkdir -p /var/lib/wmbusmeters/meter_readings (code=exited, status=0/SUCCESS) Process: 3125 ExecStartPre=/bin/chown -R wmbusmeters:wmbusmeters /var/lib/wmbusmeters/meter_readings (code=exited, > Process: 3126 ExecStartPre=/bin/mkdir -p /var/log/wmbusmeters (code=exited, status=0/SUCCESS) Process: 3127 ExecStartPre=/bin/chown -R wmbusmeters:wmbusmeters /var/log/wmbusmeters (code=exited, status=0/SUCCES> Process: 3128 ExecStartPre=/bin/mkdir -p /run/wmbusmeters (code=exited, status=0/SUCCESS) Process: 3129 ExecStartPre=/bin/chown -R wmbusmeters:wmbusmeters /run/wmbusmeters (code=exited, status=0/SUCCESS) Process: 3130 ExecStart=/usr/sbin/wmbusmetersd /run/wmbusmeters/wmbusmeters.pid (code=exited, status=0/SUCCESS) Main PID: 3131 (wmbusmetersd) Tasks: 3 (limit: 1596) CPU: 331ms CGroup: /system.slice/wmbusmeters.service `-3131 /usr/sbin/wmbusmetersd /run/wmbusmeters/wmbusmeters.pid Okt 29 18:18:56 raspberrypi systemd[1]: Starting "wmbusmeters service"... Okt 29 18:18:56 raspberrypi wmbusmetersd[3130]: (wmbusmeters) started /run/wmbusmeters/wmbusmeters.pid Okt 29 18:18:56 raspberrypi systemd[1]: Started "wmbusmeters service".
Hier vermisse ich die Angabe der Konfigurationsdatei
pi@raspberrypi:~/mosquitto-2.0.11 $ tail -f /var/log/wmbusmeters/wmbusmeters.log (wmbusmeters) started meter 1 (MyTapWater 57813696 auto) [2022-10-29_18:19:06] (shell) /bin/sh exited with non-zero return code: 1 [2022-10-29_18:19:22] (shell) /bin/sh exited with non-zero return code: 1 [2022-10-29_18:19:38] (shell) /bin/sh exited with non-zero return code: 1 [2022-10-29_18:19:53] (shell) /bin/sh exited with non-zero return code: 1 [2022-10-29_18:20:09] (shell) /bin/sh exited with non-zero return code: 1 [2022-10-29_18:20:25] (shell) /bin/sh exited with non-zero return code: 1 [2022-10-29_18:20:40] (shell) /bin/sh exited with non-zero return code: 1 [2022-10-29_18:20:56] (shell) /bin/sh exited with non-zero return code: 1 [2022-10-29_18:21:12] (shell) /bin/sh exited with non-zero return code: 1 [2022-10-29_18:21:28] (shell) /bin/sh exited with non-zero return code: 1
Wie kann ich nochmal rausfinden, ob der Stick überhaupt richtig erkannt wird?