Skip to content
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Test Adapter MyVBus v0.6.x Latest

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.2k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.2k

Test Adapter MyVBus v0.6.x Latest

Geplant Angeheftet Gesperrt Verschoben Tester
resol vbus
381 Beiträge 27 Kommentatoren 100.7k Aufrufe 22 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • T Offline
    T Offline
    Tipe1965
    schrieb am zuletzt editiert von
    #242

    Hat sich erledigt, lag am Rasp, musste alles erstmal Updaten danach ging es problemlos

    J 1 Antwort Letzte Antwort
    0
    • T Tipe1965

      Hat sich erledigt, lag am Rasp, musste alles erstmal Updaten danach ging es problemlos

      J Offline
      J Offline
      joojanta
      schrieb am zuletzt editiert von
      #243

      Hallo,
      bin ganz neu bei dem Thema iobroker. Bin ca, 1 Monat damit am arbeiten. Ich habe an der Heizung eine DeltaSol MX. Was benötige ich, um diese mit iobroker anzubinden. VBUS/LAN oder einen DL? Bin ja mehr als begeister von ioboker.

      Gruß
      Joo

      P 1 Antwort Letzte Antwort
      0
      • J joojanta

        Hallo,
        bin ganz neu bei dem Thema iobroker. Bin ca, 1 Monat damit am arbeiten. Ich habe an der Heizung eine DeltaSol MX. Was benötige ich, um diese mit iobroker anzubinden. VBUS/LAN oder einen DL? Bin ja mehr als begeister von ioboker.

        Gruß
        Joo

        P Offline
        P Offline
        pdbjjens
        schrieb am zuletzt editiert von
        #244

        @joojanta Hallo und herzlich willkommen bei iobroker.
        Im einfachsten Fall genügt ein VBus/LAN oder auch ein KM2. Obwohl etwas teurer, würde ich ein KM2 empfehlen, das kann man auch per WLAN an iobroker anbinden weil man ja nicht immer ein LAN-Kabel in der Nähe der Solaranlage hat. Ein DL2 oder DL3 braucht man i.a. nicht, es sei denn man braucht ein lokales logging der Solardaten. Aber dafür hat man ja iobroker. 😀

        J 1 Antwort Letzte Antwort
        0
        • P pdbjjens

          @joojanta Hallo und herzlich willkommen bei iobroker.
          Im einfachsten Fall genügt ein VBus/LAN oder auch ein KM2. Obwohl etwas teurer, würde ich ein KM2 empfehlen, das kann man auch per WLAN an iobroker anbinden weil man ja nicht immer ein LAN-Kabel in der Nähe der Solaranlage hat. Ein DL2 oder DL3 braucht man i.a. nicht, es sei denn man braucht ein lokales logging der Solardaten. Aber dafür hat man ja iobroker. 😀

          J Offline
          J Offline
          joojanta
          schrieb am zuletzt editiert von joojanta
          #245

          @pdbjjens said in Test Adapter MyVBus v0.0.x GitHub:

          VBus/LAN

          Danke. Ich werde mir dann erst mal einen VBus/LAN Adapter besorgen. Ich bin ja froh dass es eine Möglichkeit gibt. Die Software von Resol ist ja nicht der bringer, die Hardware ist super, aber mit jedem Update fällt was sinnvolles weg. Wenn das jetzt mit iobroker gehen sollte, wäre ich mehr als glücklich:-)

          1 Antwort Letzte Antwort
          0
          • R Offline
            R Offline
            RolfG
            schrieb am zuletzt editiert von
            #246

            Hallo,
            ich versuche mich auch gerade am VBus-LAN-Adapter von Resol der an einer Viessman Vitosolic 200 SD4 hängt.
            In der Instanz in IoBroker habe ich die Werte eingetragen, Anzeige wird "grün" - verbunden.
            Allerdings in den Objekten wird mir nur das Objekt "Information" angezeigt, keine Werte/Daten.
            7139f92c-2428-4152-a958-b9306f4ec62e-grafik.png
            Woran könnte es liegen bzw. wie könnte ich mich auf die Fehlersuche machen?
            Danke
            Gruß Rolf

            GarganoG GrizzelbeeG 2 Antworten Letzte Antwort
            0
            • R RolfG

              Hallo,
              ich versuche mich auch gerade am VBus-LAN-Adapter von Resol der an einer Viessman Vitosolic 200 SD4 hängt.
              In der Instanz in IoBroker habe ich die Werte eingetragen, Anzeige wird "grün" - verbunden.
              Allerdings in den Objekten wird mir nur das Objekt "Information" angezeigt, keine Werte/Daten.
              7139f92c-2428-4152-a958-b9306f4ec62e-grafik.png
              Woran könnte es liegen bzw. wie könnte ich mich auf die Fehlersuche machen?
              Danke
              Gruß Rolf

              GarganoG Offline
              GarganoG Offline
              Gargano
              schrieb am zuletzt editiert von
              #247

              @RolfG Zeig mal Deine Einstellungen

              R 1 Antwort Letzte Antwort
              0
              • GarganoG Gargano

                @RolfG Zeig mal Deine Einstellungen

                R Offline
                R Offline
                RolfG
                schrieb am zuletzt editiert von
                #248

                @Gargano
                Hier die Einstellungen, im Resol-Adapter habe ich nichts eingestellt, bekommt immer gleiche IP vom Router
                37497d2e-4c2a-4226-9bee-da5ab88ea1d9-grafik.png

                GarganoG 1 Antwort Letzte Antwort
                0
                • R RolfG

                  Hallo,
                  ich versuche mich auch gerade am VBus-LAN-Adapter von Resol der an einer Viessman Vitosolic 200 SD4 hängt.
                  In der Instanz in IoBroker habe ich die Werte eingetragen, Anzeige wird "grün" - verbunden.
                  Allerdings in den Objekten wird mir nur das Objekt "Information" angezeigt, keine Werte/Daten.
                  7139f92c-2428-4152-a958-b9306f4ec62e-grafik.png
                  Woran könnte es liegen bzw. wie könnte ich mich auf die Fehlersuche machen?
                  Danke
                  Gruß Rolf

                  GrizzelbeeG Offline
                  GrizzelbeeG Offline
                  Grizzelbee
                  Developer
                  schrieb am zuletzt editiert von
                  #249

                  @RolfG sagte in Test Adapter MyVBus v0.0.x GitHub:

                  VBus-LAN-Adapter von Resol der an einer Viessman Vitosolic 200 SD4 hängt.

                  Hallo Rolf,
                  ich könnte mir vorstellen, dass es genau daran liegt. Bislang haben wir nur Erfahrungen mit Resol eigenen Geräten. Der Adapter setzt nämlich auf eine Library von Daniel Wippermann auf (dem Lead-Developer von Resol, wenn man Xing glauben schenken darf).

                  Versuche bitte trotzdem folgendes: Bring den Adapter in den Debug-Modus (Tab: Instanzen, Expertenmodus, Log-Stufe von Info auf Debug stellen) und poste dann mal das komplette Debug-Log (gefiltert auf den Adapter) hier. Vielleicht steht da ja was hilfreiches drin.

                  viele Grüße
                  grizzelbee

                  1 Antwort Letzte Antwort
                  0
                  • R RolfG

                    @Gargano
                    Hier die Einstellungen, im Resol-Adapter habe ich nichts eingestellt, bekommt immer gleiche IP vom Router
                    37497d2e-4c2a-4226-9bee-da5ab88ea1d9-grafik.png

                    GarganoG Offline
                    GarganoG Offline
                    Gargano
                    schrieb am zuletzt editiert von Gargano
                    #250

                    @RolfG Kommst Du mit dem Browser auf den Resol Adapter ?

                    6e76b9bc-517a-4cf7-ab97-1cf91d20e39f-grafik.png

                    Hast Du evtl. noch das Servicecenter Programm von Resol offen ?

                    Hast Du beim Vitosolic den VBUS aktiviert ? Der ist standardmässig inaktiv. Sollte unter Menü Experte zu finden sein
                    78bdd844-a649-4d19-944b-8729927544c7-grafik.png

                    'Haustechnik Dialog '
                    Der VBus musste bei der Vitosolic 200 SD4 aktiviert werden. Normalerweise sollte das der Auslieferungszustand sein. Bei mir leider nicht.

                    Mein Problem war dann noch, dass ich das Menü "Experte", in dem unter "Ausgänge" der Punkte Vbus steht nicht zu finden war.
                    Lösung: Bediencode 0200 eingeben.

                    Haustechnik Dialog

                    Das keine Objekte angelgt werden wird wohl daran liegen, daß diese erst beim erfolgreichen Lesen des LAN Adapters angelegt werden

                    e93b80b2-4d4a-44a1-81b9-43fa961176ea-grafik.png

                    R 1 Antwort Letzte Antwort
                    0
                    • GarganoG Gargano

                      @RolfG Kommst Du mit dem Browser auf den Resol Adapter ?

                      6e76b9bc-517a-4cf7-ab97-1cf91d20e39f-grafik.png

                      Hast Du evtl. noch das Servicecenter Programm von Resol offen ?

                      Hast Du beim Vitosolic den VBUS aktiviert ? Der ist standardmässig inaktiv. Sollte unter Menü Experte zu finden sein
                      78bdd844-a649-4d19-944b-8729927544c7-grafik.png

                      'Haustechnik Dialog '
                      Der VBus musste bei der Vitosolic 200 SD4 aktiviert werden. Normalerweise sollte das der Auslieferungszustand sein. Bei mir leider nicht.

                      Mein Problem war dann noch, dass ich das Menü "Experte", in dem unter "Ausgänge" der Punkte Vbus steht nicht zu finden war.
                      Lösung: Bediencode 0200 eingeben.

                      Haustechnik Dialog

                      Das keine Objekte angelgt werden wird wohl daran liegen, daß diese erst beim erfolgreichen Lesen des LAN Adapters angelegt werden

                      e93b80b2-4d4a-44a1-81b9-43fa961176ea-grafik.png

                      R Offline
                      R Offline
                      RolfG
                      schrieb am zuletzt editiert von
                      #251

                      Fehler gefunden. Danke zusammen!

                      @Grizzelbee
                      Debug-Modus konnte ich leider nicht aktivieren, es gibt dort keinen solchen Tab.
                      e79b44f8-2f5d-44d2-b507-ff130df3409a-grafik.png

                      @Gargano
                      Vielen Dank für den Tipp mit der VBus-Aktivierung. Das war die Ursache.

                      Jetzt sehe ich die Objekte auch und kann steuern 🙂
                      fe5ff53b-fa98-4192-a73a-0882b804f994-grafik.png

                      1 Antwort Letzte Antwort
                      0
                      • B Offline
                        B Offline
                        BlackHawk3000
                        schrieb am zuletzt editiert von
                        #252

                        Eine Frage an die Resol Profis hier.

                        Habe eine DeltaSol BX Steuerung.
                        Ich möchte über die Nacht Speicher 2 abkühlen lassen.
                        Dazu muss er Relai 2 öffnen und die Pumpe aktivieren.

                        Kann ich über den Adapter und das KM2 Modul, Relai und Pumpe über Blockly aktivieren?

                        Denn leider nutzt die integrierte Speicherkühlung immer erst Speicher 1 zum abkühlen, was mein WarmWasserspeicher ist.

                        GrizzelbeeG GarganoG 3 Antworten Letzte Antwort
                        0
                        • B BlackHawk3000

                          Eine Frage an die Resol Profis hier.

                          Habe eine DeltaSol BX Steuerung.
                          Ich möchte über die Nacht Speicher 2 abkühlen lassen.
                          Dazu muss er Relai 2 öffnen und die Pumpe aktivieren.

                          Kann ich über den Adapter und das KM2 Modul, Relai und Pumpe über Blockly aktivieren?

                          Denn leider nutzt die integrierte Speicherkühlung immer erst Speicher 1 zum abkühlen, was mein WarmWasserspeicher ist.

                          GrizzelbeeG Offline
                          GrizzelbeeG Offline
                          Grizzelbee
                          Developer
                          schrieb am zuletzt editiert von
                          #253

                          Hi @BlackHawk3000,

                          Leider kann der Adapter aktuell die VBus Devices nur auslesen aber nicht steuern - tut mir leid.
                          Ob oder wann das gehen wird kann ich leider aktuell nicht sagen - die Dokumentation der Lib auf der wir aufsetzen gibt da nicht so richtig viel her. Ich bin da auf Support angewiesen.

                          viele Grüße
                          grizzelbee

                          GarganoG 1 Antwort Letzte Antwort
                          1
                          • B BlackHawk3000

                            Eine Frage an die Resol Profis hier.

                            Habe eine DeltaSol BX Steuerung.
                            Ich möchte über die Nacht Speicher 2 abkühlen lassen.
                            Dazu muss er Relai 2 öffnen und die Pumpe aktivieren.

                            Kann ich über den Adapter und das KM2 Modul, Relai und Pumpe über Blockly aktivieren?

                            Denn leider nutzt die integrierte Speicherkühlung immer erst Speicher 1 zum abkühlen, was mein WarmWasserspeicher ist.

                            GarganoG Offline
                            GarganoG Offline
                            Gargano
                            schrieb am zuletzt editiert von
                            #254

                            @BlackHawk3000 Ich weiß nicht welche Pumpe Du hast, wenn die nur 230V braucht , kannst Du mit einem Umschaltrelais die Pumpe ansteuern. D.h. das Relais ohne Strom = Pumpe ist mit der Steuerung verbunden, Relais hat Strom = Pumpe ist direkt mit 230V verbunden.
                            Meine braucht noch zusätzlich ein PWM Signal.

                            1 Antwort Letzte Antwort
                            0
                            • GrizzelbeeG Grizzelbee

                              Hi @BlackHawk3000,

                              Leider kann der Adapter aktuell die VBus Devices nur auslesen aber nicht steuern - tut mir leid.
                              Ob oder wann das gehen wird kann ich leider aktuell nicht sagen - die Dokumentation der Lib auf der wir aufsetzen gibt da nicht so richtig viel her. Ich bin da auf Support angewiesen.

                              viele Grüße
                              grizzelbee

                              GarganoG Offline
                              GarganoG Offline
                              Gargano
                              schrieb am zuletzt editiert von
                              #255

                              @Grizzelbee 'die Dokumentation der Lib auf der wir aufsetzen gibt da nicht so richtig viel her. Ich bin da auf Support angewiesen'

                              Woran liegts ? Kein Support, keine Beispiele ?
                              Ich habe nur unter Tutorials ein mageres Beispiel für 'Save the configuration' gesehen. In der Documentation steht wenig bis gar nichts drin.

                              GrizzelbeeG 1 Antwort Letzte Antwort
                              0
                              • GarganoG Gargano

                                @Grizzelbee 'die Dokumentation der Lib auf der wir aufsetzen gibt da nicht so richtig viel her. Ich bin da auf Support angewiesen'

                                Woran liegts ? Kein Support, keine Beispiele ?
                                Ich habe nur unter Tutorials ein mageres Beispiel für 'Save the configuration' gesehen. In der Documentation steht wenig bis gar nichts drin.

                                GrizzelbeeG Offline
                                GrizzelbeeG Offline
                                Grizzelbee
                                Developer
                                schrieb am zuletzt editiert von
                                #256

                                @Gargano sagte in Test Adapter MyVBus v0.0.x GitHub:

                                Woran liegts ? Kein Support, keine Beispiele ?

                                Im Grunde: Beides. 😉
                                Wie du selber gesehen hast, ist die Doku mager bis gar nicht vorhanden.
                                Ich habe den Autor deshalb persönlich angeschrieben aber keine Beispiele erhalten. Die Aussage war zwar, das das prinzipiell möglich sei, aber allem Anschein nach nicht in der Generalität, wie es für den Adapter notwendig wäre.
                                Aktuell ist das also eine Sackgasse.

                                viele Grüße
                                grizzelbee

                                GarganoG 1 Antwort Letzte Antwort
                                0
                                • GrizzelbeeG Grizzelbee

                                  @Gargano sagte in Test Adapter MyVBus v0.0.x GitHub:

                                  Woran liegts ? Kein Support, keine Beispiele ?

                                  Im Grunde: Beides. 😉
                                  Wie du selber gesehen hast, ist die Doku mager bis gar nicht vorhanden.
                                  Ich habe den Autor deshalb persönlich angeschrieben aber keine Beispiele erhalten. Die Aussage war zwar, das das prinzipiell möglich sei, aber allem Anschein nach nicht in der Generalität, wie es für den Adapter notwendig wäre.
                                  Aktuell ist das also eine Sackgasse.

                                  viele Grüße
                                  grizzelbee

                                  GarganoG Offline
                                  GarganoG Offline
                                  Gargano
                                  schrieb am zuletzt editiert von Gargano
                                  #257

                                  @Grizzelbee mmh, ich kann ja mal reinschauen, evtl. finde ich was raus, wie man ein Kommando an den LAN -Adadpter abschickt.
                                  Laut dem 'Save the configuration' Beispiel soll das ja möglich sein.

                                  Oder habt Ihr schon ein 'standalone' Beispiel in JS ?

                                  GrizzelbeeG 1 Antwort Letzte Antwort
                                  0
                                  • GarganoG Gargano

                                    @Grizzelbee mmh, ich kann ja mal reinschauen, evtl. finde ich was raus, wie man ein Kommando an den LAN -Adadpter abschickt.
                                    Laut dem 'Save the configuration' Beispiel soll das ja möglich sein.

                                    Oder habt Ihr schon ein 'standalone' Beispiel in JS ?

                                    GrizzelbeeG Offline
                                    GrizzelbeeG Offline
                                    Grizzelbee
                                    Developer
                                    schrieb am zuletzt editiert von
                                    #258

                                    @Gargano
                                    Wäre cool wenn du ein bisschen forschen könntest und magst. Ich habe aktuell mit meinen anderen beiden Projekten/Adaptern (MieleCloudService und dysonAirPurifier) mehr als genug um die Ohren. da komme ich leider gerade nicht dazu.
                                    Aktuell habe ich noch gar nichts in der Richtung.

                                    GarganoG 3 Antworten Letzte Antwort
                                    0
                                    • GrizzelbeeG Grizzelbee

                                      @Gargano
                                      Wäre cool wenn du ein bisschen forschen könntest und magst. Ich habe aktuell mit meinen anderen beiden Projekten/Adaptern (MieleCloudService und dysonAirPurifier) mehr als genug um die Ohren. da komme ich leider gerade nicht dazu.
                                      Aktuell habe ich noch gar nichts in der Richtung.

                                      GarganoG Offline
                                      GarganoG Offline
                                      Gargano
                                      schrieb am zuletzt editiert von
                                      #259

                                      @Grizzelbee Ich hab mal angefangen mich durchzuwühlen.
                                      Ich hab jetzt ein gestrippten JS Code aus dem index.js im Directory examples/customizer.

                                      Allerdings ist mein Resol CS2 nicht in der Liste der Geräte drin. Da muß ich noch schauen wie ich den rein bekomme.
                                      Das sind ziemlich viele JSON Tabellen. Ich hab was gelesen von einem Configuration Importer.

                                      Ich meld mich wieder, wenn ich weiter bin

                                      1 Antwort Letzte Antwort
                                      1
                                      • GrizzelbeeG Grizzelbee

                                        @Gargano
                                        Wäre cool wenn du ein bisschen forschen könntest und magst. Ich habe aktuell mit meinen anderen beiden Projekten/Adaptern (MieleCloudService und dysonAirPurifier) mehr als genug um die Ohren. da komme ich leider gerade nicht dazu.
                                        Aktuell habe ich noch gar nichts in der Richtung.

                                        GarganoG Offline
                                        GarganoG Offline
                                        Gargano
                                        schrieb am zuletzt editiert von Gargano
                                        #260

                                        @Grizzelbee So, ich hab die erste JS Version die Daten in den RESOL Controller schreibt.

                                        Ich brauch aber noch ein paar Angaben von Dir :
                                        Wo werden denn die IP und das VBus Passwort gespeichert ?
                                        Ich wollte die auslesen und in die Konfigurations-Struc eintragen. Ansonsten muß jeder dies in das Script eintragen.

                                        Zur Implementation in myVBus dachte ich mir folgendes :
                                        Einmal ein JSON -DP . Da kann man mehrere Konfigurationswerte eintragen.
                                        Z.B.

                                        [{"valueId": "ORueckkuehlung", "value": 1},{"valueId":"OHolyCool","value": 0}]
                                        

                                        Die Namen und Typ der Parameter stehen in dem data.js file der jeweiligen Resol-Geräte im Verzeichnis
                                        ../src/configuration-optimizers.

                                        Dann ein Editor , in dem man einzelne Parameternamen auswählen oder eintragen kann. Dazu wird ein DP angelegt der den Wert beinhaltet. Ändert man den Wert wird dieser zum Resol übertragen.

                                        Was meinst Du ?

                                        Vorerst kann man mit dem Script auskommen, glaube ich.

                                        GrizzelbeeG 1 Antwort Letzte Antwort
                                        0
                                        • GrizzelbeeG Grizzelbee

                                          @Gargano
                                          Wäre cool wenn du ein bisschen forschen könntest und magst. Ich habe aktuell mit meinen anderen beiden Projekten/Adaptern (MieleCloudService und dysonAirPurifier) mehr als genug um die Ohren. da komme ich leider gerade nicht dazu.
                                          Aktuell habe ich noch gar nichts in der Richtung.

                                          GarganoG Offline
                                          GarganoG Offline
                                          Gargano
                                          schrieb am zuletzt editiert von Gargano
                                          #261

                                          @grizzelbee Hier jetzt das Script zum Schreiben af Resol
                                          Unter host noch die IP vom Resol Adapter und das Passwort eintragen

                                          /*! resol-vbus | Copyright (c) 2013-2018, Daniel Wippermann | MIT license */
                                          /* Erweitert von Gargano 12.1.2021
                                              Es werden 2 DP unter '0_userdata.0.' angelegt 
                                              
                                              Resol.JSON : enthält den JSON für die Parameter
                                              Z.B. [{"valueId": "ORueckkuehlung", "value": 0},{"valueId":"OHolyCool","value": 0}]
                                              Die Parameter sind im File ..-data.js im Directory GIT\resol-vbus\src\configuration-optimizers
                                              
                                              Resol.Send : wenn true, wird der JSON an Resol gesendet, danach automatisch wieder auf false gesetzt
                                              Während des Sendens wird myvbus Adapter deaktiviert.
                                          */
                                          
                                          'use strict';
                                          
                                          
                                          const minimist = require('minimist');
                                          const vbus = require('resol-vbus');
                                          
                                          const config = {
                                          
                                              /**
                                               * The name of the `Connection` subclass to use for connecting to the VBus.
                                               * @type {String}
                                               */
                                              connectionClassName: 'TcpConnection',
                                          
                                              connectionOptions: {
                                                  /**
                                                   * The host name / IP address of the VBus/LAN or Datalogger device.
                                                   * @type {String}
                                                   */
                                                  host: '192.168.xxx.yyy',
                                          
                                                  /**
                                                   * The password for the VBus/LAN or Datalogger device.
                                                   * @type {String}
                                                   */
                                                  password: 'vbus',
                                              },
                                          
                                          };
                                          
                                          
                                          const i18n = new vbus.I18N('en');
                                          
                                          
                                          let reportProgress = (message) => {
                                              let line;
                                              if (typeof message === 'string') {
                                                  line = message;
                                              } else if (message.message === 'OPTIMIZING_VALUES') {
                                                  line = i18n.sprintf('Optimizing set of values for round %d', message.round);
                                              } else if (message.message === 'GETTING_VALUE') {
                                                  line = i18n.sprintf('Getting value %d/%d, try %d: %s', message.valueNr, message.valueCount, message.tries, message.valueId);
                                              } else if (message.message === 'SETTING_VALUE') {
                                                  line = i18n.sprintf('Setting value %d/%d, try %d: %s', message.valueNr, message.valueCount, message.tries, message.valueId);
                                              } else if (message.message === 'CONNECTION_STATE') {
                                                  line = i18n.sprintf('Connection state changed to %s', message.connectionState);
                                              } else if (message.message === 'WAITING_FOR_FREE_BUS') {
                                                  line = i18n.sprintf('Waiting for free bus');
                                              } else if (message.message === 'RELEASING_BUS') {
                                                  line = i18n.sprintf('Releasing bus');
                                              } else {
                                                  line = i18n.sprintf('%s: %s', message.message, JSON.stringify(message));
                                              }
                                          
                                              if (typeof message.round === 'number') {
                                                  line = i18n.sprintf('[%d] %s', message.round, line);
                                              }
                                          
                                              console.log(line);
                                          };
                                          
                                          
                                          
                                          const createConnection = function() {
                                          
                                              const Connection = vbus [config.connectionClassName];
                                              const conn = new Connection(config.connectionOptions);
                                          
                                              conn.on('connectionState', (state) => {
                                                  reportProgress({
                                                      message: 'CONNECTION_STATE',
                                                      connectionState: state,
                                                  });
                                          		if (state == 'DISCONNECTED') {
                                          			// restart myVBUS
                                          			instanceSetRun(true);
                                                      setState(idResolSend,false);
                                          		}
                                              });
                                          
                                              return conn;
                                          };
                                          
                                          
                                          const runSingleShot = async (saveJSON) => {
                                              const context = {};
                                          
                                              try {
                                           
                                                  const conn = await createConnection();
                                                  context.connection = conn;
                                                  let saveConfig = saveJSON;
                                                  context.saveConfig = saveConfig;
                                          
                                                  reportProgress('Connecting...');
                                                  await context.connection.connect();
                                                  reportProgress('Waiting for free bus...');
                                                  const datagram = await context.connection.waitForFreeBus();
                                                  context.masterAddress = datagram.sourceAddress;
                                                  reportProgress('Found master with address 0x' + context.masterAddress.toString(16));
                                                  context.deviceAddress = context.masterAddress;
                                          	
                                                  const optimizer = await vbus.ConfigurationOptimizerFactory.createOptimizerByDeviceAddress(context.deviceAddress);
                                                  context.optimizer = optimizer;
                                                  if (!optimizer) {
                                                      reportProgress(i18n.sprintf('WARNING: Unable to create optimizer for master with address 0x%04X', context.masterAddress));
                                                  }
                                                  context.customizer = new vbus.ConnectionCustomizer({
                                                      deviceAddress: context.deviceAddress,
                                                      connection: context.connection,
                                                      optimizer: context.optimizer,
                                                  });
                                          
                                                  let savedConfig;
                                                  if (context.saveConfig !== undefined) {
                                                      const saveConfig = context.saveConfig;
                                                      const oldConfig = context.oldConfig;
                                          			
                                                      const options = {
                                                          optimize: false,
                                                          reportProgress,
                                                      };
                                                      savedConfig = await context.customizer.saveConfiguration(saveConfig, oldConfig, options);
                                                  } else {
                                          			console.log('Optimizer savedConfig = loadedConfig ',loadedConfig);
                                                  }
                                          		console.log('Save ',saveConfig);
                                                  let jsonConfig = savedConfig.reduce((memo, value) => {
                                                      if (!value.ignored) {
                                                          memo [value.valueId] = value.value;
                                                      }
                                                      return memo;
                                                  }, {});
                                          
                                                  jsonConfig = JSON.stringify(jsonConfig);
                                          
                                              } finally {
                                                  reportProgress('Disconnecting...');
                                          
                                                  if (context.connection != null) {
                                                      context.connection.disconnect();
                                                  }
                                              }
                                          };
                                          
                                          // dp generieren
                                          const prefix = '0_userdata.0.'; 
                                          const idResolJSON = prefix+"Resol.JSON";
                                          const idResolSend = prefix+"Resol.Send";
                                          
                                          const creatStateList = [
                                              {name :idResolJSON, type:"string", role : "value"},
                                              {name :idResolSend, type:"boolean", role : "value"}
                                          ]
                                          
                                          async function createState (item){
                                              await createStateAsync(item.name, { 
                                                      type: item.type,
                                                      min: 0,
                                                      def: 0,
                                                      role: item.role
                                                  });
                                          }
                                          
                                          async function makeStatList() {
                                              creatStateList.forEach (function(item) {
                                                  createState(item);
                                              });
                                          }
                                          
                                          makeStatList();
                                          
                                          
                                          
                                          const idAdapter = 'system.adapter.myvbus.0';
                                          
                                          function instanceSetRun (myState) {
                                          	var obj = getObject(idAdapter);
                                          	obj.common.enabled=myState;
                                              setObject(idAdapter, obj);
                                          }
                                          
                                          
                                          async function runShot (saveJSON) {
                                              return await runSingleShot(saveJSON);    
                                          }
                                          
                                          async function doSend () {  
                                              let myJSON = JSON.parse((await getStateAsync(idResolJSON)).val);
                                              // stop myVBUS
                                              // Start send configuration
                                              instanceSetRun(false);
                                              setTimeout (function() {
                                                  runShot(myJSON)}
                                              ,5000);
                                          }
                                          
                                          
                                          on({id: idResolSend , change: 'ne', val: true}, function (obj) {
                                              doSend();
                                          });
                                          
                                          
                                          
                                          
                                          
                                          
                                          
                                          
                                          
                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          401

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe