Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. mein aktuelles VISv7

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    mein aktuelles VISv7

    This topic has been deleted. Only users with topic management privileges can see it.
    • L
      Lanki1302 @dos1973 last edited by

      @dos1973 said in mein aktuelles VISv7:

      @Lanki1302
      hier das Heizung Script.
      Zählt die aktiven Heizkörper und schreibt eine eigene Bezeichnung in einen Datenpunkt.

      Blockly

      <xml xmlns="https://developers.google.com/blockly/xml">
       <variables>
         <variable id=",nLvY^8IA2e98:P/=pVO">Heizung_zaehlen</variable>
         <variable id="F]UC+_zu6.cVglox:DR*">var_TEXT_Heizung_EIN</variable>
       </variables>
       <block type="comment" id="}TlH(x^rFvDV9mF(Ilw0" x="13" y="-62">
         <field name="COMMENT">prüfe alle 30 sekunden</field>
         <next>
           <block type="schedule" id="II|WEml5,a*Gt;c..ZK9">
             <field name="SCHEDULE">*/30 * * * * *</field>
             <statement name="STATEMENT">
               <block type="comment" id="gvfTk`@D8)VV{l?M[V1~">
                 <field name="COMMENT">leere Variable</field>
                 <next>
                   <block type="variables_set" id="A@FqFYm[qka+^9lTt0pl">
                     <field name="VAR" id=",nLvY^8IA2e98:P/=pVO">Heizung_zaehlen</field>
                     <value name="VALUE">
                       <block type="math_number" id="SZCcUnQsq+m,R98;(bv+">
                         <field name="NUM">0</field>
                       </block>
                     </value>
                     <next>
                       <block type="variables_set" id="2U!x*,!87HrLvll}tods">
                         <field name="VAR" id="F]UC+_zu6.cVglox:DR*">var_TEXT_Heizung_EIN</field>
                         <value name="VALUE">
                           <block type="text" id="3KPa*^Hd_d*N*+rUT}J7">
                             <field name="TEXT"></field>
                           </block>
                         </value>
                         <next>
                           <block type="comment" id="{H4#K4a:W1#l#-}.O]{?">
                             <field name="COMMENT">prüfe Badezimmer</field>
                             <next>
                               <block type="controls_if" id="?N}b^nzfi013@ALo,o?_">
                                 <value name="IF0">
                                   <block type="logic_compare" id="x|^scs3J*}1GjyA;1~Gh">
                                     <field name="OP">GT</field>
                                     <value name="A">
                                       <block type="get_value" id="N1~?J@#lbg)aAN-0mCB1">
                                         <field name="ATTR">val</field>
                                         <field name="OID">hm-rpc.1.000A18A99427CD.1.LEVEL</field>
                                       </block>
                                     </value>
                                     <value name="B">
                                       <block type="math_number" id="xlo~H{-7k)MG@Zry{*JJ">
                                         <field name="NUM">0</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                                 <statement name="DO0">
                                   <block type="math_change" id="N*U-vhLNZ1FE_7OyuG=V">
                                     <field name="VAR" id=",nLvY^8IA2e98:P/=pVO">Heizung_zaehlen</field>
                                     <value name="DELTA">
                                       <shadow type="math_number" id="JLPC;Aqrj4zy@j,R[oEh">
                                         <field name="NUM">1</field>
                                       </shadow>
                                     </value>
                                     <next>
                                       <block type="text_append" id="Rz~z^u_v}~=BP/fyC3f;">
                                         <field name="VAR" id="F]UC+_zu6.cVglox:DR*">var_TEXT_Heizung_EIN</field>
                                         <value name="TEXT">
                                           <shadow type="text" id="T}sg-f?4lN!Ycr#aTDcX">
                                             <field name="TEXT">Bad, </field>
                                           </shadow>
                                         </value>
                                       </block>
                                     </next>
                                   </block>
                                 </statement>
                                 <next>
                                   <block type="comment" id="P8`,-*0|m7HFhz;z6o39">
                                     <field name="COMMENT">prüfe Gästebad</field>
                                     <next>
                                       <block type="controls_if" id="6%HgZ2S09RwaC@1uN^^]">
                                         <value name="IF0">
                                           <block type="logic_compare" id="2|,qIGnE0sJuaI(Y}#z+">
                                             <field name="OP">GT</field>
                                             <value name="A">
                                               <block type="get_value" id="~XWYQxNsgG??7Tad1ZlL">
                                                 <field name="ATTR">val</field>
                                                 <field name="OID">hm-rpc.0.OEQ1874694.4.VALVE_STATE</field>
                                               </block>
                                             </value>
                                             <value name="B">
                                               <block type="math_number" id="{t5bSWcLKY9wn?=!;HVi">
                                                 <field name="NUM">0</field>
                                               </block>
                                             </value>
                                           </block>
                                         </value>
                                         <statement name="DO0">
                                           <block type="math_change" id="=@Q^41+S6%(I+pG,tm/C">
                                             <field name="VAR" id=",nLvY^8IA2e98:P/=pVO">Heizung_zaehlen</field>
                                             <value name="DELTA">
                                               <shadow type="math_number" id="5Yy@,2*qh(|uJ-]8M2J%">
                                                 <field name="NUM">1</field>
                                               </shadow>
                                             </value>
                                             <next>
                                               <block type="text_append" id="ipUY#PT*H=r1#ye_yMRu">
                                                 <field name="VAR" id="F]UC+_zu6.cVglox:DR*">var_TEXT_Heizung_EIN</field>
                                                 <value name="TEXT">
                                                   <shadow type="text" id="03ORB,1)8{PZ,:)1m-QQ">
                                                     <field name="TEXT">Dusche, </field>
                                                   </shadow>
                                                 </value>
                                               </block>
                                             </next>
                                           </block>
                                         </statement>
                                         <next>
                                           <block type="control" id="jUubfa*_e%,+5l-)0dM,">
                                             <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                             <field name="OID">0_userdata.0.Wohnung.Status.Heizung.Heizung_zählen</field>
                                             <field name="WITH_DELAY">FALSE</field>
                                             <value name="VALUE">
                                               <block type="variables_get" id="7;nz::|@xS2_=RL]|b!-">
                                                 <field name="VAR" id=",nLvY^8IA2e98:P/=pVO">Heizung_zaehlen</field>
                                               </block>
                                             </value>
                                             <next>
                                               <block type="control_ex" id="(@Z_/^8|ZWl(b:BpV2mJ" inline="true">
                                                 <field name="TYPE">true</field>
                                                 <field name="CLEAR_RUNNING">FALSE</field>
                                                 <value name="OID">
                                                   <shadow type="field_oid" id="/e32S1**f@L?U|NP?#a:">
                                                     <field name="oid">0_userdata.0.Wohnung.Status.Heizung.Text_Heizung_EIN</field>
                                                   </shadow>
                                                 </value>
                                                 <value name="VALUE">
                                                   <shadow xmlns="http://www.w3.org/1999/xhtml" type="logic_boolean">
                                                     <field name="BOOL">TRUE</field>
                                                   </shadow>
                                                   <block type="text_getSubstring" id="z*%A}55ri0l@-Xwp}ETl">
                                                     <mutation at1="false" at2="true"></mutation>
                                                     <field name="WHERE1">FIRST</field>
                                                     <field name="WHERE2">FROM_END</field>
                                                     <value name="STRING">
                                                       <block type="variables_get" id="QkG4o@YOy/Gf;DRz*PPK">
                                                         <field name="VAR" id="F]UC+_zu6.cVglox:DR*">var_TEXT_Heizung_EIN</field>
                                                       </block>
                                                     </value>
                                                     <value name="AT2">
                                                       <block type="math_number" id="s1R;D#SI~l`7#sfr-J/b">
                                                         <field name="NUM">3</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                                 <value name="DELAY_MS">
                                                   <shadow type="math_number" id="L$L]kWW/E;#!@#KmxR,}">
                                                     <field name="NUM">0</field>
                                                   </shadow>
                                                 </value>
                                               </block>
                                             </next>
                                           </block>
                                         </next>
                                       </block>
                                     </next>
                                   </block>
                                 </next>
                               </block>
                             </next>
                           </block>
                         </next>
                       </block>
                     </next>
                   </block>
                 </next>
               </block>
             </statement>
           </block>
         </next>
       </block>
      </xml>
      

      Das Blockly prüft alle 30 Sekunden den DP "Level" der Heizungsthermostate und schreibt dann den Namen in den unten stehenden DP. Der Trigger könnte durchaus angepasst werden...

      Bildschirmfoto 2020-11-10 um 19.24.51.png

      folgenden Datepunkte müssen angelegt werden.

      als Zahl, ethält die Anzahl der aktuellen eingeschalteter Heizkörper. den Wert benutze ich derzeit nicht, hatte ich mal Anfangs genommen

      0_userdata.0.Wohnung.Status.Heizung.Heizung_zählen
      

      als Zeichenfolge

      0_userdata.0.Wohnung.Status.Heizung.Text_Heizung_EIN
      

      Super!!!! Vielen Dank.
      Funktioniert!!!

      1 Reply Last reply Reply Quote 0
      • L
        Lanki1302 @dos1973 last edited by

        @dos1973

        Ja, der eine wird bestimmt sagen, es kommt auch auf die Luftfeuchtigkeit aussen an, aber so habe ich jetzt 😉

        Ja, das hatte ich auch immer wieder gelesen - aber ich denke: frische Luft tut immer gut 😄

        Ich mache das noch nicht lange mit ioBroker, aber das Blockly ist schonmal ne Hausnummer....
        Hat auch wieder alles auf Anhieb geklappt.
        Erklärung dazu ist auch gut.

        Danke dafür....

        D 1 Reply Last reply Reply Quote 0
        • D
          dos1973 @Lanki1302 last edited by

          @Lanki1302
          Freut mich, dass es klappt

          1 Reply Last reply Reply Quote 0
          • S
            Superdad last edited by Superdad

            Eine sehr schöne VIS-View hast du da gebastelt!
            Sieht wirklich gut aus.

            Aber was mich interressiert ist, wie hast due deine Maskierung im Heimkino umgesetzt?
            Kannst du vielleicht etwas dazu schreiben?

            D 1 Reply Last reply Reply Quote 0
            • D
              dos1973 @Superdad last edited by

              @Superdad
              Was meinst du Hardware, oder die Blockly logik dahinter?

              S 1 Reply Last reply Reply Quote 0
              • S
                Superdad @dos1973 last edited by

                @dos1973
                Ich meine eigentlich die Hardware.
                Aber wenn dazu noch Blockly gehört? Dann die bitte auch dazu.

                D 1 Reply Last reply Reply Quote 0
                • D
                  dos1973 @Superdad last edited by

                  @Superdad
                  ich nutze eine Spalluto Grandcinema Leinwand und habe mir eine Maskierung dazu selbst gebaut indem ich einen Rolladen mit Welle und Molton bespannt habe.

                  Der Rolladen Motor und Welle sitze direkt unter der Leinwand, damit ich einen sehr geringen/ kaum Abstand zum Leinwandtuch habe. (Schattenwurf)

                  Das ganze habe ich dann in eine Abkofferung versteckt... nur der "Schlitz" ist zu sehen

                  Leinwand versteckt
                  IMG_1439.jpeg

                  Leinwand offen
                  IMG_1440.jpeg

                  die Maskierung offen
                  IMG_1441.jpeg

                  Die Spalluto LW und der Rolladen werden beide von einen Shelly 2.5 gesteuert.
                  gesteuert wird das Kino via Blockly.

                  Ich hänge das mal das komplett Kino Steuerungsscript hier dran
                  kino_control.txt

                  Das wird gebraucht als DP:
                  ich habe 4 DP für die Kinosteuerung & Maskierung. (true/false)

                  0_userdata.0.Wohnung.Kino.16:10_Format
                  0_userdata.0.Wohnung.Kino.16:9_Format
                  0_userdata.0.Wohnung.Kino.21:9_Format
                  0_userdata.0.Wohnung.Kino.Kino_einschalten
                  

                  wie ich weiter vorne in dem Thread geschrieben habe nutze ich auf der Harmony nur 4 Activities, alle nur mit dem TV als Display.
                  Normal wäre für die Harmony Nutzung nochmals 4 weitere identische Activity mit Beamer und LW als "Display" anzulegen. Das hatte ich mal Anfangs aber, das waren mir eindeutig zuviele Activties im Display der Harmony.

                  Um die Maskierung zu fahren setze ich die entsprechenden DP für 21:9 oder 16:9 auf einfach auf true

                  setze ich via Blockly einfach %% Werte wie weit der shelly und die Leinwand fahren sollen,

                  • bei 21:9 fährt die Leiwand ein Stück hoch und die Maskierung ein Stück runter
                  • bei 16:9 fährt die Leiwand ein Stück runter und die Maskierung ein Stück hoch.
                    immer gegensätzlich.

                  das passt bei mir mit dem Shelly perfekt
                  Bildschirmfoto 2020-12-12 um 12.22.51.png

                  Da ich noch den JB Media Lightmanager im Einsatz habe, habe ich im Display der Harmony auch die Funktion 16:9 und 21:9 und kann direkt via FB die Maskierung steuern. und diese Button funktionieren nur, wenn der DP Kino ein auf true ist.

                  btw: Maskierung begeistert mich immer wieder aufs neue, welche Bildfeeling dann aufkommt.

                  hoffe ich konnte dir helfen, wenn noch etwas unklar ist einfach fragen...

                  S Homoran 2 Replies Last reply Reply Quote 1
                  • S
                    Superdad @dos1973 last edited by

                    @dos1973
                    Vielen, vielen Dank für deine ausführliche Antwort.
                    Deine Leinwand inklusive Maskierung und Abkofferung sieht wirklich sehr gut aus.
                    Da hast du dir richtig Mühe gegeben.

                    Respekt!

                    D 1 Reply Last reply Reply Quote 0
                    • D
                      dos1973 @Superdad last edited by

                      @Superdad
                      Danke dir, aufgrund der Konstruktion mit Leinwand Rolladenwelle, Kabelei etc wurde ich sozusagen zur Abkofferung gezwungen 😉 Sonst hätte meine Frau das alles abgerissen 😉 wenn ich nicht zu Hause wäre.

                      Der WAF ist nicht zu unterschätzen...

                      da_Woody 1 Reply Last reply Reply Quote 0
                      • da_Woody
                        da_Woody @dos1973 last edited by

                        @dos1973 👍 echt genial gemacht! schön durchdacht das ganze...

                        1 Reply Last reply Reply Quote 0
                        • Z
                          zmaier last edited by

                          Hallo @dos1973 : Danke für deine VIS, die ist eine super Vorlage! Damit kann ich mich an meine erste VIS wagen 🙂

                          Eine Frage hätt ich an dich, wie hast du das mit der Rolladensteuerung gemacht - du verwendest auch die Shellys.
                          Ich möchte die Rolladensteuerung in der VIS schön mit 3 Buttons machen (so wie du).
                          Open/Pause/Close.

                          Wenn ich z.B. Open Taste drücke (geht der Wert auf True) und die Farbe des Schalters ändert sich, somit weiß ich was gerade passiert. Der Rolladen fährt nach oben.
                          Wenn ich jetzt auf Pause drücke, bleibt der Rolladen stehen, aber die beiden Datenpunkte Pause und Open sind true?
                          Und die Anzeige was gerade passiert (bei mir, welcher Taster rot hinterlegt ist) passt nicht mehr.
                          Meiner Meinung nach sollte doch, wenn auf Pause gedrückt wird automatisch der Datenpunkt Open auf false gehen?
                          Wie hast du das gelöst?

                          D 1 Reply Last reply Reply Quote 0
                          • D
                            dos1973 @zmaier last edited by dos1973

                            @zmaier

                            Du kannst den folgenden Wert verwenden, da steht der aktuelle Zustand (STOP, OPEN;, CLOSE) drin, was der Shelly eben macht.

                            shelly.0.SHSW-25#98F4xxxxxx#1.Shutter.state

                            ich habe einfach drei button gemacht
                            hoch, runter und stop.

                            dann habe ich 3 button in "Rot" gemacht. die Button habe den gleiche Funktion wie die vorherigen, werden aber nur angezeigt mit Sichtbarkeit der Bedingung STOP, OPEN, CLOSE - jeder für sich mit einer der Funktion

                            So wird dann, wenn der Rollo runterfährt der Button mit dem Roten Pfeil angezeigt und überlagert den ohne Farbe

                            schreibt/ liest sich komplizierter als s am Ende ist 😉

                            Edit:
                            In meiner Vis liegen teilweise auch Buttons übereinander...

                            Z 1 Reply Last reply Reply Quote 0
                            • Z
                              zmaier @dos1973 last edited by

                              @dos1973 said in mein aktuelles VISv7:

                              gemacht. die Button habe den gleiche Funktion wie die vorherigen, werden aber nur angezeigt mit Sichtbarkeit der Bedingung STOP, OPEN, CLOSE

                              Genial, vielen DANK! Ich habs geschafft. Ist zwar bei 15 Rollos a ziemliche Arbeit, aber es schaut einfach super aus!! 👍

                              D 1 Reply Last reply Reply Quote 0
                              • D
                                dos1973 @zmaier last edited by dos1973

                                @zmaier
                                Und den runden Spinner (bild) zeigst du nur dann an, wenn die shellys nicht „stop“ als state habe. So siehst du ob die Rollos sich in dem moment bewegen .

                                Z 1 Reply Last reply Reply Quote 0
                                • Z
                                  zmaier @dos1973 last edited by

                                  @dos1973 : Danke, jetzt schauts perfekt aus 🙂 Hat alles geklappt.
                                  Kleiner Tip, zum Zeit sparen 🙂 : alle Widgets makieren, dann exportieren und im Text-Editor die Shelly-ID ändern. im Anschluss wieder importieren. Das erspart das lästig ändern aller Dstenpunkte.
                                  Oder kennt jemand einen schnelleren, eleganteren Weg.

                                  DANKE, bleibts gesund
                                  Martin

                                  1 Reply Last reply Reply Quote 0
                                  • O
                                    Oli @dos1973 last edited by Oli

                                    @dos1973
                                    super Vis, gefällt mir sehr gut, vor allem deine Multimedia Seiten finde ich genial und wollte sie mir nach bauen. Allerdings scheitere ich schon beim einrichten des Kodi Adapters

                                    Vielleicht kannst du mir dabei helfen?

                                    Einstellungen in Kodi:

                                    • Proxy-Server benutzen ist aktiviert
                                    • Proxy-Typ = HTTP
                                    • Port wurde auf 9090 geändert
                                    • Bei Benutzername habe ich "kodi" hinterlegt
                                    • Passwort habe ich leer gelassen

                                    Aber was muss ich bei Server eintragen?

                                    Einstellungen Kodi Adapter:

                                    • Kodi IP Adresse 9090, war bereits hinterlegt
                                    • Login "kodi"
                                    • Password habe ich leer gelassen, da in Kodi auch keines hinterlegt wurde

                                    Wie finde ich die IP-Adresse heraus, die im Adapter einzutragen ist?

                                    D 1 Reply Last reply Reply Quote 0
                                    • D
                                      dos1973 @Oli last edited by

                                      @Oli

                                      setz in Kodi die "Steuerung" wieder auf Standard zurück, alles im Standard belassen, keine Proxy Settings, gehe nicht davon aus dass du einen Proxy hast.

                                      erlaube nur folgende Werte:

                                      • Steuerung über HTTP erlauben
                                      • Fernsteuerung des Rechners erlauben
                                      • Fernsteuerung durch Anwendung anderer Rechner erlauben
                                      • Benutzername und Passwort erstmal leer lassen.

                                      im Kodi Adapter,
                                      nur die IP Adresse deines Kodi Server eingeben. Der Kodi mit den filmen etc. muss ja auf irgendeinem System laufen.

                                      Das war es schon, damit sollte dein Kodi Adapter "grün" anzeigen.

                                      die Ipadresse wird auch in Kodi angezeigt.

                                      • Einstellungen - Systeminformation-Info
                                      O 1 Reply Last reply Reply Quote 0
                                      • O
                                        Oli @dos1973 last edited by

                                        @dos1973
                                        Danke für deine Antwort.
                                        Hast du im Kodi den Port geändert, oder auf 8080 stehen lassen?

                                        Welchen Port hast du im Adapter angegeben?

                                        D 1 Reply Last reply Reply Quote 0
                                        • D
                                          dos1973 @Oli last edited by

                                          @Oli

                                          Alles auf standard lassen.
                                          In kodi ist 8080 ist der http port

                                          Im kodi Adapter wird mit 9090 der RCP Port angesprochen. Das eine hat mit den anderen nichts zu tun.

                                          Hast du deine Ip identifiziert?

                                          Wo läuft dein Kodi? Was für ein Systen? Kannst du über einen Browser auf dein Kodi zugreifen

                                          O 1 Reply Last reply Reply Quote 0
                                          • O
                                            Oli @dos1973 last edited by

                                            @dos1973
                                            das wird mein Problem sein, Kodi läuft bei mir auf einem Fire TV Stick, als Alternative könnte ich Kodi auf meiner Qnap installieren.

                                            Der Adapter bleibt bei mir gelb, obwohl ich alle Einstellungen wie von die beschrieben gemacht habe

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            369
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            vis
                                            30
                                            142
                                            20912
                                            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