Funksteckdosen aus Kodi (OSMC) schalten
Verfasst: 27. Apr 2016, 11:03
Moin!
Ich habe nun ein wenig mit OSMC rumprobiert und habe es hinbekommen, direkt aus Kodi eine 433MHz Funksteckdose anzusprechen. Darüber lassen sich dann Geräte aus Kodi heraus schalten. Bei mir schaltet sich dadurch z.B. mein HiFi Verstärker ein, sobald bei Kodi eine Wiedergabe startet. Denkbar sind auch andere Szenarien, z.B. das Ambilight vom Strom zu trennen über eine FB Taste, etc.
Ich habe in diesem Thread
viewtopic.php?f=10&t=983
schon einen Weg beschrieben, wie es über einen separaten Webserver möglich ist, hier nun der direkt Weg über ein 433Mhz Modul.
Was wird benötig?
- 433Mhz Sender Modul FS1000A, z. B.:
http://www.amazon.de/dp/B00HULZ3ZO/ref= ... hxb1S57J2M
-Funksteckdosen mit 10 DIP Schaltern, z.B.:
http://www.amazon.de/dp/B001AX8QUM/ref= ... hxb0MEPHYX
- 3 Drähte zum verbinden des Senders mit dem Pi wie hier beschrieben:
https://raspiprojekt.de/machen/basics/s ... imitstart=
- 17,2 cm Drahtstück als Antenne (muss noch am Sender angelötet werden,wichtig für die Reichweite)
Um das ganze unter OSMC zu nutzen muss einiges über das OSMC Terminal installiert werden.
WICHTIG: Das ganze klappt nur, wenn Kodi NICHT läuft. Bei laufendem Kodi klappt es nicht per SSH Terminal (Putty). Man muss also an den Pi eine USB Tastatur anschließen, Kodi verlassen und dann [ESC] drücken um auf der Konsole zu landen. Dort als User "osmc" anmelden. Und alles per Hand eingeben. Wiring Pi kann sonst nicht installiert werden. Wenn die Installation abgeschlossen ist, kann man auf der Konsole gleich den Sender testen. Mit "exit" beendet man die Konsole, Kodi startet dann automatisch. Blöderweise gilt im Terminal das US Tastaurlayout. Man muss also bisschen suchen für die Sonderzeichen;)
Los geht's:
danach git-core und wiringPi installieren
Wenn das durch ist, kann nun RCswitch installiert werden
RCswitch gibt es aus verschiedenen Quellen im Netz, meiner Erfahrung nach funktioniert nicht jedes RCSwitch. Die angegebe Quelle unterstützt die o.A. Funksteckdose und Baugleiche (Elro, Mumbi, etc.) und einige Intertechno Steckdosen, aber nicht alle.
Nun kann man über den "send" Befehl die Steckdose über die Konsole schalten. Wenn die Steckdosen Dip-Schalter z.B. so stehen:
lautet der Befehl zu einschalten:
zum ausschalten:
Die ersten fünf Stellen stehen für die ersten fünf Dip-Schalter. Die sechste Stelle kann 1-5 sein fü a-e (a-e darf nur ein Schalter on sein), die letzte Stelle 1 für an, 0 für aus.
Bei Reichweitenproblemen oder unzuverlässigem Schalten lohnt es sich, mit verschiedenen Codes zu experimentieren. Auch ist das ganze recht Zeitkritisch, d.h. der Pi muss den Code im richtigen Takt senden. Ich habe es mit einem Pi 1 getestet. Wenn Kodi läuft klappt es leider nicht besonders zuverlässig, weil der Pi 1 nur Singelcore ist und vermutlich zu beschäftigt mit Kodi. Gesendet wird (man hört die Pulse im Lautsprecher), aber die Taktung scheint nicht zu stimmen. Bei beendetem Kodi aus dem Terminal klappt es einwandfrei sowohl aus der Batch als auch direkt mit send. Der Test mit einem Pi2 lief bestens, schalten klappt zuverlässig aus Kodi.
Den "send" Befehl kann man sich nun in eine Batchdatei speichern:
Inhalt:
Nach dem speichern noch ausführbar machen:
Nun kann man in die favourites.xml diesen Befehl einfügen und somit aus Kodi aufrufen:
Unter thumb natürlich ein Eigenes Bildchen verlinken.
Sollte auch so in der remote.xml funktionieren.
Oder über das Addon "xbmc callbacks" bei bestimmen Systemzuständen ausführen:
http://forum.kodi.tv/showthread.php?tid=151011
Das Addon wird unter Addons/Dienste installiert. Man stellt einfach für die gewünschte Funktion den Pfad zur Batch ein.
Viel Erfolg beim basteln!
Ich habe nun ein wenig mit OSMC rumprobiert und habe es hinbekommen, direkt aus Kodi eine 433MHz Funksteckdose anzusprechen. Darüber lassen sich dann Geräte aus Kodi heraus schalten. Bei mir schaltet sich dadurch z.B. mein HiFi Verstärker ein, sobald bei Kodi eine Wiedergabe startet. Denkbar sind auch andere Szenarien, z.B. das Ambilight vom Strom zu trennen über eine FB Taste, etc.
Ich habe in diesem Thread
viewtopic.php?f=10&t=983
schon einen Weg beschrieben, wie es über einen separaten Webserver möglich ist, hier nun der direkt Weg über ein 433Mhz Modul.
Was wird benötig?
- 433Mhz Sender Modul FS1000A, z. B.:
http://www.amazon.de/dp/B00HULZ3ZO/ref= ... hxb1S57J2M
-Funksteckdosen mit 10 DIP Schaltern, z.B.:
http://www.amazon.de/dp/B001AX8QUM/ref= ... hxb0MEPHYX
- 3 Drähte zum verbinden des Senders mit dem Pi wie hier beschrieben:
https://raspiprojekt.de/machen/basics/s ... imitstart=
- 17,2 cm Drahtstück als Antenne (muss noch am Sender angelötet werden,wichtig für die Reichweite)
Um das ganze unter OSMC zu nutzen muss einiges über das OSMC Terminal installiert werden.
WICHTIG: Das ganze klappt nur, wenn Kodi NICHT läuft. Bei laufendem Kodi klappt es nicht per SSH Terminal (Putty). Man muss also an den Pi eine USB Tastatur anschließen, Kodi verlassen und dann [ESC] drücken um auf der Konsole zu landen. Dort als User "osmc" anmelden. Und alles per Hand eingeben. Wiring Pi kann sonst nicht installiert werden. Wenn die Installation abgeschlossen ist, kann man auf der Konsole gleich den Sender testen. Mit "exit" beendet man die Konsole, Kodi startet dann automatisch. Blöderweise gilt im Terminal das US Tastaurlayout. Man muss also bisschen suchen für die Sonderzeichen;)
Los geht's:
Code: Alles auswählen
sudo apt-get install build-essential
danach git-core und wiringPi installieren
Code: Alles auswählen
sudo apt-get install git-core
git clone git://git.drogon.net/wiringPi
cd wiringPi
git pull origin
./build
Wenn das durch ist, kann nun RCswitch installiert werden
Code: Alles auswählen
sudo mkdir /opt/rcswitch-pi
cd /opt/rcswitch-pi
sudo wget http://www.onkeldave.de/pi/rcswitch-pi.zip
sudo unzip rcswitch-pi
sudo make
RCswitch gibt es aus verschiedenen Quellen im Netz, meiner Erfahrung nach funktioniert nicht jedes RCSwitch. Die angegebe Quelle unterstützt die o.A. Funksteckdose und Baugleiche (Elro, Mumbi, etc.) und einige Intertechno Steckdosen, aber nicht alle.
Nun kann man über den "send" Befehl die Steckdose über die Konsole schalten. Wenn die Steckdosen Dip-Schalter z.B. so stehen:
lautet der Befehl zu einschalten:
Code: Alles auswählen
sudo /opt/rcswitch-pi/send 11111 4 1
zum ausschalten:
Code: Alles auswählen
sudo /opt/rcswitch-pi/send 11111 4 0
Die ersten fünf Stellen stehen für die ersten fünf Dip-Schalter. Die sechste Stelle kann 1-5 sein fü a-e (a-e darf nur ein Schalter on sein), die letzte Stelle 1 für an, 0 für aus.
Bei Reichweitenproblemen oder unzuverlässigem Schalten lohnt es sich, mit verschiedenen Codes zu experimentieren. Auch ist das ganze recht Zeitkritisch, d.h. der Pi muss den Code im richtigen Takt senden. Ich habe es mit einem Pi 1 getestet. Wenn Kodi läuft klappt es leider nicht besonders zuverlässig, weil der Pi 1 nur Singelcore ist und vermutlich zu beschäftigt mit Kodi. Gesendet wird (man hört die Pulse im Lautsprecher), aber die Taktung scheint nicht zu stimmen. Bei beendetem Kodi aus dem Terminal klappt es einwandfrei sowohl aus der Batch als auch direkt mit send. Der Test mit einem Pi2 lief bestens, schalten klappt zuverlässig aus Kodi.
Den "send" Befehl kann man sich nun in eine Batchdatei speichern:
Code: Alles auswählen
sudo nano /home/osmc/.kodi/userdata/an.sh
Inhalt:
Code: Alles auswählen
#!/bin/bash
sudo /opt/rcswitch-pi/send 11111 4 1
Nach dem speichern noch ausführbar machen:
Code: Alles auswählen
chmod +x /home/osmc/.kodi/userdata/an.sh
Nun kann man in die favourites.xml diesen Befehl einfügen und somit aus Kodi aufrufen:
Code: Alles auswählen
<favourite name="Steckdose an" thumb="special://home/userdata/fb-switch.png">
system.exec("/storage/.kodi/userdata/an.sh")</favourite>
Unter thumb natürlich ein Eigenes Bildchen verlinken.
Sollte auch so in der remote.xml funktionieren.
Oder über das Addon "xbmc callbacks" bei bestimmen Systemzuständen ausführen:
http://forum.kodi.tv/showthread.php?tid=151011
Das Addon wird unter Addons/Dienste installiert. Man stellt einfach für die gewünschte Funktion den Pfad zur Batch ein.
Viel Erfolg beim basteln!