Satreceiver Startup Check
Moderator: seppy
- PeterA
- Beiträge: 1106
- Registriert: 8. Feb 2019 12:12
Satreceiver Startup Check
Hallo zusammen.
Für geplante Aufnahmen lasse ich meinen Satreceiver über einen ShellyPlugS einige Minuten vor der Aufnahme einschalten.
Leider fährt der Satreceiver (Coolstream Tank) manchmal nicht komplett hoch.
Könnte ich das mittels OpenHab abfangen und bei nicht Erfolgreichem Startup nochmal vom Netz trennen und nach z.b. 30sek wieder Einschalten?
Es gibt schon zwei Shell Scripte welche mir die Aktuelle Uhrzeit und Sendung in OpenHab übertragen.
Damit könnte doch so etwas möglich sein ?
Im Prinzip so:
Shelly Schaltet ON (ist als Status verfügbar)
Nach 1min sollte die Coolstream Uhrzeit verfügbar sein (ist auch in OH verfügbar)
Falls nicht. Schalte den Shelly wieder ab und nach 30sek wieder ein.
Gruß Peter
edit:
Das Shell Script gibt "offline" zurück wenn der Satreceiver nicht erreichbar ist.
Damit lässt sich doch etwas anfangen...
Für geplante Aufnahmen lasse ich meinen Satreceiver über einen ShellyPlugS einige Minuten vor der Aufnahme einschalten.
Leider fährt der Satreceiver (Coolstream Tank) manchmal nicht komplett hoch.
Könnte ich das mittels OpenHab abfangen und bei nicht Erfolgreichem Startup nochmal vom Netz trennen und nach z.b. 30sek wieder Einschalten?
Es gibt schon zwei Shell Scripte welche mir die Aktuelle Uhrzeit und Sendung in OpenHab übertragen.
Damit könnte doch so etwas möglich sein ?
Im Prinzip so:
Shelly Schaltet ON (ist als Status verfügbar)
Nach 1min sollte die Coolstream Uhrzeit verfügbar sein (ist auch in OH verfügbar)
Falls nicht. Schalte den Shelly wieder ab und nach 30sek wieder ein.
Gruß Peter
edit:
Das Shell Script gibt "offline" zurück wenn der Satreceiver nicht erreichbar ist.
Damit lässt sich doch etwas anfangen...
Hallo,
ich lese hier still mit, da mich das Thema auch interessiert.
Ich bin jetzt nicht so tief in der Materie, aber kann es sein, das die Programmzeile
so heissen müsste?
Würde mich mal brennend interessieren, ob es dann funktioniert...
Gehe zur vollständigen Antwortich lese hier still mit, da mich das Thema auch interessiert.
Ich bin jetzt nicht so tief in der Materie, aber kann es sein, das die Programmzeile
Code: Alles auswählen
createTimer(now.plusSeconds(30), [| // lege Timer an
Code: Alles auswählen
tCheck = createTimer(now.plusSeconds(30), [| // lege Timer an
- OpenHab 2.4
#PWRUP
#PWRUP
- udo1toni
- Beiträge: 15269
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Satreceiver Startup Check
Ja, sicher geht da was. Allerdings ist es nicht so schön, der Kiste den Strom unterm Hintern wegzuziehen. Computer mögen es allgemein nicht, hart ausgeschaltet zu werden...
Gesendet von iPad mit Tapatalk
Gesendet von iPad mit Tapatalk
openHAB4.3.6 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet
- PeterA
- Beiträge: 1106
- Registriert: 8. Feb 2019 12:12
Re: Satreceiver Startup Check
Ja... das ist ja niemals gut.
Nörgel: Es ist ja kein Computer sondern ein Satreceiver. Nagut das sind ja mittlerweile auch kleine Computer
Aber alles andere als die Kiste vom Netz zu trennen hilft in diesem Fall nicht.
Ich hab schon gesehen das man in einer Rule bei einem Item auf einen String prüfen kann:
Das wäre jetzt mein Entwurf:
Nörgel: Es ist ja kein Computer sondern ein Satreceiver. Nagut das sind ja mittlerweile auch kleine Computer

Aber alles andere als die Kiste vom Netz zu trennen hilft in diesem Fall nicht.
Ich hab schon gesehen das man in einer Rule bei einem Item auf einen String prüfen kann:
Code: Alles auswählen
CoolstreamTime.state.toString.contains ("offline")
Code: Alles auswählen
rule "Satreceiver Startup Check"
var Timer tCheck = null // globale Variablen zu Beginn der Datei definieren
rule "Satreceiver Startup Check"
when
Item ShellyPlugS_Sat changed to ON // SAT eingeschaltet
then
tCheck?.cancel // eventuell laufenden Timer stoppen
createTimer(now.plusSeconds(120), [| // lege Timer an
if ((CoolstreamTime.state.toString.contains ("offline") && ShellyPlugS_Denon.state==(ON)) // offline = Satreceiver ist nicht hochgefahren //am Denon hängt noch der Switch
ShellyPlugS_Sat.sendCommand(OFF) // schalte ab wenn CoolstreamTime "offline" behinhaltet
])
tCheck?.cancel
tCheck = createTimer(now.plusSeconds(15), [| // lege Timer an
ShellyPlugS_Sat.sendCommand(ON) // schalte nochmal ein
])
end
- OpenHab 2.4
#PWRUP
#PWRUP
- PeterA
- Beiträge: 1106
- Registriert: 8. Feb 2019 12:12
Re: Satreceiver Startup Check
Also jetzt bin ich wieder mit meinem Latein am Ende..
Die Rule Tiggert, wartet 30 Sek. und Schaltet dann ab weil der Satreceiver noch offline ist.
Aber das wieder Einschalten 15sek Nach dem Abschalten bekomme ich nicht hin.
Die Rule Tiggert, wartet 30 Sek. und Schaltet dann ab weil der Satreceiver noch offline ist.
Aber das wieder Einschalten 15sek Nach dem Abschalten bekomme ich nicht hin.
Code: Alles auswählen
var Timer tCheck = null // globale Variablen zu Beginn der Datei definieren
rule "Satreceiver Startup Check"
when
Item ShellyPlugS_06 changed to ON // SAT eingeschaltet
then
logInfo("Coolstream Startup Check","Coolstream eingeschaltet, warte auf hochfahren.")
tCheck?.cancel // eventuell laufenden Timer stoppen
createTimer(now.plusSeconds(30), [| // lege Timer an
if (CoolstreamTime.toString.contains ("offline") && ShellyPlugS_05_Proxy.state==ON)// offline = Satreceiver ist nicht hochgefahren //am Denon hängt noch der Switch
ShellyPlugS_06.sendCommand(OFF) // schalte ab wenn CoolstreamTime "offline" behinhaltet
logInfo("Coolstream Startup Check","Coolstream offline, schalte noch mal ab.")
])
tCheck?.cancel
if (ShellyPlugS_06.state==OFF)
tCheck = createTimer(now.plusSeconds(15), [| // lege Timer an
ShellyPlugS_06.sendCommand(ON) // schalte nochmal ein
logInfo("Coolstream Startup Check","Coolstream offline, schalte wieder ein.")
])
end
- OpenHab 2.4
#PWRUP
#PWRUP
- PeterA
- Beiträge: 1106
- Registriert: 8. Feb 2019 12:12
Re: Satreceiver Startup Check
So neuer Versuch und diese Version funktioniert.
Satreceiver wird eingeschaltet.
Danach startet ein 180 sek. Timer. Jetzt hat der Satreceiver genug Zeit um sauber hoch zu Fahren.
Wenn das passiert ist hat das Item "CoolstreamTime" nicht mehr den Inhalt "offline" und es passiert nichts mehr weiter.
Fallls aber nach ablauf der 180 sek. der Satreceiver nicht sauber hoch gefahren ist wird er wieder abgeschaltet und nach 10 Sek wieder eingeschaltet.
Meistens fährt die Kiste dann beim zweiten Anlauf sauber hoch.
Code: Alles auswählen
var Timer tCheck = null // globale Variablen zu Beginn der Datei definieren
rule "Satreceiver Startup Check"
when
Item ShellyPlugS_06 changed to ON // SAT eingeschaltet
then
logInfo("Coolstream Startup Check","Coolstream eingeschaltet, warte auf hochfahren.")
tCheck?.cancel // eventuell laufenden Timer stoppen
createTimer(now.plusSeconds(180), [| // lege Timer an
if (CoolstreamTime.toString.contains ("offline") && ShellyPlugS_05_Proxy.state==ON) { // offline = Satreceiver ist nicht hochgefahren //am Denon hängt noch der Switch
ShellyPlugS_06.sendCommand(OFF) // schalte ab wenn CoolstreamTime "offline" behinhaltet
logInfo("Coolstream Startup Check","Coolstream offline, schalte noch mal ab.")
Thread::sleep(10000)
ShellyPlugS_06.sendCommand(ON)
logInfo("Coolstream Startup Check","Coolstream offline, schalte noch mal ein.")
}
])
end
Danach startet ein 180 sek. Timer. Jetzt hat der Satreceiver genug Zeit um sauber hoch zu Fahren.
Wenn das passiert ist hat das Item "CoolstreamTime" nicht mehr den Inhalt "offline" und es passiert nichts mehr weiter.
Fallls aber nach ablauf der 180 sek. der Satreceiver nicht sauber hoch gefahren ist wird er wieder abgeschaltet und nach 10 Sek wieder eingeschaltet.
Meistens fährt die Kiste dann beim zweiten Anlauf sauber hoch.
- OpenHab 2.4
#PWRUP
#PWRUP
- udo1toni
- Beiträge: 15269
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Satreceiver Startup Check
Jedoch ist die „Lösung“ mit dem Thread::sleep() sehr unschön.
Am iPad macht das jetzt keinen Spaß, den Code zu schreiben...
Gesendet von iPad mit Tapatalk
Am iPad macht das jetzt keinen Spaß, den Code zu schreiben...
Gesendet von iPad mit Tapatalk
openHAB4.3.6 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet
- PeterA
- Beiträge: 1106
- Registriert: 8. Feb 2019 12:12
Re: Satreceiver Startup Check
Ja das Thread Sleep gefällt mir auch nicht.
Leider habe ich es nicht hinbekommen einen zweiten Timer zu schreiben
Leider habe ich es nicht hinbekommen einen zweiten Timer zu schreiben
- OpenHab 2.4
#PWRUP
#PWRUP
- udo1toni
- Beiträge: 15269
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Satreceiver Startup Check
Du brauchst keinen zweiten Timer. Stattdessen schaust Du im Timer nach, ob die Steckdose an ist. Ist das der Fall, bist Du im „Ausschalttimer“ und schaltest die Steckdose aus. Anschließend planst Du denselben (!) Timer mittels theTimer.reschedule(now.plusSeconds(10)) neu.
Ist die Steckdose hingegen aus, so musst Du Dich im „Einschalttimer“ befinden und schaltest entsprechend die Steckdose ein.
Gesendet von iPad mit Tapatalk
Ist die Steckdose hingegen aus, so musst Du Dich im „Einschalttimer“ befinden und schaltest entsprechend die Steckdose ein.
Gesendet von iPad mit Tapatalk
openHAB4.3.6 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet
- PeterA
- Beiträge: 1106
- Registriert: 8. Feb 2019 12:12
Re: Satreceiver Startup Check
Ah ok, das mit dem reschedule hatte ich schon versucht.
Ging aber irgendwie nicht, war auch schon spät
Zwischenzeitlich ist mir aber noch ein gravierender Nachteil dieser Rule eingefallen:
Das kann ja zu einer Dauerschleife werden falls der Receiver überhaupt nicht Startet
bzw. die Netzwerkverbindung nicht funktioniert usw.
Eigentlich wäre es besser das ganze nach z.B. max. 3 Versuchen abzubrechen und dann z.B. ne Push Nachricht zu versenden.
Geht so was ?
Ging aber irgendwie nicht, war auch schon spät

Zwischenzeitlich ist mir aber noch ein gravierender Nachteil dieser Rule eingefallen:
Das kann ja zu einer Dauerschleife werden falls der Receiver überhaupt nicht Startet
bzw. die Netzwerkverbindung nicht funktioniert usw.
Eigentlich wäre es besser das ganze nach z.B. max. 3 Versuchen abzubrechen und dann z.B. ne Push Nachricht zu versenden.
Geht so was ?
- OpenHab 2.4
#PWRUP
#PWRUP
- udo1toni
- Beiträge: 15269
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Satreceiver Startup Check
Selbstverständlich 
Gesendet von iPad mit Tapatalk

Gesendet von iPad mit Tapatalk
openHAB4.3.6 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet