Skip to content
  • Home
  • 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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Einsteigerfragen
  4. Einbindung von Geräten
  5. [gelöst]Hycube PV Anlage

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.8k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.1k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

[gelöst]Hycube PV Anlage

Geplant Angeheftet Gesperrt Verschoben Einbindung von Geräten
8 Beiträge 2 Kommentatoren 953 Aufrufe 1 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.
  • Heiko GlohrH Offline
    Heiko GlohrH Offline
    Heiko Glohr
    schrieb am zuletzt editiert von Heiko Glohr
    #1

    Hallo,

    ich habe eine PV Anlage von Hycube. Da gibt es eine API Beschreibung für den Zugriff.
    Leider fehlt mir da irgendwie das Wissen wie das in iobroker angelegt wird.
    Ich bin grad dran mich mit JavaScript auseinanderzusetzen aber irgendwie krieg ich die Kurve nicht.
    Ich lade mal die API Beschreibung hochAPI_Manual.pdf

    Mir ist nicht klar wie ich wo was anlegen muss.
    Habe versucht das Zeile für Zeile abzutippen aber es kommen dann relativ schnell Fehler.

    Gibts jemand der mich da unterstützen würde?

    Gruß Heiko

    paul53P 1 Antwort Letzte Antwort
    0
    • Heiko GlohrH Heiko Glohr

      Hallo,

      ich habe eine PV Anlage von Hycube. Da gibt es eine API Beschreibung für den Zugriff.
      Leider fehlt mir da irgendwie das Wissen wie das in iobroker angelegt wird.
      Ich bin grad dran mich mit JavaScript auseinanderzusetzen aber irgendwie krieg ich die Kurve nicht.
      Ich lade mal die API Beschreibung hochAPI_Manual.pdf

      Mir ist nicht klar wie ich wo was anlegen muss.
      Habe versucht das Zeile für Zeile abzutippen aber es kommen dann relativ schnell Fehler.

      Gibts jemand der mich da unterstützen würde?

      Gruß Heiko

      paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von paul53
      #2

      @heiko-glohr sagte: Habe versucht das Zeile für Zeile abzutippen aber es kommen dann relativ schnell Fehler.

      Du hast das Skript für ioBroker abgetippt? Dann poste es bitte in Code tags mit der richtigen IP-Adresse des Hycube.

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

      Heiko GlohrH 1 Antwort Letzte Antwort
      0
      • paul53P paul53

        @heiko-glohr sagte: Habe versucht das Zeile für Zeile abzutippen aber es kommen dann relativ schnell Fehler.

        Du hast das Skript für ioBroker abgetippt? Dann poste es bitte in Code tags mit der richtigen IP-Adresse des Hycube.

        Heiko GlohrH Offline
        Heiko GlohrH Offline
        Heiko Glohr
        schrieb am zuletzt editiert von
        #3

        @paul53
        Wieder gelöscht 😬

        Ich kann das aber die Woche nochmal machen

        paul53P 1 Antwort Letzte Antwort
        0
        • Heiko GlohrH Heiko Glohr

          @paul53
          Wieder gelöscht 😬

          Ich kann das aber die Woche nochmal machen

          paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von paul53
          #4

          @heiko-glohr sagte: Wieder gelöscht

          Du kannst es mal hiermit versuchen:

          // Konstanten anpassen!
          const ip = 'http://10.1.1.51/';
          const path = '0_userdata.0.Hycube.Power.';
          const user = "hycube";
          const password = "hycube";
          
          function MyJavascript() {
              var options = {
                  url: ip + 'auth/',
                  headers: {
                      "Authorization": Buffer.from("Basic " + user + ":" + password).toString('base64')
                  },
                  body: '<?xml version="1.0" encoding="UTF-8"? > [...]'
              };
              request.post(options, function (error , response , body ) {
                  if ( error ) {
                      console .log ("Ein Auth-Fehler ist aufgetreten ")
                  } else {
                      options = {
                          url: ip + 'get_values/',
                          headers: {
                              "Authorization": body
                          },
                          body: '<?xml version="1.0" encoding="UTF-8"? > [...]'
                      };
                      request.post(options, function(error, response, body) {
                          if (error) {
                              console .log ("Ein Daten-Fehler ist aufgetreten ")
                          } else {
                              var result = JSON.parse(body);
                              setState (path + 'Batterie', result.Battery_P, true);
                              setState (path + 'Grid', result.Grid_P, true);
                              setState (path + 'Hausverbrauch', result.Home_P, true);
                              setState (path + 'Solar', result.solar1_P, true);
                          }
                      });
                  }
              });
          }
          
          schedule('*/5 * * * * *', MyJavascript);
          

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          Heiko GlohrH 2 Antworten Letzte Antwort
          0
          • paul53P paul53

            @heiko-glohr sagte: Wieder gelöscht

            Du kannst es mal hiermit versuchen:

            // Konstanten anpassen!
            const ip = 'http://10.1.1.51/';
            const path = '0_userdata.0.Hycube.Power.';
            const user = "hycube";
            const password = "hycube";
            
            function MyJavascript() {
                var options = {
                    url: ip + 'auth/',
                    headers: {
                        "Authorization": Buffer.from("Basic " + user + ":" + password).toString('base64')
                    },
                    body: '<?xml version="1.0" encoding="UTF-8"? > [...]'
                };
                request.post(options, function (error , response , body ) {
                    if ( error ) {
                        console .log ("Ein Auth-Fehler ist aufgetreten ")
                    } else {
                        options = {
                            url: ip + 'get_values/',
                            headers: {
                                "Authorization": body
                            },
                            body: '<?xml version="1.0" encoding="UTF-8"? > [...]'
                        };
                        request.post(options, function(error, response, body) {
                            if (error) {
                                console .log ("Ein Daten-Fehler ist aufgetreten ")
                            } else {
                                var result = JSON.parse(body);
                                setState (path + 'Batterie', result.Battery_P, true);
                                setState (path + 'Grid', result.Grid_P, true);
                                setState (path + 'Hausverbrauch', result.Home_P, true);
                                setState (path + 'Solar', result.solar1_P, true);
                            }
                        });
                    }
                });
            }
            
            schedule('*/5 * * * * *', MyJavascript);
            
            Heiko GlohrH Offline
            Heiko GlohrH Offline
            Heiko Glohr
            schrieb am zuletzt editiert von
            #5

            @paul53

            Vielen Dank!
            Soweit ich sehe, läuft das Script und ich bekomme Daten in die angelegten Datenpunkte.
            Jetzt muss ich mal selber veruschen weitere Daten auszulesen.

            Da steckt ja denke ich noch einiges mehr drin und dann mal sehen wie ich das visualisiere.
            In nächster Zeit werde ich mich mal selbst mehr mit JavaScript befassen.
            Vielleicht verstehe ich dann die Zusammenhänge besser :-)

            1 Antwort Letzte Antwort
            0
            • paul53P paul53

              @heiko-glohr sagte: Wieder gelöscht

              Du kannst es mal hiermit versuchen:

              // Konstanten anpassen!
              const ip = 'http://10.1.1.51/';
              const path = '0_userdata.0.Hycube.Power.';
              const user = "hycube";
              const password = "hycube";
              
              function MyJavascript() {
                  var options = {
                      url: ip + 'auth/',
                      headers: {
                          "Authorization": Buffer.from("Basic " + user + ":" + password).toString('base64')
                      },
                      body: '<?xml version="1.0" encoding="UTF-8"? > [...]'
                  };
                  request.post(options, function (error , response , body ) {
                      if ( error ) {
                          console .log ("Ein Auth-Fehler ist aufgetreten ")
                      } else {
                          options = {
                              url: ip + 'get_values/',
                              headers: {
                                  "Authorization": body
                              },
                              body: '<?xml version="1.0" encoding="UTF-8"? > [...]'
                          };
                          request.post(options, function(error, response, body) {
                              if (error) {
                                  console .log ("Ein Daten-Fehler ist aufgetreten ")
                              } else {
                                  var result = JSON.parse(body);
                                  setState (path + 'Batterie', result.Battery_P, true);
                                  setState (path + 'Grid', result.Grid_P, true);
                                  setState (path + 'Hausverbrauch', result.Home_P, true);
                                  setState (path + 'Solar', result.solar1_P, true);
                              }
                          });
                      }
                  });
              }
              
              schedule('*/5 * * * * *', MyJavascript);
              
              Heiko GlohrH Offline
              Heiko GlohrH Offline
              Heiko Glohr
              schrieb am zuletzt editiert von
              #6

              @paul53
              Was ich noch nicht genz verstehe ist:

              setState (path + 'Solar', result.solar1_P, true); liefert im Datenobject als Wert {"ack":true}

              mache ich in der nächsten Zeile win neues setState auf Solar2
              also:

              setState (path + 'Solar2', result.solar2_P, true); Dann kommt dort als Wert eine Zahl ( Erzeugung PV Leitung)

              Das ist aber dann nur das was die West Seite liefert.
              Solar1 müsste Ost sein.

              Das macht mich noch etwas stutzig.
              Wenn ich an der Anlage direkt nachschaue dann steht bei Solar1 und Solar2 eine derzeitige Erzeugung drin.

              Ansonsten müsste ich mal den Hersteller kontaktieren

              paul53P 1 Antwort Letzte Antwort
              0
              • Heiko GlohrH Heiko Glohr

                @paul53
                Was ich noch nicht genz verstehe ist:

                setState (path + 'Solar', result.solar1_P, true); liefert im Datenobject als Wert {"ack":true}

                mache ich in der nächsten Zeile win neues setState auf Solar2
                also:

                setState (path + 'Solar2', result.solar2_P, true); Dann kommt dort als Wert eine Zahl ( Erzeugung PV Leitung)

                Das ist aber dann nur das was die West Seite liefert.
                Solar1 müsste Ost sein.

                Das macht mich noch etwas stutzig.
                Wenn ich an der Anlage direkt nachschaue dann steht bei Solar1 und Solar2 eine derzeitige Erzeugung drin.

                Ansonsten müsste ich mal den Hersteller kontaktieren

                paul53P Offline
                paul53P Offline
                paul53
                schrieb am zuletzt editiert von paul53
                #7

                @heiko-glohr sagte: result.solar1_P

                Mal versucht mit?

                result.Solar1_P
                

                Hycube.JPG

                Falls es nicht funktioniert, logge mal body (ist ein JSON).

                Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                Heiko GlohrH 1 Antwort Letzte Antwort
                0
                • paul53P paul53

                  @heiko-glohr sagte: result.solar1_P

                  Mal versucht mit?

                  result.Solar1_P
                  

                  Hycube.JPG

                  Falls es nicht funktioniert, logge mal body (ist ein JSON).

                  Heiko GlohrH Offline
                  Heiko GlohrH Offline
                  Heiko Glohr
                  schrieb am zuletzt editiert von
                  #8

                  @paul53

                  funktioniert.
                  Er hat als state nur solar_P angelegt
                  Jetzt kommen beide Werte.

                  Thanks!

                  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

                  672

                  Online

                  32.6k

                  Benutzer

                  82.3k

                  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
                  • Home
                  • Aktuell
                  • Tags
                  • Ungelesen 0
                  • Kategorien
                  • Unreplied
                  • Beliebt
                  • GitHub
                  • Docu
                  • Hilfe