Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. hussi

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    H
    • Profile
    • Following 0
    • Followers 1
    • Topics 5
    • Posts 66
    • Best 1
    • Groups 1

    hussi

    @hussi

    Starter

    1
    Reputation
    33
    Profile views
    66
    Posts
    1
    Followers
    0
    Following
    Joined Last Online

    hussi Follow
    Starter

    Best posts made by hussi

    • RE: [GELÖST] Licht an bei Dämmerung nur wenn HM Variable gesetzt

      @Dutchman Das stimmt. Man wird ja nur schlauer. Habe gestern nun schon die ersten 4 Programme die meine Lichter betreffen auf den iobroker umgezogen.

      Habe hier auch schon im Forum die Lösung für genau die Schaltungen gefunden die ich noch machen muss.

      Klasse das es hier so viel Wissen gibt! 🙂

      posted in Blockly
      H
      hussi

    Latest posts made by hussi

    • RE: Huawei Sun2000 & ioBroker via JS script funktioniert

      @jokerjo1000 Ich habe auch von Null angefangen. Evtl. kann ich dir Helfen.

      Der erste Schritt ist, dass du unter Instanzen in den Einstellungen von Javascript das NPM Modul "modbus-serial" hinzufügst. Dazu vorher:

      https://www.npmjs.com/package/modbus-serial

      Anschließend gehst du zu den Scripten und legst dir ein neues Javascript mit dem Inhalt von Chris´ github:

      https://github.com/ChrisBCH/SunLuna2000_iobroker

      Dann müssen in dem Script die Daten deiner PV Anlage eingegeben werden. IP, etc.

      Nun solltest du die Daten in den Objekten unter javascript > 0 > Solarpower sehen.

      posted in ioBroker Allgemein
      H
      hussi
    • RE: Huawei Sun2000 & ioBroker via JS script funktioniert

      Wenn ich die aktuelle Leistung der PV in den Objekten sehen möchte, kann es dann sein, dass man dazu javascript.0.Solarpower.Huawei.Inverter.1.InputPower auslesen sollte?

      Wenn der Akku nicht voll ist, zeigt mir Solarpower.Huawei.Inverter.1.ActivePower nicht den korrekten Wert an. Sobald der Akku voll ist stimmt der Wert.

      Oder man rechnet Solarpower.Huawei.Inverter.1.ActivePower und javascript.0.Solarpower.Huawei.Inverter.1.Batterystack.1.ChargeAndDischargePower zusammen?

      posted in ioBroker Allgemein
      H
      hussi
    • RE: Huawei Sun2000 & ioBroker via JS script funktioniert

      @chris_b @R4

      Ich bin natürlich zu doof. Dadurch, dass ich das Skript "verschlimmbessern" wollte, habe ich den Teil "Housekeeping" rausgenommen. Somit erklärt sich auch, warum die Werte nie zurückgesetzt worden sind.

      Mein Fehler. Tut mir Leid und danke für die Hilfe!

      Ich kann nun alle Daten wie gewollt über Telegram abfragen, und habe somit eine App weniger auf dem Handy.

      posted in ioBroker Allgemein
      H
      hussi
    • RE: Stromzähler per Sonoff ESP8266 auslesen

      @chaot Ich ruf dann morgen mal den Versorger an. In der Anleitung steht ja, dass es möglich sein soll. Hier sind ja auch viele Screenshots wo die Daten in Tasmota angezeigt werden. Muss dann wohl ein anderer Zähler sein.

      Ich kenne sourceanalytix noch nicht. Der Hintergrund warum ich das haben möchte: Ich möchte hin und wieder eine Abfrage machen, in der mir dann zu dem Zeitpunkt die Daten ausgegeben werden.

      Sprich, es hilft nicht, wenn die Daten um 23:59 geschrieben werden und ich sie mir am nächsten Tag anschauen kann, ich hätte sie gern zu dem Zeitpunkt genau.

      posted in Praktische Anwendungen (Showcase)
      H
      hussi
    • RE: Stromzähler per Sonoff ESP8266 auslesen

      @euro Ich habe mit dem Pin die Info auf on gestellt und anschließend die Pin Eingabe auf off.

      Mit dein Pfeiltasten kann ich durch das Menu gehen, und dann kann ich die Tagesdaten für Einspeisung und Zukauf ablesen.

      Wenn ich die Ausgabe vom Befehlt sensor53 d1 dort dekodiere, dann erhalte ich diese Ausgabe:

      M 1
      +1,3,s,0,9600,
      1,7707010000020000@1,Unbekannter Datentyp,Unbekannte Einheit,unbekanntes_mqtt_topic_1,0
      1,7707010000020001@1,Unbekannter Datentyp,Unbekannte Einheit,unbekanntes_mqtt_topic_5,0
      1,77070100010800FF@1,Zählerstand Total,Wh,zählerstand_total,1
      1,77070100020800FF@1,Wirkenergie Total,Wh,wirkenergie_total,1
      1,770701000E0700FF@1,Netz Frequenz,Hz,netz_frequenz,1
      1,77070100100700FF@1,aktuelle Wirkleistung,W,aktuelle_wirkleistung,0
      1,770701001F0700FF@1,Strom L1,A,strom_l1,2
      1,77070100200700FF@1,Spannung L1,V,spannung_l1,1
      1,77070100240700FF@1,Wirkleistung L1,W,wirkleistung_l1,0
      1,77070100330700FF@1,Strom L2,A,strom_l2,2
      1,77070100340700FF@1,Spannung L2,V,spannung_l2,1
      1,77070100380700FF@1,Wirkleistung L2,W,wirkleistung_l2,0
      1,77070100470700FF@1,Strom L3,A,strom_l3,2
      1,77070100480700FF@1,Spannung L3,V,spannung_l3,1
      1,770701004C0700FF@1,Wirkleistung L3,W,wirkleistung_l3,0
      1,77070100510704FF@1,Phasenabweichung Strom/Spannung L1,°,phasenabweichung_strom-spannung_l1,0
      1,7707010051070FFF@1,Phasenabweichung Strom/Spannung L2,°,phasenabweichung_strom-spannung_l2,0
      1,7707010051071AFF@1,Phasenabweichung Strom/Spannung L3,°,phasenabweichung_strom-spannung_l3,0
      1,77070100600100FF@1,Unbekannter Datentyp,Unbekannte Einheit,unbekanntes_mqtt_topic_11,0
      1,7707010060320101@1,Unbekannter Datentyp,Unbekannte Einheit,unbekanntes_mqtt_topic_9,0
      1,77070100605A0201@1,Unbekannter Datentyp,Unbekannte Einheit,unbekanntes_mqtt_topic_3,0
      1,77070100605A0202@1,Unbekannter Datentyp,Unbekannte Einheit,unbekanntes_mqtt_topic_7,0
      
      

      Dies wäre die Anleitung meines Zählers

      https://www.rng.de/bedienungsanleitung-apator-norax3d1.pdfx

      Punkt 40 wäre da "Historischer Verbrauch - täglicher Energieverbrauch A+" mit dem Code 01 00 01 08 00 60

      posted in Praktische Anwendungen (Showcase)
      H
      hussi
    • RE: Stromzähler per Sonoff ESP8266 auslesen

      Moin

      Ich bin gerade etwas ratlos. Ich habe einen Norax 3D+ Stromzähler und mit diesem Script lese ich auch die angegebenen Daten aus:

      >D
      >B
      ->sensor53 r
      >M 1
      +1,3,s,1,9600,SML
      1,77070100010800ff@1000,Total consumption,KWh,Total_in,4
      1,77070100020800ff@1000,Total Feed,KWh,Total_out,4
      1,77070100100700ff@1,Current consumption,W,Power_curr,0
      1,77070100200700ff@1,Voltage L1,V,Volt_p1,1
      1,77070100340700ff@1,Voltage L2,V,Volt_p2,1
      1,77070100480700ff@1,Voltage L3,V,Volt_p3,1
      1,770701001f0700ff@1,Amperage L1,A,Amperage_p1,1
      1,77070100330700ff@1,Amperage L2,A,Amperage_p2,1
      1,77070100470700ff@1,Amperage L3,A,Amperage_p3,1
      1,77070100240700ff@1,Current consumption L1,W,Power_curr_p1,0
      1,77070100380700ff@1,Current consumption L2,W,Power_curr_p2,0
      1,770701004c0700ff@1,Current consumption L3,W,Power_curr_p3,0
      1,770701000e0700ff@1,Frequency,Hz,frequency,0
      #
      

      Was ich gerne auslesen möchte, sind die Tageswerte von
      Bezogene kWh
      Eingespeiste kWh
      Verbrauchte kWh

      Daran verzweifle ich gerade. Ich habe einen WIFI IR Lesekopf von Hichi mit der Tasmota Version 12.3.1

      Viele Grüße

      posted in Praktische Anwendungen (Showcase)
      H
      hussi
    • RE: Huawei Sun2000 & ioBroker via JS script funktioniert

      Wo finde ich die aktuellen Tageswert zu:

      Verbrauchte kWh
      Gekaufte kWh
      Verkaufte kWh

      Kann meinetwegen auch mit Blockly errechnet werden um sie dann in 0_userdata zu schreiben. Aber ich finde leider nichts in dem Objekten 😞

      posted in ioBroker Allgemein
      H
      hussi
    • RE: Huawei Sun2000 & ioBroker via JS script funktioniert

      @r4 steht auf 0 obwohl im von FusionSolar Dashboard "Fed to grid 1,84 kWh" stehen.

      Ok hab es mit Blockly geschafft.

      <xml xmlns="https://developers.google.com/blockly/xml">
        <variables>
          <variable id="LJQ,%@iIai_dsi(6J9Eq">Text</variable>
        </variables>
        <block type="procedures_defcustomnoreturn" id=",0HSy+dmiy{AB+zsze1i" x="188" y="38">
          <mutation statements="false"></mutation>
          <field name="NAME">pvstatus</field>
          <field name="SCRIPT"></field>
          <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
        </block>
        <block type="procedures_callcustomnoreturn" id="!y_lf7,S[0uMty;@$C^%" x="188" y="87">
          <mutation name="pvstatus"></mutation>
          <next>
            <block type="on_ext" id="A}I(v:;Yi.q-TZxLt{GJ">
              <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
              <field name="CONDITION">any</field>
              <field name="ACK_CONDITION"></field>
              <value name="OID0">
                <shadow type="field_oid" id="0D!$+7X}w,Em_*I2_6${">
                  <field name="oid">telegram.0.communicate.request</field>
                </shadow>
              </value>
              <statement name="STATEMENT">
                <block type="variables_set" id="H.85Ep.=RR;96`B$@tRQ">
                  <field name="VAR" id="LJQ,%@iIai_dsi(6J9Eq">Text</field>
                  <value name="VALUE">
                    <block type="text_getSubstring" id="e%v9@Avp[CXS/mKMsA|m" inline="false">
                      <mutation at1="true" at2="true"></mutation>
                      <field name="WHERE1">FROM_START</field>
                      <field name="WHERE2">FROM_START</field>
                      <value name="STRING">
                        <block type="on_source" id="nr]0AXRI4@ly1Po{ogts">
                          <field name="ATTR">state.val</field>
                        </block>
                      </value>
                      <value name="AT1">
                        <block type="math_number" id="mE*{B{|v/.q!Bdr_swye">
                          <field name="NUM">10</field>
                        </block>
                      </value>
                      <value name="AT2">
                        <block type="text_indexOf" id="y2M|/VI|buP~WZMst~Sx">
                          <field name="END">LAST</field>
                          <value name="VALUE">
                            <block type="on_source" id="0LUSQ6?Mi#4`Mc/%z8L:">
                              <field name="ATTR">state.val</field>
                            </block>
                          </value>
                          <value name="FIND">
                            <shadow type="text" id="mgU46.?A,1gXuVE.)%w3">
                              <field name="TEXT">abc</field>
                            </shadow>
                            <block type="text" id="3DLQE[,IA6%X:Nj~WP6.">
                              <field name="TEXT"></field>
                            </block>
                          </value>
                        </block>
                      </value>
                    </block>
                  </value>
                  <next>
                    <block type="debug" id="H_sQ8%)Qo3xvNpEo=3$c">
                      <field name="Severity">log</field>
                      <value name="TEXT">
                        <shadow type="text" id="_UNidu@Lz/~o,l8_O|d!">
                          <field name="TEXT">test</field>
                        </shadow>
                        <block type="variables_get" id="qAq39wVy-N4?LzT.vUL;">
                          <field name="VAR" id="LJQ,%@iIai_dsi(6J9Eq">Text</field>
                        </block>
                      </value>
                      <next>
                        <block type="controls_if" id="d!d5kP`uz,iM|_Lvd9O)">
                          <value name="IF0">
                            <block type="logic_compare" id="VvAY3u8G^sI3yffZ0#iK">
                              <field name="OP">EQ</field>
                              <value name="A">
                                <block type="variables_get" id="%^*B6K=IP2PrOXVD|rhk">
                                  <field name="VAR" id="LJQ,%@iIai_dsi(6J9Eq">Text</field>
                                </block>
                              </value>
                              <value name="B">
                                <block type="text" id="]?)ij.4#7u/h-#4Vs.$.">
                                  <field name="TEXT">pv</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO0">
                            <block type="procedures_callnoreturn" id="97Y9~}y3`_P?_:]Y7usI">
                              <mutation name="pv"></mutation>
                            </block>
                          </statement>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </statement>
            </block>
          </next>
        </block>
        <block type="procedures_defnoreturn" id="ytGlwGFA:7ux]aJ:h)bX" x="188" y="537">
          <field name="NAME">pv</field>
          <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
        </block>
        <block type="telegram" id="rFF^yU[tK;z8agA5HJ;t" x="187" y="613">
          <field name="INSTANCE"></field>
          <field name="LOG"></field>
          <field name="SILENT">FALSE</field>
          <field name="PARSEMODE">default</field>
          <field name="ESCAPING">FALSE</field>
          <field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field>
          <value name="MESSAGE">
            <shadow type="text" id="+NS:?N+v?F?X[sTTbNzr">
              <field name="TEXT">Der Trockner ist fertig</field>
            </shadow>
            <block type="text_join" id="w==;)w0}uK[]4^$3ECh8">
              <mutation items="19"></mutation>
              <value name="ADD0">
                <block type="text" id="#^ya6yc#7PR[!s%UC4eT">
                  <field name="TEXT">☀️ Erzeugte kW: </field>
                </block>
              </value>
              <value name="ADD1">
                <block type="get_value" id="{.Y7C$*/_-vBzHoS-!e(">
                  <field name="ATTR">val</field>
                  <field name="OID">javascript.0.Solarpower.Derived.YieldToday</field>
                </block>
              </value>
              <value name="ADD2">
                <block type="text" id="7XWp;_ifO_,6w[h)T8m#">
                  <field name="TEXT">kW</field>
                </block>
              </value>
              <value name="ADD3">
                <block type="text_newline" id="GD)kZE9,.j:fz1#,*VoY">
                  <field name="Type">\n</field>
                </block>
              </value>
              <value name="ADD4">
                <block type="text" id="C3.z38(@7;bLUH+]FEa/">
                  <field name="TEXT">🌅 Verbrauchte kW: </field>
                </block>
              </value>
              <value name="ADD5">
                <block type="get_value" id="v+E{d~%C]4MDBf8u`n:+">
                  <field name="ATTR">val</field>
                  <field name="OID">0_userdata.0.energy.electricity.kWhPrice</field>
                </block>
              </value>
              <value name="ADD6">
                <block type="text" id="u$W|[S^a/UO(Me+jYQWC">
                  <field name="TEXT">kW</field>
                </block>
              </value>
              <value name="ADD7">
                <block type="text_newline" id="mhWg3?3RN4(TScFrlc1x">
                  <field name="Type">\n</field>
                </block>
              </value>
              <value name="ADD8">
                <block type="text" id="N03?2e^)y|9W?@s[~Lx3">
                  <field name="TEXT">💸 Gekaufte kW: </field>
                </block>
              </value>
              <value name="ADD9">
                <block type="get_value" id="bd@e@AVzHj}:yvYCF!VO">
                  <field name="ATTR">val</field>
                  <field name="OID">0_userdata.0.energy.electricity.kWhPrice</field>
                </block>
              </value>
              <value name="ADD10">
                <block type="text" id="O1tva[j5m9*a:je*8K}N">
                  <field name="TEXT">Wh</field>
                </block>
              </value>
              <value name="ADD11">
                <block type="text_newline" id="J0!Md?l_$yeK%ZNT#/dp">
                  <field name="Type">\n</field>
                </block>
              </value>
              <value name="ADD12">
                <block type="text" id="P17{8h/|#5L@{.sM*u+E">
                  <field name="TEXT">💶 Vekaufte kW: </field>
                </block>
              </value>
              <value name="ADD13">
                <block type="text" id="x*b_qh+q$vy|?)1O3c%g">
                  <field name="TEXT">Wh</field>
                </block>
              </value>
              <value name="ADD14">
                <block type="get_value" id="9SSpTQEk1H;2:dMiDjzp">
                  <field name="ATTR">val</field>
                  <field name="OID">0_userdata.0.energy.electricity.kWhPrice</field>
                </block>
              </value>
              <value name="ADD15">
                <block type="text_newline" id="):=!%*$05D]#39H@aHc=">
                  <field name="Type">\n</field>
                </block>
              </value>
              <value name="ADD16">
                <block type="text" id="CR#k,91R!s)T?Yp~Df^R">
                  <field name="TEXT">🔋Speicherstand: </field>
                </block>
              </value>
              <value name="ADD17">
                <block type="get_value" id="A*(X.[rn5.[3lZPO.s}K">
                  <field name="ATTR">val</field>
                  <field name="OID">javascript.0.Solarpower.Huawei.Inverter.1.Batterystack.1.BatterySOC</field>
                </block>
              </value>
              <value name="ADD18">
                <block type="text" id="7)w_,xD@RSlv@hDR`^!H">
                  <field name="TEXT">%</field>
                </block>
              </value>
            </block>
          </value>
        </block>
      </xml>
      

      blockly.PNG

      telegramausgabe.PNG
      Die Einheiten muss ich noch anpassen.

      Theorie:
      Verbrauchte kWh pro Tag = Export to grid today - Import from grid today / 1000.
      Bei mir wäre das 1075980 - 135910 = 940070 / 1000 = 940,07. Im Dashboard von FusionSolar steht "Verbraucht: 9,24 kWh"

      gekauft = 'javascript.0.Solarpower.Huawei.Meter.ReverseActiveEnergy'
      verkauft = 'javascript.0.Solarpower.Huawei.Meter.PositiveActiveEnergy'
      allerdings ja gesamt. Wie kann ich das auf den Zeitpunkt der Abfrage ausrechnen?
      Ich habe auch den Zählerstand in ioBroker zur Verfügung.

      posted in ioBroker Allgemein
      H
      hussi
    • RE: Huawei Sun2000 & ioBroker via JS script funktioniert

      @chris_b Javascript beherrsche ich nicht. Ich schaue mich mal um ob ich irgendwas in der Art finde was ich dann anpassen kann. Habe text2kommand gefunden. Da kann man in Telegram einen Button einfügen und der iobroker Antwortet dann. Das wäre schon ein Anfang.
      Wobei ich lieber eine Nachricht an den iobroker schicken will, statt so einen Button zu haben.
      Evtl. ist das aber mein Ansatzpunkt.

      Edit:

      Ich habe mir nun mal Text2Kommand angeschaut. Damit kann ich nun per Telegram an den ioBroker "pv" schreiben, und bekomme den Wert aus

      javascript.0.Solarpower.Huawei.Inverter.1.Batterystack.1.BatterySOC
      

      zurück.

      Muss nun nur noch finden wie er mir mehrere Objekte liefert. Bzw. muss ich ja auch noch was errechnen:

      javascript.0.Solarpower.Derived.YieldToday = Erzeugte kW pro Tag
      javascript.0.Solarpower.Huawei.Inverter.1.Batterystack.1.BatterySOC = Speicherstand

      Die sind fix.

      Errechnen muss ich:

      Verbrauchte kW - da sollte dann:
      javascript.0.Solarpower.Derived.YieldToday - javascript.0.Solarpower.Huawei.Meter.PositiveActiveEnergy + javascript.0.Solarpower.Huawei.Meter.ReverseActiveEnergy
      sein, aber wie errechne ich zugekaufte Wh?

      posted in ioBroker Allgemein
      H
      hussi
    • RE: Huawei Sun2000 & ioBroker via JS script funktioniert

      Habe gerade eine Idee aber weiss noch nicht wie ich die Umsetzen kann. Evtl. hat jemand einen Denkanstoß.

      Würde gern am Abend, als Beispiel um 1700 Uhr, eine Telegram Nachricht mit dem Status des Tages bekommen. In Etwa so:

      PV Erzeugt: 1000kw
      Haus verbraucht: 900kw
      Gekauft kw
      Verkaufte kw
      Akku: 100%

      Dann am morgen

      Gekauft kw
      Akku: 5%

      Einfach damit man es im Auge behalten kann, ob man am Abend noch eine Wäsche anstellt, ohne jedes Mal eine App zu öffnen.

      Die Nachricht am Morgen dient nur zur Info ob der Akku groß genug ist.

      Ich finde nur leider nichts wie „Objektwerte per Telegram senden“.
      Telegram Bot läuft schon für andere Nachrichten.

      Ich hoffe die Frage passt hier ein bisschen rein.

      Viele Grüsse
      Martin

      posted in ioBroker Allgemein
      H
      hussi
    Community
    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
    The ioBroker Community 2014-2023
    logo