NEWS
Sonossteuerung
-
Hi zusammen,
dank der Forumshilfe habe ich als Anfänger eine einfache Sonossteuerung realisieren können.
Aktuell ist es ja so, bei Bewegung schaltet Einslive ein in Lautstärke 11. Nach 7 Min. ohne Bewegung geht es wieder aus.
Lässt sich das angehängte Blockly so verändern, dass ich flexibler bin ? Beispiel : Ich möchte jetzt mal BigFm hören in Lautstärke 20. Möchte aber trotzdem, dass nach 7 Min. ohne Bewegung das Radio wieder ausgeht und ich beim nächsten Betreten des Raums wieder Einslive auf Stufe 11 höre. -
@ricroe Dein Blockly reagiert auf "Bewegung" UND "keine Bewegung" (abhängig davon, was der Datenpunkt liefert)
Du müsstest einmal auf Bewegung anschalten (so wie jetzt) und bei "keine Bewegung" wieder abschalten.
Am Besten mit einem FALLS - SONST Block.
FALLS Bewegung =wahr - mache (was du hast)
SONST - mache sonos aus!Dann müsste es jedesmal beim reingehen wieder genau das tun (1Live anschalten mit 11 vol)
-
hmm, habs mal versucht, sofern ich es richtig verstanden habe, funktioniert aber beides nicht. sonos spielt nicht ab
-
@ricroe sagte in Sonossteuerung:
sofern ich es richtig verstanden habe,
nee,
den ersten Pause (im falls) löschen und den zweiten (im sonst) ohne Verzögerungin der linken Variante fehlt bei falls die Beingung (BWM motion true)
die rechte Variante ist ganz falsch@ricroe sagte in Sonossteuerung:
funktioniert aber beides nicht.
-
wenn ich die verzögerung im zweiten raus nehme dann hab ich aber nirgends mehr die 7 min ?
und wie bekomme ich bei falks den bewegungsmelder rein ?
-
-
@ricroe sagte in Sonossteuerung:
hab ich aber nirgends mehr die 7 min ?
aber wie lange dauert es denn bis der BWM wieder "keine Bewegung" meldet.
Das wären dann deine xMinuten.Wenn du mit dem Timeout arbeitest wie @paul53 zeigt, kommen die 7 Minuten nochmal oben drauf
-
habs jetzt mal so gemacht, das radio springt aber sofort wieder bei bewegung um.
sprich ich komme rein, einslive geht an. ich stelle um auf bigfm, bei der nächsten bewegung geht aber wieder eins live an. -
@ricroe sagte in Sonossteuerung:
bei der nächsten bewegung geht aber wieder eins live an.
Tja, so wolltest du es doch
@ricroe sagte in Sonossteuerung:
beim nächsten Betreten des Raums wieder Einslive auf Stufe 11 höre.
Oder meintest du (nach den Zusatzinfos) dass du solange du dich bewegst den umgeschalteten Sender willst?
Beim nächsten Bewegen dann aber nicht mehr?woher soll der Sensor wissen, ob du zwischenzeitlich raus warst?
Hast du einen Türsensor? -
nein, einen Türsender hab ich aktuell nicht, könnte ich aber anbringen zur not. Ich dachte es geht vielleicht noch anders. Quasi das der Trigger ist, dass die Box einmal aus war. Ab dann wieder der alte Modus.
Also Beispiel / gewünscht ist : rein, einslive spielt für 7 min auf stufe 11. ich möchte heute aber mal bigfm auf stufe 12 hören. solange ich drin bin bzw. die box läuft, soll es so bleiben. wenn ich dann z.b. später oder am nächsten tag wieder rein gehe soll wieder normal einslive usw. laufen.
-
@ricroe sagte in Sonossteuerung:
Trigger ist, dass die Box einmal aus war. Ab dann wieder der alte Modus.
dann machen wir das doch so.
Eine Variable anlegen "bin raus" und die auf true setzen wenn die Box aus gehtDann diese Variable mit abfragen wenn Bewegung erkannt und nur auf 1live schalten wenn "bin raus" true ist, anschließend "bin raus" auf false setzen
-
puuh das krieg ich so allein nicht hin. könnte ich vielleicht noch mal ein Bild bekommen ?
-
@ricroe
das ist am Handy nie so einfachMuss ich machen wenn ich am PC sitze
Wie geht denn "die Box aus"?
Worauf kannst du da triggern/FALLS abfragen? -
kein problem, soo eilig ist es nicht.
die box wird mit "pause" gestoppt"
hier mal die möglichen befehle.
-
@ricroe sagte in Sonossteuerung:
kein problem, soo eilig ist es nicht.
die box wird mit "pause" gestoppt"Dann mach mir mal ein Export von deinem bisherigen Blockly
-
hab zwei. hier das alte welches ich selber machte.
<xml xmlns="http://www.w3.org/1999/xhtml"> <block type="on_ext" id="}o/akb44vuu0nulZoA9M" x="13" y="13"> <mutation items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="y3_3.uW7lsR)OjSQ#:jU"> <field name="oid">hm-rpc.0.KEQ0974837.1.MOTION</field> </shadow> </value> <statement name="STATEMENT"> <block type="control" id="va]HwxG?!^orn;oN=#i~"> <mutation delay_input="false"></mutation> <field name="OID">sonos.0.root.192_168_178_44.favorites_set</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="#xjbn$8zK8#A0{|=7w#u"> <field name="TEXT">1LIVE - Das junge Radio des WDR.</field> </block> </value> <next> <block type="control" id="sIpRU~|2$x/_1/+:WN+Y"> <mutation delay_input="false"></mutation> <field name="OID">sonos.0.root.192_168_178_44.volume</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="}iDo-q-8:70zrA%Utsy3"> <field name="NUM">10</field> </block> </value> <next> <block type="control" id="Qt%2p-#LPtrgZ@.s%$N7"> <mutation delay_input="true"></mutation> <field name="OID">sonos.0.root.192_168_178_44.pause</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">7</field> <field name="UNIT">min</field> <field name="CLEAR_RUNNING">TRUE</field> <value name="VALUE"> <block type="logic_boolean" id="]d!EtgCU%*c;ksp|3tZ5"> <field name="BOOL">TRUE</field> </block> </value> </block> </next> </block> </next> </block> </statement> </block> </xml>
und hier das neue welches ihr mir empfohlen habt
<xml xmlns="http://www.w3.org/1999/xhtml"> <variables> <variable type="undefined" id="timeout">timeout</variable> </variables> <block type="on_ext" id="J0sSV}qYG3dAs|_@ZV)d" x="63" y="12"> <mutation items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="A/CLs_fk0cZa5cu0vp.W"> <field name="oid">hm-rpc.0.KEQ0363847.1.MOTION</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="3C5gt2${=z5Z#Rj|m:XK"> <mutation else="1"></mutation> <value name="IF0"> <block type="on_source" id=",=rXuci=Ou`e+TTa@`S|"> <field name="ATTR">state.val</field> </block> </value> <statement name="DO0"> <block type="timeouts_cleartimeout" id="!]YoZk!Z4YWcGX:p80Ry"> <field name="NAME">timeout</field> <next> <block type="control" id="A=Ooy%|?Okw+iu]svar0"> <mutation delay_input="false"></mutation> <field name="OID">sonos.0.root.192_168_178_45.favorites_set</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="v(%4}C~t]H$|eE;@o,7B"> <field name="TEXT">1LIVE - Das junge Radio des WDR.</field> </block> </value> <next> <block type="control" id="-3fQ.tn.$F+b]d!GA(V8"> <mutation delay_input="false"></mutation> <field name="OID">sonos.0.root.192_168_178_45.volume</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="VQVm!~t5zFfn.UA!vHDJ"> <field name="NUM">11</field> </block> </value> </block> </next> </block> </next> </block> </statement> <statement name="ELSE"> <block type="timeouts_settimeout" id="zj0`TH4#m2[^L29{=RNe"> <field name="NAME">timeout</field> <field name="DELAY">7</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="control" id="!bq~iv=!Ow6w7ULUhfF`"> <mutation delay_input="false"></mutation> <field name="OID">sonos.0.root.192_168_178_45.pause</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="`}+eEtsk;pWS_raW=Aj0"> <field name="BOOL">TRUE</field> </block> </value> </block> </statement> </block> </statement> </block> </statement> </block> </xml>
-
Das Problem ist doch das der Sensor nicht weis wann der Sender umgestellt wurde, man müsste das ganze Skript ausser gefecht setzten wenn ein Sender gewechselt wird.
Das Skript müsste selber erkennen wenn was anderes als 1 Live gespielt wird darf ich nicht mehr 1 Live spielen so lange der Raum nicht verlassen wurde.
Fragt sich nur was der Timer macht.... bei einer längeren Sitzung kann schon mal der Timer runter laufen und bei Bewegung würde dann trotzdem wieder 1 Live laufen....
-
@Flopsi sagte in Sonossteuerung:
bei Bewegung würde dann trotzdem wieder 1 Live laufen....
Das sollte ja so sein.
nur ich frage mich warum nach der letzten Bewegung der Timer noch 7 Minuten weiterläuft.
Bestenfalls nach dem Verlassen des Bads??@Flopsi sagte in Sonossteuerung:
Das Skript müsste selber erkennen wenn was anderes als 1 Live gespielt wird darf ich nicht mehr 1 Live spielen so lange der Raum nicht verlassen wurde.
Das muss noch rein!
hatte ja geschrieben eine Variable "bin raus" einzubeuen und solange die auf false steht darf nichts passieren
in etwa so:
wirklich zwischen Tür und Angel ohne viel Denken - also ohne Gewähr als Basisi
-
vielen dank ! es scheint zu funktionieren. werde es noch mal genaus ausprobieren morgen, aber es sieht sehr gut aus
-
so nach einigen Test stelle ich fest, es geht initial aber dann nicht mehr. Irgendwo scheint er sich zu verschlucken. Nach längerer Nutzungsdauer geht die Box gar nicht an oder immer nur kurz.
Die 7 Min. waren übrigens dazu da, das wenn ich z.b. in der Dusche bin und mich der Bewegungsmelder nicht erfassen kann, die musik dann trotzdem weiter läuft.