Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Einsteigerfragen
    4. Einbindung von Geräten
    5. IoBroker.Jeelink + Davis geht teilweise - Hilfe beim Rest?

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    IoBroker.Jeelink + Davis geht teilweise - Hilfe beim Rest?

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      McCavity last edited by McCavity

      Cool, ja, das sieht schon wieder sehr vielversprechend aus! Ein paar Anmerkungen:

      @foxthefox said in IoBroker.Jeelink + Davis geht teilweise - Hilfe beim Rest?:

      Hab jetzt gesehen, daß im oberen Post noch ein paar Zeilen nicht sichtbar waren, aber scheinbar den Start des Sticks zeigen
      2022-02-24 18:05:50.120 - debug: jeelink.0 (2999) data received: [DAVIS.0.8e compiled at Sep 5 2020 16:30:03 (RFM69 b:2)]

      2022-02-24 18:05:51.190 - debug: jeelink.0 (2999) data received: INIT DICTIONARY 1=Temperature,2=Pressure,3=Humidity,4=WindSpeed,5=WindDirection,6=WindGust,7=WindGustRef,8=RainTipCount,9=RainSecs,10=Solar,11=VoltageSolar,12=VoltageCapacitor,13=SoilLeaf,14=UV,15.1=SoilTemperature.1,16.1=SoilMoisture.1,17.1=LeafWetness.1,15.2=SoilTemperature.2,16.2=SoilMoisture.2,17.2=LeafWetness.2,15.3=SoilTemperature.3,16.3=SoilMoisture.3,15.4=SoilTemperature.4,16.4=SoilMoisture.4,20=Channel,21=Battery,22=RSSI,255=PacketDump,

      Wenn das sozusagen das aufbereitete Mapping ist, dann passt meines nicht ganz. Dann wären es 108*0,2mm für den Regen. Da bräuchte es dann eine kleine Rechnerei im code, ggf. mit den Sekunden "RainSec". Wundert mich nur warum der jeelink das nicht gleich macht, wenn er denn die Daten schon so schön aufbereitet.

      Ja, genau richtig erkannt, die zwei Zeilen, die Du da rausgeschrieben hast, kommen aus dem JeeLink Sketch, das ist eine Initialisierungsmeldung - die solltest Du im Code einfach ignorieren, ggf. nur loggen, wenn Logging auf "Debug" gesetzt ist - ansonsten haben die beiden Zeilen keinen größeren Wert; das ist einfach ein statischer Text, den der Stick beim Aufbau der seriellen Verbindung sendet.

      Der Wert 108 ist tatsächlich der "RainTipCount", also wirklich nur ein Zähler, wie oft die Wippe umgefallen ist. Ich denke, daß es nicht unbedingt sinnvoll ist, direkt im Code eine Umrechnung zu machen, da hier wirklich nur "ist gekippt" gezählt wird. Wie gesagt, gestern war der Wert 108, als ich geschaut hatte, da hatte es noch nicht geregnet. In der Zwischenzeit sind mehr als 20 Liter/qm bei uns runtergekommen (ich weiß nicht genau, wieviel, heute waren es allein über 18 Liter, aber gestern um Mitternacht hatte ich halt nicht mehr geschaut - als ich zuletzt geschaut hatte, waren es noch 5,6 Liter, aber das war früh am Abend). Das entspricht also irgendwas definitiv > 20mm, also bummelig > 100 Zählimpulse) - aber der Wert, den ich gerade empfange, ist 115. Ich vermute also, daß das einfach ein 8-Bit-Zähler ist (oder vielleicht auch nur 7 Bit), der bei 255 (bzw. 127) einfach wieder auf 0 zurückspringt. Ich muß das aber noch verifizieren. Ich würde das jetzt einfach so lassen, einfach den roh empfangenen Wert in den RainTipCount Datenpunkt zu schreiben und die Auswertung dem Nutzer (mir ;-)) überlassen - ich schreibe da schon ein kleines Blockly oder JavaScript dazu, das aus dem Count eine tägliche Regenmenge ableitet, das veröffentliche ich auch dann.

      Mein Ziel ist ja, das, was die Basisstation kann, im Prinzip 1:1 (so weit möglich) im IoBroker nachzubilden und ggf. noch zu verbessern, zum Beispiel durch Statistiken / historische Daten mittels InfluxDB / Grafana und so Zeugs, was die Basisstation mit ihrem doch recht eingeschränkten Interface halt nicht kann.

      Allgemein zu den Datenpunkten: ich würde sie einfach komplett so anlegen, wie von dem INIT DICTIONARY vorgegeben:

      1=Temperature
      2=Pressure
      3=Humidity
      4=WindSpeed
      5=WindDirection
      6=WindGust
      7=WindGustRef
      8=RainTipCount
      9=RainSecs
      10=Solar
      11=VoltageSolar
      12=VoltageCapacitor
      13=SoilLeaf
      14=UV
      15.1=SoilTemperature.1
      16.1=SoilMoisture.1
      17.1=LeafWetness.1
      15.2=SoilTemperature.2
      16.2=SoilMoisture.2
      17.2=LeafWetness.2
      15.3=SoilTemperature.3
      16.3=SoilMoisture.3
      15.4=SoilTemperature.4
      16.4=SoilMoisture.4
      20=Channel
      21=Battery
      22=RSSI
      255=PacketDump
      

      Die Vantage Pro 2 ist tatsächlich (auch) für den professionellen Einsatz gedacht, unsere Feuerwehr hat in der Hauptwache in der Kernstadt zum Beispiel auch so ein Teil. Ein Hauptanwendungsgebiet für diesen Typ Wetterstation ist auch der Agrarbereich, deshalb gibt es auch Sensoren für Bodentemperatur / -Feuchte, Sonneneinstrahlung und so weiter. Die Station ist dabei modular, d.h. es ist im Prinzip nicht vorhersehrbar, welche Sensoren tatsächlich angeschlossen sind bei einer gegebenen Instanz Ich habe zum Beispiel nur den Windmesser, den Regensensor und ein Temperatur / Luftfeuchte Modul (das ist im Prinzip die Basisausstattung für den Heimgebrauch, die so gerade noch bezahlbar ist). Irgendwann möchte ich noch weitere Sensoren zukaufen, aber bei einem Preisschild von >200€ pro Sensor sind sowas dann doch eher Gelegenheitskäufe 😉

      Deshalb schlage ich vor, einfach alle Datenpunkte anzulegen - wenn ein Sensor nicht da ist, schickt die Station dafür auch keine Daten.

      Ich schau morgen mal, daß ich mir die neueste Version von Dir hole und experimentiere dann nochmal 🙂

      Eins war mir noch aufgefallen in den Logs gestern: die Station sendet grob jede Sekunde ein Paket. Gut, es kommen auch am Stick manchmal welche nicht an (sehe ich ja in Minicom), aber ich hatte den Eindruck, als ob der Adapter längst nicht alle Pakete mitbekäme - aber auch da werfe ich morgen noch einen genaueren Blick drauf, wenn ich die neueste Version synchronisiert habe.

      Viele Grüße,
      Henning

      F 1 Reply Last reply Reply Quote 0
      • F
        foxthefox Developer @McCavity last edited by foxthefox

        @mccavity
        Dann leg ich den Rest mal noch an.

        Wäre cool, wenn du zu den Datenpunkten noch eine Einheit hättest, dann wär das gleich komplett.

        Ich nehme dann mal die Regenmenge in mm wieder raus und belasse es bei den Rohwerten vom Stick.

        Gruß
        Klaus

        EDIT:
        die version 1.2.2 enthält nun alle Datenpunkte aus dem Sketch (außer 255 Paketdump, wüsste nicht was ich damit soll)
        Edit2: Ups, grad gesehen, es gibt 4x Soil..., -> kommt gleich noch als update

        1 Reply Last reply Reply Quote 0
        • M
          McCavity last edited by McCavity

          Der RainTipCount, habe ich gerade gesehen, scheint tatsächlich nur 7-bittig zu sein, es hat in der Nacht und heute wieder etwas geregnet und momentan überträgt meine Station 26 als Wert - scheint also tatsächlich bei 127 zu 0 übergelaufen zu sein. Aber das nur am Rande, das schaue ich mir genauer an, wenn ich das mal loggen kann.

          Ich schaue mal, daß ich mir die neuste Version synce und teste dann und schaue mal, was ich an Doku über die Sensorwerte finden kann - Davis ist da leider nicht sehr offen mit seinen Protokollen, kann sein, daß ich etwas herumsuchen muß.

          den 255 Paketdump muß man, meine ich, mit einem Extraschalter im JeeLink Stick explizit einschalten, also sollte der standardmäßig gar nicht kommen. Ich würde vorschlagen, falls der kommt, den nur als Debug zu loggen, aber nicht in einen Datenpunkt zu schreiben, denn der ist nur zum Debugging (des JeeLink Sketches) da.

          Viele Grüße,
          Henning

          1 Reply Last reply Reply Quote 0
          • M
            McCavity last edited by McCavity

            Eins, was mir auch schon länger aufgefallen ist - damit könnten meine früher schonmal erwähnten start-stop-Probleme zusammenhängen: wenn ich den dev-server starte (mit der "watch" Option), sehe ich, daß der Adapter gestartet wird und das Kommando an den Stick gesendet wird. Ich sehe auch die Init-Meldung des Sticks, aber erst nach dem Kommando - und keine Daten. Könnte es sein, daß hier ein Timing-Problem vorliegt? Klar, manuell bin ich eh langsamer als der IoBroker, aber wenn ich im Minicom den Startbefehl eingebe, ist das immer nachdem die Initmeldung schon da ist - ich glaube, der Stick ist erst danach fähig, Daten von der seriellen Schnittstelle zu empfangen...

            Hier mal das komplette Log vom Start eben:

            hh@iobapd01:~/ioBroker.jeelink$ dev-server watch
            Using profile default
            Using profile name "default"
            Using adapter name "jeelink"
            Install local iobroker.jeelink
            /home/hh/ioBroker.jeelink> npm pack
            Packed to iobroker.jeelink-1.2.0.tgz
            /home/hh/ioBroker.jeelink/.dev-server/default> npm install "/home/hh/ioBroker.jeelink/iobroker.jeelink-1.2.0.tgz"
            
            up to date, audited 428 packages in 12s
            
            34 packages are looking for funding
              run `npm fund` for details
            
            16 vulnerabilities (14 moderate, 2 high)
            
            To address issues that do not require attention, run:
              npm audit fix
            
            To address all issues (including breaking changes), run:
              npm audit fix --force
            
            Run `npm audit` for details.
            /home/hh/ioBroker.jeelink/.dev-server/default> node --inspect=127.0.0.1:9228 node_modules/iobroker.js-controller/controller.js
            Waiting for js-controller to start...
            Waiting for port 26426 to be available...
            Debugger listening on ws://127.0.0.1:9228/e5cf88d8-3b20-4558-9fb4-caa81ee13c5d
            For help, see: https://nodejs.org/en/docs/inspector
            2022-12-22 10:19:30.893  - info: host.dev-jeelink-iobapd01 iobroker.js-controller version 4.0.24 js-controller starting
            2022-12-22 10:19:30.896  - info: host.dev-jeelink-iobapd01 Copyright (c) 2014-2022 bluefox, 2014 hobbyquaker
            2022-12-22 10:19:30.896  - info: host.dev-jeelink-iobapd01 hostname: dev-jeelink-iobapd01, node: v16.18.1
            2022-12-22 10:19:30.897  - info: host.dev-jeelink-iobapd01 ip addresses: 192.168.178.163 fe80::3cd3:b6ff:fe20:684a
            2022-12-22 10:19:30.902  - debug: host.dev-jeelink-iobapd01-Server Data File: /home/hh/ioBroker.jeelink/.dev-server/default/iobroker-data/objects.jsonl
            2022-12-22 10:19:31.095  - debug: host.dev-jeelink-iobapd01-Server  Redis inMem-objects listening on port 9001
            2022-12-22 10:19:31.100  - debug: host.dev-jeelink-iobapd01 Redis Objects: Use Redis connection: 127.0.0.1:26426
            2022-12-22 10:19:31.110  - debug: host.dev-jeelink-iobapd01 Objects client ready ... initialize now
            2022-12-22 10:19:31.154  - debug: host.dev-jeelink-iobapd01 Objects create System PubSub Client
            2022-12-22 10:19:31.162  - debug: host.dev-jeelink-iobapd01 Objects client initialize lua scripts
            2022-12-22 10:19:31.168  - debug: host.dev-jeelink-iobapd01 Objects connected to redis: 127.0.0.1:26426
            2022-12-22 10:19:31.216  - debug: host.dev-jeelink-iobapd01-Server Data File: /home/hh/ioBroker.jeelink/.dev-server/default/iobroker-data/states.jsonl
            2022-12-22 10:19:31.247  - debug: host.dev-jeelink-iobapd01-Server  Redis inMem-states listening on port 9000
            2022-12-22 10:19:31.248  - debug: host.dev-jeelink-iobapd01 Redis States: Use Redis connection: 127.0.0.1:24426
            2022-12-22 10:19:31.294  - debug: host.dev-jeelink-iobapd01 States create System PubSub Client
            2022-12-22 10:19:31.339  - debug: host.dev-jeelink-iobapd01 States connected to redis: 127.0.0.1:24426
            2022-12-22 10:19:31.355  - info: host.dev-jeelink-iobapd01 connected to Objects and States
            2022-12-22 10:19:31.362  - info: host.dev-jeelink-iobapd01 added notifications configuration of host
            2022-12-22 10:19:31.466  - debug: host.dev-jeelink-iobapd01 Plugin sentry Initialize Plugin (enabled=true)
            2022-12-22 10:19:31.468  - info: host.dev-jeelink-iobapd01 Plugin sentry Sentry Plugin disabled for this process because sending of statistic data is disabled for the system
            Port 26426 is available...
            Waiting for port 24426 to be available...
            Port 24426 is available...
            Running inside /home/hh/ioBroker.jeelink/.dev-server/default
            Waiting for port 20426 to be available...
            2022-12-22 10:19:31.537  - info: host.dev-jeelink-iobapd01 2 instances found
            2022-12-22 10:19:31.537  - debug: host.dev-jeelink-iobapd01 check instance "system.adapter.admin.0" for host "dev-jeelink-iobapd01"
            host.dev-jeelink-iobapd01 check instance "system.adapter.admin.0" for host "dev-jeelink-iobapd01"
            2022-12-22 10:19:31.539  - debug: host.dev-jeelink-iobapd01 check instance "system.adapter.jeelink.0" for host "dev-jeelink-iobapd01"
            host.dev-jeelink-iobapd01 check instance "system.adapter.jeelink.0" for host "dev-jeelink-iobapd01"
            2022-12-22 10:19:31.540  - info: host.dev-jeelink-iobapd01 starting 1 instance
            2022-12-22 10:19:31.551  - debug: host.dev-jeelink-iobapd01 added notifications configuration of system.adapter.admin.0
            2022-12-22 10:19:31.551  - debug: host.dev-jeelink-iobapd01 startInstance admin.0 loglevel=info, compact=false
            2022-12-22 10:19:31.557  - info: host.dev-jeelink-iobapd01 instance system.adapter.admin.0 started with pid 718
            2022-12-22 10:19:32.555  - debug: host.dev-jeelink-iobapd01 Incoming Host message getRepository
            2022-12-22 10:19:32.708  - info: host.dev-jeelink-iobapd01 Updating repository "beta" under "http://download.iobroker.net/sources-dist-latest.json"
            Port 20426 is available...
            Starting browser-sync
            [HPM] Proxy created: /adapter/jeelink/**,/browser-sync/**  -> http://127.0.0.1:22426
            [HPM] Proxy rewrite rule created: "^/adapter/jeelink/" ~> "/"
            [HPM] Proxy created: !/adapter/jeelink/**,!/browser-sync/**  -> http://127.0.0.1:20426
            Starting web server on port 8081
            ╭─────────────────────────────────────────────────────────╮
            │                                                         │
            │   Admin is now reachable under http://127.0.0.1:8081/   │
            │                                                         │
            ╰─────────────────────────────────────────────────────────╯
            Starting file system sync from /home/hh/ioBroker.jeelink
            [HTML Injector] Running...
            [Browsersync] Access URLs:
             --------------------------------------
                Local: http://localhost:22426
             External: http://192.168.178.163:22426
             --------------------------------------
            [Browsersync] Serving files from: /home/hh/ioBroker.jeelink/admin
            [Browsersync] Watching files...
            Synchronizing main.js
            Synchronizing lib/tools.js
            Created /home/hh/ioBroker.jeelink/.dev-server/default/node_modules/iobroker.jeelink/main.js.map from /home/hh/ioBroker.jeelink/main.js
            Created /home/hh/ioBroker.jeelink/.dev-server/default/node_modules/iobroker.jeelink/lib/tools.js.map from /home/hh/ioBroker.jeelink/lib/tools.js
            Starting nodemon for /home/hh/ioBroker.jeelink/.dev-server/default/node_modules/iobroker.jeelink/main.js
            [nodemon] 2.0.20
            [nodemon] to restart at any time, enter `rs`
            [nodemon] ignoring: ./.dev-server/default/node_modules/iobroker.jeelink/admin/**/*
            [nodemon] watching path(s): .dev-server/default/node_modules/iobroker.jeelink/**/*
            [nodemon] watching extensions: js,mjs,json
            [nodemon] starting `node --inspect /home/hh/ioBroker.jeelink/.dev-server/default/node_modules/iobroker.jeelink/main.js --debug 0`
            [nodemon] spawning
            [nodemon] child pid: 733
            [nodemon] watching 9 files
            ╭─────────────────────────────────────────────────╮
            │                                                 │
            │   Debugger is now available on process id 735   │
            │                                                 │
            ╰─────────────────────────────────────────────────╯
            Debugger listening on ws://127.0.0.1:9229/5d5a8fb9-a696-41da-8ce9-c224c5d5032f
            For help, see: https://nodejs.org/en/docs/inspector
            2022-12-22 10:19:38.307  - debug: jeelink.0 (735) Redis Objects: Use Redis connection: 127.0.0.1:26426
            2022-12-22 10:19:38.321  - debug: jeelink.0 (735) Objects client ready ... initialize now
            2022-12-22 10:19:38.322  - debug: jeelink.0 (735) Objects create System PubSub Client
            2022-12-22 10:19:38.322  - debug: jeelink.0 (735) Objects create User PubSub Client
            2022-12-22 10:19:38.331  - debug: jeelink.0 (735) Objects client initialize lua scripts
            2022-12-22 10:19:38.334  - debug: jeelink.0 (735) Objects connected to redis: 127.0.0.1:26426
            2022-12-22 10:19:38.341  - debug: jeelink.0 (735) Redis States: Use Redis connection: 127.0.0.1:24426
            2022-12-22 10:19:38.344  - debug: jeelink.0 (735) States create System PubSub Client
            2022-12-22 10:19:38.345  - debug: jeelink.0 (735) States create User PubSub Client
            2022-12-22 10:19:38.349  - debug: jeelink.0 (735) States connected to redis: 127.0.0.1:24426
            2022-12-22 10:19:38.356  - error: jeelink.0 (735) adapter disabled
            2022-12-22 10:19:38.392  - info: jeelink.0 (735) starting. Version 1.2.0 in /home/hh/ioBroker.jeelink/.dev-server/default/node_modules/iobroker.jeelink, node: v16.18.1, js-controller: 4.0.24
            2022-12-22 10:19:38.400  - info: jeelink.0 (735) start of main
            2022-12-22 10:19:38.408  - info: jeelink.0 (735) RFM12B setting up object = DavisVantage 1
            2022-12-22 10:19:38.437  - info: jeelink.0 (735) configured port : /dev/ttyUSB0
            2022-12-22 10:19:38.437  - info: jeelink.0 (735) configured baudrate : 57600
            2022-12-22 10:19:38.438  - info: jeelink.0 (735) instantiating SerialPort path: /dev/ttyUSB0 baudrate : 57600
            2022-12-22 10:19:38.443  - info: jeelink.0 (735) adapter opened the SerialPort
            2022-12-22 10:19:39.946  - debug: jeelink.0 (735) message to USB-stick written : 0,0s r
            2022-12-22 10:19:41.046  - debug: jeelink.0 (735) data received:
            
            
            
            2022-12-22 10:19:41.046  - debug: jeelink.0 (735) data received: [DAVIS.0.8e compiled at Sep  5 2020 16:30:03 (RFM69 b:2)]
            2022-12-22 10:19:42.110  - debug: jeelink.0 (735) data received: INIT DICTIONARY 1=Temperature,2=Pressure,3=Humidity,4=WindSpeed,5=WindDirection,6=WindGust,7=WindGustRef,8=RainTipCount,9=RainSecs,10=Solar,11=VoltageSolar,12=VoltageCapacitor,13=SoilLeaf,14=UV,15.1=SoilTemperature.1,16.1=SoilMoisture.1,17.1=LeafWetness.1,15.2=SoilTemperature.2,16.2=SoilMoisture.2,17.2=LeafWetness.2,15.3=SoilTemperature.3,16.3=SoilMoisture.3,15.4=SoilTemperature.4,16.4=SoilMoisture.4,20=Channel,21=Battery,22=RSSI,255=PacketDump,
            [HPM] Upgrading to WebSocket
            ================================== > LOG REDIRECT system.adapter.admin.0 => true [system.adapter.admin.0.logging]
            2022-12-22 10:20:28.720  - debug: host.dev-jeelink-iobapd01 Incoming Host message getRepository
            2022-12-22 10:20:29.509  - debug: host.dev-jeelink-iobapd01 Incoming Host message getInstalled
            2022-12-22 10:20:29.591  - debug: host.dev-jeelink-iobapd01 Incoming Host message getNotifications
            2022-12-22 10:20:30.533  - debug: host.dev-jeelink-iobapd01 Incoming Host message getLogs
            2022-12-22 10:20:37.717  - debug: host.dev-jeelink-iobapd01 Incoming Host message getInstalled
            2022-12-22 10:20:37.741  - debug: host.dev-jeelink-iobapd01 Incoming Host message getRepository
            2022-12-22 10:20:38.709  - debug: host.dev-jeelink-iobapd01 Incoming Host message getHostInfo
            2022-12-22 10:20:43.545  - debug: host.dev-jeelink-iobapd01 Incoming Host message readBaseSettings
            

            Noch etwas, was aufgefallen ist und was möglicherweise mit den Fehlern "Adapter already started" zusammenhängen könnte, die ich auch gelegentlich im Log gesehen habe: Wie man im Log sieht startet der Adapter - aber im Admin ist der immer noch als "stopped" angezeigt o.O:
            d38ccd67-2b75-4187-8972-86fd8d9d2475-image.png

            Soll das so sein? Ich werde mal den Server nochmal komplett neu anlegen, dann sollte auch die Adapterversion 1.2.2, die ich mir gesynct habe, automagisch geladen werden und die Datenpunkte angelegt werden.

            Viele Grüße,
            Henning

            1 Reply Last reply Reply Quote 0
            • M
              McCavity last edited by McCavity

              ERST AUF DEN NACHTRAG UNTEN GUCKEN, BITTE, DAS ERSPART MÖGLICHERWEISE VIEL ZEIT UND ARBEIT!! 😉

              Also, ich habe jetzt mal die 1.2.2 gepullt, den dev-server gelöscht und mittels "setup" neu angelegt.

              Das Verhalten ist das gleiche wie vorher (nicht verwunderlich, hat sich ja an der Stelle nicht viel geändert): Der Adapter startet, bekommt auch den Init-String vom Stick - aber sendet logischerweise kein Startkommando, weil noch nicht konfiguriert. Im Admin wir der Adapter aber als "Stopped" angezeigt (was ja auch okay ist, ich möchte ihn ja zuerst konfigurieren).

              Jetzt habe ich ihn konfiguriert - aber er startet nicht neu (warum auch, Admin meint ja, er sei stopped). Im Logfile sehe ich nur, daß die Config geändert wurde. So weit, so gut. Versuche ich aber den Adapter zu starten, dann läuft er in eine Neustart-Schleife: startet, stellt fest, daß schon eine Instanz läuft, stoppt. Admin denkt, das soll so nicht sein und startet neu - und das Spielchen geht von vorne los... hier das komplette Drama in drei Akten in seiner vollen Pracht im Logfile:

              hh@iobapd01:~/ioBroker.jeelink$ dev-server watch
              Using profile default
              Using profile name "default"
              Using adapter name "jeelink"
              Install local iobroker.jeelink
              /home/hh/ioBroker.jeelink> npm pack
              Packed to iobroker.jeelink-1.2.2.tgz
              /home/hh/ioBroker.jeelink/.dev-server/default> npm install "/home/hh/ioBroker.jeelink/iobroker.jeelink-1.2.2.tgz"
              
              up to date, audited 426 packages in 2s
              
              34 packages are looking for funding
                run `npm fund` for details
              
              16 vulnerabilities (14 moderate, 2 high)
              
              To address issues that do not require attention, run:
                npm audit fix
              
              To address all issues (including breaking changes), run:
                npm audit fix --force
              
              Run `npm audit` for details.
              /home/hh/ioBroker.jeelink/.dev-server/default> node --inspect=127.0.0.1:9228 node_modules/iobroker.js-controller/controller.js
              Waiting for js-controller to start...
              Waiting for port 26426 to be available...
              Debugger listening on ws://127.0.0.1:9228/bad442ed-e287-4faf-96db-14df685cfbdc
              For help, see: https://nodejs.org/en/docs/inspector
              2022-12-22 10:35:17.025  - info: host.dev-jeelink-iobapd01 iobroker.js-controller version 4.0.24 js-controller starting
              2022-12-22 10:35:17.028  - info: host.dev-jeelink-iobapd01 Copyright (c) 2014-2022 bluefox, 2014 hobbyquaker
              2022-12-22 10:35:17.028  - info: host.dev-jeelink-iobapd01 hostname: dev-jeelink-iobapd01, node: v16.18.1
              2022-12-22 10:35:17.029  - info: host.dev-jeelink-iobapd01 ip addresses: 192.168.178.163 fe80::3cd3:b6ff:fe20:684a
              2022-12-22 10:35:17.034  - debug: host.dev-jeelink-iobapd01-Server Data File: /home/hh/ioBroker.jeelink/.dev-server/default/iobroker-data/objects.jsonl
              2022-12-22 10:35:17.063  - debug: host.dev-jeelink-iobapd01-Server  Redis inMem-objects listening on port 9001
              2022-12-22 10:35:17.069  - debug: host.dev-jeelink-iobapd01 Redis Objects: Use Redis connection: 127.0.0.1:26426
              2022-12-22 10:35:17.079  - debug: host.dev-jeelink-iobapd01 Objects client ready ... initialize now
              2022-12-22 10:35:17.122  - debug: host.dev-jeelink-iobapd01 Objects create System PubSub Client
              2022-12-22 10:35:17.128  - debug: host.dev-jeelink-iobapd01 Objects client initialize lua scripts
              2022-12-22 10:35:17.135  - debug: host.dev-jeelink-iobapd01 Objects connected to redis: 127.0.0.1:26426
              2022-12-22 10:35:17.185  - debug: host.dev-jeelink-iobapd01-Server Data File: /home/hh/ioBroker.jeelink/.dev-server/default/iobroker-data/states.jsonl
              2022-12-22 10:35:17.189  - debug: host.dev-jeelink-iobapd01-Server  Redis inMem-states listening on port 9000
              2022-12-22 10:35:17.190  - debug: host.dev-jeelink-iobapd01 Redis States: Use Redis connection: 127.0.0.1:24426
              2022-12-22 10:35:17.234  - debug: host.dev-jeelink-iobapd01 States create System PubSub Client
              2022-12-22 10:35:17.283  - debug: host.dev-jeelink-iobapd01 States connected to redis: 127.0.0.1:24426
              2022-12-22 10:35:17.303  - info: host.dev-jeelink-iobapd01 connected to Objects and States
              2022-12-22 10:35:17.304  - debug: host.dev-jeelink-iobapd01 Could not read notifications.json: /home/hh/ioBroker.jeelink/.dev-server/default/iobroker-data/notifications.json: ENOENT: no such file or directory, open '/home/hh/ioBroker.jeelink/.dev-server/default/iobroker-data/notifications.json'
              2022-12-22 10:35:17.313  - info: host.dev-jeelink-iobapd01 Node.js version has changed from unknown to 16.18.1
              2022-12-22 10:35:17.330  - info: host.dev-jeelink-iobapd01 added notifications configuration of host
              2022-12-22 10:35:17.342  - debug: host.dev-jeelink-iobapd01 Plugin sentry Initialize Plugin (enabled=true)
              2022-12-22 10:35:17.343  - info: host.dev-jeelink-iobapd01 Plugin sentry Sentry Plugin disabled for this process because sending of statistic data is disabled for the system
              [sudo] password for hh: 2022-12-22 10:35:17.444  - info: host.dev-jeelink-iobapd01 2 instances found
              2022-12-22 10:35:17.444  - debug: host.dev-jeelink-iobapd01 check instance "system.adapter.admin.0" for host "dev-jeelink-iobapd01"
              host.dev-jeelink-iobapd01 check instance "system.adapter.admin.0" for host "dev-jeelink-iobapd01"
              2022-12-22 10:35:17.447  - debug: host.dev-jeelink-iobapd01 check instance "system.adapter.jeelink.0" for host "dev-jeelink-iobapd01"
              host.dev-jeelink-iobapd01 check instance "system.adapter.jeelink.0" for host "dev-jeelink-iobapd01"
              2022-12-22 10:35:17.448  - info: host.dev-jeelink-iobapd01 starting 1 instance
              2022-12-22 10:35:17.463  - debug: host.dev-jeelink-iobapd01 added notifications configuration of system.adapter.admin.0
              2022-12-22 10:35:17.464  - debug: host.dev-jeelink-iobapd01 startInstance admin.0 loglevel=info, compact=false
              2022-12-22 10:35:17.471  - info: host.dev-jeelink-iobapd01 instance system.adapter.admin.0 started with pid 1208
              Port 26426 is available...
              Waiting for port 24426 to be available...
              Port 24426 is available...
              Running inside /home/hh/ioBroker.jeelink/.dev-server/default
              Waiting for port 20426 to be available...
              Port 20426 is available...
              Starting browser-sync
              [HPM] Proxy created: /adapter/jeelink/**,/browser-sync/**  -> http://127.0.0.1:22426
              [HPM] Proxy rewrite rule created: "^/adapter/jeelink/" ~> "/"
              [HPM] Proxy created: !/adapter/jeelink/**,!/browser-sync/**  -> http://127.0.0.1:20426
              Starting web server on port 8081
              ╭─────────────────────────────────────────────────────────╮
              │                                                         │
              │   Admin is now reachable under http://127.0.0.1:8081/   │
              │                                                         │
              ╰─────────────────────────────────────────────────────────╯
              Starting file system sync from /home/hh/ioBroker.jeelink
              [HTML Injector] Running...
              [Browsersync] Access URLs:
               --------------------------------------
                  Local: http://localhost:22426
               External: http://192.168.178.163:22426
               --------------------------------------
              [Browsersync] Serving files from: /home/hh/ioBroker.jeelink/admin
              [Browsersync] Watching files...
              Synchronizing main.js
              Synchronizing lib/tools.js
              Created /home/hh/ioBroker.jeelink/.dev-server/default/node_modules/iobroker.jeelink/main.js.map from /home/hh/ioBroker.jeelink/main.js
              Created /home/hh/ioBroker.jeelink/.dev-server/default/node_modules/iobroker.jeelink/lib/tools.js.map from /home/hh/ioBroker.jeelink/lib/tools.js
              Starting nodemon for /home/hh/ioBroker.jeelink/.dev-server/default/node_modules/iobroker.jeelink/main.js
              [nodemon] 2.0.20
              [nodemon] to restart at any time, enter `rs`
              [nodemon] ignoring: ./.dev-server/default/node_modules/iobroker.jeelink/admin/**/*
              [nodemon] watching path(s): .dev-server/default/node_modules/iobroker.jeelink/**/*
              [nodemon] watching extensions: js,mjs,json
              [nodemon] starting `node --inspect /home/hh/ioBroker.jeelink/.dev-server/default/node_modules/iobroker.jeelink/main.js --debug 0`
              [nodemon] spawning
              [nodemon] child pid: 1235
              [nodemon] watching 9 files
              ╭──────────────────────────────────────────────────╮
              │                                                  │
              │   Debugger is now available on process id 1237   │
              │                                                  │
              ╰──────────────────────────────────────────────────╯
              Debugger listening on ws://127.0.0.1:9229/4b420bb7-77dc-43f9-abfc-25ea201069c7
              For help, see: https://nodejs.org/en/docs/inspector
              2022-12-22 10:35:22.773  - debug: jeelink.0 (1237) Redis Objects: Use Redis connection: 127.0.0.1:26426
              2022-12-22 10:35:22.786  - debug: jeelink.0 (1237) Objects client ready ... initialize now
              2022-12-22 10:35:22.787  - debug: jeelink.0 (1237) Objects create System PubSub Client
              2022-12-22 10:35:22.788  - debug: jeelink.0 (1237) Objects create User PubSub Client
              2022-12-22 10:35:22.797  - debug: jeelink.0 (1237) Objects client initialize lua scripts
              2022-12-22 10:35:22.801  - debug: jeelink.0 (1237) Objects connected to redis: 127.0.0.1:26426
              2022-12-22 10:35:22.815  - debug: jeelink.0 (1237) Redis States: Use Redis connection: 127.0.0.1:24426
              2022-12-22 10:35:22.817  - debug: jeelink.0 (1237) States create System PubSub Client
              2022-12-22 10:35:22.818  - debug: jeelink.0 (1237) States create User PubSub Client
              2022-12-22 10:35:22.822  - debug: jeelink.0 (1237) States connected to redis: 127.0.0.1:24426
              2022-12-22 10:35:22.827  - error: jeelink.0 (1237) adapter disabled
              2022-12-22 10:35:22.865  - info: jeelink.0 (1237) starting. Version 1.2.2 in /home/hh/ioBroker.jeelink/.dev-server/default/node_modules/iobroker.jeelink, node: v16.18.1, js-controller: 4.0.24
              2022-12-22 10:35:22.874  - info: jeelink.0 (1237) start of main
              2022-12-22 10:35:22.905  - info: jeelink.0 (1237) RFM12B setting up object = emonTH1
              2022-12-22 10:35:22.920  - info: jeelink.0 (1237) RFM12B setting up object = LaCrosse 2
              2022-12-22 10:35:22.925  - info: jeelink.0 (1237) RFM12B setting up object = LaCrosse 3
              2022-12-22 10:35:22.939  - info: jeelink.0 (1237) configured port : /dev/ttyUSB0
              2022-12-22 10:35:22.940  - info: jeelink.0 (1237) configured baudrate : 57600
              2022-12-22 10:35:22.940  - info: jeelink.0 (1237) instantiating SerialPort path: /dev/ttyUSB0 baudrate : 57600
              2022-12-22 10:35:22.944  - info: jeelink.0 (1237) adapter opened the SerialPort
              2022-12-22 10:35:25.597  - debug: jeelink.0 (1237) data received:
              
              
              2022-12-22 10:35:25.612  - debug: jeelink.0 (1237) data received: [DAVIS.0.8e compiled at Sep  5 2020 16:30:03 (RFM69 b:2)]
              2022-12-22 10:35:26.683  - debug: jeelink.0 (1237) data received: INIT DICTIONARY 1=Temperature,2=Pressure,3=Humidity,4=WindSpeed,5=WindDirection,6=WindGust,7=WindGustRef,8=RainTipCount,9=RainSecs,10=Solar,11=VoltageSolar,12=VoltageCapacitor,13=SoilLeaf,14=UV,15.1=SoilTemperature.1,16.1=SoilMoisture.1,17.1=LeafWetness.1,15.2=SoilTemperature.2,16.2=SoilMoisture.2,17.2=LeafWetness.2,15.3=SoilTemperature.3,16.3=SoilMoisture.3,15.4=SoilTemperature.4,16.4=SoilMoisture.4,20=Channel,21=Battery,22=RSSI,255=PacketDump,
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              2022-12-22 10:39:44.742  - debug: host.dev-jeelink-iobapd01 Incoming Host message getLogs
              ================================== > LOG REDIRECT system.adapter.admin.0 => true [system.adapter.admin.0.logging]
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              2022-12-22 10:39:47.248  - debug: host.dev-jeelink-iobapd01 Incoming Host message getRepository
              2022-12-22 10:39:47.250  - info: host.dev-jeelink-iobapd01 Updating repository "beta" under "http://download.iobroker.net/sources-dist-latest.json"
              2022-12-22 10:39:49.072  - debug: host.dev-jeelink-iobapd01 Incoming Host message getInstalled
              2022-12-22 10:39:49.136  - debug: host.dev-jeelink-iobapd01 Incoming Host message getNotifications
              2022-12-22 10:39:49.189  - debug: host.dev-jeelink-iobapd01 Incoming Host message readBaseSettings
              2022-12-22 10:39:49.234  - debug: host.dev-jeelink-iobapd01 Incoming Host message getHostInfo
              2022-12-22 10:39:50.182  - debug: host.dev-jeelink-iobapd01 Incoming Host message getLogs
              2022-12-22 10:46:07.361  - debug: host.dev-jeelink-iobapd01 Incoming Host message readBaseSettings
              [HPM] Upgrading to WebSocket
              
              
              
              
              
              
              
              Sorry, try again.
              [sudo] password for hh:
              Sorry, try again.
              [sudo] password for hh:
              2022-12-22 10:47:18.268  - info: host.dev-jeelink-iobapd01 Successfully updated capabilities "cap_net_admin, cap_net_bind_service, cap_net_raw" for /usr/bin/node
              ================================== > LOG REDIRECT system.adapter.admin.0 => true [starting]
              
              
              
              2022-12-22 10:47:26.763  - debug: host.dev-jeelink-iobapd01 object change system.adapter.jeelink.0 (from: system.host.dev-jeelink-iobapd01.cli)
              [HPM] Client disconnected
              
              
              
              
              
              2022-12-22 10:48:03.573  - debug: host.dev-jeelink-iobapd01 object change system.adapter.jeelink.0 (from: system.adapter.admin.0)
              2022-12-22 10:48:03.574  - info: host.dev-jeelink-iobapd01 "system.adapter.jeelink.0" enabled
              2022-12-22 10:48:03.584  - debug: host.dev-jeelink-iobapd01 added notifications configuration of system.adapter.jeelink.0
              2022-12-22 10:48:03.584  - debug: host.dev-jeelink-iobapd01 startInstance jeelink.0 loglevel=info, compact=false
              2022-12-22 10:48:03.587  - warn: jeelink.0 (1237) Got terminate signal. Checking desired PID: 0 vs own PID 1237
              2022-12-22 10:48:03.635  - info: host.dev-jeelink-iobapd01 instance system.adapter.jeelink.0 started with pid 1269
              2022-12-22 10:48:03.637  - warn: jeelink.0 (1237) Got terminate signal. Checking desired PID: 1269 vs own PID 1237
              2022-12-22 10:48:04.604  - error: host.dev-jeelink-iobapd01 instance system.adapter.jeelink.0 terminated with code 7 (ADAPTER_ALREADY_RUNNING)
              2022-12-22 10:48:04.609  - debug: host.dev-jeelink-iobapd01 Reset crash count of system.adapter.jeelink.0, because non-crash exit
              2022-12-22 10:48:04.609  - info: host.dev-jeelink-iobapd01 Restart adapter system.adapter.jeelink.0 because enabled
              2022-12-22 10:48:33.805  - debug: host.dev-jeelink-iobapd01 Incoming Host message readBaseSettings
              2022-12-22 10:48:34.613  - debug: host.dev-jeelink-iobapd01 added notifications configuration of system.adapter.jeelink.0
              2022-12-22 10:48:34.613  - debug: host.dev-jeelink-iobapd01 startInstance jeelink.0 loglevel=info, compact=false
              2022-12-22 10:48:34.616  - warn: jeelink.0 (1237) Got terminate signal. Checking desired PID: 0 vs own PID 1237
              2022-12-22 10:48:34.620  - info: host.dev-jeelink-iobapd01 instance system.adapter.jeelink.0 started with pid 1280
              2022-12-22 10:48:34.622  - warn: jeelink.0 (1237) Got terminate signal. Checking desired PID: 1280 vs own PID 1237
              2022-12-22 10:48:35.576  - error: host.dev-jeelink-iobapd01 instance system.adapter.jeelink.0 terminated with code 7 (ADAPTER_ALREADY_RUNNING)
              2022-12-22 10:48:35.576  - debug: host.dev-jeelink-iobapd01 Reset crash count of system.adapter.jeelink.0, because non-crash exit
              2022-12-22 10:48:35.576  - info: host.dev-jeelink-iobapd01 Restart adapter system.adapter.jeelink.0 because enabled
              ^Cdev-server is exiting...
              2022-12-22 10:48:44.227  - info: host.dev-jeelink-iobapd01 received SIGINT
              2022-12-22 10:48:44.227  - debug: host.dev-jeelink-iobapd01 stop isStopping=0 isDaemon=false allInstancesStopped=false
              2022-12-22 10:48:44.228  - info: host.dev-jeelink-iobapd01 stopInstance system.adapter.admin.0 (force=false, process=true)
              2022-12-22 10:48:44.228  - info: host.dev-jeelink-iobapd01 stopInstance system.adapter.jeelink.0 (force=false, process=false)
              2022-12-22 10:48:44.235  - info: jeelink.0 (1237) Terminated (START_IMMEDIATELY_AFTER_STOP): Without reason
              2022-12-22 10:48:44.238  - info: host.dev-jeelink-iobapd01 stopInstance system.adapter.admin.0 send kill signal
              nodemon has exited
              2022-12-22 10:48:44.269  - info: host.dev-jeelink-iobapd01 received SIGINT
              2022-12-22 10:48:44.275  - debug: host.dev-jeelink-iobapd01-Server States 127.0.0.1:50986 Redis Socket error: Error: read ECONNRESET
              [HPM] Client disconnected
              ================================== > LOG REDIRECT system.adapter.admin.0 => false [Process stopped]
              2022-12-22 10:48:44.279  - warn: host.dev-jeelink-iobapd01 instance system.adapter.admin.0 terminated due to SIGINT
              2022-12-22 10:48:44.279  - info: host.dev-jeelink-iobapd01 instance system.adapter.admin.0 terminated with code null ()
              2022-12-22 10:48:44.279  - info: host.dev-jeelink-iobapd01 All instances are stopped.
              ================================== > LOG REDIRECT system.adapter.admin.0 => false [system.adapter.admin.0.logging]
              2022-12-22 10:48:44.429  - debug: host.dev-jeelink-iobapd01 Plugin sentry destroyed
              2022-12-22 10:48:44.441  - info: host.dev-jeelink-iobapd01 terminated
              ioBroker controller exited with code 1
              hh@iobapd01:~/ioBroker.jeelink$
              

              Ich habe den dev-server mittels ^C beendet und neu gestartet (ich lasse jetzt mal die ganzen Startmeldungen bis einschließlich zum Debugger weg, da ändert sich, denke ich, nicht viel zwischen den einzelnen Versuchen):

              Debugger listening on ws://127.0.0.1:9229/fcf8509a-9111-472d-a568-ad073b50a96a
              For help, see: https://nodejs.org/en/docs/inspector
              2022-12-22 10:56:06.208  - debug: jeelink.0 (1401) Redis Objects: Use Redis connection: 127.0.0.1:26426
              2022-12-22 10:56:06.221  - debug: jeelink.0 (1401) Objects client ready ... initialize now
              2022-12-22 10:56:06.222  - debug: jeelink.0 (1401) Objects create System PubSub Client
              2022-12-22 10:56:06.223  - debug: jeelink.0 (1401) Objects create User PubSub Client
              2022-12-22 10:56:06.231  - debug: jeelink.0 (1401) Objects client initialize lua scripts
              2022-12-22 10:56:06.234  - debug: jeelink.0 (1401) Objects connected to redis: 127.0.0.1:26426
              2022-12-22 10:56:06.241  - debug: jeelink.0 (1401) Redis States: Use Redis connection: 127.0.0.1:24426
              2022-12-22 10:56:06.243  - debug: jeelink.0 (1401) States create System PubSub Client
              2022-12-22 10:56:06.244  - debug: jeelink.0 (1401) States create User PubSub Client
              2022-12-22 10:56:06.248  - debug: jeelink.0 (1401) States connected to redis: 127.0.0.1:24426
              2022-12-22 10:56:06.287  - info: jeelink.0 (1401) starting. Version 1.2.2 in /home/hh/ioBroker.jeelink/.dev-server/default/node_modules/iobroker.jeelink, node: v16.18.1, js-controller: 4.0.24
              2022-12-22 10:56:06.295  - info: jeelink.0 (1401) start of main
              2022-12-22 10:56:06.305  - info: jeelink.0 (1401) RFM12B setting up object = DavisVantage 1
              2022-12-22 10:56:06.338  - info: jeelink.0 (1401) configured port : /dev/ttyUSB0
              2022-12-22 10:56:06.339  - info: jeelink.0 (1401) configured baudrate : 57600
              2022-12-22 10:56:06.339  - info: jeelink.0 (1401) instantiating SerialPort path: /dev/ttyUSB0 baudrate : 57600
              2022-12-22 10:56:06.341  - error: jeelink.0 (1401) failed to open Serialport: Error: Error Resource temporarily unavailable Cannot lock port
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              2022-12-22 10:56:15.167  - debug: host.dev-jeelink-iobapd01 Incoming Host message getLogs
              ================================== > LOG REDIRECT system.adapter.admin.0 => true [system.adapter.admin.0.logging]
              

              Wie man sieht, startet der Adapter jetzt nicht, weil schon einer läuft - wie bitte?!? In einer zweiten Shell sehe ich auch zwei Prozesse des Adapters:

              hh@iobapd01:~$ ps -ef | grep -i io.jeelink.0 | grep -v grep
              hh          1384    1339  0 10:56 pts/3    00:00:00 io.jeelink.0
              hh          1401    1399  0 10:56 pts/3    00:00:00 io.jeelink.0
              hh@iobapd01:~$
              

              Auch nach Anhalten des Dev-Server und Neustart passiert wieder das gleiche:

              hh          1530    1485  0 11:02 pts/3    00:00:00 io.jeelink.0
              hh          1547    1545  0 11:02 pts/3    00:00:00 io.jeelink.0
              

              Nur die Prozessnummern ändern sich. Ich habe die beiden Prozesse mal gekillt, das scheint zumindest den Adapter gestartet zu haben, zumindest ist er im Admin jetzt grün - aber ich sehe keine Kommunikation auf dem Seriellen Bus:

              2022-12-22 11:04:18.148  - info: jeelink.0 (1547) Terminated (START_IMMEDIATELY_AFTER_STOP): Without reason
              [nodemon] app crashed - waiting for file changes before starting...
              2022-12-22 11:04:18.677  - info: host.dev-jeelink-iobapd01 instance system.adapter.jeelink.0 terminated with code 156 (START_IMMEDIATELY_AFTER_STOP)
              2022-12-22 11:04:18.678  - debug: host.dev-jeelink-iobapd01 Reset crash count of system.adapter.jeelink.0, because non-crash exit
              2022-12-22 11:04:18.678  - info: host.dev-jeelink-iobapd01 Restart adapter system.adapter.jeelink.0 because enabled
              2022-12-22 11:04:19.681  - debug: host.dev-jeelink-iobapd01 added notifications configuration of system.adapter.jeelink.0
              2022-12-22 11:04:19.682  - debug: host.dev-jeelink-iobapd01 startInstance jeelink.0 loglevel=info, compact=false
              2022-12-22 11:04:19.687  - info: host.dev-jeelink-iobapd01 instance system.adapter.jeelink.0 started with pid 1567
              2022-12-22 11:05:05.350  - debug: host.dev-jeelink-iobapd01 Incoming Host message readBaseSettings
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              2022-12-22 11:05:26.281  - debug: host.dev-jeelink-iobapd01 Incoming Host message getLogFiles
              2022-12-22 11:05:26.287  - debug: host.dev-jeelink-iobapd01 Incoming Host message getLogs
              

              Öffne ich jetzt aber die Settings, sind diese leer 😞
              896d0dd1-2a4e-456a-be6e-a45cc5841978-image.png

              Also nochmal eintragen - aber jetzt kann ich auf einmal weder das Startscript enablen noch einen Sensor hinzufügen - die Adminoberfläche reagiert da nicht auf Eingaben o.O Ich starte den Server nochmal neu... diesmal lief zumindest nur ein Adapterprozeß, nachdem ich die vorherigen händisch gekillt hatte, hat IoBroker offensichtlich nur einen neu gestartet:

              hh@iobapd01:~$ ps -ef | grep -i io.jeelink.0 | grep -v grep
              hh          1567    1485  0 11:04 pts/3    00:00:00 io.jeelink.0
              hh@iobapd01:~$
              

              Wenn der Dev-Server stoppt, werden diese Prozesse zumindest zuverlässig mit abgebaut. Beim nächsten Versuch werden wieder zwei Prozesse gestartet:

              code_text
              

              Ich habe diesmal nur den ersten der beiden gekillt (der auch im Logfile auftaucht), was dann zu dieser Fehlermeldung führt:

              2022-12-22 11:15:41.350  - error: jeelink.0 (1696) failed to open Serialport: Error: Error Resource temporarily unavailable Cannot lock port
              2022-12-22 11:16:30.111  - info: host.dev-jeelink-iobapd01 instance system.adapter.jeelink.0 terminated with code 156 (START_IMMEDIATELY_AFTER_STOP)
              2022-12-22 11:16:30.112  - debug: host.dev-jeelink-iobapd01 Reset crash count of system.adapter.jeelink.0, because non-crash exit
              2022-12-22 11:16:30.112  - info: host.dev-jeelink-iobapd01 Restart adapter system.adapter.jeelink.0 because enabled
              2022-12-22 11:16:31.117  - debug: host.dev-jeelink-iobapd01 added notifications configuration of system.adapter.jeelink.0
              2022-12-22 11:16:31.117  - debug: host.dev-jeelink-iobapd01 startInstance jeelink.0 loglevel=info, compact=false
              2022-12-22 11:16:31.118  - warn: jeelink.0 (1696) Got terminate signal. Checking desired PID: 0 vs own PID 1696
              2022-12-22 11:16:31.122  - info: host.dev-jeelink-iobapd01 instance system.adapter.jeelink.0 started with pid 1715
              2022-12-22 11:16:31.124  - warn: jeelink.0 (1696) Got terminate signal. Checking desired PID: 1715 vs own PID 1696
              

              Danach hängt der Admin ewig, kommt dann aber irgendwann wieder und im Logfile finden sich diese Nachrichten:

              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] WebSocket error: Error: read ECONNRESET
                  at TCP.onStreamRead (node:internal/stream_base_commons:217:20) {
                errno: -104,
                code: 'ECONNRESET',
                syscall: 'read'
              }
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              ================================== > LOG REDIRECT system.adapter.admin.0 => true [system.adapter.admin.0.logging]
              2022-12-22 11:19:41.220  - debug: host.dev-jeelink-iobapd01 Incoming Host message getLogs
              [HPM] Upgrading to WebSocket
              [HPM] Client disconnected
              [HPM] Upgrading to WebSocket
              

              ... und die Einstellungsdaten sind wieder da; ich habe sie nicht neu eingeben müssen:
              91aa5a67-1b49-421c-ba63-a5186e46d50c-image.png

              Im Admin ist jetzt alles grün:
              7911f13a-a185-4532-a6ce-8e986e5590b0-image.png

              Aber wenn ich in die Objekte schauen will, kommt diese Meldung:
              47b8c19e-7bd6-4872-920c-c6dea13f17af-image.png

              Also gehe ich nochmal in die Settings - aber da ist "Save" und "SaveClose" ausgegraut; es gibt aber keinen "Cancel" Button (den hatte ich letztes mal gefrückt, weil ich nur geschaut, aber nichts verändert hatte), dafür gibt es "Close" - und nachdem ich den gedrückt habe, konnte ich auch in die Objects wechseln und die Datenpunkte sind da:
              5912bedf-779c-4729-a73f-679a63a107f1-image.png

              Es ist aber noch nichts befüllt, es scheint immer noch keine Verbindung zum Stick zu geben. Es laufen auch wieder zwei Prozesse. Versuche ich einen Neustart des Adapters über den Admin, gibt es wieder die gleichen Fehler wie oben (mit dem PID Mismatch); der neuere Prozess wird aber beendet und neu gestartet (bekommt wieder eine neue PID). Kille ich dann erneut den ältesten Prozess (das war der, der noch vom ersten Start übrig war), dann kommt die Meldung "app crashed", er wartet aber auf die File Changes, bis ich den zweiten Prozeß auch gekillt habe - dann startet er einen neuen, der aber inner noch nicht seriell kommuniziert:

              2022-12-22 11:30:01.932  - debug: host.dev-jeelink-iobapd01 object change system.adapter.jeelink.0 (from: system.adapter.admin.0)
              2022-12-22 11:30:01.933  - info: host.dev-jeelink-iobapd01 stopInstance system.adapter.jeelink.0 (force=false, process=true)
              2022-12-22 11:30:01.936  - info: jeelink.0 (1696) Got terminate signal TERMINATE_YOURSELF
              2022-12-22 11:30:01.978  - info: host.dev-jeelink-iobapd01 stopInstance system.adapter.jeelink.0 send kill signal
              2022-12-22 11:30:02.452  - info: host.dev-jeelink-iobapd01 instance system.adapter.jeelink.0 terminated with code 11 (ADAPTER_REQUESTED_TERMINATION)
              2022-12-22 11:30:04.982  - debug: host.dev-jeelink-iobapd01 added notifications configuration of system.adapter.jeelink.0
              2022-12-22 11:30:04.982  - debug: host.dev-jeelink-iobapd01 startInstance jeelink.0 loglevel=info, compact=false
              2022-12-22 11:30:04.985  - warn: jeelink.0 (1696) Got terminate signal. Checking desired PID: 0 vs own PID 1696
              2022-12-22 11:30:04.989  - info: host.dev-jeelink-iobapd01 instance system.adapter.jeelink.0 started with pid 1735
              2022-12-22 11:30:04.991  - warn: jeelink.0 (1696) Got terminate signal. Checking desired PID: 1735 vs own PID 1696
              2022-12-22 11:31:45.861  - info: jeelink.0 (1696) Terminated (START_IMMEDIATELY_AFTER_STOP): Without reason
              [nodemon] app crashed - waiting for file changes before starting...
              2022-12-22 11:32:11.436  - info: host.dev-jeelink-iobapd01 instance system.adapter.jeelink.0 terminated with code 156 (START_IMMEDIATELY_AFTER_STOP)
              2022-12-22 11:32:11.436  - debug: host.dev-jeelink-iobapd01 Reset crash count of system.adapter.jeelink.0, because non-crash exit
              2022-12-22 11:32:11.436  - info: host.dev-jeelink-iobapd01 Restart adapter system.adapter.jeelink.0 because enabled
              2022-12-22 11:32:12.440  - debug: host.dev-jeelink-iobapd01 added notifications configuration of system.adapter.jeelink.0
              2022-12-22 11:32:12.440  - debug: host.dev-jeelink-iobapd01 startInstance jeelink.0 loglevel=info, compact=false
              2022-12-22 11:32:12.445  - info: host.dev-jeelink-iobapd01 instance system.adapter.jeelink.0 started with pid 1758
              2022-12-22 11:32:40.959  - debug: host.dev-jeelink-iobapd01 object change system.adapter.jeelink.0 (from: system.adapter.admin.0)
              2022-12-22 11:32:40.959  - info: host.dev-jeelink-iobapd01 "system.adapter.jeelink.0" disabled
              2022-12-22 11:32:40.960  - info: host.dev-jeelink-iobapd01 stopInstance system.adapter.jeelink.0 (force=false, process=true)
              2022-12-22 11:32:41.006  - info: host.dev-jeelink-iobapd01 stopInstance system.adapter.jeelink.0 send kill signal
              2022-12-22 11:32:41.477  - info: host.dev-jeelink-iobapd01 instance system.adapter.jeelink.0 terminated with code 11 (ADAPTER_REQUESTED_TERMINATION)
              2022-12-22 11:32:54.741  - debug: host.dev-jeelink-iobapd01 object change system.adapter.jeelink.0 (from: system.adapter.admin.0)
              2022-12-22 11:32:54.741  - info: host.dev-jeelink-iobapd01 "system.adapter.jeelink.0" enabled
              2022-12-22 11:32:54.746  - debug: host.dev-jeelink-iobapd01 added notifications configuration of system.adapter.jeelink.0
              2022-12-22 11:32:54.746  - debug: host.dev-jeelink-iobapd01 startInstance jeelink.0 loglevel=info, compact=false
              2022-12-22 11:32:54.793  - info: host.dev-jeelink-iobapd01 instance system.adapter.jeelink.0 started with pid 1780
              

              Ich starte jetzt den Dev Server nochmal neu. Ich erwarte, daß wieder zwei Adapterprozesse laufen, diesmal versuche ich aber, nur den neueren zu killen, im Gegensatz zum vorherigen Versuch:

              2022-12-22 11:41:34.992  - info: jeelink.0 (1911) Terminated (START_IMMEDIATELY_AFTER_STOP): Without reason
              [nodemon] app crashed - waiting for file changes before starting...
              2022-12-22 11:42:07.701  - info: host.dev-jeelink-iobapd01 instance system.adapter.jeelink.0 terminated with code 156 (START_IMMEDIATELY_AFTER_STOP)
              2022-12-22 11:42:07.701  - debug: host.dev-jeelink-iobapd01 Reset crash count of system.adapter.jeelink.0, because non-crash exit
              2022-12-22 11:42:07.701  - info: host.dev-jeelink-iobapd01 Restart adapter system.adapter.jeelink.0 because enabled
              2022-12-22 11:42:08.705  - debug: host.dev-jeelink-iobapd01 added notifications configuration of system.adapter.jeelink.0
              2022-12-22 11:42:08.706  - debug: host.dev-jeelink-iobapd01 startInstance jeelink.0 loglevel=info, compact=false
              2022-12-22 11:42:08.710  - info: host.dev-jeelink-iobapd01 instance system.adapter.jeelink.0 started with pid 1933
              

              Das sind jetzt nur die Nachrichten nach dem "cannot lock", denn wie erwartet gab es wieder zwei Prozesse. Kille ich den neueren zuerst gibt es wieder die "app crashed" Meldung, es geht aber erst weiter, nachdem ich auch den zweiten Prozeß gekillt habe.

              Ich reboote jetzt mal den Node, denn reboot tut gut... 😉

              Keine Änderung - naja, fast keine. Ich habe wieder zwei Prozesse, aber diesmal etwas mehr Info über das, was auf OS-Ebene zu passieren scheint. Also. Es sieht tatsächlich so aus, als würde der dev-server den Adapter zweimal forken. Der erste dieser Prozesse (PID 429) schnappt sich den USB-Port, ist aber irgendwie nicht "richtig" mit dem IoBroker verbunden, denn er macht keine Ausgaben ins Logfile - aber im OS sieht man, daß der Prozeß mit dem Stick verbunden ist:

              hh@iobapd01:~$ sudo lsof /dev/ttyUSB0
              [sudo] password for hh:
              COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF    NODE NAME
              io.jeelin 429   hh   29uW  CHR  188,0      0t0 1707660 /dev/ttyUSB0
              

              Dies tut nur der zweite Prozeß (PID 446):

              2022-12-22 11:45:43.351  - debug: jeelink.0 (446) Redis Objects: Use Redis connection: 127.0.0.1:26426
              2022-12-22 11:45:43.364  - debug: jeelink.0 (446) Objects client ready ... initialize now
              2022-12-22 11:45:43.365  - debug: jeelink.0 (446) Objects create System PubSub Client
              2022-12-22 11:45:43.365  - debug: jeelink.0 (446) Objects create User PubSub Client
              2022-12-22 11:45:43.374  - debug: jeelink.0 (446) Objects client initialize lua scripts
              2022-12-22 11:45:43.377  - debug: jeelink.0 (446) Objects connected to redis: 127.0.0.1:26426
              2022-12-22 11:45:43.383  - debug: jeelink.0 (446) Redis States: Use Redis connection: 127.0.0.1:24426
              2022-12-22 11:45:43.387  - debug: jeelink.0 (446) States create System PubSub Client
              2022-12-22 11:45:43.387  - debug: jeelink.0 (446) States create User PubSub Client
              2022-12-22 11:45:43.391  - debug: jeelink.0 (446) States connected to redis: 127.0.0.1:24426
              2022-12-22 11:45:43.427  - info: jeelink.0 (446) starting. Version 1.2.2 in /home/hh/ioBroker.jeelink/.dev-server/default/node_modules/iobroker.jeelink, node: v16.18.1, js-controller: 4.0.24
              2022-12-22 11:45:43.435  - info: jeelink.0 (446) start of main
              2022-12-22 11:45:43.441  - info: jeelink.0 (446) RFM12B setting up object = DavisVantage 1
              2022-12-22 11:45:43.478  - info: jeelink.0 (446) configured port : /dev/ttyUSB0
              2022-12-22 11:45:43.478  - info: jeelink.0 (446) configured baudrate : 57600
              2022-12-22 11:45:43.479  - info: jeelink.0 (446) instantiating SerialPort path: /dev/ttyUSB0 baudrate : 57600
              2022-12-22 11:45:43.481  - error: jeelink.0 (446) failed to open Serialport: Error: Error Resource temporarily unavailable Cannot lock port
              2022-12-22 11:48:22.903  - debug: jeelink.0 (446) state jeelink.0.DavisVantage_1.rssi changed: -68 (ack = true)
              2022-12-22 11:48:22.904  - debug: jeelink.0 (446) state jeelink.0.DavisVantage_1.battery changed: ok (ack = true)
              2022-12-22 11:48:22.905  - debug: jeelink.0 (446) state jeelink.0.DavisVantage_1.raintipcount changed: 28 (ack = true)
              

              Interessant übrigens: jedesmal, wenn ch geguckt habe und beide Prozesse vom IoBroker gerade neu gestartet waren, betrug der Abstand zwischen den PIDs immer 17 - der Startvorgang scheint also jedesmal identisch abzulaufen.

              Und noch interessanter: die Meldungen, daß Daten hereinkommen! Laut lsof ist der Prozeß 446 nicht mit dem Serial Device verbunden ("failed to open"), aber empfängt Daten?!? Ich hatte parallel Minicom gestartet, nur zum Gucken, und war sehr erstaunt, plötzlich Daten hereinkommen zu sehen...

              Ich weiß, das war jetzt eine ganze Menge Holz für heute - könntest Du mal einen Blick darauf werfen, weshalb IoBroker beim Start zwei Prozesse hochfahren will? Ich habe den Eindruck, daß der erste der beiden ungewollt ist, denn der startete ja auch schon, bevor der Adapter überhaupt konfiguriert war... ich glaube, das ist im Moment (zumindest mein) größtes Problem...

              Viele Grüße,
              Henning

              P.S.: Wäre es u.U. möglich die nicht benötigten Datenpunkte der Beispielsensoren beim Entfernen aus der Config gleich mit zu löschen? Wenn nicht auch kein Thema, das geht ja auch schnell von Hand (ich mach's halt immer nur ungern ;-))

              1 Reply Last reply Reply Quote 0
              • M
                McCavity last edited by

                Kurzer Nachtrag: ich glaube, ich weiß, warum zwei Prozesse laufen - mir fiel noch auf, daß sich die PPID der beiden Prozesse unterscheidet:

                hh@iobapd01:~$ ps -ef | egrep '595|550|612|610' | grep -v grep
                hh           550     512  0 12:01 pts/4    00:00:04 iobroker.js-controller
                hh           568     550  0 12:01 pts/4    00:00:01 io.admin.0
                hh           595     550  0 12:01 pts/4    00:00:00 io.jeelink.0
                hh           610     512  0 12:01 pts/4    00:00:00 sh -c node --inspect /home/hh/ioBroker.jeelink/.dev-server/default/node_modules/iobroker.jeelink/main.js --debug 0
                hh           612     610  0 12:01 pts/4    00:00:00 io.jeelink.0
                

                Der Adapter Prozeß 595 hat PPID 550, das ist der iobroker.js-controller; während der Adapter mit der PID 612 eine PPID von 610 hat - das ist scheinbar ein Inspector: 'sh -c node --inspect /home/hh/ioBroker.jeelink/.dev-server/default/node_modules/iobroker.jeelink/main.js --debug 0'

                Ich vermute, das hat mit dem dev-server zu tun? Der startet jedenfalls beide. Muß ich den Dev Server anders starten? Hier mal der Prozeßbaum vom Dev-Server

                hh@iobapd01:~$ pstree -anp 512
                node,512 /home/hh/.npm-global/bin/dev-server watch
                  |-{node},513
                  |-{node},514
                  |-{node},515
                  |-{node},516
                  |-{node},517
                  |-{node},519
                  |-{node},522
                  |-{node},523
                  |-{node},524
                  |-{node},525
                  |-iobroker.js-con,550
                  |   |-{iobroker.js-con},551
                  |   |-{iobroker.js-con},552
                  |   |-{iobroker.js-con},553
                  |   |-{iobroker.js-con},554
                  |   |-{iobroker.js-con},555
                  |   |-{iobroker.js-con},556
                  |   |-{iobroker.js-con},557
                  |   |-{iobroker.js-con},558
                  |   |-{iobroker.js-con},559
                  |   |-{iobroker.js-con},560
                  |   |-{iobroker.js-con},561
                  |   |-io.admin.0,568
                  |   |   |-{io.admin.0},569
                  |   |   |-{io.admin.0},570
                  |   |   |-{io.admin.0},571
                  |   |   |-{io.admin.0},572
                  |   |   |-{io.admin.0},573
                  |   |   |-{io.admin.0},574
                  |   |   |-{io.admin.0},575
                  |   |   |-{io.admin.0},576
                  |   |   |-{io.admin.0},577
                  |   |   `-{io.admin.0},578
                  |   `-io.jeelink.0,595
                  |       |-{io.jeelink.0},596
                  |       |-{io.jeelink.0},597
                  |       |-{io.jeelink.0},598
                  |       |-{io.jeelink.0},599
                  |       |-{io.jeelink.0},600
                  |       |-{io.jeelink.0},601
                  |       |-{io.jeelink.0},602
                  |       |-{io.jeelink.0},603
                  |       |-{io.jeelink.0},604
                  |       `-{io.jeelink.0},605
                  `-sh,610 -c...
                      `-io.jeelink.0,612
                          |-{io.jeelink.0},613
                          |-{io.jeelink.0},614
                          |-{io.jeelink.0},615
                          |-{io.jeelink.0},616
                          |-{io.jeelink.0},617
                          |-{io.jeelink.0},618
                          |-{io.jeelink.0},619
                          |-{io.jeelink.0},620
                          |-{io.jeelink.0},621
                          |-{io.jeelink.0},622
                          `-{io.jeelink.0},623
                

                Vielen Dank & viele Grüße,
                Henning

                F 1 Reply Last reply Reply Quote 0
                • F
                  foxthefox Developer @McCavity last edited by

                  @mccavity
                  die Besonderheiten des DEV Server kenne ich nicht wirklich, evtl. fällt mir etwas auf, wenn ich die ganzen Dinge durchgeschaut habe.
                  Wichtig ist ja, daß die ganze Sache in der productionsumgebung läuft und das tuts ja schon.

                  Gruß
                  Klaus

                  PS. Da jetzt Weihnachten ist, könnte es sein, daß ich weniger fix mit Antworten und Verbesserungen bin 😉

                  1 Reply Last reply Reply Quote 0
                  • M
                    McCavity last edited by McCavity

                    Kein Streß, auf dem Thema kau ich schon lange rum - und war der (für mich idealen) Lösung noch nie so nah 🙂 ich bin zwar über die Feiertage noch da, aber im Januar / Februar dann fünf Wochen weg mit keiner oder nur sehr geringer Wahrscheinlichkeit, mich mit IoBroker befassen zu können - also eilt es nicht 🙂

                    Wegen der multiplen Prozesse und deren Ressourcenkonflikt im Dev Server schaue ich mal, ob ich dazu schon was finde und mache ggf. einen neuen Thread auf, wenn ich nix finde. Wenn alle Stricke reißen hätte ich noch eine bisher ungenutzte Produktivinstanz vom IoBroker, dann müßte ich nur den Stick da dran hängen - und wenn ich die vermackel, gehe ich einfach auf den vorherigen Snapshot zurück (ist auch ein ProMox LXC Container, wie die Dev-Instanz auch). Ich habe den Plan meinen momentanen RasPi-IoBroker auf die ProxMox Instanz zu migrieren, aber bevor ich damit anfange möchte ich erstmal das Davis-Thema zu einem guten Stand bringen, da kann ich dann die neue Instanz gut zum Testen nehmen - da läuft bis jetzt nix anderes drauf 🙂

                    Falls wir uns vorher nicht mehr hören schonmal frohes Fest & guten Rutsch!

                    Viele Grüße,
                    Henning

                    1 Reply Last reply Reply Quote 0
                    • M
                      McCavity last edited by McCavity

                      EDIT (4x) - siehe unten.

                      Moin, ich habe jetzt die 1.2.2 mal in mein Produktivsystem installiert. Die gute Nachricht: grundsätzlich startet der Adapter:

                      pi@iobapp01:~ $ iobroker logs jeelink
                      2022-12-23 09:47:07.783  - debug: jeelink.0 (18237) Redis Objects: Use Redis connection: 127.0.0.1:9001
                      2022-12-23 09:47:07.868  - debug: jeelink.0 (18237) Objects client ready ... initialize now
                      2022-12-23 09:47:07.894  - debug: jeelink.0 (18237) Objects create System PubSub Client
                      2022-12-23 09:47:07.896  - debug: jeelink.0 (18237) Objects create User PubSub Client
                      2022-12-23 09:47:08.003  - debug: jeelink.0 (18237) Objects client initialize lua scripts
                      2022-12-23 09:47:08.015  - debug: jeelink.0 (18237) Objects connected to redis: 127.0.0.1:9001
                      2022-12-23 09:47:08.073  - debug: jeelink.0 (18237) Redis States: Use Redis connection: 127.0.0.1:9000
                      2022-12-23 09:47:08.131  - debug: jeelink.0 (18237) States create System PubSub Client
                      2022-12-23 09:47:08.134  - debug: jeelink.0 (18237) States create User PubSub Client
                      2022-12-23 09:47:08.196  - debug: jeelink.0 (18237) States connected to redis: 127.0.0.1:9000
                      2022-12-23 09:47:08.672  - info: jeelink.0 (18237) starting. Version 1.2.2 (non-npm: foxthefox/ioBroker.jeelink) in /opt/iobroker/node_modules/iobroker.jeelink, node: v16.18.1, js-controller: 4.0.23
                      2022-12-23 09:47:08.719  - info: jeelink.0 (18237) start of main
                      2022-12-23 09:47:08.789  - info: jeelink.0 (18237) RFM12B setting up object = DavisVantage 1
                      2022-12-23 09:47:09.273  - info: jeelink.0 (18237) configured port : /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_AI05CBYZ-if00-port0
                      2022-12-23 09:47:09.274  - info: jeelink.0 (18237) configured baudrate : 57600
                      2022-12-23 09:47:09.275  - info: jeelink.0 (18237) instantiating SerialPort path: /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_AI05CBYZ-if00-port0 baudrate : 57600
                      2022-12-23 09:47:09.292  - info: jeelink.0 (18237) adapter opened the SerialPort
                      2022-12-23 09:47:10.797  - debug: jeelink.0 (18237) message to USB-stick written : 0,0s r
                      2022-12-23 09:47:11.889  - debug: jeelink.0 (18237) data received:
                      2022-12-23 09:47:11.905  - debug: jeelink.0 (18237) data received: [DAVIS.0.8e compiled at Sep  5 2020 16:30:03 (RFM69 b:2)]
                      2022-12-23 09:47:12.975  - debug: jeelink.0 (18237) data received: INIT DICTIONARY 1=Temperature,2=Pressure,3=Humidity,4=WindSpeed,5=WindDirection,6=WindGust,7=WindGustRef,8=RainTipCount,9=RainSecs,10=Solar,11=VoltageSolar,12=VoltageCapacitor,13=SoilLeaf,14=UV,15.1=SoilTemperature.1,16.1=SoilMoisture.1,17.1=LeafWetness.1,15.2=SoilTemperature.2,16.2=SoilMoisture.2,17.2=LeafWetness.2,15.3=SoilTemperature.3,16.3=SoilMoisture.3,15.4=SoilTemperature.4,16.4=SoilMoisture.4,20=Channel,21=Battery,22=RSSI,255=PacketDump,
                      

                      Die etwas-weniger-gute Nachricht: das war's dann aber leider auch schon bis jetzt. Ich habe den Eindruck daß - warum auch immer - das Startkommando nicht beim Stick landet: als ich Minicom angeworfen habe, (nachdem der Adapter schon rund eine Minute lief), konnte ich keine Daten auf dem seriellen Bus sehen. Ich habe dann wie testweise wieder "0,0s r<ENTER>" geschickt und der Stick fing dann auch gleich an, Daten zu liefern - aber in IoBroker landen die irgendwie trotzdem nicht 😕

                      Von dem Adapter (er läuft, seit ich ihn gestartet habe) kamen in der ganzen Zeit jetzt (seit ich den Adapter gestartet und diesen Beitrag geschrieben habe) keine neuen Meldungen mehr im Logfile. Das gleiche hatte ich allerdings gestern auch schon auf dem Dev-Server beobachtet, möglicherweise hat sich da irgendwo ein Bug eingeschlichen?

                      Die Einstellungen sind weitgehend identisch mit der Dev-Umgebung, nur das Device ist anders - das hatte ich schon immer über /dev/serial/by-id eingebunden und eigentlich[TM] sollte das ja keine größeren Auswirkungen haben:
                      49d06c76-f11b-48b6-bd29-3f719777d4d0-image.png

                      Wie gesagt: eilt nicht, ich lasse es erstmal so, wie es ist, und harre der Dinge, die da kommen - vielleicht schaffe ich es ja über die Feiertage auch, Visual Studio Code mit meinem Dev-Server zu verbinden, und mal selbst einen Blick auf den Code zu werfen 😉

                      Vielen Dank Dir nochmal für den großartigen Support, frohes Fest und viele Grüße,
                      Henning

                      EDIT:
                      Oh! Noch eine interessante Ergänzung, die vielleicht beim Debugging helfen kann: es kamen jetzt (das habe ich zufällig aus dem Augenwinkel gesehen) plötzlich doch mal Daten im IoBroker an - wenn auch leider keine sinnvollen:

                      2022-12-23 10:20:01.217  - debug: jeelink.0 (18237) data received: 0,22=-66,21=ok,4=0.00,5=196,1=9.28,
                      

                      Aber ich konnte die Zeile in Minicom (das parallel noch immer mit läuft) identifizieren:

                      OK VALUES DAVIS 0 20=OK VALUES DAVIS 0 20=1,22=-66,21=ok,4=0.00,5=196,8=39,
                      

                      Wie man sieht war die Zeile schon auf dem seriellen Bus vermackelt - ich habe zufällig gesehen, wie sie hereinkam: Zuerst kam nur ein halbes Datagramm: "OK VALUES DAVIS 0 20=OK" - ohne Zeilenumbruch. Dann kam das zweite Datagramm und plötzlich tauchten die Daten im IoBroker auf - aber sehr komisch geschnitten, jedenfalls weiß ich nicht, wo die "0," herkommt, die der Adapter erkannt hat, aber der Rest ist genau aus dem zweiten Teil der Zeile, die ich aus Minicom kopiert habe.

                      Sieht für mich so aus, als würde irgendwie der Trigger nicht richtig funktionieren, kann das sein?

                      Ich weiß nicht, ob es Dir was taugt, aber ich habe um die entsprechendeZeile mal einen ganzen Block Sampledaten kopiert, die Du möglicherweise zum Testen verwenden kannst:

                      OK VALUES DAVIS 0 20=4,22=-67,21=ok,
                      OK VALUES DAVIS 0 20=0,22=-68,21=ok,1=9.28,
                      OK VALUES DAVIS 0 20=1,22=-68,21=ok,8=38,
                      OK VALUES DAVIS 0 20=2,22=-67,21=ok,9=-1,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,4=0.00,5=196,
                      OK VALUES DAVIS 0 20=4,22=-67,21=ok,4=0.00,5=196,1=9.28,
                      OK VALUES DAVIS 0 20=0,22=-68,21=ok,4=0.00,5=196,8=38,
                      OK VALUES DAVIS 0 20=1,22=-68,21=ok,4=0.00,5=196,9=-1,
                      OK VALUES DAVIS 0 20=2,22=-67,21=ok,4=0.00,5=196,6=1.61,7=9,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,4=0.00,5=196,1=9.28,
                      OK VALUES DAVIS 0 20=4,22=-69,21=ok,4=0.00,5=196,8=38,
                      OK VALUES DAVIS 0 20=0,22=-68,21=ok,4=0.00,5=196,9=-1,
                      OK VALUES DAVIS 0 20=1,22=-68,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=2,22=-67,21=ok,1=9.28,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,4=0.00,5=196,8=38,
                      OK VALUES DAVIS 0 20=4,22=-67,21=ok,4=0.00,5=196,9=-1,
                      OK VALUES DAVIS 0 20=0,22=-68,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=1,22=-68,21=ok,4=0.00,5=196,1=9.28,
                      OK VALUES DAVIS 0 20=2,22=-67,21=ok,4=0.00,5=196,8=38,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,4=0.00,5=196,9=-1,
                      OK VALUES DAVIS 0 20=4,22=-68,21=ok,4=0.00,5=195,
                      OK VALUES DAVIS 0 20=0,22=-68,21=ok,1=9.28,
                      OK VALUES DAVIS 0 20=1,22=-68,21=ok,4=0.00,5=196,8=38,
                      OK VALUES DAVIS 0 20=2,22=-67,21=ok,4=0.00,5=196,9=-1,
                      OK VALUES DAVIS 0 20=3,22=-68,21=ok,4=1.61,5=196,
                      OK VALUES DAVIS 0 20=4,22=-68,21=ok,1=9.28,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,6=1.61,7=9,
                      OK VALUES DAVIS 0 20=3,22=-66,21=ok,1=9.28,
                      OK VALUES DAVIS 0 20=4,22=-67,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=0,22=-67,21=ok,9=63,
                      OK VALUES DAVIS 0 20=1,22=-67,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,1=9.28,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=4,22=-67,21=ok,9=63,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,3=98.00,
                      OK VALUES DAVIS 0 20=1,22=-67,21=ok,1=9.28,
                      OK VALUES DAVIS 0 20=2,22=-67,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,9=63,
                      OK VALUES DAVIS 0 20=4,22=-67,21=ok,4=0.00,5=196,
                      OK VALUES DAVIS 0 20=OK VALUES DAVIS 0 20=1,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,9=63,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,4=0.00,5=196,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,4=0.00,5=196,1=9.28,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,8=39,
                      OK VALUES DAVIS 0 20=1,22=-67,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,6=1.61,7=9,
                      OK VALUES DAVIS 0 20=3,22=-68,21=ok,4=0.00,5=196,1=9.28,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,8=39,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,9=63,
                      OK VALUES DAVIS 0 20=1,22=-65,21=ok,3=98.00,
                      OK VALUES DAVIS 0 20=2,22=-65,21=ok,4=0.00,5=196,1=9.28,
                      OK VALUES DAVIS 0 20=3,22=-65,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=4,22=-65,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=0,22=-68,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=1,22=-67,21=ok,4=0.00,5=196,1=9.28,
                      OK VALUES DAVIS 0 20=2,22=-67,21=ok,8=39,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,9=63,
                      OK VALUES DAVIS 0 20=4,22=-68,21=ok,
                      OK VALUES DAVIS 0 20=0,22=-68,21=ok,4=1.61,5=196,1=9.28,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,9=63,
                      OK VALUES DAVIS 0 20=3,22=-65,21=ok,4=0.00,5=196,
                      OK VALUES DAVIS 0 20=4,22=-65,21=ok,4=0.00,5=196,1=9.28,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,9=63,
                      OK VALUES DAVIS 0 20=2,22=-65,21=ok,6=1.61,7=9,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,4=0.00,5=196,1=9.28,
                      OK VALUES DAVIS 0 20=4,22=-67,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=0,22=-67,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=1,22=-67,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,1=9.28,
                      OK VALUES DAVIS 0 20=3,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=4,22=-65,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,1=9.28,
                      OK VALUES DAVIS 0 20=2,22=-65,21=ok,8=39,
                      OK VALUES DAVIS 0 20=3,22=-65,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=4,22=-65,21=ok,4=0.00,5=196,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,1=9.28,
                      OK VALUES DAVIS 0 20=1,22=-65,21=ok,8=39,
                      OK VALUES DAVIS 0 20=2,22=-65,21=ok,9=63,
                      OK VALUES DAVIS 0 20=3,22=-66,21=ok,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=0,22=-65,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=1,22=-65,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,6=1.61,7=0,
                      OK VALUES DAVIS 0 20=3,22=-66,21=ok,4=0.00,5=196,1=9.28,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,3=98.00,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,1=9.33,
                      OK VALUES DAVIS 0 20=3,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=4,22=-67,21=ok,9=63,
                      OK VALUES DAVIS 0 20=0,22=-68,21=ok,3=98.00,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,1=9.33,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,4=0.00,5=196,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,1=9.28,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,8=39,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=194,9=63,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,4=0.00,5=196,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,4=0.00,5=196,1=9.28,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,8=39,
                      OK VALUES DAVIS 0 20=1,22=-67,21=ok,9=63,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,6=1.61,7=0,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,4=0.00,5=196,1=9.28,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=3,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,1=9.28,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,4=0.00,5=191,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=1,22=-67,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=3,22=-66,21=ok,4=0.00,5=196,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,6=1.61,7=0,
                      OK VALUES DAVIS 0 20=3,22=-66,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=4,22=-65,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=0,22=-65,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=1,22=-65,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=2,22=-65,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=3,22=-65,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=4,22=-65,21=ok,9=63,
                      OK VALUES DAVIS 0 20=0,22=-65,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=1,22=-65,21=ok,1=9.33,
                      OK VALUES DAVIS 0 20=2,22=-65,21=ok,8=39,
                      OK VALUES DAVIS 0 20=3,22=-65,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,4=1.61,5=196,
                      OK VALUES DAVIS 0 20=0,22=-65,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=1,22=-65,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=3,22=-66,21=ok,4=1.61,5=196,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=0,22=-65,21=ok,4=1.61,5=196,8=39,
                      OK VALUES DAVIS 0 20=1,22=-65,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=2,22=-65,21=ok,4=0.00,5=196,6=1.61,7=9,
                      OK VALUES DAVIS 0 20=3,22=-65,21=ok,1=9.33,
                      OK VALUES DAVIS 0 20=4,22=-65,21=ok,8=39,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,9=63,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=4,22=-67,21=ok,4=0.00,5=194,9=63,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,3=98.00,
                      OK VALUES DAVIS 0 20=1,22=-67,21=ok,1=9.28,
                      OK VALUES DAVIS 0 20=2,22=-67,21=ok,8=39,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,9=63,
                      OK VALUES DAVIS 0 20=4,22=-67,21=ok,4=0.00,5=196,
                      OK VALUES DAVIS 0 20=0,22=-67,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=2,22=-67,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=3,22=-68,21=ok,
                      OK VALUES DAVIS 0 20=4,22=-67,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=0,22=-67,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=1,22=-67,21=ok,9=63,
                      OK VALUES DAVIS 0 20=2,22=-67,21=ok,4=0.00,5=196,6=1.61,7=9,
                      OK VALUES DAVIS 0 20=3,22=-68,21=ok,1=9.33,
                      OK VALUES DAVIS 0 20=4,22=-68,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=0,22=-67,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=1,22=-68,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=2,22=-68,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=4,22=-67,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=0,22=-67,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=1,22=-67,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=2,22=-67,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=3,22=-68,21=ok,4=0.00,5=195,9=63,
                      OK VALUES DAVIS 0 20=4,22=-68,21=ok,
                      OK VALUES DAVIS 0 20=0,22=-68,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=1,22=-67,21=ok,8=39,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,4=0.00,5=196,
                      OK VALUES DAVIS 0 20=4,22=-67,21=ok,1=9.33,
                      OK VALUES DAVIS 0 20=0,22=-68,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=2,22=-67,21=ok,4=0.00,5=196,6=1.61,7=9,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,1=9.33,
                      OK VALUES DAVIS 0 20=4,22=-67,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=0,22=-67,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=1,22=-67,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=2,22=-68,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,8=39,
                      OK VALUES DAVIS 0 20=0,22=-65,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=1,22=-67,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=2,22=-67,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=3,22=-65,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=4,22=-65,21=ok,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,1=9.33,
                      OK VALUES DAVIS 0 20=2,22=-65,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=3,22=-65,21=ok,4=0.00,5=196,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,1=9.33,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,9=63,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,6=1.61,7=9,
                      OK VALUES DAVIS 0 20=3,22=-66,21=ok,1=9.33,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,8=39,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=0,22=-65,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=2,22=-65,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=3,22=-65,21=ok,9=63,
                      OK VALUES DAVIS 0 20=0,22=-65,21=ok,1=9.33,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,8=39,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,9=63,
                      OK VALUES DAVIS 0 20=3,22=-66,21=ok,4=0.00,5=196,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,1=9.33,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=1,22=-65,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=2,22=-65,21=ok,4=0.00,5=196,6=1.61,7=9,
                      OK VALUES DAVIS 0 20=3,22=-65,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=4,22=-65,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=1,22=-65,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=2,22=-65,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=3,22=-65,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=4,22=-65,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=0,22=-65,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=1,22=-65,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=2,22=-65,21=ok,8=39,
                      OK VALUES DAVIS 0 20=3,22=-65,21=ok,9=63,
                      OK VALUES DAVIS 0 20=4,22=-65,21=ok,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=1,22=-67,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,4=0.00,5=196,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,6=1.61,7=9,
                      OK VALUES DAVIS 0 20=3,22=-65,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=0,22=-65,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=1,22=-65,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=2,22=-65,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=3,22=-65,21=ok,8=39,
                      OK VALUES DAVIS 0 20=4,22=-65,21=ok,9=63,
                      OK VALUES DAVIS 0 20=0,22=-65,21=ok,3=98.00,
                      OK VALUES DAVIS 0 20=1,22=-65,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=2,22=-65,21=ok,8=39,
                      OK VALUES DAVIS 0 20=3,22=-65,21=ok,9=63,
                      OK VALUES DAVIS 0 20=4,22=-65,21=ok,4=0.00,5=196,
                      OK VALUES DAVIS 0 20=0,22=-65,21=ok,4=0.00,5=194,1=9.33,
                      OK VALUES DAVIS 0 20=1,22=-65,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=2,22=-65,21=ok,9=63,
                      OK VALUES DAVIS 0 20=3,22=-65,21=ok,4=0.00,5=196,
                      OK VALUES DAVIS 0 20=4,22=-65,21=ok,1=9.33,
                      OK VALUES DAVIS 0 20=0,22=-65,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=1,22=-65,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=2,22=-65,21=ok,4=0.00,5=196,6=1.61,7=9,
                      OK VALUES DAVIS 0 20=3,22=-65,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=4,22=-65,21=ok,8=39,
                      OK VALUES DAVIS 0 20=0,22=-65,21=ok,9=63,
                      OK VALUES DAVIS 0 20=1,22=-65,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=2,22=-65,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=3,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=3,22=-66,21=ok,9=63,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=1,22=-67,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,4=0.00,5=196,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,6=1.61,7=9,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,4=0.00,5=195,1=9.33,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,8=39,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=1,22=-67,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=2,22=-67,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=4,22=-67,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,9=63,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=1,22=-67,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,4=0.00,5=196,
                      OK VALUES DAVIS 0 20=4,22=-67,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,8=39,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,6=1.61,7=9,
                      OK VALUES DAVIS 0 20=3,22=-66,21=ok,1=9.33,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=3,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,3=98.00,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,1=9.33,
                      S DAVIS 0 20=2,22=-65,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=3,22=-65,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=4,22=-65,21=ok,4=0.00,5=196,
                      OK VALUES DAVIS 0 20=0,22=-65,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=2,22=-67,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=3,22=-65,21=ok,4=0.00,5=196,
                      OK VALUES DAVIS 0 20=4,22=-65,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=0,22=-65,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=2,22=-65,21=ok,6=1.61,7=9,
                      OK VALUES DAVIS 0 20=3,22=-65,21=ok,1=9.33,
                      OK VALUES DAVIS 0 20=4,22=-65,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=0,22=-65,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=1,22=-65,21=ok,3=98.00,
                      OK VALUES DAVIS 0 20=2,22=-65,21=ok,1=9.33,
                      OK VALUES DAVIS 0 20=3,22=-65,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=4,22=-65,21=ok,9=63,
                      OK VALUES DAVIS 0 20=0,22=-67,21=ok,3=98.00,
                      OK VALUES DAVIS 0 20=1,22=-67,21=ok,1=9.33,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=3,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,4=0.00,5=196,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=3,22=-66,21=ok,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,1=9.33,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,8=39,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=2,22=-65,21=ok,4=0.00,5=196,6=0.00,7=-1,
                      OK VALUES DAVIS 0 20=3,22=-66,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=4,22=-65,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=3,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,3=98.00,
                      OK VALUES DAVIS 0 20=1,22=-67,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=3,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,4=0.00,5=196,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=1,22=-67,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=2,22=-67,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=3,22=-67,21=ok,4=0.00,5=196,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,9=63,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,4=0.00,5=196,6=0.00,7=-1,
                      OK VALUES DAVIS 0 20=3,22=-66,21=ok,4=0.00,5=196,1=9.33,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=0,22=-66,21=ok,4=0.00,5=196,9=63,
                      OK VALUES DAVIS 0 20=1,22=-66,21=ok,3=98.00,
                      OK VALUES DAVIS 0 20=2,22=-66,21=ok,1=9.33,
                      OK VALUES DAVIS 0 20=3,22=-66,21=ok,4=0.00,5=196,8=39,
                      OK VALUES DAVIS 0 20=4,22=-66,21=ok,4=0.00,5=196,9=63,
                      

                      EDIT #2:
                      Ich habe mal noch ein paar Blöcke hexadezimal direkt vom Bus mitgeschnitten, für den Fall, daß möglicherweise Newlines durch das Copypasten der Textdaten verändert werden - der Stick sendet scheinbar immer einen Windows-Zeilenumbruch (CR LF oder \r\n oder 0x0d 0x0a je nach Schreibweise):

                      pi@iobapp01:~ $ xxd /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_AI05CBYZ-if00-port0
                      00000000: 4f4b 2056 414c 5545 5320 4441 5649 5320  OK VALUES DAVIS
                      00000010: 3020 3230 3d34 2c32 323d 2d36 362c 3231  0 20=4,22=-66,21
                      00000020: 3d6f 6b2c 393d 2d31 2c0d 0a4f 4b20 5641  =ok,9=-1,..OK VA
                      00000030: 4c55 4553 2044 4156 4953 2030 2032 303d  LUES DAVIS 0 20=
                      00000040: 302c 3232 3d2d 3636 2c32 313d 6f6b 2c34  0,22=-66,21=ok,4
                      00000050: 3d30 2e30 302c 353d 3139 362c 333d 3938  =0.00,5=196,3=98
                      00000060: 2e30 302c 0d0a 4f4b 2056 414c 5545 5320  .00,..OK VALUES
                      00000070: 4441 5649 5320 3020 3230 3d31 2c32 323d  DAVIS 0 20=1,22=
                      00000080: 2d36 362c 3231 3d6f 6b2c 343d 302e 3030  -66,21=ok,4=0.00
                      00000090: 2c35 3d31 3936 2c31 3d39 2e36 372c 0d0a  ,5=196,1=9.67,..
                      ...
                      

                      EDIT #3:
                      Und noch eine Ergänzung: manchmal empfängt IoBroker doch Daten - aber halt nur sporadisch. Woran könnte das liegen?

                      2022-12-23 10:52:49.232  - debug: jeelink.0 (18237) data received: OK VALUEK VALUES DAVIS 0 20=3,22=-66,21=ok,4=0.00,5=196,1=9.50,
                      2022-12-23 10:52:49.234  - debug: jeelink.0 (18237) splice:DAVIS,0,20=3,22=-66,21=ok,4=0.00,5=196,1=9.50,
                      2022-12-23 10:52:49.235  - debug: jeelink.0 (18237) received ID :VALUES is not defined in the adapter or not unique received address
                      2022-12-23 10:52:49.237  - debug: jeelink.0 (18237) splice:DAVIS,0,20=3,22=-66,21=ok,4=0.00,5=196,1=9.50,
                      2022-12-23 10:52:49.237  - debug: jeelink.0 (18237) received ID :VALUES is not defined in the adapter or not unique received address
                      2022-12-23 11:00:02.290  - debug: jeelink.0 (18237) data received: OK VALUES DAVIS 0 20=2,22=-65,21=ok,8=39,
                      2022-12-23 11:00:02.291  - debug: jeelink.0 (18237) Sensor ID    : 0
                      2022-12-23 11:00:02.292  - debug: jeelink.0 (18237) splice       : 20=2,22=-65,21=ok,8=39,
                      2022-12-23 11:00:02.293  - debug: jeelink.0 (18237) Channel   :   2
                      2022-12-23 11:00:02.294  - debug: jeelink.0 (18237) RSSI     : -65
                      2022-12-23 11:00:02.297  - debug: jeelink.0 (18237) Battery   : ok
                      2022-12-23 11:00:02.297  - debug: jeelink.0 (18237) RainTipCount        : 39
                      2022-12-23 11:00:02.298  - debug: jeelink.0 (18237) submitted value pair is unknown =undefined
                      2022-12-23 11:00:02.319  - debug: jeelink.0 (18237) state jeelink.0.DavisVantage_1.rssi changed: -65 (ack = true)
                      2022-12-23 11:00:02.325  - debug: jeelink.0 (18237) state jeelink.0.DavisVantage_1.battery changed: ok (ack = true)
                      2022-12-23 11:00:02.329  - debug: jeelink.0 (18237) state jeelink.0.DavisVantage_1.raintipcount changed: 39 (ack = true)
                      2022-12-23 11:04:46.723  - debug: jeelink.0 (18237) data received: OK VALUES DAVIS 0 20=3,22=-66,21=ok,1=9.67,
                      2022-12-23 11:04:46.724  - debug: jeelink.0 (18237) Sensor ID    : 0
                      2022-12-23 11:04:46.724  - debug: jeelink.0 (18237) splice       : 20=3,22=-66,21=ok,1=9.67,
                      2022-12-23 11:04:46.725  - debug: jeelink.0 (18237) Channel   :   3
                      2022-12-23 11:04:46.725  - debug: jeelink.0 (18237) RSSI     : -66
                      2022-12-23 11:04:46.726  - debug: jeelink.0 (18237) Battery   : ok
                      2022-12-23 11:04:46.727  - debug: jeelink.0 (18237) Temperatur   : 9.67
                      2022-12-23 11:04:46.727  - debug: jeelink.0 (18237) submitted value pair is unknown =undefined
                      2022-12-23 11:04:46.747  - debug: jeelink.0 (18237) state jeelink.0.DavisVantage_1.rssi changed: -66 (ack = true)
                      2022-12-23 11:04:46.750  - debug: jeelink.0 (18237) state jeelink.0.DavisVantage_1.battery changed: ok (ack = true)
                      2022-12-23 11:04:46.753  - debug: jeelink.0 (18237) state jeelink.0.DavisVantage_1.temp changed: 9.67 (ack = true)
                      

                      EDIT#4 (das letzte für heute, hoffentlich ;-)):
                      Mir ist gerade noch aufgefallen, daß der Stick / die Station sogar einen Wert mitliefern, mit dem man die Datenqualität zumindest in Ansätzen beurteilen könnte: In jedem (vollständigen) Datenpaket wird der Key "20=" übertragen, der für den Channel steht - und offensichtlich wechselt die Station immer durch 5 Kanäle [0..4] und zwar immer schön streng monoton steigend. Das, verbunden mit der Tatsache, daß die Pakete ungefähr alle Sekunde kommen, könnte man doch nutzen, um eine Art "Confidence factor" zu ermitteln, oder? Aber das wäre dann sowas wie das Sahnehäubchen mit Kirsche auf der Torte, das kann ich dann ggf. auch später noch als zusätzliches Script mit eigenen Datenpunkten hinterlegen 🙂

                      F 1 Reply Last reply Reply Quote 0
                      • M
                        McCavity last edited by McCavity

                        Einen habe ich doch noch, den ich nicht vorenthalten wollte - ich habe gerade gesehen, daß im Battery Status auf einmal "okOK" steht - da hat der Parser etwas mißverstanden. Den dafür verantwortlichen Empfang habe ich im Log finden können:

                        2022-12-23 14:10:41.380  - debug: jeelink.0 (18237) data received: OK VALUES DAVIS 0 20=3,22=-66,21=okOK VALUES DAVIS 0 20=4,22=-6 DAVIS 0 20=1,22=-67,21=ok,4=0.00,5=228,8=39,
                        2022-12-23 14:10:41.385  - debug: jeelink.0 (18237) Sensor ID    : 0
                        2022-12-23 14:10:41.386  - debug: jeelink.0 (18237) splice       : 20=3,22=-66,21=okOK,VALUES,DAVIS,0,20=4,22=-6,DAVIS,0,20=1,22=-67,21=ok,4=0.00,5=228,8=39,
                        2022-12-23 14:10:41.387  - debug: jeelink.0 (18237) something is wrong in stream 20=3,22=-66,21=okOK strange part ->VALUES
                        2022-12-23 14:10:41.389  - debug: jeelink.0 (18237) Channel   :   3
                        2022-12-23 14:10:41.389  - debug: jeelink.0 (18237) RSSI     : -66
                        2022-12-23 14:10:41.392  - debug: jeelink.0 (18237) Battery   : okOK
                        2022-12-23 14:10:41.440  - debug: jeelink.0 (18237) state jeelink.0.DavisVantage_1.rssi changed: -66 (ack = true)
                        2022-12-23 14:10:41.443  - debug: jeelink.0 (18237) state jeelink.0.DavisVantage_1.battery changed: okOK (ack = true)
                        

                        Man sieht, daß das mal wieder eine "vermackelte" Zeile war:

                        2022-12-23 14:10:41.380  - debug: jeelink.0 (18237) data received: OK VALUES DAVIS 0 20=3,22=-66,21=okOK VALUES DAVIS 0 20=4,22=-6 DAVIS 0 20=1,22=-67,21=ok,4=0.00,5=228,8=39,
                        

                        Es scheint, als würde der Adapter momentan nur dann anfangen zu arbeiten, wenn das Zeilenpräfix "OK VALUES DAVIS" nicht am Anfang der Zeile steht - zumindest läßt die Log-Zeile

                        2022-12-23 14:10:41.386  - debug: jeelink.0 (18237) splice       : 20=3,22=-66,21=okOK,VALUES,DAVIS,0,20=4,22=-6,DAVIS,0,20=1,22=-67,21=ok,4=0.00,5=228,8=39,
                        

                        darauf schließen. Trotzdem scheint er, wenn er die Zeile verarbeitet, richtigerweise von vorne anzufangen. Er hat auch bemerkt, daß irgendetwas nicht stimmt, was die nächste Logzeile bestätigt:

                        2022-12-23 14:10:41.387  - debug: jeelink.0 (18237) something is wrong in stream 20=3,22=-66,21=okOK strange part ->VALUES
                        

                        Im Prinzip müßte der Parser pro empfangener Zeile folgendes prüfen:

                        • Das Präfix lautet fix "OK VALUES DAVIS"
                        • Die ID besteht aus einer einzelnen Ziffer zwischen zwei Leerzeichen
                        • Ein Meßwert besteht aus einem Schlüssel, dem Gleichheitszeichen, dem Wert und einem Komma
                        • Schlüssel bestehen aus einer ein-oder zweistelligen Nummer, optional einem Punkt plus einer weiteren Ziffer
                        • Werte können verschiedene Datentypen enthalten: unsigned int (z.B. WindDirection) signed int (z.B. RSSI), signed float (z.B. Temperature, Dezimaltrennzeichen ist der Punkt), String (z.B. Battery)
                        • alle möglichen Schlüssel sind bekannt

                        Datentypen (vermutlich):

                         Schlüssel  | Name                   | Datentyp       |  Beispielwert | Werteliste / Anmerkungen
                        ------------+------------------------+----------------+---------------+-------------------------------------------------------------------------------------
                        * 1         | Temperature            | signed float   | -9.67         |
                        * 2         | Pressure               | ?              | ?             | Sensor nur in Basisstation
                        * 3         | Humidity               | unsigned float | 98.00         | (max. 100.00)
                        * 4         | WindSpeed              | unsigned float | 1.61          |
                        * 5         | WindDirection          | unsigned int   | 151           | (max. 360)
                        * 6         | WindGust               | unsigned float | 1.61          |
                        * 7         | WindGustRef            | int(?)         | 2             | (vermutlich int; ich weiß aber auch nicht, was dieser Wert genau bedeutet)
                        * 8         | RainTipCount           | unsigned int   | 39            | (max. 127 (vermutlich)
                        * 9         | RainSecs               | signed int     | -1            | Wert ist entweder -1 (es ist derzeit kein Niederschlag festgestellt) oder (vermutlich) >=0; max. unbekannt. Ist der Wert >=0, dann bedeutet das, daß derzeit Niederschlag vorliegt (wird in der Basisstation mit einem Schirmsymbol angezeigt). Ich weiß aber nicht, wie sich das genau manifestiert, das muß ich mal bei einer längeren Regenphase mitloggen
                        * 10        | Solar                  | ?              | ?             | Sensor nicht vorhanden
                        * 11        | VoltageSolar           | ?              | ?             | Sensor nicht vorhanden
                        * 12        | VoltageCapacitor       | ?              | ?             | Sensor nicht vorhanden
                        * 13        | SoilLeaf               | ?              | ?             | Sensor nicht vorhanden
                        * 14        | UV                     | ?              | ?             | Sensor nicht vorhanden
                        * 15.[1..4] | SoilTemperature.[1..4] | ?              | ?             | Sensor nicht vorhanden
                        * 16.[1..4] | SoilMoisture.[1..4]    | ?              | ?             | Sensor nicht vorhanden
                        * 17.[1..2] | LeafWetness.[1..2]     | ?              | ?             | Sensor nicht vorhanden
                        * 20        | Channel                | unsigned int   | 3             | [0..4]
                        * 21        | Battery                | string         | ok            | vermutlich {ok,nok}
                        * 22        | RSSI                   | signed int     | -66           |
                        * 255       | PacketDump             | ?              | ?             | vermutlich eh nur, wenn Debugging im Stick eingeschaltet wird, keine Ahnung, wie das dann aussieht :-)
                        

                        Annahmen / Beobachtungen:

                        • Die Meßwerte beginnen mit einer fixen Folge (Schlüsselnummer in Klammern): <Channel (20)><RSSI (22)><Battery (21)><WindSpeed (4)><WindDirection (5)>
                        • nach den fixen Meßwerten folgen i.d.R. 0 bis 2 weitere Meßwerte
                        • Die Meßwerte <Temperature (1)>, <Humidity (3)>, <RainTipCount (8)> und <RainSecs (9)> werden einzelnen übertragen
                        • Die Meßwerte <WindGust (6)> und <WindGustRef (7)> werden in der gleichen Zeile direkt nacheinander übertragen
                        • Werte mit einem float Datentyp haben zwei Nachkommastellen
                        • Eine optimale Zeile sieht wie folgt aus:
                          <Präfix><ID><Channel (20)><RSSI (22)><Battery (21)><WindSpeed (4)><WindDirection (5)>[<Meßwert (x)>...]

                        Weitere Meßwerte kann ich ohne weiteres auch leider nicht beurteilen, da mir dazu die Sensoren fehlen (der Drucksensor der Station ist in die Basisstation eingebaut und die funkt nicht, die empfängt nur... 😉

                        Fehlerfälle und Ausnahmen:

                        • Das Präfix kann unvollständig sein, möglicherweise auch falsche Zeichen enthalten
                        • Das Präfix kann auch weiter hinten in der Zeile erscheinen, das ist zwingend ein Zeichen dafür, daß die vorherige Zeile unvollständig war - möglicherweise fehlt nur der Zeilenumbrauch, möglicherweise aber auch ein oder mehrere vollständige Meßwerte oder ein Teil eines Meßwertes
                        • Meßwerte ohne abschließendes Komma sind möglicherweise unvollständig und sollten ggf. verworfen werden und nur im Log erwähnt werden, zumindest als debug - eine höhere Stufe könnte man ggf. überdenken.

                        Ich weiß nicht, ob es möglich ist, daß Zeilen auch ohne das Präfix beginnen können; so gut kenne ich den JeeLink-Sketch nicht, aber da sowohl das Funkprotokoll als auch das serielle Protokoll als unzuverlässig eingestuft werden müssen, würde ich damit rechnen, daß es überall zu fehlenden Bytes kommen kann und daher ein paar Sanity-Checks einbauen. Zusammen mit den Datentypen sollten sich zumindest ein paar Grundchecks durchführen lassen, genauso damit, daß es im Prinzip nur das Präfix aus Großbuchsteben und den (vermutlich) einzigen String Wert in Kleinbuchstaben gibt. Merkt sich der Adapter eigentlich die zuletzt gemessenen Werte? Falls ja, könnte man überlegen, ob man da ggf. noch Änderungen über die Zeit prüfen möchte - aber ich denke, das sollte dann schon extern in der Auswertung geschehen, je weniger der Adapter voraussetzt, umso besser. Wenn der Adapter gut erkennt, und wenn es die Feststellung "schlechter Empfang" ist, dann ist schon viel gewonnen 🙂

                        F 1 Reply Last reply Reply Quote 0
                        • M
                          McCavity last edited by

                          Ach ja, fast vergessen... wird der Channel (Schlüssel 20) eigentlich als Datenpunkt gespeichert? Ich sehe im Log, daß er erkannt wird, wenn er erkannt wird, aber ich finde den Datenpunkt irgendwie nicht in den Objekten des IoBroker...?

                          F 1 Reply Last reply Reply Quote 0
                          • F
                            foxthefox Developer @McCavity last edited by

                            @mccavity
                            Hab das mit der Adaption glatt aus den Augen verloren. Hatte irgendwie erwartet, daß es ein PullRequest kommt.
                            Bin nur wieder darauf gekommen, weil jemand nach dem Setzen der Parameter des Sticks fragte.
                            Das hatte ich gedacht, daß diese Sequenz unter Kommando eingetragen werden kann und dann wird der Stick damit parametriert.
                            Ging das schon einmal? In deinem Produktivsystem schien es nicht zu gehen oder evtl. wegen anderer Dinge übersehen ?

                            Jetzt zu dem Thema daß nicht alle Telegramme ausgewertet werden.
                            Das liegt höchstwahrscheinlich an dem was der Stick übergibt.
                            Im Adapter wird die Zeichenfolge ausgewertet. Dazu zerteile ich anhand der Leerzeichen den Anfang. Als erstes muß zwingend ein "OK" kommen und danach an übernächster Stelle ein "DAVIS".
                            Wenn das beides kommt, dann springt er in die Bearbeitung. Dort wird auch anhand der Komma die Zeichenketten extrahiert und eine solche Zeichenkette wird dann über das "=" in den Datenpunkt und Wert aufgeteilt. Wenn dann etwas drin ist, was nicht sinnvoll ist, kommt "..strange.."-Meldung.

                            An vierter Stelle steht ohne "=" die ID, die mit der Konfig im Adapter zusammenpassen muß.
                            Wenn das nicht konfiguriert ist, kommt "received ID : ?? is not defined in the adapter or not unique received address"

                            "OK VALUEK VALUES DAVIS 0 20=3,22=-66,21=ok,4=0.00,5=196,1=9.50," wird quasi direkt verworfen, da der dritte Teil nicht "DAVIS" ist.

                            Der Datenpunkt 20 wird derzeitig nur im debug log sichtbar. Hat noch keinen Datenpunkt im IOB.
                            Da er nicht weiter verwendet wird, werden die übermittelten Werte immer abgelegt, unabhängig der channel# (vorausgesetzt das Telegramm war gemäß obigen Regeln OK).

                            Es wird alles übernommen was zwischen "=" und "," den Wert darstellt. Ein "okOK" geht damit durch.

                            Meist kommt durch das letzte Komma verursacht noch ein "submitted value pair is unknown =undefined", da hatte ich bei der schnellen Hilfe für dich noch keine Muße das wegzufiltern.

                            Ich hoffe das hilft ein wenig zum Verständnis.

                            Gruß
                            Klaus

                            1 Reply Last reply Reply Quote 0
                            • F
                              foxthefox Developer @McCavity last edited by

                              @mccavity sagte in IoBroker.Jeelink + Davis geht teilweise - Hilfe beim Rest?:

                              Ach ja, fast vergessen... wird der Channel (Schlüssel 20) eigentlich als Datenpunkt gespeichert? Ich sehe im Log, daß er erkannt wird, wenn er erkannt wird, aber ich finde den Datenpunkt irgendwie nicht in den Objekten des IoBroker...?

                              Nachdem scheinbar ja die gleichen Daten unabhängig der channel# drin sind, mach das Wegspeichern kein sinn, dann würde sich der Datenpunkt nur ständig ändern.
                              Falls DeviceID + channel unterschiedliche Daten wären, müsste man anhand von channel zuordnen

                              1 Reply Last reply Reply Quote 0
                              • F
                                foxthefox Developer @McCavity last edited by

                                @mccavity sagte in IoBroker.Jeelink + Davis geht teilweise - Hilfe beim Rest?:

                                Einen habe ich doch noch, den ich nicht vorenthalten wollte - ich habe gerade gesehen, daß im Battery Status auf einmal "okOK" steht - da hat der Parser etwas mißverstanden. Den dafür verantwortlichen Empfang habe ich im Log finden können:

                                Man sieht, daß das mal wieder eine "vermackelte" Zeile war:

                                2022-12-23 14:10:41.380  - debug: jeelink.0 (18237) data received: OK VALUES DAVIS 0 20=3,22=-66,21=okOK VALUES DAVIS 0 20=4,22=-6 DAVIS 0 20=1,22=-67,21=ok,4=0.00,5=228,8=39,
                                

                                Bis zu okOK ist die Zeile in Ordnung und wurde auch weiter bearbeitet

                                Es scheint, als würde der Adapter momentan nur dann anfangen zu arbeiten, wenn das Zeilenpräfix "OK VALUES DAVIS" nicht am Anfang der Zeile steht - zumindest läßt die Log-Zeile

                                2022-12-23 14:10:41.386  - debug: jeelink.0 (18237) splice       : 20=3,22=-66,21=okOK,VALUES,DAVIS,0,20=4,22=-6,DAVIS,0,20=1,22=-67,21=ok,4=0.00,5=228,8=39,
                                

                                darauf schließen. Trotzdem scheint er, wenn er die Zeile verarbeitet, richtigerweise von vorne anzufangen. Er hat auch bemerkt, daß irgendetwas nicht stimmt, was die nächste Logzeile bestätigt:

                                2022-12-23 14:10:41.387  - debug: jeelink.0 (18237) something is wrong in stream 20=3,22=-66,21=okOK strange part ->VALUES
                                

                                Nicht ganz richtig vermutet, wegen OK VALUES DAVIS springt er überhaupt in die Bearbeitung und "spliced" den Rest auf. Das ist auch soweit gut bis keine Wertepaare mehr enthalten sind -> VALUES DAVIS..
                                Das erkennt er und meckert "VALUES" an.

                                Im Prinzip müßte der Parser pro empfangener Zeile folgendes prüfen:

                                • Das Präfix lautet fix "OK VALUES DAVIS"

                                Ich prüfe auf OK und DAVIS an übernächster Stelle ab.

                                • Die ID besteht aus einer einzelnen Ziffer zwischen zwei Leerzeichen
                                • Ein Meßwert besteht aus einem Schlüssel, dem Gleichheitszeichen, dem Wert und einem Komma
                                • Schlüssel bestehen aus einer ein-oder zweistelligen Nummer, optional einem Punkt plus einer weiteren Ziffer
                                • Werte können verschiedene Datentypen enthalten: unsigned int (z.B. WindDirection) signed int (z.B. RSSI), signed float (z.B. Temperature, Dezimaltrennzeichen ist der Punkt), String (z.B. Battery)

                                wird genauso verarbeitet

                                • alle möglichen Schlüssel sind bekannt
                                  Bis auf Channel und PacketDump dürfte alles drin sein.

                                Annahmen / Beobachtungen:

                                • Die Meßwerte beginnen mit einer fixen Folge (Schlüsselnummer in Klammern): <Channel (20)><RSSI (22)><Battery (21)><WindSpeed (4)><WindDirection (5)>
                                • nach den fixen Meßwerten folgen i.d.R. 0 bis 2 weitere Meßwerte
                                • Die Meßwerte <Temperature (1)>, <Humidity (3)>, <RainTipCount (8)> und <RainSecs (9)> werden einzelnen übertragen
                                • Die Meßwerte <WindGust (6)> und <WindGustRef (7)> werden in der gleichen Zeile direkt nacheinander übertragen
                                • Werte mit einem float Datentyp haben zwei Nachkommastellen
                                • Eine optimale Zeile sieht wie folgt aus:
                                  <Präfix><ID><Channel (20)><RSSI (22)><Battery (21)><WindSpeed (4)><WindDirection (5)>[<Meßwert (x)>...]

                                ob die Reihenfolge so ist oder auch nicht, ist in der Auswertung egal. Wenn OK VALUES DAVIS 0 am Anfang steht, wird alles danach zwischen den Kommas über das = als Wertepaar identifiziert und anhand der Schlüsselnummer richtig weggeschrieben.

                                Fehlerfälle und Ausnahmen:

                                • Das Präfix kann unvollständig sein, möglicherweise auch falsche Zeichen enthalten
                                • Das Präfix kann auch weiter hinten in der Zeile erscheinen, das ist zwingend ein Zeichen dafür, daß die vorherige Zeile unvollständig war - möglicherweise fehlt nur der Zeilenumbrauch, möglicherweise aber auch ein oder mehrere vollständige Meßwerte oder ein Teil eines Meßwertes
                                • Meßwerte ohne abschließendes Komma sind möglicherweise unvollständig und sollten ggf. verworfen werden und nur im Log erwähnt werden, zumindest als debug - eine höhere Stufe könnte man ggf. überdenken.

                                Alles was nicht passt wird verworfen, die "strange" Meldungen sind nur debug. Wenn der Anfang nicht passt, führt halt zu einer Meldung das Konfig nicht richtig ist. Könnte man auch unter debug laufen lassen, bisher sah ich es als hilfreich für die Inbetriebnahme bzw. als Hinweis bei ID-Wechsel nach Batteriewechsel (da der Adapter ja auch die LaCrosse/Technolink verarbeitet).

                                Ich weiß nicht, ob es möglich ist, daß Zeilen auch ohne das Präfix beginnen können; so gut kenne ich den JeeLink-Sketch nicht, aber da sowohl das Funkprotokoll als auch das serielle Protokoll als unzuverlässig eingestuft werden müssen, würde ich damit rechnen, daß es überall zu fehlenden Bytes kommen kann und daher ein paar Sanity-Checks einbauen. Zusammen mit den Datentypen sollten sich zumindest ein paar Grundchecks durchführen lassen, genauso damit, daß es im Prinzip nur das Präfix aus Großbuchsteben und den (vermutlich) einzigen String Wert in Kleinbuchstaben gibt. Merkt sich der Adapter eigentlich die zuletzt gemessenen Werte? Falls ja, könnte man überlegen, ob man da ggf. noch Änderungen über die Zeit prüfen möchte - aber ich denke, das sollte dann schon extern in der Auswertung geschehen, je weniger der Adapter voraussetzt, umso besser. Wenn der Adapter gut erkennt, und wenn es die Feststellung "schlechter Empfang" ist, dann ist schon viel gewonnen 🙂

                                Ich bin hier für KISS (keep it simple und stupid), einfach auf das nächste saubere Telegramm warten und dieses auswerten und wegschreiben. Großartig rumorakeln was von einem String noch auswertbar ist oder nicht, bringt bei so schnell ankommenden Telegrammen nichts. Eher wäre der sketch auf dem Stick gefragt um die Telegramm richt zu separieren und nicht ein "...=okOK VALUES..." zu bekommen. Sonst kommt da als letztes immer ein Komma. Und wenn wir an den Daten an sich zweifeln (vergleich mit letzten Wert) 😵

                                1 Reply Last reply Reply Quote 0
                                • First post
                                  Last post

                                Support us

                                ioBroker
                                Community Adapters
                                Donate

                                393
                                Online

                                31.9k
                                Users

                                80.3k
                                Topics

                                1.3m
                                Posts

                                davis-vantage-pro-2 hilfe jeelink-adapter
                                3
                                25
                                1686
                                Loading More Posts
                                • Oldest to Newest
                                • Newest to Oldest
                                • Most Votes
                                Reply
                                • Reply as topic
                                Log in to reply
                                Community
                                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                The ioBroker Community 2014-2023
                                logo