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. ioBroker Allgemein
  4. ioBroker auf PI4 stürzt immer mal wieder ab

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

ioBroker auf PI4 stürzt immer mal wieder ab

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
56 Beiträge 7 Kommentatoren 237 Aufrufe 8 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.
  • K Kapitaen31

    @Homoran sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

    @Kapitaen31 sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

    script.js.common.Lichtsteuerung.Ober_Geschoss.Flur.Hue_Max

    zeig mal das Script

    Hier steuere ich die Hue Lampe und will gerne die Lichtstärke ausgeben. mehr ist das nicht.
    Ich habe das Script als blockly geschrieben...


    <xml xmlns="https://developers.google.com/blockly/xml">
    <variables>
    <variable id="r)$YD?H+$5:cKC|%W?7V">MAX Wert</variable>
    <variable id="hBTrxmvNI[@NJ~V}}Bw">MAX erreichbar</variable> <variable id="5S6~J2p*#psaaaOCs}rm">MAX aufdimmen aktiv</variable> <variable id="fWp(X/d=w3r![SfCJXN~">MAX aufdimmen</variable> <variable id="G4v-2f=[yd{wii!QrdPl">MAX Text</variable> <variable id="nE[tMe{OLLxujut#+%#/">MAX Zyklus beendet</variable> <variable id="bT^aTce)!2nCZJE@WKHE">MAX Farbwert</variable> <variable id="rcxMOv_1MyWP^CnvzTlk">MAX ein/aus</variable> <variable type="cron" id="MaxZeitplan">MaxZeitplan</variable> <variable type="interval" id="MAX aus">MAX aus</variable> <variable type="interval" id="MAX ein">MAX ein</variable> <variable id="ZRtb,5Y0dLX).4;*_Kfq">MAX Helligkeit</variable> <variable type="cron" id="Max abends aus">Max abends aus</variable> <variable type="timeout" id="Wartezeit">Wartezeit</variable> </variables> <block type="procedures_defnoreturn" id="(.oVeh,p@?K$:=m[.W.m" x="738" y="-2387"> <mutation> <arg name="MAX Wert" varid="r)$YD?H+$5:cKC|%W?7V"></arg> <arg name="MAX erreichbar" varid="hBTrxmvNI[@NJ~V}}Bw"></arg>
    <arg name="MAX aufdimmen aktiv" varid="5S6~J2p*#psaaaOCs}rm"></arg>
    <arg name="MAX aufdimmen" varid="fWp(X/d=w3r![SfCJXN~"></arg>
    <arg name="MAX Text" varid="G4v-2f=[yd{wii!QrdPl"></arg>
    <arg name="MAX Zyklus beendet" varid="nE[tMe{OLLxujut#+%#/"></arg>
    <arg name="MAX Farbwert" varid="bT^aTce)!2nCZJE@WKHE"></arg>
    <arg name="MAX ein/aus" varid="rcxMOv_1MyWP^CnvzTlk"></arg>
    </mutation>
    <field name="NAME">Max dimmen</field>
    <comment pinned="false" h="80" w="160">Hue Lampe mit angegebenem Wert langsam einschalten.</comment>
    <statement name="STACK">
    <block type="controls_if" id="?-MFBCGTKbUEa+;zDqEW">
    <mutation elseif="1"></mutation>
    <value name="IF0">
    <block type="logic_compare" id="j[8%TSY1EpNQO|H_M/@f">
    <field name="OP">EQ</field>
    <value name="A">
    <block type="variables_get" id="K+v.fALL0%Vc|SSNF+fn">
    <field name="VAR" id="rcxMOv_1MyWP^CnvzTlk">MAX ein/aus</field>
    </block>
    </value>
    <value name="B">
    <block type="text" id="d8PMuciDClI-7TH@$bnN">
    <field name="TEXT">ein</field>
    </block>
    </value>
    </block>
    </value>
    <statement name="DO0">
    <block type="comment" id="W$.aN]ZF;P=dZ3l)cj|"> <field name="COMMENT">Max wird aufgeblendet (einschalten)</field> <next> <block type="controls_if" id="8(|H;rxt~?OpcMLqOYJ">
    <value name="IF0">
    <block type="logic_compare" id="5b}Ft:KR}FG$m?y?hcgV">
    <field name="OP">EQ</field>
    <value name="A">
    <block type="get_value" id="oM4JXHo#N4{~oQ$SAa.t">
    <field name="ATTR">val</field>
    <field name="OID">alias.0.OG.Flur.Licht.HelligkeitHueMax</field>
    </block>
    </value>
    <value name="B">
    <block type="math_number" id="z4vkLwSH!.36~}uFz$8,">
    <field name="NUM">0</field>
    </block>
    </value>
    </block>
    </value>
    <statement name="DO0">
    <block type="control" id="$hXbsHJ~DjOvrsTV|I)" disabled-reasons="MANUALLY_DISABLED">
    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
    <field name="OID">alias.0.OG.Flur.Licht.EingeschaltetHueMax</field>
    <field name="WITH_DELAY">FALSE</field>
    <value name="VALUE">
    <block type="logic_boolean" id="/~rmnusvM!.hv,4MX/q"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="@#Kyw6:zl:8hW;aq%ZT">
    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
    <field name="OID">alias.0.OG.Flur.Licht.HelligkeitHueMax</field>
    <field name="WITH_DELAY">FALSE</field>
    <value name="VALUE">
    <block type="math_number" id="V?l~ufqEz7wh5]@PPLf;">
    <field name="NUM">5</field>
    </block>
    </value>
    <next>
    <block type="debug" id="{Cl
    a.xiz^|r2)~LPL2">
    <field name="Severity">warn</field>
    <value name="TEXT">
    <shadow type="text" id="^jE2Bo%Ym5,Oi@3x}sa">
    <field name="TEXT">Max eingeschaltet! </field>
    </shadow>
    </value>
    </block>
    </next>
    </block>
    </next>
    </block>
    </statement>
    <next>
    <block type="control" id="WwDM+Wn6F|?W$i8/qGzY">
    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
    <field name="OID">alias.0.OG.Flur.Licht.FarbTemperaturHueMax</field>
    <field name="WITH_DELAY">FALSE</field>
    <value name="VALUE">
    <block type="variables_get" id="5JWmrbE?p[prXTa)P9ri">
    <field name="VAR" id="bT^aTce)!2nCZJE@WKHE">MAX Farbwert</field>
    </block>
    </value>
    <next>
    <block type="update" id="8cx-$H]jpMG5!;bFqeFt">
    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
    <field name="OID">javascript.0.Datenpunkte.Flur.Licht.Abdimmen_aktiv</field>
    <field name="WITH_DELAY">FALSE</field>
    <value name="VALUE">
    <block type="logic_boolean" id="tg,H3EU?IKJ{D:Y)@uj+">
    <field name="BOOL">TRUE</field>
    </block>
    </value>
    <next>
    <block type="timeouts_setinterval" id="fKwFr,!MQ9JJz
    (sQZD"> <field name="NAME">MAX ein</field> <field name="INTERVAL">30</field> <field name="UNIT">sec</field> <statement name="STATEMENT"> <block type="controls_if" id="-v*EhYeIg9/}(t#EQdEJ"> <mutation else="1"></mutation> <value name="IF0"> <block type="logic_operation" id="Fjr0ucdAe|EB+0/T5IY">
    <field name="OP">AND</field>
    <value name="A">
    <block type="logic_compare" id="2}^Y%+3=IJ8;fHl86lVC">
    <field name="OP">LT</field>
    <value name="A">
    <block type="get_value" id="DiDen%J^B?f_}2=f#+q;">
    <field name="ATTR">val</field>
    <field name="OID">alias.0.OG.Flur.Licht.HelligkeitHueMax</field>
    </block>
    </value>
    <value name="B">
    <block type="variables_get" id="NU,pyt3h.NyZUEb,V@b+">
    <field name="VAR" id="r)$YD?H+$5:cKC|%W?7V">MAX Wert</field>
    </block>
    </value>
    </block>
    </value>
    <value name="B">
    <block type="logic_compare" id="yJNqJmE%%$@?flk6yOW"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="$%!dx8h;Cnx]rdqZXUd4"> <field name="ATTR">val</field> <field name="OID">alias.0.OG.Flur.Licht.Erreichbar Hue Max</field> </block> </value> <value name="B"> <block type="variables_get" id="58u^)rVl=8a-0Dd]qq5;"> <field name="VAR" id="hBTrxmvNI[@NJ~V}}Bw">MAX erreichbar</field>
    </block>
    </value>
    </block>
    </value>
    </block>
    </value>
    <statement name="DO0">
    <block type="control" id="nyA9+pyUaQVC6m{;15S"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alias.0.OG.Flur.Licht.HelligkeitHueMax</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_arithmetic" id="f!(:hyoa2Q+cK))q+dc4"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="zOX(cu-:{WUicw)FqfDY"> <field name="NUM">1</field> </shadow> <block type="get_value" id="/eQWkhgRk{7]G|yTafM">
    <field name="ATTR">val</field>
    <field name="OID">alias.0.OG.Flur.Licht.HelligkeitHueMax</field>
    </block>
    </value>
    <value name="B">
    <shadow type="math_number" id="n?F4LH6yz?S*yZW]R45"> <field name="NUM">1</field> </shadow> <block type="math_number" id="TjH@/4-5DL[.;3B/Y_Km"> <field name="NUM">5</field> </block> </value> </block> </value> <next> <block type="debug" id="aP}FHA[(N/d9xweDq!^p"> <field name="Severity">debug</field> <value name="TEXT"> <shadow type="text" id=":WB,iiHLVHprFT[+t/?-"> <field name="TEXT">MAX morgens einschalten. +5 </field> </shadow> <block type="text_join" id="n~#TrdWiWN.]0+~OLhqk"> <mutation items="2"></mutation> <value name="ADD0"> <block type="variables_get" id="GE3ShNmJn%fr2lFnM.z9"> <field name="VAR" id="G4v-2f=[yd{wii!QrdPl">MAX Text</field> </block> </value> <value name="ADD1"> <block type="get_value" id="uucqFFXsN^K=qZ}9L/zl"> <field name="ATTR">val</field> <field name="OID">alias.0.OG.Flur.Licht.HelligkeitHueMax</field> </block> </value> </block> </value> </block> </next> </block> </statement> <statement name="ELSE"> <block type="timeouts_clearinterval" id="v5{w?:rY4%oWwJhTQhRv"> <field name="NAME">MAX ein</field> <next> <block type="update" id="ZbTWS;R8#,j/T5|Du7Sn"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Datenpunkte.Flur.Licht.Abdimmen_aktiv</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="4!nlHp[9kk)%-%zFeGvS"> <field name="VAR" id="5S6~J2p*#psaaaOCs}rm">MAX aufdimmen aktiv</field> </block> </value> <next> <block type="timeouts_settimeout" id="@,_pnkMLL7?bN.IeL_Pz"> <field name="NAME">Wartezeit</field> <field name="DELAY">3000</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="debug" id="pm%o{%eGw(KC4_;Uk0j#"> <field name="Severity">debug</field> <value name="TEXT"> <shadow type="text" id="cv[@3gvFjb|wnQHO,-J-"> <field name="TEXT">MAX morgens einschalten. +5 </field> </shadow> <block type="text_join" id="(HK{qh%WpiZiczxUa-gg"> <mutation items="2"></mutation> <value name="ADD0"> <block type="variables_get" id="y,*|HlCSc@|HrQ]E]iwB"> <field name="VAR" id="nE[tMe{OLLxujut#+%#/">MAX Zyklus beendet</field> </block> </value> <value name="ADD1"> <block type="get_value" id="z/kv$T2w3vYWnvLu@n"> <field name="ATTR">val</field> <field name="OID">alias.0.OG.Flur.Licht.HelligkeitHueMax</field> </block> </value> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </statement> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_compare" id="c,^fUdED3)9iw$9sQ,Kb"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="?F]?43#QnaKc$~:,#MK">
    <field name="VAR" id="rcxMOv_1MyWP^CnvzTlk">MAX ein/aus</field>
    </block>
    </value>
    <value name="B">
    <block type="text" id=")]JlbN1{QL
    HZ./Tyq+F">
    <field name="TEXT">aus</field>
    </block>
    </value>
    </block>
    </value>
    <statement name="DO1">
    <block type="comment" id="958,(Xj(QU;N{HWAlHiY">
    <field name="COMMENT">Max wird abgeblendet (ausgeschalten)</field>
    <next>
    <block type="controls_if" id="gLYJe|7hwLa[OIi{pEHC">
    <value name="IF0">
    <block type="get_value" id="iMHc#),MOW!@Tx-l,qdF">
    <field name="ATTR">val</field>
    <field name="OID">javascript.0.Datenpunkte.Flur.Licht.Abdimmen_aktiv</field>
    </block>
    </value>
    <statement name="DO0">
    <block type="timeouts_clearinterval" id="}378d(zLuy3}:yf#;AW4">
    <field name="NAME">MAX ein</field>
    <next>
    <block type="timeouts_clearinterval" id="A%cLuw-os0J(qH3tmF$!">
    <field name="NAME">MAX aus</field>
    <next>
    <block type="update" id="Tg]|I;1.X?8rU,}Oi6?">
    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
    <field name="OID">javascript.0.Datenpunkte.Flur.Licht.Abdimmen_aktiv</field>
    <field name="WITH_DELAY">FALSE</field>
    <value name="VALUE">
    <block type="variables_get" id="#_]el^U#jQqW=[Rl[4yb">
    <field name="VAR" id="5S6~J2p
    #psaaaOCs}rm">MAX aufdimmen aktiv</field>
    </block>
    </value>
    </block>
    </next>
    </block>
    </next>
    </block>
    </statement>
    <next>
    <block type="timeouts_setinterval" id="Q*@jZN(1T4FX-!mla2,O">
    <field name="NAME">MAX aus</field>
    <field name="INTERVAL">30</field>
    <field name="UNIT">sec</field>
    <statement name="STATEMENT">
    <block type="controls_if" id="X6;B|d3/mIzw__X4WCZ">
    <mutation else="1"></mutation>
    <value name="IF0">
    <block type="logic_compare" id="OQ3Gp9E;Pb/bjZ[7je-E">
    <field name="OP">EQ</field>
    <value name="A">
    <block type="variables_get" id="{YED0{wVOtb2~@WdTPK{">
    <field name="VAR" id="r)$YD?H+$5:cKC|%W?7V">MAX Wert</field>
    </block>
    </value>
    <value name="B">
    <block type="math_number" id="[tXb_adS0#1zdR(bo4:m">
    <field name="NUM">0</field>
    </block>
    </value>
    </block>
    </value>
    <statement name="DO0">
    <block type="controls_if" id="ON12}P7Q9y?!!vP
    |q}$">
    <mutation else="1"></mutation>
    <value name="IF0">
    <block type="logic_operation" id="HE_i?.P4hUB6a+3Ou$V|">
    <field name="OP">AND</field>
    <value name="A">
    <block type="logic_compare" id="rL]1!2hJtiTBzO:d^CM">
    <field name="OP">GT</field>
    <value name="A">
    <block type="get_value" id="w;r2ppII1T!7P#7c!}a"> <field name="ATTR">val</field> <field name="OID">alias.0.OG.Flur.Licht.HelligkeitHueMax</field> </block> </value> <value name="B"> <block type="math_number" id="q%*5%Z8kDO@RR(XnW;N-"> <field name="NUM">6</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="wB@p_44=~+c1F_iOLE[">
    <field name="OP">EQ</field>
    <value name="A">
    <block type="get_value" id="?XMt8Uz$+
    ;e{C0qw!~A">
    <field name="ATTR">val</field>
    <field name="OID">alias.0.OG.Flur.Licht.Erreichbar Hue Max</field>
    </block>
    </value>
    <value name="B">
    <block type="math_number" id="YLpg)~%;BcU4I3s6?$(.">
    <field name="NUM">1</field>
    </block>
    </value>
    </block>
    </value>
    </block>
    </value>
    <statement name="DO0">
    <block type="variables_set" id="a-L8j5;9[YD;GSDWoc4">
    <field name="VAR" id="ZRtb,5Y0dLX).4;
    Kfq">MAX Helligkeit</field>
    <value name="VALUE">
    <block type="logic_boolean" id="sHk},t-)W0R%yxA9bivU">
    <field name="BOOL">TRUE</field>
    </block>
    </value>
    </block>
    </statement>
    <statement name="ELSE">
    <block type="variables_set" id=")OjVo{g[olOOvXF#,OW"> <field name="VAR" id="ZRtb,5Y0dLX).4;*_Kfq">MAX Helligkeit</field> <value name="VALUE"> <block type="logic_boolean" id="h;Vf,0NehS?1{cQOUiiz"> <field name="BOOL">FALSE</field> </block> </value> </block> </statement> </block> </statement> <statement name="ELSE"> <block type="controls_if" id="AHx!OQ.^F551s4t+VBG">
    <mutation else="1"></mutation>
    <value name="IF0">
    <block type="logic_operation" id="vFSVy7r41QsVDt+#M4_"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="}$5NII3N_|Q4m}BJ=M|">
    <field name="OP">GT</field>
    <value name="A">
    <block type="get_value" id="9KBp7~~xFP^hj|ai+6{}">
    <field name="ATTR">val</field>
    <field name="OID">alias.0.OG.Flur.Licht.HelligkeitHueMax</field>
    </block>
    </value>
    <value name="B">
    <block type="variables_get" id=".pi=,ng+FoDq[G45;-bd">
    <field name="VAR" id="r)$YD?H+$5:cKC|%W?7V">MAX Wert</field>
    </block>
    </value>
    </block>
    </value>
    <value name="B">
    <block type="logic_compare" id="5yZ)s~*lg=Nz.xmt?.]i">
    <field name="OP">EQ</field>
    <value name="A">
    <block type="get_value" id="Wl);mko7c+fmu?=Ut1n"> <field name="ATTR">val</field> <field name="OID">alias.0.OG.Flur.Licht.Erreichbar Hue Max</field> </block> </value> <value name="B"> <block type="math_number" id="P)o6hxIowSNlPkQV
    @X">
    <field name="NUM">1</field>
    </block>
    </value>
    </block>
    </value>
    </block>
    </value>
    <statement name="DO0">
    <block type="variables_set" id="XH;CGIm{6LuC2=c-ZT."> <field name="VAR" id="ZRtb,5Y0dLX).4;*_Kfq">MAX Helligkeit</field> <value name="VALUE"> <block type="logic_boolean" id="hsjdq8rIE-qa.6~.$X:A"> <field name="BOOL">TRUE</field> </block> </value> </block> </statement> <statement name="ELSE"> <block type="variables_set" id="BNt@U*}l{Qr(R(_OB8Zd"> <field name="VAR" id="ZRtb,5Y0dLX).4;*_Kfq">MAX Helligkeit</field> <value name="VALUE"> <block type="logic_boolean" id="p+OK5VBCdyF$:@rL=gG7"> <field name="BOOL">FALSE</field> </block> </value> </block> </statement> </block> </statement> <next> <block type="controls_if" id="dkd{Q.M!_@i09jyERTc8"> <mutation else="1"></mutation> <value name="IF0"> <block type="variables_get" id="6]$VTa8Fj/r$hWyes-K8"> <field name="VAR" id="ZRtb,5Y0dLX).4;*_Kfq">MAX Helligkeit</field> </block> </value> <statement name="DO0"> <block type="control" id="/L3?``e9MfOEm#c[;o%/"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alias.0.OG.Flur.Licht.HelligkeitHueMax</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_arithmetic" id="_XzfJl]KKCRilh,QB-Ny"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="Jk)%r3DFhBpQbyso%N1I"> <field name="NUM">1</field> </shadow> <block type="get_value" id="|Y.LfeTc_zrv-wLkoEKf"> <field name="ATTR">val</field> <field name="OID">alias.0.OG.Flur.Licht.HelligkeitHueMax</field> </block> </value> <value name="B"> <shadow type="math_number" id="mmYDnh$QOMo^n~:tS_Wi"> <field name="NUM">1</field> </shadow> <block type="math_number" id="6GqXBkyH7e+$Ya7#|k/e"> <field name="NUM">5</field> </block> </value> </block> </value> <next> <block type="debug" id="tj9HOQ=2?SeU[?27d4f#"> <field name="Severity">debug</field> <value name="TEXT"> <shadow type="text" id="z$7#1w:=!+6f_pXhN_Su"> <field name="TEXT">MAX morgens einschalten. +5 </field> </shadow> <block type="text_join" id="2yp520,J!r=.dVz*dq1]"> <mutation items="2"></mutation> <value name="ADD0"> <block type="variables_get" id="A@$s9(m#0=9D5n@AMsgn"> <field name="VAR" id="G4v-2f=[yd{wii!QrdPl">MAX Text</field> </block> </value> <value name="ADD1"> <block type="get_value" id="VWDhr}v:fpF6/oK$I9[U"> <field name="ATTR">val</field> <field name="OID">alias.0.OG.Flur.Licht.HelligkeitHueMax</field> </block> </value> </block> </value> </block> </next> </block> </statement> <statement name="ELSE"> <block type="timeouts_clearinterval" id="cK}6KBODo;9}z0K=xHC">
    <field name="NAME">MAX aus</field>
    <next>
    <block type="control" id="2;w:d$~#DCJcA.erYNe">
    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
    <field name="OID">alias.0.OG.Flur.Licht.EingeschaltetHueMax</field>
    <field name="WITH_DELAY">FALSE</field>
    <value name="VALUE">
    <block type="logic_boolean" id="5S$G~~Rn-|[cDp4NH?G^">
    <field name="BOOL">FALSE</field>
    </block>
    </value>
    <next>
    <block type="debug" id="Xaeg[eZBDM[LQ{u9G()">
    <field name="Severity">error</field>
    <value name="TEXT">
    <shadow type="text" id="tE;V,Q]+W7[W:p/bMn}Q">
    <field name="TEXT">Zyklus MAX abblenden morgens gestoppt! </field>
    </shadow>
    <block type="variables_get" id="(fw/pgGwERg#ggDGc^8d">
    <field name="VAR" id="nE[tMe{OLLxujut#+%#/">MAX Zyklus beendet</field>
    </block>
    </value>
    </block>
    </next>
    </block>
    </next>
    </block>
    </statement>
    </block>
    </next>
    </block>
    </statement>
    </block>
    </next>
    </block>
    </next>
    </block>
    </statement>
    </block>
    </statement>
    </block>
    <block type="comment" id="k@#9?8}Gvi3V]3YjA
    f," x="87" y="-1738">
    <field name="COMMENT">Hue Max automatisch morgens langsam einschalten</field>
    <next>
    <block type="on_ext" id="~01)iWjnZNH}]UI$b57A">
    <mutation xmlns="http://www.w3.org/1999/xhtml" items="5"></mutation>
    <field name="CONDITION">ne</field>
    <field name="ACK_CONDITION"></field>
    <value name="OID0">
    <shadow type="field_oid" id="GEQ;y1SSb59+MzZsY_GN">
    <field name="oid">javascript.0.Datenpunkte.Flur.Licht.CRON_Wochentag</field>
    </shadow>
    </value>
    <value name="OID1">
    <shadow type="field_oid" id="ncS4R,9mLtjW9;J1(dd"> <field name="oid">javascript.0.Datenpunkte.Flur.Licht.CRON_Monat</field> </shadow> </value> <value name="OID2"> <shadow type="field_oid" id="v8tK6i}%2s$KDd.B_As">
    <field name="oid">javascript.0.Datenpunkte.Flur.Licht.CRON_Datum</field>
    </shadow>
    </value>
    <value name="OID3">
    <shadow type="field_oid" id="9)OM,47LXv-ZWe4XU.o"> <field name="oid">javascript.0.Datenpunkte.Flur.Licht.CRON_Std</field> </shadow> </value> <value name="OID4"> <shadow type="field_oid" id="d2W|;^!|+z$)p0oiA(/r"> <field name="oid">javascript.0.Datenpunkte.Flur.Licht.CRON_Min</field> </shadow> </value> <statement name="STATEMENT"> <block type="schedule_clear" id="0WZsSo#[BB/zSspbtCKD"> <field name="NAME">MaxZeitplan</field> <next> <block type="schedule_create" id="x}?P^Q$0u}OLJ?PA{myt"> <field name="NAME">MaxZeitplan</field> <value name="SCHEDULE"> <shadow type="field_cron" id="wq]fB8YyaUS?tBPs%B@C"> <field name="CRON">* * * * *</field> </shadow> <block type="cron_builder" id=".;=744~l-D]rat.@IWBI"> <mutation xmlns="http://www.w3.org/1999/xhtml" seconds="false" as_line="false"></mutation> <field name="LINE">FALSE</field> <field name="WITH_SECONDS">FALSE</field> <value name="DOW"> <shadow type="text" id="e96iLJq;_XU-X-ZU#jKD"> <field name="TEXT">*</field> </shadow> <block type="get_value" id=":nhLX2qxF|6]:h~ZKCv6"> <field name="ATTR">val</field> <field name="OID">javascript.0.Datenpunkte.Flur.Licht.CRON_Wochentag</field> </block> </value> <value name="MONTHS"> <shadow type="text" id="!nbRgxx91LZD31R4z*+/"> <field name="TEXT">*</field> </shadow> <block type="get_value" id="#Up:6!Aru{dYwcskc6FO"> <field name="ATTR">val</field> <field name="OID">javascript.0.Datenpunkte.Flur.Licht.CRON_Monat</field> </block> </value> <value name="DAYS"> <shadow type="text" id="]$nvdZmG.[!l:F3gF{n+"> <field name="TEXT">*</field> </shadow> <block type="get_value" id="fAehlarR$[zyt,l_|~=B"> <field name="ATTR">val</field> <field name="OID">javascript.0.Datenpunkte.Flur.Licht.CRON_Datum</field> </block> </value> <value name="HOURS"> <shadow type="text" id="^7ocu$I#MI$o|r.#B^nv"> <field name="TEXT">*</field> </shadow> <block type="get_value" id="J?he8s;YGd2;h-Gaitt">
    <field name="ATTR">val</field>
    <field name="OID">javascript.0.Datenpunkte.Flur.Licht.CRON_Std</field>
    </block>
    </value>
    <value name="MINUTES">
    <shadow type="text" id="O}~evu;@fAxCdM,s(:R-">
    <field name="TEXT">
    </field>
    </shadow>
    <block type="get_value" id="{:-=QHd136HTyl(4%wC">
    <field name="ATTR">val</field>
    <field name="OID">javascript.0.Datenpunkte.Flur.Licht.CRON_Min</field>
    </block>
    </value>
    </block>
    </value>
    <statement name="STATEMENT">
    <block type="debug" id="0|dwAii]#UTH4?,I)F)7">
    <field name="Severity">warn</field>
    <value name="TEXT">
    <shadow type="text" id="sOT$]pdGx8#%$cSW}6RQ">
    <field name="TEXT">Neuer Zeitplan wurde für morgens einschalten angelegt. </field>
    </shadow>
    </value>
    <next>
    <block type="controls_if" id="j4yvD3%mWg~z
    EdN~,fM">
    <value name="IF0">
    <block type="time_compare_ex" id="1z_dMF(m-f$q90Kvc;qU">
    <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="false" actual_time="true"></mutation>
    <field name="USE_ACTUAL_TIME">TRUE</field>
    <field name="OPTION"><</field>
    <value name="START_TIME">
    <shadow type="text" id=":6F%-{bzG)iSSfeza6L=">
    <field name="TEXT">12:00</field>
    </shadow>
    <block type="time_astro" id="fys@6x3M}^7!~u;O.@7l">
    <field name="TYPE">dawn</field>
    <field name="OFFSET">18</field>
    </block>
    </value>
    </block>
    </value>
    <statement name="DO0">
    <block type="debug" id="egfh_^MD7u6}UKyXqziN">
    <field name="Severity">warn</field>
    <value name="TEXT">
    <shadow type="text" id="?m)fS~Oxt,RJ^uF.l3CV">
    <field name="TEXT">test</field>
    </shadow>
    <block type="text_join" id="IXqr+fUq[VYslHF3,~y"> <mutation items="3"></mutation> <value name="ADD0"> <block type="time_get" id="ds6}/C4?i#x6:q$2zDq-"> <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation> <field name="OPTION">object</field> </block> </value> <value name="ADD1"> <block type="text" id="jt;XRhng.h$J2;2)P28["> <field name="TEXT"> ; </field> </block> </value> <value name="ADD2"> <block type="time_astro" id="4tiRND)hpOlyrnH^uOe-"> <field name="TYPE">dawn</field> <field name="OFFSET">18</field> </block> </value> </block> </value> <next> <block type="timeouts_clearinterval" id="(/}pgJ}TaR6_:^b|oF">
    <field name="NAME">MAX aus</field>
    <next>
    <block type="timeouts_clearinterval" id="}9tVFt^}:^IsmLkm@Dcv">
    <field name="NAME">MAX ein</field>
    <next>
    <block type="procedures_callnoreturn" id="xH+jxQD/]|RihK?VB]zz">
    <mutation name="Max dimmen">
    <arg name="MAX Wert"></arg>
    <arg name="MAX erreichbar"></arg>
    <arg name="MAX aufdimmen aktiv"></arg>
    <arg name="MAX aufdimmen"></arg>
    <arg name="MAX Text"></arg>
    <arg name="MAX Zyklus beendet"></arg>
    <arg name="MAX Farbwert"></arg>
    <arg name="MAX ein/aus"></arg>
    </mutation>
    <value name="ARG0">
    <block type="math_number" id="AXpIj-h79GlbTY(HyEbW">
    <field name="NUM">30</field>
    </block>
    </value>
    <value name="ARG1">
    <block type="logic_boolean" id="L+)^13zWe}/O%s8W|B/%">
    <field name="BOOL">TRUE</field>
    </block>
    </value>
    <value name="ARG2">
    <block type="logic_boolean" id="LA.t!a_7vhj~6w,Q;v#I">
    <field name="BOOL">FALSE</field>
    </block>
    </value>
    <value name="ARG3">
    <block type="logic_boolean" id="ug]7l8Aoy}a|9bz8b?J_">
    <field name="BOOL">TRUE</field>
    </block>
    </value>
    <value name="ARG4">
    <block type="text" id="J,XWj$3y@bJvH/=g~Y#Y">
    <field name="TEXT">Max morgens einschalten +5. Wert:</field>
    </block>
    </value>
    <value name="ARG5">
    <block type="text" id="fUX5znvA6|4gRfkOgbU"> <field name="TEXT">Max Einschalt Zyklus morgens beendet. Wert: </field> </block> </value> <value name="ARG6"> <block type="math_number" id="u{pe]c04~mS.P/M;b6wJ"> <field name="NUM">2730</field> </block> </value> <value name="ARG7"> <block type="text" id="|8^}i++FoQws5;MV~ZNB"> <field name="TEXT">ein</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </statement> </block> </next> </block> </statement> <next> <block type="comment" id="Hh[T7Rk(HB|R2g1t^HL">
    <field name="COMMENT">Hue Max automatisch abends langsam einschalten</field>
    <next>
    <block type="astro" id="LqO=N$:{p/W+W:*WVnO"> <field name="TYPE">sunset</field> <field name="OFFSET">0</field> <statement name="STATEMENT"> <block type="debug" id="4b=o_7(IoBZH{s;!8tLQ"> <field name="Severity">warn</field> <value name="TEXT"> <shadow type="text" id="d,bRF,=z,1pBm~GC$OIV"> <field name="TEXT">Sonnenuntergang. </field> </shadow> </value> <next> <block type="controls_if" id="66%7$~O^^@5l[RsbVRo+"> <value name="IF0"> <block type="time_compare" id="-A8j2A{eDa@#]Wo%H-}l"> <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="false"></mutation> <field name="OPTION">&lt;</field> <field name="START_TIME">21:36</field> </block> </value> <statement name="DO0"> <block type="timeouts_clearinterval" id="LLRdxs*I-UZE@GW{.rbY"> <field name="NAME">MAX ein</field> <next> <block type="timeouts_clearinterval" id="27]Oj$$Y#n]e{6@rAybN"> <field name="NAME">MAX aus</field> <next> <block type="procedures_callnoreturn" id="%(KZO%N6)BAn~#UR44qy"> <mutation name="Max dimmen"> <arg name="MAX Wert"></arg> <arg name="MAX erreichbar"></arg> <arg name="MAX aufdimmen aktiv"></arg> <arg name="MAX aufdimmen"></arg> <arg name="MAX Text"></arg> <arg name="MAX Zyklus beendet"></arg> <arg name="MAX Farbwert"></arg> <arg name="MAX ein/aus"></arg> </mutation> <value name="ARG0"> <block type="math_number" id="wfuhN(nGHljuumadguXu"> <field name="NUM">100</field> </block> </value> <value name="ARG1"> <block type="math_number" id="rDLgu:vFO98Fk529s]hb"> <field name="NUM">1</field> </block> </value> <value name="ARG2"> <block type="logic_boolean" id="v/xfJWP$L,d4TQ@l9v}4"> <field name="BOOL">FALSE</field> </block> </value> <value name="ARG3"> <block type="logic_boolean" id="]fbUlWD9GFRusx75eE7Q"> <field name="BOOL">TRUE</field> </block> </value> <value name="ARG4"> <block type="text" id="B{y[qRb$:k#K5*Gie@sj"> <field name="TEXT">Max abends einschalten +5. Wert:</field> </block> </value> <value name="ARG5"> <block type="text" id="p-)cpZjz9l]iv4,!LN/">
    <field name="TEXT">Max Einschalt Zyklus abends beendet. Wert: </field>
    </block>
    </value>
    <value name="ARG6">
    <block type="math_number" id="IFNm_0vp1^YZk6DmjB0B">
    <field name="NUM">2730</field>
    </block>
    </value>
    <value name="ARG7">
    <block type="text" id="lwy(#lFN_S$wUs]b~tKX">
    <field name="TEXT">ein</field>
    </block>
    </value>
    </block>
    </next>
    </block>
    </next>
    </block>
    </statement>
    </block>
    </next>
    </block>
    </statement>
    <next>
    <block type="comment" id="ljK8%!=}D47{xXM[+qyu">
    <field name="COMMENT">Hue Max automatisch abends langsam ausschalten</field>
    <next>
    <block type="on_ext" id="0~zi1
    d)oO;M4dnFnfp"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="5"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="$9J$dj@K6?R@?Hr/ufCp"> <field name="oid">javascript.0.Datenpunkte.Flur.Licht.CRON_datum_abends</field> </shadow> </value> <value name="OID1"> <shadow type="field_oid" id=")?YQ@;EDzlB^+w2KvL/v"> <field name="oid">javascript.0.Datenpunkte.Flur.Licht.CRON_min_abends</field> </shadow> </value> <value name="OID2"> <shadow type="field_oid" id="?H:k_f,3PM}8^uS,G{PB"> <field name="oid">javascript.0.Datenpunkte.Flur.Licht.CRON_monat_abends</field> </shadow> </value> <value name="OID3"> <shadow type="field_oid" id=".e(Dj[W^0mlG*dUfIG(Z"> <field name="oid">javascript.0.Datenpunkte.Flur.Licht.CRON_std_abends</field> </shadow> </value> <value name="OID4"> <shadow type="field_oid" id="jDRQWS(~-)2ZhsuS_d${"> <field name="oid">javascript.0.Datenpunkte.Flur.Licht.CRON_wochentag_abends</field> </shadow> </value> <statement name="STATEMENT"> <block type="debug" id="pV-u7{?VTd%Edor];nqk"> <field name="Severity">warn</field> <value name="TEXT"> <shadow type="text" id="YDcl+!ItLt3Z7:u(Kp46"> <field name="TEXT">Zeitplan MAX abends ausschalten wurde neu angelegt: </field> </shadow> </value> <next> <block type="schedule_clear" id="CH+#N{r0(cu#FC;Z6IKm"> <field name="NAME">Max abends aus</field> <next> <block type="schedule_create" id="O63Nidu+jYM0|D;ur(pd"> <field name="NAME">Max abends aus</field> <value name="SCHEDULE"> <shadow type="field_cron" id="-dqiyQ(ND$C)Tj~OyWgT"> <field name="CRON">* * * * *</field> </shadow> <block type="cron_builder" id="V@Q66gY%GK0g]xm,9ze">
    <mutation xmlns="http://www.w3.org/1999/xhtml" seconds="false" as_line="false"></mutation>
    <field name="LINE">FALSE</field>
    <field name="WITH_SECONDS">FALSE</field>
    <value name="DOW">
    <shadow type="text" id=",%T7x18:a$.CT7St|3Fb">
    <field name="TEXT"></field>
    </shadow>
    <block type="get_value" id="9z
    .DbnZw=}hYq/W9(|">
    <field name="ATTR">val</field>
    <field name="OID">javascript.0.Datenpunkte.Flur.Licht.CRON_wochentag_abends</field>
    </block>
    </value>
    <value name="MONTHS">
    <shadow type="text" id=",kV/K;ZS2k-uiGfs*#/C">
    <field name="TEXT">*</field>
    </shadow>
    <block type="get_value" id="|Czncw8JtBEUed9{-c}]">
    <field name="ATTR">val</field>
    <field name="OID">javascript.0.Datenpunkte.Flur.Licht.CRON_monat_abends</field>
    </block>
    </value>
    <value name="DAYS">
    <shadow type="text" id="%7WON19x,lk;7QC}!QL"> <field name="TEXT">*</field> </shadow> <block type="get_value" id="j*.m_HK+*jbSW:L-Sg)">
    <field name="ATTR">val</field>
    <field name="OID">javascript.0.Datenpunkte.Flur.Licht.CRON_datum_abends</field>
    </block>
    </value>
    <value name="HOURS">
    <shadow type="text" id="LUALVt@uT:K3Z}Nb5hO"> <field name="TEXT">*</field> </shadow> <block type="get_value" id="/=dcbV^$;o$c[a5LQX"> <field name="ATTR">val</field> <field name="OID">javascript.0.Datenpunkte.Flur.Licht.CRON_std_abends</field> </block> </value> <value name="MINUTES"> <shadow type="text" id="ASXoyMTds9QyM_CND/_c"> <field name="TEXT">*</field> </shadow> <block type="get_value" id="cEGG^+:}?^PaEhG#Pf^l"> <field name="ATTR">val</field> <field name="OID">javascript.0.Datenpunkte.Flur.Licht.CRON_min_abends</field> </block> </value> </block> </value> <statement name="STATEMENT"> <block type="debug" id="1VGsD:SShZ(YPo1?:aW1"> <field name="Severity">warn</field> <value name="TEXT"> <shadow type="text" id="wLMVRQov~.7Hwr(tt09v"> <field name="TEXT">Zeitplan MAX abends ausschalten gestartet: </field> </shadow> </value> <next> <block type="timeouts_clearinterval" id="dr_kpJ7jjo2b.JJCpOpi"> <field name="NAME">MAX aus</field> <next> <block type="timeouts_clearinterval" id="zo0;BvCl3ljqmCe@lhUD"> <field name="NAME">MAX ein</field> <next> <block type="procedures_callnoreturn" id="2E!l$Sbr?^2=L~v==Kom"> <mutation name="Max dimmen"> <arg name="MAX Wert"></arg> <arg name="MAX erreichbar"></arg> <arg name="MAX aufdimmen aktiv"></arg> <arg name="MAX aufdimmen"></arg> <arg name="MAX Text"></arg> <arg name="MAX Zyklus beendet"></arg> <arg name="MAX Farbwert"></arg> <arg name="MAX ein/aus"></arg> </mutation> <value name="ARG0"> <block type="math_number" id=")!J=OCNEISl$+7S1RLsM"> <field name="NUM">0</field> </block> </value> <value name="ARG1"> <block type="math_number" id="mVq0}k6*dk8g(|tr:~+h"> <field name="NUM">1</field> </block> </value> <value name="ARG2"> <block type="logic_boolean" id="NqyCS;7.:!Fx.iNFa6Ci"> <field name="BOOL">FALSE</field> </block> </value> <value name="ARG3"> <block type="logic_boolean" id="9iBsCu2f{zTBfo--pW,#"> <field name="BOOL">FALSE</field> </block> </value> <value name="ARG4"> <block type="text" id="~{Ti()gN^IFEv*[[Z8^">
    <field name="TEXT">Max abends ausschalten -5. Wert: </field>
    </block>
    </value>
    <value name="ARG5">
    <block type="text" id="*oQCa[ugwu@tve.i//f"> <field name="TEXT">Zyklus MAX ausschalten abends beendet! Wert: </field> </block> </value> <value name="ARG6"> <block type="math_number" id="T$voOMW{*r1z_6Isb;A2"> <field name="NUM">2730</field> </block> </value> <value name="ARG7"> <block type="text" id="776Wd]9@@}u@@Ik~Z{-N"> <field name="TEXT">aus</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </statement> <next> <block type="comment" id="y[bm=SQ8KmXT}!$S5E=J"> <field name="COMMENT">Hue Max automatisch morgens langsam ausschalten</field> <next> <block type="astro" id="VE!zP+,ZHk7o8P6f$5_!"> <field name="TYPE">dawn</field> <field name="OFFSET">20</field> <statement name="STATEMENT"> <block type="debug" id="9F6/6n2FwB;tX]e:0Z%c"> <field name="Severity">warn</field> <value name="TEXT"> <shadow type="text" id=":KpTCwK6a5o=HJeKe~Jw"> <field name="TEXT">Sonnenaufgang 20min später.</field> </shadow> </value> <next> <block type="timeouts_clearinterval" id="iF#*AK@6($?,9pB$sISG"> <field name="NAME">MAX aus</field> <next> <block type="timeouts_clearinterval" id="@w+R1Osl8H5/?^Ipgm$^"> <field name="NAME">MAX ein</field> <next> <block type="procedures_callnoreturn" id="AMBjnh5Eoo,SU!n-w?bc"> <mutation name="Max dimmen"> <arg name="MAX Wert"></arg> <arg name="MAX erreichbar"></arg> <arg name="MAX aufdimmen aktiv"></arg> <arg name="MAX aufdimmen"></arg> <arg name="MAX Text"></arg> <arg name="MAX Zyklus beendet"></arg> <arg name="MAX Farbwert"></arg> <arg name="MAX ein/aus"></arg> </mutation> <value name="ARG0"> <block type="math_number" id="*%]wK0y-ig:K9{%%W%R("> <field name="NUM">0</field> </block> </value> <value name="ARG1"> <block type="math_number" id="yV/@3n2A7/Us.ElZ_iev"> <field name="NUM">1</field> </block> </value> <value name="ARG2"> <block type="logic_boolean" id="_A*M37z6=!*!dHQRH6VN"> <field name="BOOL">FALSE</field> </block> </value> <value name="ARG3"> <block type="logic_boolean" id="%psd|BmgaQJnX|1jqV6x"> <field name="BOOL">FALSE</field> </block> </value> <value name="ARG4"> <block type="text" id="(Rm7:NZtgd2OdWOR1szK"> <field name="TEXT">Max morgens ausschalten -5. Wert: </field> </block> </value> <value name="ARG5"> <block type="text" id="t0.ECvW;(OYjYf+yVWhc"> <field name="TEXT">Zyklus MAX ausschalten morgens beendet! Wert: </field> </block> </value> <value name="ARG6"> <block type="math_number" id="w$@IQeFmq,b!k{!{T(gj"> <field name="NUM">2730</field> </block> </value> <value name="ARG7"> <block type="text" id="Cym~$UbeCt.9xM@kGC
    ">
    <field name="TEXT">aus</field>
    </block>
    </value>
    </block>
    </next>
    </block>
    </next>
    </block>
    </next>
    </block>
    </statement>
    </block>
    </next>
    </block>
    </next>
    </block>
    </next>
    </block>
    </next>
    </block>
    </next>
    </block>
    </next>
    </block>
    </next>
    </block>
    </xml>

    habe den Blockly exportiert und als txt Datei hier eingestellt.
    Hue_Max.txt

    HomoranH Nicht stören
    HomoranH Nicht stören
    Homoran
    Global Moderator Administrators
    schrieb am zuletzt editiert von Homoran
    #32

    @Kapitaen31 sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

    Ich habe das Script als blockly geschrieben...

    dann zeig es bitte als Screenshot hier eingebunden

    kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

    K 1 Antwort Letzte Antwort
    0
    • HomoranH Homoran

      @Kapitaen31 sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

      Kein system.host...

      als Experte?

      K Offline
      K Offline
      Kapitaen31
      schrieb am zuletzt editiert von
      #33

      @Homoran sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

      @Kapitaen31 sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

      Kein system.host...

      als Experte?

      habe sie gefunden. ich hatte nicht als Experte geschaut.
      Ich würde alle mit "mem", "diskfree", "cpu" mitschreiben.

      Oder noch andere ?


      Raspberry 4 mit 120GB SSD Bookworm
      Grafana, influxDB2, Hue, Zigbee2MQTT, Shelly,usw.

      OliverIOO 1 Antwort Letzte Antwort
      0
      • K Kapitaen31

        @OliverIO sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

        @Kapitaen31

        wenn der rechner auf betriebssystemebene abstürzt musst du auch die logs des betriebssystems prüfen.
        ein applikationslog (wie hier vom iobroker) wird da uU nix dazu sagen können. bspw weil das betriebssystem entscheidet das eine applikation abgeschossen wird (ggfs wegen oom= out of memory)
        dann bekommt der iobroker das gar nicht richtig mit

        Okay, welche Logs sind da entscheidend?

        OliverIOO Offline
        OliverIOO Offline
        OliverIO
        schrieb am zuletzt editiert von OliverIO
        #34

        @Kapitaen31 sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

        Okay, welche Logs sind da entscheidend?

        Kernel-Log, speziell nach folgenden Schlüsselwörtern suchen

        dmesg -T | grep <suchbegriff>
        

        error
        warn
        segfault
        oom
        watchdog

        systemd journal mit

        sudo journalctl --since 2025-12-01 --until 2025-12-02
        
        

        mit --since und --until wirst du den zeitraum einschränken müssen
        mit seite auf/ab kannst du dann blättern und dann schaust du dir mal die 100 zeile vor dem absturz an.

        da auch nach den gleichen suchbegriffen wie oben schauen.
        halt irgendwelche probleme.
        im zweifel kopieren und hier reinposten

        Meine Adapter und Widgets
        TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
        Links im Profil

        K 1 Antwort Letzte Antwort
        1
        • K Kapitaen31

          @Homoran sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

          @Kapitaen31 sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

          Kein system.host...

          als Experte?

          habe sie gefunden. ich hatte nicht als Experte geschaut.
          Ich würde alle mit "mem", "diskfree", "cpu" mitschreiben.

          Oder noch andere ?

          OliverIOO Offline
          OliverIOO Offline
          OliverIO
          schrieb am zuletzt editiert von
          #35

          @Kapitaen31 sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

          mem

          es gibt mehrere mit mem.
          ja kannst du machen.
          fügt der systemlast noch mehr dazu, aber dann wird, wenn es das ist, der absturtz ein wenig früher sein.

          Meine Adapter und Widgets
          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
          Links im Profil

          K 1 Antwort Letzte Antwort
          0
          • HomoranH Homoran

            @Kapitaen31 sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

            Ich habe das Script als blockly geschrieben...

            dann zeig es bitte als Screenshot hier eingebunden

            K Offline
            K Offline
            Kapitaen31
            schrieb am zuletzt editiert von
            #36

            @Homoran sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

            @Kapitaen31 sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

            Ich habe das Script als blockly geschrieben...

            dann zeig es bitte als Screenshot hier eingebunden

            Es ist recht groß. Ich hoffe ihr könnte es lesen.
            a59246ed-bb4c-46a8-a604-f5fb7ab496f9-image.png

            und die anderen Teile. Ich habe sie in mehrere Bilder unterteilt. Immer ein Trigger.
            cf0e515f-b2e4-45b0-92c7-79a1a17969b6-image.png

            575ddf89-a4a0-438d-be85-2e29d97aa303-image.png

            eefdd212-1756-494d-9615-449a3eebfa1c-image.png

            9e66d31f-a73c-4f46-8371-a436071c98f3-image.png


            Raspberry 4 mit 120GB SSD Bookworm
            Grafana, influxDB2, Hue, Zigbee2MQTT, Shelly,usw.

            OliverIOO HomoranH 2 Antworten Letzte Antwort
            0
            • K Kapitaen31

              @Homoran sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

              @Kapitaen31 sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

              Ich habe das Script als blockly geschrieben...

              dann zeig es bitte als Screenshot hier eingebunden

              Es ist recht groß. Ich hoffe ihr könnte es lesen.
              a59246ed-bb4c-46a8-a604-f5fb7ab496f9-image.png

              und die anderen Teile. Ich habe sie in mehrere Bilder unterteilt. Immer ein Trigger.
              cf0e515f-b2e4-45b0-92c7-79a1a17969b6-image.png

              575ddf89-a4a0-438d-be85-2e29d97aa303-image.png

              eefdd212-1756-494d-9615-449a3eebfa1c-image.png

              9e66d31f-a73c-4f46-8371-a436071c98f3-image.png

              OliverIOO Offline
              OliverIOO Offline
              OliverIO
              schrieb am zuletzt editiert von
              #37

              @Kapitaen31

              oder du machst ein export.
              dann können es andere zum prüfen importieren (ich nicht :) bei blockly bin ich raus)

              Meine Adapter und Widgets
              TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
              Links im Profil

              K HomoranH 2 Antworten Letzte Antwort
              0
              • OliverIOO OliverIO

                @Kapitaen31 sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

                mem

                es gibt mehrere mit mem.
                ja kannst du machen.
                fügt der systemlast noch mehr dazu, aber dann wird, wenn es das ist, der absturtz ein wenig früher sein.

                K Offline
                K Offline
                Kapitaen31
                schrieb am zuletzt editiert von
                #38

                @OliverIO sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

                es gibt mehrere mit mem.

                Ja, genau. Das meinte ich auch. ich habe noch CPU und load mit eingefügt.


                Raspberry 4 mit 120GB SSD Bookworm
                Grafana, influxDB2, Hue, Zigbee2MQTT, Shelly,usw.

                1 Antwort Letzte Antwort
                0
                • OliverIOO OliverIO

                  @Kapitaen31

                  oder du machst ein export.
                  dann können es andere zum prüfen importieren (ich nicht :) bei blockly bin ich raus)

                  K Offline
                  K Offline
                  Kapitaen31
                  schrieb am zuletzt editiert von
                  #39

                  @OliverIO sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

                  @Kapitaen31

                  oder du machst ein export.
                  dann können es andere zum prüfen importieren (ich nicht :) bei blockly bin ich raus)

                  Ja, genau. Das hatte ich oben schon gemacht.


                  Raspberry 4 mit 120GB SSD Bookworm
                  Grafana, influxDB2, Hue, Zigbee2MQTT, Shelly,usw.

                  HomoranH 1 Antwort Letzte Antwort
                  0
                  • K Kapitaen31

                    @Homoran sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

                    @Kapitaen31 sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

                    Ich habe das Script als blockly geschrieben...

                    dann zeig es bitte als Screenshot hier eingebunden

                    Es ist recht groß. Ich hoffe ihr könnte es lesen.
                    a59246ed-bb4c-46a8-a604-f5fb7ab496f9-image.png

                    und die anderen Teile. Ich habe sie in mehrere Bilder unterteilt. Immer ein Trigger.
                    cf0e515f-b2e4-45b0-92c7-79a1a17969b6-image.png

                    575ddf89-a4a0-438d-be85-2e29d97aa303-image.png

                    eefdd212-1756-494d-9615-449a3eebfa1c-image.png

                    9e66d31f-a73c-4f46-8371-a436071c98f3-image.png

                    HomoranH Nicht stören
                    HomoranH Nicht stören
                    Homoran
                    Global Moderator Administrators
                    schrieb am zuletzt editiert von
                    #40

                    @Kapitaen31 sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

                    Es ist recht groß

                    ja, mobil kaum handlebar 😉

                    ich hab mich daher erst mal auf den Abend beschränkt, da fällt mir auf, dass dort max erreichbar eine Zahl (1|) ist.
                    in allen anderen Fällen ist es bool.

                    Ob das jetzt ein Problem im Vergleich ergibt entzieht sich meinem Wissen. es könnte durch implizite Typwandlung korrigiert werden.

                    kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                    1 Antwort Letzte Antwort
                    0
                    • K Kapitaen31

                      @OliverIO sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

                      @Kapitaen31

                      oder du machst ein export.
                      dann können es andere zum prüfen importieren (ich nicht :) bei blockly bin ich raus)

                      Ja, genau. Das hatte ich oben schon gemacht.

                      HomoranH Nicht stören
                      HomoranH Nicht stören
                      Homoran
                      Global Moderator Administrators
                      schrieb am zuletzt editiert von
                      #41

                      @Kapitaen31 sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

                      Das hatte ich oben schon gemacht.

                      aber bitte als Text in code-tags, ggf in spoiler.
                      nicht als downloadbare Datei unbekannten Formats und Inhalts

                      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                      K 1 Antwort Letzte Antwort
                      0
                      • OliverIOO OliverIO

                        @Kapitaen31 sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

                        Okay, welche Logs sind da entscheidend?

                        Kernel-Log, speziell nach folgenden Schlüsselwörtern suchen

                        dmesg -T | grep <suchbegriff>
                        

                        error
                        warn
                        segfault
                        oom
                        watchdog

                        systemd journal mit

                        sudo journalctl --since 2025-12-01 --until 2025-12-02
                        
                        

                        mit --since und --until wirst du den zeitraum einschränken müssen
                        mit seite auf/ab kannst du dann blättern und dann schaust du dir mal die 100 zeile vor dem absturz an.

                        da auch nach den gleichen suchbegriffen wie oben schauen.
                        halt irgendwelche probleme.
                        im zweifel kopieren und hier reinposten

                        K Offline
                        K Offline
                        Kapitaen31
                        schrieb am zuletzt editiert von
                        #42

                        @OliverIO sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

                        Kernel-Log, speziell nach folgenden Schlüsselwörtern suchen

                        dmesg -T | grep <suchbegriff>
                        

                        error
                        warn
                        segfault
                        oom
                        watchdog

                        Bei error erfolgt keine Ausgabe.
                        Bei warn erhalte ich folgendes:

                        PI@PIArgon:/var/log $ dmesg -T | grep warn
                        [Fr Jan 30 17:33:52 2026] snd_bcm2835: module is from the staging directory, the quality is unknown, you have been warned.
                        [Fr Jan 30 17:33:52 2026] vc_sm_cma: module is from the staging directory, the quality is unknown, you have been warned.
                        [Fr Jan 30 17:33:52 2026] bcm2835_mmal_vchiq: module is from the staging directory, the quality is unknown, you have been warned.
                        [Fr Jan 30 17:33:52 2026] bcm2835_codec: module is from the staging directory, the quality is unknown, you have been warned.
                        [Fr Jan 30 17:33:52 2026] bcm2835_v4l2: module is from the staging directory, the quality is unknown, you have been warned.
                        [Fr Jan 30 17:33:52 2026] bcm2835_isp: module is from the staging directory, the quality is unknown, you have been warned.
                        

                        Bei segfault und oom erscheinen keine Ausgaben.
                        Bei watchdog:

                        PI@PIArgon:/var/log $ dmesg -T | grep watchdog
                        [Fr Jan 30 17:33:47 2026] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer
                        

                        systemd journal mit

                        Wie lange dauert so eine Ausgabe ? Ich habe von 29.01. bis 30.01. den Zeitraum eingeschränkt.
                        Weil es erscheint bei mir nicht sofort die Ausgabe. Bisher zeigt der Befehl bei mir nichts.


                        Raspberry 4 mit 120GB SSD Bookworm
                        Grafana, influxDB2, Hue, Zigbee2MQTT, Shelly,usw.

                        Thomas BraunT 1 Antwort Letzte Antwort
                        0
                        • HomoranH Homoran

                          @Kapitaen31 sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

                          Das hatte ich oben schon gemacht.

                          aber bitte als Text in code-tags, ggf in spoiler.
                          nicht als downloadbare Datei unbekannten Formats und Inhalts

                          K Offline
                          K Offline
                          Kapitaen31
                          schrieb am zuletzt editiert von
                          #43

                          @Homoran sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

                          @Kapitaen31 sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

                          Das hatte ich oben schon gemacht.

                          aber bitte als Text in code-tags, ggf in spoiler.
                          nicht als downloadbare Datei unbekannten Formats und Inhalts

                          Okay, dann mache ich es oben als spoiler.


                          Raspberry 4 mit 120GB SSD Bookworm
                          Grafana, influxDB2, Hue, Zigbee2MQTT, Shelly,usw.

                          1 Antwort Letzte Antwort
                          0
                          • OliverIOO OliverIO

                            @Kapitaen31

                            oder du machst ein export.
                            dann können es andere zum prüfen importieren (ich nicht :) bei blockly bin ich raus)

                            HomoranH Nicht stören
                            HomoranH Nicht stören
                            Homoran
                            Global Moderator Administrators
                            schrieb am zuletzt editiert von
                            #44

                            @OliverIO sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

                            bei blockly bin ich raus

                            @kapitaen31
                            dann mach doch bitte für @oliverio auch noch einen Export der Javascript Ansicht (ohne die letzte kilometerlange kryptische Zeile)

                            kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                            der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                            K 1 Antwort Letzte Antwort
                            0
                            • K Kapitaen31

                              @OliverIO sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

                              Kernel-Log, speziell nach folgenden Schlüsselwörtern suchen

                              dmesg -T | grep <suchbegriff>
                              

                              error
                              warn
                              segfault
                              oom
                              watchdog

                              Bei error erfolgt keine Ausgabe.
                              Bei warn erhalte ich folgendes:

                              PI@PIArgon:/var/log $ dmesg -T | grep warn
                              [Fr Jan 30 17:33:52 2026] snd_bcm2835: module is from the staging directory, the quality is unknown, you have been warned.
                              [Fr Jan 30 17:33:52 2026] vc_sm_cma: module is from the staging directory, the quality is unknown, you have been warned.
                              [Fr Jan 30 17:33:52 2026] bcm2835_mmal_vchiq: module is from the staging directory, the quality is unknown, you have been warned.
                              [Fr Jan 30 17:33:52 2026] bcm2835_codec: module is from the staging directory, the quality is unknown, you have been warned.
                              [Fr Jan 30 17:33:52 2026] bcm2835_v4l2: module is from the staging directory, the quality is unknown, you have been warned.
                              [Fr Jan 30 17:33:52 2026] bcm2835_isp: module is from the staging directory, the quality is unknown, you have been warned.
                              

                              Bei segfault und oom erscheinen keine Ausgaben.
                              Bei watchdog:

                              PI@PIArgon:/var/log $ dmesg -T | grep watchdog
                              [Fr Jan 30 17:33:47 2026] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer
                              

                              systemd journal mit

                              Wie lange dauert so eine Ausgabe ? Ich habe von 29.01. bis 30.01. den Zeitraum eingeschränkt.
                              Weil es erscheint bei mir nicht sofort die Ausgabe. Bisher zeigt der Befehl bei mir nichts.

                              Thomas BraunT Online
                              Thomas BraunT Online
                              Thomas Braun
                              Most Active
                              schrieb am zuletzt editiert von
                              #45

                              @Kapitaen31

                              Kannst auch damit mal schauen:

                              dmesg --level=emerg,alert,crit,err,warn -T
                              

                              Linux-Werkzeugkasten:
                              https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                              NodeJS Fixer Skript:
                              https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                              iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                              K 1 Antwort Letzte Antwort
                              0
                              • Thomas BraunT Thomas Braun

                                @Kapitaen31

                                Kannst auch damit mal schauen:

                                dmesg --level=emerg,alert,crit,err,warn -T
                                
                                K Offline
                                K Offline
                                Kapitaen31
                                schrieb am zuletzt editiert von
                                #46

                                @Thomas-Braun sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

                                @Kapitaen31

                                Kannst auch damit mal schauen:

                                dmesg --level=emerg,alert,crit,err,warn -T
                                

                                Hier ist die Ausgabe:

                                PI@PIArgon:~ $ dmesg --level=emerg,alert,crit,err,warn -T
                                [Fr Jan 30 20:18:41 2026] pci_bus 0000:01: supply vpcie3v3 not found, using dummy regulator
                                [Fr Jan 30 20:18:41 2026] pci_bus 0000:01: supply vpcie3v3aux not found, using dummy regulator
                                [Fr Jan 30 20:18:41 2026] pci_bus 0000:01: supply vpcie12v not found, using dummy regulator
                                [Fr Jan 30 20:18:43 2026] mmc1: Controller never released inhibit bit(s).
                                [Fr Jan 30 20:18:43 2026] usb 2-2: UAS is ignored for this device, using usb-storage instead
                                [Fr Jan 30 20:18:44 2026] usb 2-2: UAS is ignored for this device, using usb-storage instead
                                [Fr Jan 30 20:18:50 2026] systemd-journald[276]: File /var/log/journal/3a228e6261a14b389cf6e2129be3286a/system.journal corrupted or uncleanly shut down, renaming and replacing.
                                [Fr Jan 30 20:18:59 2026] vc_sm_cma: module is from the staging directory, the quality is unknown, you have been warned.
                                [Fr Jan 30 20:18:59 2026] bcm2835_mmal_vchiq: module is from the staging directory, the quality is unknown, you have been warned.
                                [Fr Jan 30 20:18:59 2026] snd_bcm2835: module is from the staging directory, the quality is unknown, you have been warned.
                                [Fr Jan 30 20:18:59 2026] bcm2835_codec: module is from the staging directory, the quality is unknown, you have been warned.
                                [Fr Jan 30 20:18:59 2026] bcm2835_v4l2: module is from the staging directory, the quality is unknown, you have been warned.
                                [Fr Jan 30 20:18:59 2026] bcm2835_isp: module is from the staging directory, the quality is unknown, you have been warned.
                                [Fr Jan 30 20:19:00 2026] hci_uart_bcm serial0-0: supply vbat not found, using dummy regulator
                                [Fr Jan 30 20:19:00 2026] hci_uart_bcm serial0-0: supply vddio not found, using dummy regulator
                                
                                

                                Raspberry 4 mit 120GB SSD Bookworm
                                Grafana, influxDB2, Hue, Zigbee2MQTT, Shelly,usw.

                                1 Antwort Letzte Antwort
                                0
                                • K Kapitaen31

                                  @RoddiEF sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

                                  Mal eine Frage zum Lüfter und dem nicht laufen bzw nicht richtig: Die Software dazu ist aber installiert und deinen Wünschen entsprechend Angepasst?
                                  Ich habe das Gehäuse mehrfach in Betrieb und die Lüfter sind schon ab und zu mal zu hören, je nachdem was gerade "intensives" ausgeführt wird. Temperaturmäßig liegen meine dadurch so um die 40°C im Höchstfall mal 55°C deshalb meine Frage zu Anfang.

                                  Moin,

                                  ja ich habe die Software installiert. Die Konfig sieht so aus:

                                  PI@PIArgon:/etc $ cat argononed.conf
                                  #
                                  # Argon Fan Configuration
                                  #
                                  # Min Temp=Fan Speed
                                  50=10
                                  55=50
                                  60=100
                                  
                                  

                                  Was ich gerade komisch finde das der Befehl

                                  sudo systemctl status argononed
                                  

                                  keine Ausgabe generiert....
                                  Ich suche gerade...

                                  Meister MopperM Offline
                                  Meister MopperM Offline
                                  Meister Mopper
                                  schrieb am zuletzt editiert von Meister Mopper
                                  #47

                                  @Kapitaen31 sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

                                  Was ich gerade komisch finde das der Befehl

                                  sudo systemctl status argononed

                                  keine Ausgabe generiert....

                                  Dann stimmt etwas mit dem Service nicht. Es müsste so ähnlich aussehen:

                                  thomas@rpifr24:~ $ sudo systemctl status argononed
                                  ● argononed.service - Argon One Fan and Button Service
                                       Loaded: loaded (/usr/lib/systemd/system/argononed.service; enabled; preset: enabled)
                                       Active: active (running) since Tue 2026-01-27 08:00:55 UTC; 3 days ago
                                   Invocation: 235e1f92daad47fc85a1436fc4a0f835
                                     Main PID: 1735012 (python3)
                                        Tasks: 5 (limit: 3919)
                                          CPU: 20min 18.948s
                                       CGroup: /system.slice/argononed.service
                                               └─1735012 /usr/bin/python3 /etc/argon/argononed.py SERVICE
                                  
                                  Notice: journal has been rotated since unit was started, output may be incomplete.
                                  thomas@rpifr24:~ $
                                  

                                  Ich hatte das Problem, dass bei gleicher Konstellation plötzlich der Lüfter permanent max lief.
                                  Bei mir hat es geholfen, argononed zu deinstallieren und neu zu konfigurieren.
                                  Offenbar wurde es bei der Umstellung von bookworm auf trixie nicht sauber mitgenommen.

                                  Jetzt läuft es wieder geschmeidig.

                                  Proxmox und HA

                                  K 1 Antwort Letzte Antwort
                                  0
                                  • HomoranH Homoran

                                    @OliverIO sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

                                    bei blockly bin ich raus

                                    @kapitaen31
                                    dann mach doch bitte für @oliverio auch noch einen Export der Javascript Ansicht (ohne die letzte kilometerlange kryptische Zeile)

                                    K Offline
                                    K Offline
                                    Kapitaen31
                                    schrieb am zuletzt editiert von
                                    #48

                                    @Homoran sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

                                    @kapitaen31
                                    dann mach doch bitte für @oliverio auch noch einen Export der Javascript Ansicht (ohne die letzte kilometerlange kryptische Zeile)

                                    Hier kommt der die JavaScript Ansicht:

                                    var MAX_Wert, MAX_erreichbar, MAX_aufdimmen_aktiv, MAX_aufdimmen, MAX_Text, MAX_Zyklus_beendet, MAX_Farbwert, MAX_ein_aus, MaxZeitplan, MAX_aus, MAX_ein, MAX_Helligkeit, Max_abends_aus, Wartezeit;
                                    
                                    // Hue Lampe mit angegebenem Wert langsam einschalten.
                                    async function Max_dimmen(MAX_Wert, MAX_erreichbar, MAX_aufdimmen_aktiv, MAX_aufdimmen, MAX_Text, MAX_Zyklus_beendet, MAX_Farbwert, MAX_ein_aus) {
                                      if (MAX_ein_aus == 'ein') {
                                        // Max wird  aufgeblendet (einschalten)
                                        if (getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val == 0) {
                                          setState('alias.0.OG.Flur.Licht.HelligkeitHueMax' /* Helligkeit Hue Max */, 5);
                                          console.warn('Max eingeschaltet! ');
                                        }
                                        setState('alias.0.OG.Flur.Licht.FarbTemperaturHueMax' /* Farb Temp Hue Max */, MAX_Farbwert);
                                        setState('javascript.0.Datenpunkte.Flur.Licht.Abdimmen_aktiv' /* Aufdimmen aktiv */, true, true);
                                        MAX_ein = setInterval(async () => {
                                          if (getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val < MAX_Wert && getState('alias.0.OG.Flur.Licht.Erreichbar Hue Max').val == MAX_erreichbar) {
                                            setState('alias.0.OG.Flur.Licht.HelligkeitHueMax' /* Helligkeit Hue Max */, (getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val + 5));
                                            console.log((String(MAX_Text) + String(getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val)));
                                          } else {
                                            (() => { if (MAX_ein) { clearInterval(MAX_ein); MAX_ein = null; }})();
                                            setState('javascript.0.Datenpunkte.Flur.Licht.Abdimmen_aktiv' /* Aufdimmen aktiv */, MAX_aufdimmen_aktiv, true);
                                            Wartezeit = setTimeout(async () => {
                                              Wartezeit = null;
                                              console.log((String(MAX_Zyklus_beendet) + String(getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val)));
                                            }, 3000);
                                          }
                                        }, 30000);
                                      } else if (MAX_ein_aus == 'aus') {
                                        // Max wird  abgeblendet (ausgeschalten)
                                        if (getState('javascript.0.Datenpunkte.Flur.Licht.Abdimmen_aktiv').val) {
                                          (() => { if (MAX_ein) { clearInterval(MAX_ein); MAX_ein = null; }})();
                                          (() => { if (MAX_aus) { clearInterval(MAX_aus); MAX_aus = null; }})();
                                          setState('javascript.0.Datenpunkte.Flur.Licht.Abdimmen_aktiv' /* Aufdimmen aktiv */, MAX_aufdimmen_aktiv, true);
                                        }
                                        MAX_aus = setInterval(async () => {
                                          if (MAX_Wert == 0) {
                                            if (getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val > 6 && getState('alias.0.OG.Flur.Licht.Erreichbar Hue Max').val == 1) {
                                              MAX_Helligkeit = true;
                                            } else {
                                              MAX_Helligkeit = false;
                                            }
                                          } else {
                                            if (getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val > MAX_Wert && getState('alias.0.OG.Flur.Licht.Erreichbar Hue Max').val == 1) {
                                              MAX_Helligkeit = true;
                                            } else {
                                              MAX_Helligkeit = false;
                                            }
                                          }
                                          if (MAX_Helligkeit) {
                                            setState('alias.0.OG.Flur.Licht.HelligkeitHueMax' /* Helligkeit Hue Max */, (getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val - 5));
                                            console.log((String(MAX_Text) + String(getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val)));
                                          } else {
                                            (() => { if (MAX_aus) { clearInterval(MAX_aus); MAX_aus = null; }})();
                                            setState('alias.0.OG.Flur.Licht.EingeschaltetHueMax' /* Ein Hue Max */, false);
                                            console.error(MAX_Zyklus_beendet);
                                          }
                                        }, 30000);
                                      }
                                    }
                                    
                                    
                                    // Hue Max automatisch morgens langsam einschalten
                                    on({ id: [].concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_Wochentag']).concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_Monat']).concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_Datum']).concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_Std']).concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_Min']), change: 'ne' }, async (obj) => {
                                      (() => { if (MaxZeitplan) { clearSchedule(MaxZeitplan); MaxZeitplan = null; }})();
                                      MaxZeitplan = schedule(getState('javascript.0.Datenpunkte.Flur.Licht.CRON_Min').val.toString().trim() + ' ' + getState('javascript.0.Datenpunkte.Flur.Licht.CRON_Std').val.toString().trim() + ' ' + getState('javascript.0.Datenpunkte.Flur.Licht.CRON_Datum').val.toString().trim() + ' ' + getState('javascript.0.Datenpunkte.Flur.Licht.CRON_Monat').val.toString().trim() + ' ' + getState('javascript.0.Datenpunkte.Flur.Licht.CRON_Wochentag').val.toString().trim(), async () => {
                                        console.warn('Neuer Zeitplan wurde für morgens einschalten angelegt.   ');
                                        if (compareTime(getAstroDate('dawn', undefined, 18), null, '<', null)) {
                                          console.warn(([(new Date().getTime()),'  ;   ',getAstroDate('dawn', undefined, 18)].join('')));
                                          (() => { if (MAX_aus) { clearInterval(MAX_aus); MAX_aus = null; }})();
                                          (() => { if (MAX_ein) { clearInterval(MAX_ein); MAX_ein = null; }})();
                                          await Max_dimmen(30, true, false, true, 'Max morgens einschalten +5. Wert:', 'Max Einschalt Zyklus morgens beendet. Wert: ', 2730, 'ein');
                                        }
                                      });
                                    });
                                    // Hue Max automatisch abends langsam einschalten
                                    schedule({ astro: 'sunset', shift: 0 }, async () => {
                                      console.warn('Sonnenuntergang.  ');
                                      if (compareTime('21:36', 'null', '<')) {
                                        (() => { if (MAX_ein) { clearInterval(MAX_ein); MAX_ein = null; }})();
                                        (() => { if (MAX_aus) { clearInterval(MAX_aus); MAX_aus = null; }})();
                                        await Max_dimmen(100, 1, false, true, 'Max abends einschalten +5. Wert:', 'Max Einschalt Zyklus abends beendet. Wert: ', 2730, 'ein');
                                      }
                                    });
                                    // Hue Max automatisch abends langsam ausschalten
                                    on({ id: [].concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_datum_abends']).concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_min_abends']).concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_monat_abends']).concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_std_abends']).concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_wochentag_abends']), change: 'ne' }, async (obj) => {
                                      console.warn('Zeitplan MAX abends ausschalten wurde neu angelegt: ');
                                      (() => { if (Max_abends_aus) { clearSchedule(Max_abends_aus); Max_abends_aus = null; }})();
                                      Max_abends_aus = schedule(getState('javascript.0.Datenpunkte.Flur.Licht.CRON_min_abends').val.toString().trim() + ' ' + getState('javascript.0.Datenpunkte.Flur.Licht.CRON_std_abends').val.toString().trim() + ' ' + getState('javascript.0.Datenpunkte.Flur.Licht.CRON_datum_abends').val.toString().trim() + ' ' + getState('javascript.0.Datenpunkte.Flur.Licht.CRON_monat_abends').val.toString().trim() + ' ' + getState('javascript.0.Datenpunkte.Flur.Licht.CRON_wochentag_abends').val.toString().trim(), async () => {
                                        console.warn('Zeitplan MAX abends ausschalten gestartet: ');
                                        (() => { if (MAX_aus) { clearInterval(MAX_aus); MAX_aus = null; }})();
                                        (() => { if (MAX_ein) { clearInterval(MAX_ein); MAX_ein = null; }})();
                                        await Max_dimmen(0, 1, false, false, 'Max abends ausschalten -5. Wert:  ', 'Zyklus MAX ausschalten abends beendet!  Wert:  ', 2730, 'aus');
                                      });
                                    });
                                    // Hue Max automatisch morgens langsam ausschalten
                                    schedule({ astro: 'dawn', shift: 20 }, async () => {
                                      console.warn('Sonnenaufgang 20min später.');
                                      (() => { if (MAX_aus) { clearInterval(MAX_aus); MAX_aus = null; }})();
                                      (() => { if (MAX_ein) { clearInterval(MAX_ein); MAX_ein = null; }})();
                                      await Max_dimmen(0, 1, false, false, 'Max morgens ausschalten -5. Wert:  ', 'Zyklus MAX ausschalten morgens beendet!  Wert:  ', 2730, 'aus');
                                    });
                                    
                                    

                                    Raspberry 4 mit 120GB SSD Bookworm
                                    Grafana, influxDB2, Hue, Zigbee2MQTT, Shelly,usw.

                                    OliverIOO 2 Antworten Letzte Antwort
                                    0
                                    • Meister MopperM Meister Mopper

                                      @Kapitaen31 sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

                                      Was ich gerade komisch finde das der Befehl

                                      sudo systemctl status argononed

                                      keine Ausgabe generiert....

                                      Dann stimmt etwas mit dem Service nicht. Es müsste so ähnlich aussehen:

                                      thomas@rpifr24:~ $ sudo systemctl status argononed
                                      ● argononed.service - Argon One Fan and Button Service
                                           Loaded: loaded (/usr/lib/systemd/system/argononed.service; enabled; preset: enabled)
                                           Active: active (running) since Tue 2026-01-27 08:00:55 UTC; 3 days ago
                                       Invocation: 235e1f92daad47fc85a1436fc4a0f835
                                         Main PID: 1735012 (python3)
                                            Tasks: 5 (limit: 3919)
                                              CPU: 20min 18.948s
                                           CGroup: /system.slice/argononed.service
                                                   └─1735012 /usr/bin/python3 /etc/argon/argononed.py SERVICE
                                      
                                      Notice: journal has been rotated since unit was started, output may be incomplete.
                                      thomas@rpifr24:~ $
                                      

                                      Ich hatte das Problem, dass bei gleicher Konstellation plötzlich der Lüfter permanent max lief.
                                      Bei mir hat es geholfen, argononed zu deinstallieren und neu zu konfigurieren.
                                      Offenbar wurde es bei der Umstellung von bookworm auf trixie nicht sauber mitgenommen.

                                      Jetzt läuft es wieder geschmeidig.

                                      K Offline
                                      K Offline
                                      Kapitaen31
                                      schrieb am zuletzt editiert von Kapitaen31
                                      #49

                                      @Meister-Mopper sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

                                      Ich hatte das Problem, dass bei gleicher Konstellation plötzlich der Lüfter permanent max lief.
                                      Bei mir hat es geholfen, argononed zu deinstallieren und neu zu konfigurieren.
                                      Offenbar wurde es bei der Umstellung von bookworm auf trixie nicht sauber mitgenommen.

                                      Jetzt läuft es wieder geschmeidig.

                                      Ich hatte vorhin nochmals die Konfig neu gestartet. Jetzt erhalte ich auch eine Ausgabe:

                                      PI@PIArgon:~ $ sudo systemctl status argononed
                                      ● argononed.service - Argon One Fan and Button Service
                                           Loaded: loaded (/lib/systemd/system/argononed.service; enabled; preset: enabled)
                                           Active: active (running) since Fri 2026-01-30 20:18:59 CET; 8min ago
                                         Main PID: 864 (python3)
                                            Tasks: 3 (limit: 3913)
                                              CPU: 106ms
                                           CGroup: /system.slice/argononed.service
                                                   └─864 /usr/bin/python3 /etc/argon/argononed.py SERVICE
                                      
                                      Jan 30 20:18:59 PIArgon systemd[1]: Started argononed.service - Argon One Fan and Button Service.
                                      

                                      Ich hatte den PI auch nochmal neu gestartet.


                                      Raspberry 4 mit 120GB SSD Bookworm
                                      Grafana, influxDB2, Hue, Zigbee2MQTT, Shelly,usw.

                                      1 Antwort Letzte Antwort
                                      0
                                      • K Kapitaen31

                                        @Homoran sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

                                        @kapitaen31
                                        dann mach doch bitte für @oliverio auch noch einen Export der Javascript Ansicht (ohne die letzte kilometerlange kryptische Zeile)

                                        Hier kommt der die JavaScript Ansicht:

                                        var MAX_Wert, MAX_erreichbar, MAX_aufdimmen_aktiv, MAX_aufdimmen, MAX_Text, MAX_Zyklus_beendet, MAX_Farbwert, MAX_ein_aus, MaxZeitplan, MAX_aus, MAX_ein, MAX_Helligkeit, Max_abends_aus, Wartezeit;
                                        
                                        // Hue Lampe mit angegebenem Wert langsam einschalten.
                                        async function Max_dimmen(MAX_Wert, MAX_erreichbar, MAX_aufdimmen_aktiv, MAX_aufdimmen, MAX_Text, MAX_Zyklus_beendet, MAX_Farbwert, MAX_ein_aus) {
                                          if (MAX_ein_aus == 'ein') {
                                            // Max wird  aufgeblendet (einschalten)
                                            if (getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val == 0) {
                                              setState('alias.0.OG.Flur.Licht.HelligkeitHueMax' /* Helligkeit Hue Max */, 5);
                                              console.warn('Max eingeschaltet! ');
                                            }
                                            setState('alias.0.OG.Flur.Licht.FarbTemperaturHueMax' /* Farb Temp Hue Max */, MAX_Farbwert);
                                            setState('javascript.0.Datenpunkte.Flur.Licht.Abdimmen_aktiv' /* Aufdimmen aktiv */, true, true);
                                            MAX_ein = setInterval(async () => {
                                              if (getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val < MAX_Wert && getState('alias.0.OG.Flur.Licht.Erreichbar Hue Max').val == MAX_erreichbar) {
                                                setState('alias.0.OG.Flur.Licht.HelligkeitHueMax' /* Helligkeit Hue Max */, (getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val + 5));
                                                console.log((String(MAX_Text) + String(getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val)));
                                              } else {
                                                (() => { if (MAX_ein) { clearInterval(MAX_ein); MAX_ein = null; }})();
                                                setState('javascript.0.Datenpunkte.Flur.Licht.Abdimmen_aktiv' /* Aufdimmen aktiv */, MAX_aufdimmen_aktiv, true);
                                                Wartezeit = setTimeout(async () => {
                                                  Wartezeit = null;
                                                  console.log((String(MAX_Zyklus_beendet) + String(getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val)));
                                                }, 3000);
                                              }
                                            }, 30000);
                                          } else if (MAX_ein_aus == 'aus') {
                                            // Max wird  abgeblendet (ausgeschalten)
                                            if (getState('javascript.0.Datenpunkte.Flur.Licht.Abdimmen_aktiv').val) {
                                              (() => { if (MAX_ein) { clearInterval(MAX_ein); MAX_ein = null; }})();
                                              (() => { if (MAX_aus) { clearInterval(MAX_aus); MAX_aus = null; }})();
                                              setState('javascript.0.Datenpunkte.Flur.Licht.Abdimmen_aktiv' /* Aufdimmen aktiv */, MAX_aufdimmen_aktiv, true);
                                            }
                                            MAX_aus = setInterval(async () => {
                                              if (MAX_Wert == 0) {
                                                if (getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val > 6 && getState('alias.0.OG.Flur.Licht.Erreichbar Hue Max').val == 1) {
                                                  MAX_Helligkeit = true;
                                                } else {
                                                  MAX_Helligkeit = false;
                                                }
                                              } else {
                                                if (getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val > MAX_Wert && getState('alias.0.OG.Flur.Licht.Erreichbar Hue Max').val == 1) {
                                                  MAX_Helligkeit = true;
                                                } else {
                                                  MAX_Helligkeit = false;
                                                }
                                              }
                                              if (MAX_Helligkeit) {
                                                setState('alias.0.OG.Flur.Licht.HelligkeitHueMax' /* Helligkeit Hue Max */, (getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val - 5));
                                                console.log((String(MAX_Text) + String(getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val)));
                                              } else {
                                                (() => { if (MAX_aus) { clearInterval(MAX_aus); MAX_aus = null; }})();
                                                setState('alias.0.OG.Flur.Licht.EingeschaltetHueMax' /* Ein Hue Max */, false);
                                                console.error(MAX_Zyklus_beendet);
                                              }
                                            }, 30000);
                                          }
                                        }
                                        
                                        
                                        // Hue Max automatisch morgens langsam einschalten
                                        on({ id: [].concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_Wochentag']).concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_Monat']).concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_Datum']).concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_Std']).concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_Min']), change: 'ne' }, async (obj) => {
                                          (() => { if (MaxZeitplan) { clearSchedule(MaxZeitplan); MaxZeitplan = null; }})();
                                          MaxZeitplan = schedule(getState('javascript.0.Datenpunkte.Flur.Licht.CRON_Min').val.toString().trim() + ' ' + getState('javascript.0.Datenpunkte.Flur.Licht.CRON_Std').val.toString().trim() + ' ' + getState('javascript.0.Datenpunkte.Flur.Licht.CRON_Datum').val.toString().trim() + ' ' + getState('javascript.0.Datenpunkte.Flur.Licht.CRON_Monat').val.toString().trim() + ' ' + getState('javascript.0.Datenpunkte.Flur.Licht.CRON_Wochentag').val.toString().trim(), async () => {
                                            console.warn('Neuer Zeitplan wurde für morgens einschalten angelegt.   ');
                                            if (compareTime(getAstroDate('dawn', undefined, 18), null, '<', null)) {
                                              console.warn(([(new Date().getTime()),'  ;   ',getAstroDate('dawn', undefined, 18)].join('')));
                                              (() => { if (MAX_aus) { clearInterval(MAX_aus); MAX_aus = null; }})();
                                              (() => { if (MAX_ein) { clearInterval(MAX_ein); MAX_ein = null; }})();
                                              await Max_dimmen(30, true, false, true, 'Max morgens einschalten +5. Wert:', 'Max Einschalt Zyklus morgens beendet. Wert: ', 2730, 'ein');
                                            }
                                          });
                                        });
                                        // Hue Max automatisch abends langsam einschalten
                                        schedule({ astro: 'sunset', shift: 0 }, async () => {
                                          console.warn('Sonnenuntergang.  ');
                                          if (compareTime('21:36', 'null', '<')) {
                                            (() => { if (MAX_ein) { clearInterval(MAX_ein); MAX_ein = null; }})();
                                            (() => { if (MAX_aus) { clearInterval(MAX_aus); MAX_aus = null; }})();
                                            await Max_dimmen(100, 1, false, true, 'Max abends einschalten +5. Wert:', 'Max Einschalt Zyklus abends beendet. Wert: ', 2730, 'ein');
                                          }
                                        });
                                        // Hue Max automatisch abends langsam ausschalten
                                        on({ id: [].concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_datum_abends']).concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_min_abends']).concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_monat_abends']).concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_std_abends']).concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_wochentag_abends']), change: 'ne' }, async (obj) => {
                                          console.warn('Zeitplan MAX abends ausschalten wurde neu angelegt: ');
                                          (() => { if (Max_abends_aus) { clearSchedule(Max_abends_aus); Max_abends_aus = null; }})();
                                          Max_abends_aus = schedule(getState('javascript.0.Datenpunkte.Flur.Licht.CRON_min_abends').val.toString().trim() + ' ' + getState('javascript.0.Datenpunkte.Flur.Licht.CRON_std_abends').val.toString().trim() + ' ' + getState('javascript.0.Datenpunkte.Flur.Licht.CRON_datum_abends').val.toString().trim() + ' ' + getState('javascript.0.Datenpunkte.Flur.Licht.CRON_monat_abends').val.toString().trim() + ' ' + getState('javascript.0.Datenpunkte.Flur.Licht.CRON_wochentag_abends').val.toString().trim(), async () => {
                                            console.warn('Zeitplan MAX abends ausschalten gestartet: ');
                                            (() => { if (MAX_aus) { clearInterval(MAX_aus); MAX_aus = null; }})();
                                            (() => { if (MAX_ein) { clearInterval(MAX_ein); MAX_ein = null; }})();
                                            await Max_dimmen(0, 1, false, false, 'Max abends ausschalten -5. Wert:  ', 'Zyklus MAX ausschalten abends beendet!  Wert:  ', 2730, 'aus');
                                          });
                                        });
                                        // Hue Max automatisch morgens langsam ausschalten
                                        schedule({ astro: 'dawn', shift: 20 }, async () => {
                                          console.warn('Sonnenaufgang 20min später.');
                                          (() => { if (MAX_aus) { clearInterval(MAX_aus); MAX_aus = null; }})();
                                          (() => { if (MAX_ein) { clearInterval(MAX_ein); MAX_ein = null; }})();
                                          await Max_dimmen(0, 1, false, false, 'Max morgens ausschalten -5. Wert:  ', 'Zyklus MAX ausschalten morgens beendet!  Wert:  ', 2730, 'aus');
                                        });
                                        
                                        
                                        OliverIOO Offline
                                        OliverIOO Offline
                                        OliverIO
                                        schrieb am zuletzt editiert von OliverIO
                                        #50

                                        @Kapitaen31 sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

                                        läuft bei dir auf dem raspi auch ein browser mit?
                                        ansonsten ist das beschriebene problem wahrscheinlich nicht relevant, sollte aber auch behoben werden.
                                        also 1) mit "vermüllen" ist gemeint, das da ein memory leak ist. d.h. da wird immer wieder speicher reserviert, der erst du neustart oder im browser mit neuladen behoben werden kann. solange genügend speicher da ist, kein problem, evtl hast du da auch noch nie was gemerkt, sollte aber behoben werden. weiß0 nicht wie safe da blockly ist.

                                        ich habe das skript mal bei gemini reingeworfen (chatgpt geht gerade nicht)


                                        Das sieht nach einem klassischen Blockly-Export für den ioBroker JavaScript-Adapter aus. Das Skript ist funktional, hat aber ein paar „Stolperfallen“, die im Alltag zu Problemen führen können (besonders beim Dimmen und den Zeitplänen).

                                        Hier sind die kritischen Punkte, die ich gefunden habe:

                                        1. Die "Erreichbarkeit"-Prüfung (MAX_erreichbar)

                                        In der Funktion Max_dimmen fragst du den Status Erreichbar Hue Max ab.

                                        • Das Problem: Wenn die Lampe über den Wandschalter stromlos gemacht wurde, ist sie "nicht erreichbar". Das Intervall läuft dann aber ewig weiter, weil die Bedingung getState(...).val == MAX_erreichbar nie erfüllt wird, aber auch kein else greift, das das Intervall stoppt.
                                        • Folge: Das Skript "vermüllt" den Speicher mit laufenden Intervallen im Hintergrund.

                                        2. Fehlende Initialisierung beim Neustart

                                        Die Variable MaxZeitplan und Max_abends_aus werden erst gesetzt, wenn sich einer der CRON-Datenpunkte ändert (change: 'ne').

                                        • Das Problem: Wenn du das Skript oder den ioBroker neu startest, sind diese Zeitpläne nicht aktiv, bis du die Werte in den Datenpunkten einmal manuell änderst.
                                        • Lösung: Du solltest die schedule-Logik am Ende des Skripts einmal ohne Trigger aufrufen, damit sie beim Start sofort registriert wird.

                                        3. Logik-Fehler beim "Abdimmen_aktiv"

                                        Im else if (MAX_ein_aus == 'aus')-Teil setzt du:
                                        setState('javascript.0.Datenpunkte.Flur.Licht.Abdimmen_aktiv', MAX_aufdimmen_aktiv, true);

                                        • Das Problem: Du übergibst hier die Variable MAX_aufdimmen_aktiv. In deinem morgendlichen Ausschalt-Trigger ist dieser Wert aber auf false gesetzt. Das ist zwar technisch nicht falsch, aber die Variable heißt im Datenpunkt "Abdimmen_aktiv", was verwirrend sein kann, wenn sie beim Ausschalten auf false geht, obwohl der Prozess noch läuft.

                                        4. Die compareTime bei Sonnenuntergang

                                        if (compareTime('21:36', 'null', '<'))
                                        
                                        
                                        • Das Problem: Das bedeutet: "Führe das Dimmen nur aus, wenn es vor 21:36 Uhr ist". Da der Sonnenuntergang im Sommer aber auch mal nach 21:36 Uhr sein kann, würde die Lampe an manchen Tagen im Jahr einfach gar nicht angehen. Prüfe, ob das so gewollt ist.

                                        5. Intervall-Dauer vs. Schrittweite

                                        Du dimmst alle 30 Sekunden um 5 Einheiten.

                                        • Um von 0 auf 100 zu kommen, braucht das Skript 20 Schritte.
                                        • (10 Minuten).
                                        • Gefahr: Wenn während dieser 10 Minuten jemand manuell das Licht schaltet oder ein anderer Trigger feuert, kommen sich die Intervalle in die Quere, falls MAX_ein / MAX_aus nicht sauber gelöscht werden.

                                        Zusammenfassung & Empfehlung

                                        Fehlerquelle Auswirkung Lösung
                                        Erreichbarkeit Endlosschleife im Hintergrund Ein else { clearInterval... } hinzufügen, falls Lampe offline.
                                        Startverhalten Zeitpläne nach Neustart inaktiv Trigger-Logik einmal beim Skriptstart ausführen.
                                        Variablen-Mix MAX_erreichbar wird mal als true (Boolean) und mal als 1 (Zahl) übergeben. JavaScript ist da tolerant, aber sauberer wäre es, immer den gleichen Typ zu nutzen.

                                        Ein kleiner Tipp für ioBroker:
                                        Anstatt Intervalle mit setInterval zu bauen, nutzen viele für Hue-Lampen das native transition (Übergangszeit) Kommando. Man kann beim setState einer Hue-Lampe oft ein JSON mitgeben: setState('id', {val: 100, ack: false, transition: 600}). Das würde die Lampe von alleine über 10 Minuten dimmen, ohne dass das Skript alle 30 Sekunden funken muss.

                                        Soll ich dir zeigen, wie du den Teil für den automatischen Start nach einem Neustart ergänzt?

                                        Meine Adapter und Widgets
                                        TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                        Links im Profil

                                        K 1 Antwort Letzte Antwort
                                        1
                                        • K Kapitaen31

                                          @Homoran sagte in ioBroker auf PI4 stürzt immer mal wieder ab:

                                          @kapitaen31
                                          dann mach doch bitte für @oliverio auch noch einen Export der Javascript Ansicht (ohne die letzte kilometerlange kryptische Zeile)

                                          Hier kommt der die JavaScript Ansicht:

                                          var MAX_Wert, MAX_erreichbar, MAX_aufdimmen_aktiv, MAX_aufdimmen, MAX_Text, MAX_Zyklus_beendet, MAX_Farbwert, MAX_ein_aus, MaxZeitplan, MAX_aus, MAX_ein, MAX_Helligkeit, Max_abends_aus, Wartezeit;
                                          
                                          // Hue Lampe mit angegebenem Wert langsam einschalten.
                                          async function Max_dimmen(MAX_Wert, MAX_erreichbar, MAX_aufdimmen_aktiv, MAX_aufdimmen, MAX_Text, MAX_Zyklus_beendet, MAX_Farbwert, MAX_ein_aus) {
                                            if (MAX_ein_aus == 'ein') {
                                              // Max wird  aufgeblendet (einschalten)
                                              if (getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val == 0) {
                                                setState('alias.0.OG.Flur.Licht.HelligkeitHueMax' /* Helligkeit Hue Max */, 5);
                                                console.warn('Max eingeschaltet! ');
                                              }
                                              setState('alias.0.OG.Flur.Licht.FarbTemperaturHueMax' /* Farb Temp Hue Max */, MAX_Farbwert);
                                              setState('javascript.0.Datenpunkte.Flur.Licht.Abdimmen_aktiv' /* Aufdimmen aktiv */, true, true);
                                              MAX_ein = setInterval(async () => {
                                                if (getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val < MAX_Wert && getState('alias.0.OG.Flur.Licht.Erreichbar Hue Max').val == MAX_erreichbar) {
                                                  setState('alias.0.OG.Flur.Licht.HelligkeitHueMax' /* Helligkeit Hue Max */, (getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val + 5));
                                                  console.log((String(MAX_Text) + String(getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val)));
                                                } else {
                                                  (() => { if (MAX_ein) { clearInterval(MAX_ein); MAX_ein = null; }})();
                                                  setState('javascript.0.Datenpunkte.Flur.Licht.Abdimmen_aktiv' /* Aufdimmen aktiv */, MAX_aufdimmen_aktiv, true);
                                                  Wartezeit = setTimeout(async () => {
                                                    Wartezeit = null;
                                                    console.log((String(MAX_Zyklus_beendet) + String(getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val)));
                                                  }, 3000);
                                                }
                                              }, 30000);
                                            } else if (MAX_ein_aus == 'aus') {
                                              // Max wird  abgeblendet (ausgeschalten)
                                              if (getState('javascript.0.Datenpunkte.Flur.Licht.Abdimmen_aktiv').val) {
                                                (() => { if (MAX_ein) { clearInterval(MAX_ein); MAX_ein = null; }})();
                                                (() => { if (MAX_aus) { clearInterval(MAX_aus); MAX_aus = null; }})();
                                                setState('javascript.0.Datenpunkte.Flur.Licht.Abdimmen_aktiv' /* Aufdimmen aktiv */, MAX_aufdimmen_aktiv, true);
                                              }
                                              MAX_aus = setInterval(async () => {
                                                if (MAX_Wert == 0) {
                                                  if (getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val > 6 && getState('alias.0.OG.Flur.Licht.Erreichbar Hue Max').val == 1) {
                                                    MAX_Helligkeit = true;
                                                  } else {
                                                    MAX_Helligkeit = false;
                                                  }
                                                } else {
                                                  if (getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val > MAX_Wert && getState('alias.0.OG.Flur.Licht.Erreichbar Hue Max').val == 1) {
                                                    MAX_Helligkeit = true;
                                                  } else {
                                                    MAX_Helligkeit = false;
                                                  }
                                                }
                                                if (MAX_Helligkeit) {
                                                  setState('alias.0.OG.Flur.Licht.HelligkeitHueMax' /* Helligkeit Hue Max */, (getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val - 5));
                                                  console.log((String(MAX_Text) + String(getState('alias.0.OG.Flur.Licht.HelligkeitHueMax').val)));
                                                } else {
                                                  (() => { if (MAX_aus) { clearInterval(MAX_aus); MAX_aus = null; }})();
                                                  setState('alias.0.OG.Flur.Licht.EingeschaltetHueMax' /* Ein Hue Max */, false);
                                                  console.error(MAX_Zyklus_beendet);
                                                }
                                              }, 30000);
                                            }
                                          }
                                          
                                          
                                          // Hue Max automatisch morgens langsam einschalten
                                          on({ id: [].concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_Wochentag']).concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_Monat']).concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_Datum']).concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_Std']).concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_Min']), change: 'ne' }, async (obj) => {
                                            (() => { if (MaxZeitplan) { clearSchedule(MaxZeitplan); MaxZeitplan = null; }})();
                                            MaxZeitplan = schedule(getState('javascript.0.Datenpunkte.Flur.Licht.CRON_Min').val.toString().trim() + ' ' + getState('javascript.0.Datenpunkte.Flur.Licht.CRON_Std').val.toString().trim() + ' ' + getState('javascript.0.Datenpunkte.Flur.Licht.CRON_Datum').val.toString().trim() + ' ' + getState('javascript.0.Datenpunkte.Flur.Licht.CRON_Monat').val.toString().trim() + ' ' + getState('javascript.0.Datenpunkte.Flur.Licht.CRON_Wochentag').val.toString().trim(), async () => {
                                              console.warn('Neuer Zeitplan wurde für morgens einschalten angelegt.   ');
                                              if (compareTime(getAstroDate('dawn', undefined, 18), null, '<', null)) {
                                                console.warn(([(new Date().getTime()),'  ;   ',getAstroDate('dawn', undefined, 18)].join('')));
                                                (() => { if (MAX_aus) { clearInterval(MAX_aus); MAX_aus = null; }})();
                                                (() => { if (MAX_ein) { clearInterval(MAX_ein); MAX_ein = null; }})();
                                                await Max_dimmen(30, true, false, true, 'Max morgens einschalten +5. Wert:', 'Max Einschalt Zyklus morgens beendet. Wert: ', 2730, 'ein');
                                              }
                                            });
                                          });
                                          // Hue Max automatisch abends langsam einschalten
                                          schedule({ astro: 'sunset', shift: 0 }, async () => {
                                            console.warn('Sonnenuntergang.  ');
                                            if (compareTime('21:36', 'null', '<')) {
                                              (() => { if (MAX_ein) { clearInterval(MAX_ein); MAX_ein = null; }})();
                                              (() => { if (MAX_aus) { clearInterval(MAX_aus); MAX_aus = null; }})();
                                              await Max_dimmen(100, 1, false, true, 'Max abends einschalten +5. Wert:', 'Max Einschalt Zyklus abends beendet. Wert: ', 2730, 'ein');
                                            }
                                          });
                                          // Hue Max automatisch abends langsam ausschalten
                                          on({ id: [].concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_datum_abends']).concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_min_abends']).concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_monat_abends']).concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_std_abends']).concat(['javascript.0.Datenpunkte.Flur.Licht.CRON_wochentag_abends']), change: 'ne' }, async (obj) => {
                                            console.warn('Zeitplan MAX abends ausschalten wurde neu angelegt: ');
                                            (() => { if (Max_abends_aus) { clearSchedule(Max_abends_aus); Max_abends_aus = null; }})();
                                            Max_abends_aus = schedule(getState('javascript.0.Datenpunkte.Flur.Licht.CRON_min_abends').val.toString().trim() + ' ' + getState('javascript.0.Datenpunkte.Flur.Licht.CRON_std_abends').val.toString().trim() + ' ' + getState('javascript.0.Datenpunkte.Flur.Licht.CRON_datum_abends').val.toString().trim() + ' ' + getState('javascript.0.Datenpunkte.Flur.Licht.CRON_monat_abends').val.toString().trim() + ' ' + getState('javascript.0.Datenpunkte.Flur.Licht.CRON_wochentag_abends').val.toString().trim(), async () => {
                                              console.warn('Zeitplan MAX abends ausschalten gestartet: ');
                                              (() => { if (MAX_aus) { clearInterval(MAX_aus); MAX_aus = null; }})();
                                              (() => { if (MAX_ein) { clearInterval(MAX_ein); MAX_ein = null; }})();
                                              await Max_dimmen(0, 1, false, false, 'Max abends ausschalten -5. Wert:  ', 'Zyklus MAX ausschalten abends beendet!  Wert:  ', 2730, 'aus');
                                            });
                                          });
                                          // Hue Max automatisch morgens langsam ausschalten
                                          schedule({ astro: 'dawn', shift: 20 }, async () => {
                                            console.warn('Sonnenaufgang 20min später.');
                                            (() => { if (MAX_aus) { clearInterval(MAX_aus); MAX_aus = null; }})();
                                            (() => { if (MAX_ein) { clearInterval(MAX_ein); MAX_ein = null; }})();
                                            await Max_dimmen(0, 1, false, false, 'Max morgens ausschalten -5. Wert:  ', 'Zyklus MAX ausschalten morgens beendet!  Wert:  ', 2730, 'aus');
                                          });
                                          
                                          
                                          OliverIOO Offline
                                          OliverIOO Offline
                                          OliverIO
                                          schrieb am zuletzt editiert von
                                          #51

                                          @Kapitaen31

                                          zum vergleichmal noch chatgpt 5.2
                                          sag mal welche ausgabe du besser findest bzw was dir mehr geholfen hat.


                                          Ja – da sind ein paar echte „Blockly-Export“-Klassiker drin, die dir in ioBroker früher oder später Probleme machen (oder dafür sorgen, dass es nicht so läuft wie gedacht). Ich gehe die auffälligsten Punkte durch und sage jeweils warum das problematisch ist und wie du’s robust bekommst.


                                          1) Parameter-Chaos vs. globale Variablen (und dadurch Logikfehler)

                                          Max_dimmen() hat diese Signatur:

                                          async function Max_dimmen(MAX_Wert, MAX_erreichbar, MAX_aufdimmen_aktiv, MAX_aufdimmen, MAX_Text, MAX_Zyklus_beendet, MAX_Farbwert, MAX_ein_aus)
                                          

                                          Du rufst sie z.B. morgens so auf:

                                          await Max_dimmen(30, true, false, true, ..., 2730, 'ein');
                                          

                                          Aber im Code vergleichst du später:

                                          getState('alias.0.OG.Flur.Licht.Erreichbar Hue Max').val == MAX_erreichbar
                                          

                                          Und im Aufruf gibst du einmal true, einmal 1 (abends: Max_dimmen(100, 1, ...)).

                                          ➡️ Wenn der State ...Erreichbar Hue Max bei dir ein Zahl-Boolean ist (0/1), dann ist der Vergleich mit true zwar mit == oft „zufällig“ wahr (weil true == 1), aber das ist fragil. Wenn der State mal "true" oder true liefert, oder du auf === umstellst, knallt’s.

                                          Robust fix: Normalisieren statt „magischen“ Typen:

                                          const reachable = !!getState('alias.0.OG.Flur.Licht.Erreichbar Hue Max').val;
                                          if (reachable === !!MAX_erreichbar) { ... }
                                          

                                          Oder konsequent immer 1/0 verwenden.


                                          2) MAX_aufdimmen wird nie verwendet

                                          Du übergibst MAX_aufdimmen, aber im Code taucht die Variable nirgendwo sinnvoll auf (sie wird nicht gelesen). Das ist kein Crash, aber ein Hinweis: Blockly hat dir Paramater reingezogen, die du gar nicht brauchst.

                                          ➡️ Ergebnis: schwer wartbar, und du glaubst evtl. „das beeinflusst was“, tut es aber nicht.


                                          3) Falsche/inkonsistente Nutzung von compareTime()

                                          Du hast mehrere Varianten:

                                          a) Morgens:

                                          if (compareTime(getAstroDate('dawn', undefined, 18), null, '<', null)) {
                                          

                                          Das sieht aus wie Blockly-„Compare Time“ in der 4-Argument-Variante. Kann funktionieren, ist aber seltsam (null/null).

                                          b) Abends:

                                          if (compareTime('21:36', 'null', '<')) {
                                          

                                          Hier ist 'null' ein String, nicht null.

                                          ➡️ Das ist sehr wahrscheinlich ein Fehler. Je nach Implementierung von compareTime ist 'null' ein ungültiger Zeitpunkt und die Funktion liefert dann immer false oder verhält sich unerwartet.

                                          Vermutlich wolltest du: „wenn aktuelle Zeit < 21:36“ oder „wenn 21:36 < aktuelle Zeit“. Dafür ist die typische Blockly-Semantik:

                                          • compareTime('21:36', null, '<') → vergleicht '21:36' mit jetzt
                                          • oder compareTime(null, '21:36', '<') je nach Variante

                                          Konkreter Verdacht: Dein Abend-Einschalten läuft evtl. nie, weil der Vergleich falsch ist.


                                          4) Du setzt „EingeschaltetHueMax“ nur beim Ausschalten – aber nicht beim Einschalten

                                          Beim Dimmen „ein“ setzt du:

                                          • Helligkeit ggf. auf 5
                                          • Farbtemperatur
                                          • Abdimm-aktiv true
                                          • und erhöhst Helligkeit

                                          Beim Dimmen „aus“ machst du am Ende:

                                          setState('alias.0.OG.Flur.Licht.EingeschaltetHueMax', false);
                                          

                                          ➡️ Aber beim Einschalten setzt du EingeschaltetHueMax nicht auf true. Wenn andere Logik oder Visualisierung davon abhängt, ist das inkonsistent.


                                          5) Race-Conditions / parallele Intervalle: nicht konsequent gestoppt

                                          Du stoppst Intervalle zwar oft, aber nicht überall:

                                          • Beim Start von Max_dimmen('ein') stoppst du nicht automatisch ein evtl. laufendes MAX_ein oder MAX_aus (nur in den Schedules machst du das davor).
                                          • Im aus-Zweig stoppst du nur dann sofort, wenn Abdimmen_aktiv true ist:
                                          if (getState('...Abdimmen_aktiv').val) {
                                            clearInterval(MAX_ein); clearInterval(MAX_aus);
                                          }
                                          

                                          ➡️ Wenn Abdimmen_aktiv aus irgendeinem Grund false ist, können alte Intervalle weiterlaufen und du startest zusätzlich MAX_aus. Dann schreiben zwei Timer gegeneinander.

                                          Robust fix: Immer am Anfang von Max_dimmen() beide Intervalle killen, unabhängig vom Flag.


                                          6) setInterval(async () => { ... }) – async im Interval ohne Nutzen

                                          Du nutzt async in den Interval-Callbacks, aber du await-est da drin praktisch nichts (außer in setTimeout, was auch ohne async geht).

                                          ➡️ Kein direkter Fehler, aber: falls du später await einbaust, kann es passieren, dass ein neuer Interval-Tick startet, bevor der alte fertig ist (Überlappung). Besser: kein async im setInterval oder einen „Lock“ setzen.


                                          7) Schwellenwerte beim Ausschalten: mögliche Endlosschleife / nie ganz aus

                                          Im Ausblend-Zweig:

                                          if (MAX_Wert == 0) {
                                            if (helligkeit > 6) MAX_Helligkeit = true; else false;
                                          }
                                          ...
                                          if (MAX_Helligkeit) helligkeit -= 5
                                          else stop + ausgeschaltet=false
                                          

                                          ➡️ Du dimmst runter bis <= 6, dann stoppst du und setzt EingeschaltetHueMax=false. Aber du setzt die Helligkeit nicht auf 0. D.h. sie kann bei 6 stehen bleiben.

                                          • Wenn dein Gerät bei 6 noch sichtbar leuchtet: bleibt an.
                                          • Wenn du später „ein“ startest, hast du nicht „aus=0“ als Ausgangslage.

                                          Wenn du wirklich „aus“ willst, setz beim Ende explizit auf 0.


                                          8) Doppelbelegung / uneindeutige Zustände: „Abdimmen_aktiv“

                                          Du setzt:

                                          • beim Einschalten: Abdimmen_aktiv erst auf true, später auf MAX_aufdimmen_aktiv (bei dir meist false)
                                          • beim Ausschalten: setzt du es auf MAX_aufdimmen_aktiv

                                          ➡️ Der Name passt nicht: du nutzt es als „läuft gerade ein Dimmer-Zyklus“ (lock), aber setzt es am Ende auf einen Parameterwert, der in deinen Aufrufen immer false ist. Das ist okay, aber dann brauchst du keinen Parameter dafür.


                                          9) Cron-Strings aus States: Gefahr von „kaputtem Cron“ ohne Validierung

                                          Du baust Cron so:

                                          min + ' ' + std + ' ' + datum + ' ' + monat + ' ' + wochentag
                                          

                                          Wenn einer der States leer ist oder * falsch gesetzt wird, erzeugst du einen ungültigen Cron und schedule() kann still scheitern oder Exceptions werfen.

                                          ➡️ Blockly macht das gern, aber produktiv solltest du mindestens loggen, welcher Cron konkret gesetzt wurde und ob schedule() eine ID zurückgab.


                                          10) Kleinigkeiten, aber echte Wartungsbremsen

                                          • Sehr viele globale Variablen, die eigentlich nur Timer-Handles sind (MAX_ein, MAX_aus, Wartezeit).
                                          • MAX_Wert == 0 vs === – mit .val aus ioBroker kann auch string kommen. Dann ist == wieder „zufällig“ korrekt.

                                          Was ich konkret als „Minimal-Fix“ empfehlen würde (ohne alles umzubauen)

                                          1. Am Anfang von Max_dimmen immer alles stoppen:
                                          • clearInterval(MAX_ein), clearInterval(MAX_aus), optional clearTimeout(Wartezeit)
                                          1. Erreichbar immer booleanisieren
                                          • const reachable = !!getState(...).val;
                                          • und MAX_erreichbar ebenfalls !!MAX_erreichbar
                                          1. compareTime('21:36', 'null', '<') korrigieren
                                          • sehr wahrscheinlich muss 'null' → null (ohne Quotes) oder die Argumente anders.
                                          1. Beim Ausschalt-Ende Helligkeit auf 0 setzen
                                          • setState(...Helligkeit..., 0);
                                          1. Optional: EingeschaltetHueMax beim Einschalten auf true.

                                          Wenn du willst, kann ich dir als nächsten Schritt eine bereinigte Version 1:1 auf Basis deines Codes posten (gleiches Verhalten, aber mit den oben genannten Fixes, weniger Parametern, sauberem Timer-Handling). Ich würde dafür nur kurz wissen:

                                          • Liefert alias.0.OG.Flur.Licht.Erreichbar Hue Max bei dir 0/1 oder true/false?
                                          • Soll „aus“ wirklich auf 0 gehen oder bewusst bei 6 stoppen?

                                          Meine Adapter und Widgets
                                          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                          Links im Profil

                                          K 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
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          349

                                          Online

                                          32.6k

                                          Benutzer

                                          82.2k

                                          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