Projekte

Aus Home24
Version vom 25. November 2015, 16:41 Uhr von Maik (Diskussion | Beiträge) (Sony Multiroom Audio)

(Unterschied) →Nächstältere Version | Aktuelle Version ansehen (Unterschied) | Nächstjüngere Version← (Unterschied)
Wechseln zu: Navigation, Suche

Sony Multiroom Audio

dieser Artikel ist nur ein Zusammenfassung zum im FHZ vorgestellten Projekt

Partystreaming.jpg

meine aktuellen Geräte

  • 2x SA-NS310
  • 1x SA-NS410
  • 1x STR-DN840

Programm zum Starten
Auf der CCU habe ich ein Progamm erstellt was nur darauf wartet das ein Bewegungsmelder im Wohnzimmer, Bad oder Küche auslöst und dann die folgenden Scripte(über CUxD) ausführt.

Tab mit Mediaplayer=192.168.1.11:50000, AV-Receiver Name=Wohnzimmer, AV-Receiver IP=192.168.1.20, URI=Radio Energy

string url="http://192.168.1.11:50000/upnpavtransporturi=Wohnzimmer";
url = url # "&uri=local://192.168.1.20/a/proc/bivl2129%3aa%60local%230%7e4%5elocal%60%230%7e7%5e18898";
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("wget -q -O /dev/null '"#url#"'");

nach einer 10 sec Verzögerung wird der Party Modus gestartet

string url="http://192.168.1.11:50000/";
url = url # "partystart=Wohnzimmer&client=Kueche,Bad"; 
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("wget -q -O /dev/null '"#url#"'");

Programm zum Stopen
zum Beenden gibt ein weiters Programm was bei Änderung z.B. auf Abwesenheit startet.

Party beenden

string url="http://192.168.1.11:50000/partystop=Wohnzimmer";
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("wget -q -O /dev/null '"#url#"'");

Musik beenden mit 5 sec. Verzögerung

string url="http://192.168.1.11:50000/upnpstop=Wohnzimmer";
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("wget -q -O /dev/null '"#url#"'");

weiter
zur Party entfernen kann ich den LS z.B. in Kueche wenn x Minuten keine Bewegung war mit

string url="http://192.168.1.11:50000/partyleave=Wohnzimmer&client=Kueche";
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("wget -q -O /dev/null '"#url#"'");

und wieder hinzufügen

string url="http://192.168.1.11:50000/partyentry=Wohnzimmer&client=Kueche";
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("wget -q -O /dev/null '"#url#"'");

Steuerung ohne MediaPlayer per TCL
Downloads UPNP.tcl Party_Streaming.tcl

starten einer tcl über CUxD

dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("tclsh /usr/local/etc/config/addons/www/upnp.tcl");

Pollin AVR NET IO

Auf Basis des Codes von Ulrich Radig ulrichradig.de habe ich ein eigenes Projekt speziell für die HomeMatic CCU gestartet.
Ziel waren min 10 Temperatursensoren (max. 20 sind möglich), 8 Leds für eine Statusanzeige und 8 Taster und das ganze sollte natürlich direkt zur CCU senden (homematic_client) bzw. von ihr abgefragt (daten.csv) werden können.

Das braucht ihr alles

In die beiden TCL/CGI braucht ihr fürs senden und holen der Werte. Bei beiden müsst ihr die Variablen IDs der CCU und Komponenten des AVR anpassen bzw. erweitern.

  • das get_avr ließt die Werte aus der Daten.csv des AVR aus und kopiert diese in die Variablen der CCU. Starten könnt ihr das wieder über ein Programm der CCU.
  • das set_avr kopiert ebenfalls die vom AVR empfangen Werte in die Variablen der CCU wird aber vom AVR aus automatisch gestartet.



Zum direkten an/aus schalten einer LED könnt ihr direkt über die change.cgi einen Befehl senden
string url="http://192.168.1.3/change.cgi?C00"; dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("wget -q -O /dev/null '"#url#"'");

Avr1.jpg
Avr2.jpg
Avr3.jpg
AVR-Schaltplan.jpg