Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Script Hilfe für Abfrage Serielle Kommunikation gesucht!

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Script Hilfe für Abfrage Serielle Kommunikation gesucht!

    This topic has been deleted. Only users with topic management privileges can see it.
    • E
      etzeste13 @etzeste13 last edited by

      @wendy2702

      Ich habe nun die Rohdaten erhalten unter Datenpunkt "javascript.1.Waterkotte.Daten.Abfrage_Rohdaten" nämlich folgenden Wert:
      ff100200171fbe180b0603021f2ac16640911219406dda4840d11010d241841ed241e748d34101004042dedc57415238dec20000704129f1d340c771dc40b4050041ae86dc419b6c724100000000c30b9f4086bd3741d11010d241841ed24100009041841ed241dedc5741011f09060216f2f2a24629329346eb94fc44000000000e170f090b0711170f090b070000000000da78000009063614081a091402a32000001954e4401954e440a737dd4084c0a340daf3c741a187c841485131414d28f54102000000a041000000000000000024b902000020200001000003f30000000000000000000808000000000000000127008b0127002835121003d7

      allerdings wird es nicht auf die angelegten Datenpunkte aufgeteilt. Wie triggerst du dein ParserSkript?

      lg Etze

      wendy2702 1 Reply Last reply Reply Quote 0
      • wendy2702
        wendy2702 @etzeste13 last edited by

        @etzeste13 Das Parser / Auswertung Script läuft immer.

        E 1 Reply Last reply Reply Quote 0
        • E
          etzeste13 @wendy2702 last edited by etzeste13

          @wendy2702
          ich habe gesehen, das in deinem Script die Instanz für für"Javaskript" 2 ist. ich werde nochmal das Skript durchgehen und nachsehen ob ich hier vergessen haben was anzupassen. Das wichtigt ist mal das ich die Daten bekomme, den Rest schaffe ich sicher auch noch.

          Zur Doku für Alle: Ich konnte die Verbindung mit dem USB RS232 Adapter herstellen und zwar ist kein komplettes NullModem-Kabel nötig sondern "nur" RX und TX. Ich habe folgende Beschaltung verwendet:

          b2d30486-a5fb-44f9-81b7-7ee9bdfa6eb0-grafik.png

          und bei der Wärmepumpe die Menüpunkte wie folgt verwendet:
          6.02 Modem Anzahl Klingelzeichen auf 0 gestellt
          6.03 Fremdzugriff Freigabe auf 1 gestellt.

          so bekommt man zumindest mal die Rohdaten.

          vG Etze

          wendy2702 1 Reply Last reply Reply Quote 1
          • wendy2702
            wendy2702 @etzeste13 last edited by wendy2702

            @etzeste13 dann scheint der Menüpunkt Fremdzugriff entweder keine Funktion zu haben oder du hast eine andere Software Version im Resümat.

            Bei mir ist das JavaScript 2 weil der PI ein Slave ist.

            E 1 Reply Last reply Reply Quote 1
            • E
              etzeste13 @wendy2702 last edited by

              @wendy2702
              Hallo Wendy,

              also nun scheint alles soweit zu funktionieren.Die Datenpunkte werden befüllt, und die wichtigsten Daten scheinen nach der ersten Kontrolle auch Sinn zu machen. Ich habe nun einfach nochmal die JavaScript Inszanz vom Slave gelöscht, und nochmals unter Instanz .2 installiert, damit es mit deiner Konfi zusammenpasst. Dann habe ich noch den Port des USB-RS232 Adapters definiert:

              const port = new SerialPort("/dev/serial/by-path/platform-3f980000.usb-usb-0:1.3:1.0-port0", {
              

              und nun gehts.

              Log sieht wie folgt aus.... und da ist mir aufgefallen, dass Ihm der "Error" Datenpunkt fehlt. Ist dieser wichtig? Bzw passt der Log deiner Erfahrung nach?

              javascript.2	2022-02-06 10:53:08.152	info	(6752) script.js.common.Wärmepumpe.Abfrage_Wärmepumpe: port closed
              javascript.2	2022-02-06 10:53:08.150	info	(6752) Stop script script.js.common.Wärmepumpe.Abfrage_Wärmepumpe
              javascript.2	2022-02-06 10:53:05.033	info	(6752) script.js.common.Wärmepumpe.Daten-Parser: Temp aussen ist:5.65
              javascript.2	2022-02-06 10:53:05.028	info	(6752) script.js.common.Wärmepumpe.Daten-Parser: Daten split:1fbe
              javascript.2	2022-02-06 10:53:05.027	info	(6752) script.js.common.Wärmepumpe.Daten-Parser: Daten split: ff 10 02 00 17 1f be 18 0b 06 03 02 1f 9c de b4 40 dd c5 1b 40 00 86 a5 40 98 52 ce 41 0f a1 cf 41 11 7a d0 41 01 00 40 42 aa 71 48 41 52
              javascript.2	2022-02-06 10:53:05.024	info	(6752) script.js.common.Wärmepumpe.Daten-Parser: Daten:ff100200171fbe180b0603021f9cdeb440ddc51b400086a5409852ce410fa1cf41117ad04101004042aa7148415238dec20000704165f2a440bde9ad40f8f3e9408c05df411142684
              javascript.2	2022-02-06 10:53:05.016	info	(6752) script.js.common.Wärmepumpe.Abfrage_Wärmepumpe: Data received: ff100200171fbe180b0603021f9cdeb440ddc51b400086a5409852ce410fa1cf41117ad04101004042aa7148415238dec20000704165f2a440bde9ad40f8f3e940
              javascript.2	2022-02-06 10:53:04.663	info	(6752) script.js.common.Wärmepumpe.Abfrage_Wärmepumpe: Daten send
              javascript.2	2022-02-06 10:53:04.652	info	(6752) script.js.common.Wärmepumpe.Abfrage_Wärmepumpe: Connected
              javascript.2	2022-02-06 10:53:04.628	info	(6752) script.js.common.Wärmepumpe.Abfrage_Wärmepumpe: registered 0 subscriptions and 0 schedules
              javascript.2	2022-02-06 10:53:04.624	warn	(6752) at script.js.common.Wärmepumpe.Abfrage_Wärmepumpe:147:3
              javascript.2	2022-02-06 10:53:04.623	warn	(6752) at script.js.common.Wärmepumpe.Abfrage_Wärmepumpe:5:1
              javascript.2	2022-02-06 10:53:04.621	warn	(6752) at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1439:20)
              javascript.2	2022-02-06 10:53:04.614	warn	(6752) State "javascript.2.Waterkotte.Daten.Abfrage_Error" not found
              javascript.2	2022-02-06 10:53:04.595	info	(6752) Start javascript script.js.common.Wärmepumpe.Abfrage_Wärmepumpe
              

              lg Etze

              wendy2702 1 Reply Last reply Reply Quote 0
              • wendy2702
                wendy2702 @etzeste13 last edited by

                @etzeste13 den Error habe ich mir selber angelegt. Habe dann ein kleines Blocky was den prüft und falls true die JS Instanz neu startet damit der COM Port wieder funktioniert

                Axel Koeneke 1 Reply Last reply Reply Quote 1
                • Axel Koeneke
                  Axel Koeneke @wendy2702 last edited by

                  Hallo Wendy,
                  hast du das Script schon unter V10 zum laufen gebracht?
                  Also Serialport V10.x.x. Da hat sich wohl einiges in der Syntax geändert.
                  Habe nur das hier gefunden: https://serialport.io/docs/guide-upgrade komme aber nicht wirklich weiter damit.
                  VG
                  Axel

                  wendy2702 2 Replies Last reply Reply Quote 0
                  • wendy2702
                    wendy2702 @Axel Koeneke last edited by

                    @axel-koeneke ich habe die V10 noch nicht installiert…. Zumindest nicht bewusst.

                    Wie bist du daran gekommen?

                    Axel Koeneke 1 Reply Last reply Reply Quote 0
                    • Axel Koeneke
                      Axel Koeneke @wendy2702 last edited by Axel Koeneke

                      @wendy2702 Ich habe mutig wie immer, aus der Repo JS 4 installiert...
                      Dabei hat er auch die Java NPM Module aktualisiert. V10 ist jetzt Standard.
                      Kennst du einen Weg die V9 manuell zu installieren?

                      Thomas Braun wendy2702 3 Replies Last reply Reply Quote 0
                      • Thomas Braun
                        Thomas Braun Most Active @Axel Koeneke last edited by

                        @axel-koeneke sagte in Script Hilfe für Abfrage Serielle Kommunikation gesucht!:

                        aus der Repo JS 4 installiert

                        Was aus welchem Repo installiert?

                        Axel Koeneke 1 Reply Last reply Reply Quote 0
                        • wendy2702
                          wendy2702 @Axel Koeneke last edited by

                          @axel-koeneke du meinst den JS Controller oder JavaScript Adapter?

                          1 Reply Last reply Reply Quote 0
                          • Thomas Braun
                            Thomas Braun Most Active @Axel Koeneke last edited by

                            @axel-koeneke sagte in Script Hilfe für Abfrage Serielle Kommunikation gesucht!:

                            Ich habe mutig wie immer, aus der Repo JS 4 installiert...
                            Dabei hat er auch die Java NPM Module aktualisiert. V10 ist jetzt Standard.

                            So ganz kann ich nicht folgen:

                            echad@chet:/opt/iobroker $ npm ls serialport
                            iobroker.inst@3.0.0 /opt/iobroker
                            └─┬ iobroker.zigbee@1.6.16
                              ├─┬ zigbee-herdsman-converters@14.0.422
                              │ └─┬ zigbee-herdsman@0.14.14
                              │   └── serialport@9.2.8
                              └─┬ zigbee-herdsman@0.14.16
                                └── serialport@9.2.8
                            
                            echad@chet:/opt/iobroker $ iob -v
                            4.0.18
                            
                            1 Reply Last reply Reply Quote 0
                            • wendy2702
                              wendy2702 last edited by

                              Ich habe auch JS 4.0.15 und Serial 9.2.8

                              Axel Koeneke 1 Reply Last reply Reply Quote 0
                              • Axel Koeneke
                                Axel Koeneke @Thomas Braun last edited by

                                @thomas-braun sagte in Script Hilfe für Abfrage Serielle Kommunikation gesucht!:

                                @axel-koeneke sagte in Script Hilfe für Abfrage Serielle Kommunikation gesucht!:

                                aus der Repo JS 4 installiert

                                Was aus welchem Repo installiert?

                                Da alles andere ohne Probleme lief, habe ich wie immer aus "Latest" installiert - ich bin mir natürlich der Gefahren bewusst.
                                VG
                                Axel

                                Thomas Braun 1 Reply Last reply Reply Quote 0
                                • Axel Koeneke
                                  Axel Koeneke @wendy2702 last edited by

                                  @wendy2702 sagte in Script Hilfe für Abfrage Serielle Kommunikation gesucht!:

                                  Ich habe auch JS 4.0.15 und Serial 9.2.8

                                  Fakt ist, das seltsamerweise auch 9.2.8 angezeigt wird.
                                  Ich habe aber eine neue Fehlermeldung erhalten nach dem IOB-Update auf V4.0.15

                                  09:07:45.338	error	javascript.1 (6368) script.js.common.Waterkotte-Abfrage: TypeError: Cannot read property 'ByteLength' of undefined
                                  09:07:45.338	error	javascript.1 (6368) at script.js.common.Waterkotte-Abfrage:7:39
                                  09:07:45.339	error	javascript.1 (6368) at script.js.common.Waterkotte-Abfrage:79:3
                                  

                                  Deshalb bin ich dummerweise davon ausgegangen, das Serialport V10 installiert ist.
                                  Siehe auch hier: https://serialport.io/docs/guide-upgrade
                                  Da steht ja:

                                  const ByteLength = SerialPort.parsers.ByteLength
                                  
                                  has changed to;
                                  
                                  import { ByteLengthParser } from 'serialport'
                                  

                                  Außerdem wundere ich mich gerade - gab es da nicht eine Einstellung im Java-Adapter, dass die NPM Module immer aktualisiert werden können, bei Neustart?

                                  Ich komme gerade nicht ins Büro. Werde morgen wieder berichten.
                                  VG
                                  Axel

                                  1 Reply Last reply Reply Quote 0
                                  • Thomas Braun
                                    Thomas Braun Most Active @Axel Koeneke last edited by Thomas Braun

                                    @axel-koeneke sagte in Script Hilfe für Abfrage Serielle Kommunikation gesucht!:

                                    Da alles andere ohne Probleme lief, habe ich wie immer aus "Latest" installier

                                    Was denn? Den js-controller oder was meinst du mit 'JS 4'?

                                    Wäre vielleicht auch interessant zu sehen, wer da einen serialport@10 anschleppt. Der js-controller selber ist es nicht.

                                    Axel Koeneke 1 Reply Last reply Reply Quote 0
                                    • Axel Koeneke
                                      Axel Koeneke @Thomas Braun last edited by

                                      @thomas-braun Hallo Thomas,
                                      ja ist alles etwas verwirrend...
                                      Hier meine Versionen:

                                      pi@iobroker-cl1:~# node -v
                                      v14.19.0
                                      pi@iobroker-cl1:~# nodejs -v
                                      v14.19.0
                                      pi@iobroker-cl1:~# npm -v
                                      6.14.16
                                      pi@iobroker-cl1:~# iob version
                                      4.0.18
                                      pi@iobroker-cl1:~ $ npm ls serialport
                                      /home/pi
                                      └── serialport@9.2.8
                                      pi@iobroker-cl1:~ $ iobroker version javascript
                                      5.3.1
                                      

                                      Das Script lief bisher ohne Probleme seit über einem Jahr.
                                      Zwei Sachen sind mir heute aufgefallen.

                                      1. Ich habe den Javascript-Adapter aktualisiert, aber dabei hat das System nur den Server berücksichtigt und nicht den Client. Den habe ich dann manuell nachgezogen.
                                      2. Habe ich so langsam den USB-RS232 Adapter in verdacht. Warum siehe LOG:
                                      
                                      javascript.1
                                      2022-03-06 18:57:00.023	info	script.js.common.Waterkotte-Interval: Abfrage_Waterkotte Ende
                                      javascript.1
                                      2022-03-06 18:57:00.022	info	script.js.common.Waterkotte-Interval: Abfrage_Waterkotte Begin
                                      javascript.1
                                      2022-03-06 18:56:50.747	info	Stop script script.js.common.Waterkotte-Abfrage
                                      javascript.1
                                      2022-03-06 18:56:45.008	info	script.js.common.Waterkotte-Interval: Abfrage_Waterkotte Ende
                                      javascript.1
                                      2022-03-06 18:56:45.007	info	script.js.common.Waterkotte-Interval: Abfrage_Waterkotte Begin
                                      javascript.1
                                      2022-03-06 18:56:05.044	info	Stop script script.js.common.Waterkotte-Abfrage
                                      javascript.1
                                      2022-03-06 18:56:00.023	info	script.js.common.Waterkotte-Interval: Abfrage_Waterkotte Ende
                                      javascript.1
                                      2022-03-06 18:56:00.023	info	script.js.common.Waterkotte-Interval: Abfrage_Waterkotte Begin
                                      javascript.1
                                      2022-03-06 18:55:50.076	info	Stop script script.js.common.Waterkotte-Abfrage
                                      javascript.1
                                      2022-03-06 18:55:45.010	info	script.js.common.Waterkotte-Interval: Abfrage_Waterkotte Ende
                                      javascript.1
                                      2022-03-06 18:55:45.009	info	script.js.common.Waterkotte-Interval: Abfrage_Waterkotte Begin
                                      javascript.1
                                      2022-03-06 18:55:05.299	info	Stop script script.js.common.Waterkotte-Abfrage
                                      javascript.1
                                      2022-03-06 18:55:00.012	info	script.js.common.Waterkotte-Interval: Abfrage_Waterkotte Ende
                                      javascript.1
                                      2022-03-06 18:55:00.012	info	script.js.common.Waterkotte-Interval: Abfrage_Waterkotte Begin
                                      javascript.1
                                      2022-03-06 18:54:50.038	info	Stop script script.js.common.Waterkotte-Abfrage
                                      javascript.1
                                      2022-03-06 18:54:45.011	info	script.js.common.Waterkotte-Interval: Abfrage_Waterkotte Ende
                                      javascript.1
                                      2022-03-06 18:54:45.010	info	script.js.common.Waterkotte-Interval: Abfrage_Waterkotte Begin
                                      javascript.1
                                      2022-03-06 18:54:05.049	info	Stop script script.js.common.Waterkotte-Abfrage
                                      javascript.1
                                      2022-03-06 18:54:00.024	info	script.js.common.Waterkotte-Interval: Abfrage_Waterkotte Ende
                                      javascript.1
                                      2022-03-06 18:54:00.023	info	script.js.common.Waterkotte-Interval: Abfrage_Waterkotte Begin
                                      javascript.1
                                      2022-03-06 18:53:50.075	info	Stop script script.js.common.Waterkotte-Abfrage
                                      javascript.1
                                      2022-03-06 18:53:45.113	error	at Script.runInContext (vm.js:144:12)
                                      javascript.1
                                      2022-03-06 18:53:45.113	error	at script.js.common.Waterkotte-Abfrage:74:3
                                      javascript.1
                                      2022-03-06 18:53:45.112	error	at script.js.common.Waterkotte-Abfrage:7:39
                                      javascript.1
                                      2022-03-06 18:53:45.112	error	script.js.common.Waterkotte-Abfrage: TypeError: Cannot read property 'ByteLength' of undefined
                                      javascript.1
                                      2022-03-06 18:53:45.110	info	script.js.common.Waterkotte-Abfrage: registered 0 subscriptions and 0 schedules
                                      javascript.1
                                      2022-03-06 18:53:45.105	info	Start javascript script.js.common.Waterkotte-Abfrage
                                      javascript.1
                                      2022-03-06 18:53:45.073	info	Stop script script.js.common.Waterkotte-Abfrage
                                      javascript.1
                                      2022-03-06 18:53:45.013	info	script.js.common.Waterkotte-Interval: Abfrage_Waterkotte Ende
                                      javascript.1
                                      2022-03-06 18:53:45.011	info	script.js.common.Waterkotte-Interval: Abfrage_Waterkotte Begin
                                      javascript.1
                                      2022-03-06 18:53:31.618	info	script.js.common.Waterkotte-Umrechnen: registered 1 subscription and 0 schedules
                                      javascript.1
                                      2022-03-06 18:53:31.607	info	Start javascript script.js.common.Waterkotte-Umrechnen
                                      javascript.1
                                      2022-03-06 18:53:31.606	info	script.js.common.Waterkotte-Interval: registered 0 subscriptions and 1 schedule
                                      javascript.1
                                      2022-03-06 18:53:31.502	info	Start javascript script.js.common.Waterkotte-Interval
                                      javascript.1
                                      2022-03-06 18:53:30.896	error	at Script.runInContext (vm.js:144:12)
                                      javascript.1
                                      2022-03-06 18:53:30.895	error	at script.js.common.Waterkotte-Abfrage:74:3
                                      javascript.1
                                      2022-03-06 18:53:30.895	error	at script.js.common.Waterkotte-Abfrage:7:39
                                      javascript.1
                                      2022-03-06 18:53:30.893	error	script.js.common.Waterkotte-Abfrage: TypeError: Cannot read property 'ByteLength' of undefined
                                      

                                      Mal kommt der Fehler (TypeError: Cannot read property 'ByteLength' of undefined), dann wieder nicht. Berechnet wird jedoch gar nicht mehr.
                                      Wenn ich den Stick abziehe kommt im LOG auch nur noch Begin und Ende.
                                      Also bestelle ich mal einen neuen Stick.
                                      VG
                                      Axel

                                      Thomas Braun 1 Reply Last reply Reply Quote 0
                                      • Thomas Braun
                                        Thomas Braun Most Active @Axel Koeneke last edited by

                                        @axel-koeneke sagte in Script Hilfe für Abfrage Serielle Kommunikation gesucht!:

                                        pi@iobroker-cl1:~ $ npm ls serialport /home/pi └── serialport@9.2.8

                                        Da stehst du im falschen Verzeichnis. Im home-Verzeichnis des pi hat das nix zu suchen.

                                        Ich habe den Javascript-Adapter aktualisiert, aber dabei hat das System nur den Server berücksichtigt und nicht den Client.

                                        Was für ein Server bzw. was für ein Client?

                                        Axel Koeneke 1 Reply Last reply Reply Quote 0
                                        • wendy2702
                                          wendy2702 last edited by

                                          @Axel-Koeneke Bei mir läuft das Script nach wie vor mit den latest Versionen aller Adapter. Hatte auch mal den USB Stick kaputt und dann so merkwürdige Fehler.

                                          @Thomas-Braun : Iobroker Master und Slave meint er

                                          1 Reply Last reply Reply Quote 0
                                          • Axel Koeneke
                                            Axel Koeneke @Thomas Braun last edited by

                                            @thomas-braun Moin Thomas,

                                            Da stehst du im falschen Verzeichnis. Im home-Verzeichnis des pi hat das nix zu suchen.

                                            Hmm, aber das hat sich alleine dahin installiert. Ich habe das nur in den Adapter Einstellungen eingetragen:
                                            bb2470fd-0182-46ae-95bb-c919cfb05983-image.png
                                            Lief ja auch bis dato immer sehr gut. Bei Wendy läuft es ja auch noch...
                                            VG
                                            Axel

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            869
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            15
                                            192
                                            20120
                                            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