Neues Modul PHTV für Philips Fernseher (inkl. Ambilight)

Begonnen von Loredo, 06 März 2014, 22:09:17

Vorheriges Thema - Nächstes Thema

Loredo

Zitat von: JojoK am 27 Dezember 2014, 18:08:18
Dabei bin ich auf eine Ungereimtheit in Zeile 2473 gestoßen:
...
Mein Vorschlag wäre also:
...
Damit scheint es bei mir nun keine Artefakte mehr zu geben. Was denkst du, magst du die Änderung übernehmen?


Sehr guter Hinweis, vielen Dank! Habe ich gerade übernommen.
Ich hatte auch schon herausgefunden, dass h oft negativ ist. Ich bin noch nicht sicher, ob es richtig oder sinnvoll ist, abs() in den RGB2HSV Konverter einzubauen. Eigentlich sollte dort nie etwas negatives rauskommen...


Gruß
Julian
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

JojoK

Hi Julian,

Ich denke, du beziehst dich auf folgende Zeile?


$h = ( 60 * ( ( $g - $b ) / $c ) % 360 ) / 360;


Soweit ich weiß, ist der modulo Operator nicht eindeutig definiert, wenn der Dividend negativ ist. Normalerweise wird ein positiver Rest angenommen, es soll aber auch perl Implementationen geben, die stattdessen einen negativen Rest zurückgeben.

Beispiel:

-7 mod 3 = 2 (da -7/3 = -3 Rest 2)
oder
-7 mod 3 = -1 (da -7/3 = -2 Rest -1)

Wenn es manchmal negativ wird bei dir, gehe ich mal von letzterer Implementation aus. In dem Fall sollte man nicht den Betrag nehmen, sondern einen ganzen Divisor hinzuzählen, also 360 bzw. 1, da du ja noch ein mal durch 360 teilst nach der modulo Operation. Das mit den 360° hinzuzählen entspricht ja auch der Tatsache, dass auf einem Kreis -10° gleichzeitig als 350° angesehen werden können.

Wobei ich sehe gerade, hier wird das doch schon gemacht:


    if ( $h < 0 ) {
        $h = $h + 1;
    }


An welcher Stelle wird h denn dann negativ?

Übrigens ließe sich diese Tatsache mit dem Farbkreis noch weiterspinnen, in dem bei mir im vorigen Post erwähnten hue color delta auch ein Mittelwert gebildet wird, wenn es zwischen den benachbarten LEDs ein Sprung von knapp unter 360° zu knapp über 0° gibt. (Beispiel LED1 hat h=359° und LED2 hat h=1°: Bisher würde der check sagen, dass das delta 358° ist und der zweite Wert daher verworfen wird. Man könnte jetzt aber mit etwas mehr Logik die beiden auch zu einem Mittelwert von h=0° verschmelzen).
Wenn du das in deinem Modul drin haben willst, kann ich mir gerne mal Gedanken machen, wie sich das im Code realisieren ließe.

Gruß
Johannes

Loredo

#167
Zitat von: JojoK am 28 Dezember 2014, 12:57:34
Wobei ich sehe gerade, hier wird das doch schon gemacht:

Ja, haben wir erst jüngst in Commit cd8d3ab hinzugefügt. Macht für mich auch absolut Sinn. Ich fragte mich nur, weshalb ich es bisher in keiner anderen Referenzimplementierung vorgefunden habe.
Aber danke für die anschauliche Erklärung, hat mich bestärkt, dass es jetzt richtig ist :)

Zitat von: JojoK am 28 Dezember 2014, 12:57:34
Übrigens ließe sich diese Tatsache mit dem Farbkreis noch weiterspinnen

Ja da hast du recht. Die aktuelle Implementierung ist einfach mehr ein Proof of concept und wartet auf Leute wie dich, die sich da mehr reinhängen möchten :-)
Ich habe gerade zu viele Baustellen parallel und mir ist das AmbiHue auch persönlich nicht so wichtig. Es ist "nur" der Vollständigkeit halber im Modul und als Basis zum herumspielen  ;)

Zitat von: JojoK am 28 Dezember 2014, 12:57:34
Wenn du das in deinem Modul drin haben willst, kann ich mir gerne mal Gedanken machen, wie sich das im Code realisieren ließe.

Sehr sehr gerne! :D
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

RonnyLULU

Hallo,

Bei unserem neuen Philips TV 58PUK6809 scheint Jointspace nicht zu funktionieren.

Auf dem Port 1925 bekomme ich immer die Antwort "Forbidden".

Die MyRemote App funktioniert tadellos und scheint auf dem Port 2323 zu kommunizieren.

Mit Wireshark habe ich da etwas mit gesniffed...

Weiss jemand weiter wie das bei den neuen Philips Geräten läuft? Finde da irgendwie nix

Vielen Dank im Voraus.

MfG

Schlimbo

Hallo RonnyLULU,
Hast du mal das Attribut "jsversion" auf 5 gestellt?

RonnyLULU

Hallo,

Ja, aber ich glaube jointspace läuft auf den neuen Modelle nicht wie gewohnt? Oder doch?

Wie gesagt bekomme bei jedem Aufruf über dem Port (auch über Webbrowser ) die Antwort forbidden. Muss JointSpace auch bei den neuen aktiviert werden?

Cruiser79

Zitat von: RonnyLULU am 23 Februar 2015, 15:28:28

Auf dem Port 1925 bekomme ich immer die Antwort "Forbidden".

Die MyRemote App funktioniert tadellos und scheint auf dem Port 2323 zu kommunizieren.


Normalerweise bekommt man ja über http://ip-address:1925 die API von JointSpace. Was liefert denn bei dir ein http://ip-address:2323?
FHEM auf Raspberry Pi
HM-CFG-LAN mit HM-TC-IT-WM-W-EU, HM-CC-RT-DN, HM-WDS10-TH-O, HM-LC-SW1-FM, HM-LC-Bl1-FM
Signalduino mit Elro AB440, LOGILINK WS0002, IT CMR-1000

Loredo

Ich bin mir schon sicher, dass 1925 der richtige Port ist. 2323 wird per Broadcast angesprochen, damit die App den Fernseher automatisch finden kann. Das fällt beim PHTV Modul weg, da die IP fix konfiguriert wird. "Forbidden" zeigt auch, dass dort ein Webserver antwortet.


Das PHTV Modul ist nur für Geräte 2010-2013 ausgelegt, die 2014er Geräteklassen kann ich nicht testen und ich habe nur rudimentären Support dafür auf gut Glück eingebaut (siehe weiter vorne hier in dieser Diskussion). Das Attribut "jsversion" auf 5 zu setzen ist für die Geräte ab 2014 genau das richtige. Um im Logfile zu sehen, was das Modul genau bei der Abfrage tut und was es zurück bekommt, kann man das Attribut verbose kurzzeitig auf 5 setzen. Das Hilft bei der Fehlersuche und Interpretation.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

RonnyLULU

Also die Anfrage http://ip-address:1925 liefert eben auch nur Forbidden

Die Anfrage http://ip-address:2323 geht nicht, keine Antwort.

Wie gesagt kommuniziert die MyRemote App auch immer auf Port 2323.
Die IP des TV ist 192.168.178.46 und mit Wireshark sehe ich dass die MyRemote App Telegramm über Port 2323 an 192.168.178.255 sendet.

Loredo

#174
Zitat von: RonnyLULU am 25 Februar 2015, 12:22:00
Also die Anfrage http://ip-address:1925 liefert eben auch nur Forbidden



Weil du nicht im richtigen Format anfragst und die falsche URI verwendet wird, was nicht der API entspricht. Ein "Forbidden" ist da vollkommen in Ordnung.


Zitat von: RonnyLULU am 25 Februar 2015, 12:22:00
Die Anfrage http://ip-address:2323 geht nicht, keine Antwort.


Wie gesagt kommuniziert die MyRemote App auch immer auf Port 2323.Die IP des TV ist 192.168.178.46 und mit Wireshark sehe ich dass die MyRemote App Telegramm über Port 2323 an 192.168.178.255 sendet.



Klar, dort gibt es ja auch keinen Server. Wie gesagt, es ist ein Broadcast, den die App schickt, damit alle Geräte im gesamten Netzwerk die Nachricht kriegen und diejenigen per Unicast darauf antworten, welche sich dafür zuständig fühlen. Das sind dann eben Philips TVs. Die App wird die Broadcasts sicherlich zyklisch verschicken um zu prüfen, ob der TV noch da ist oder sich neue im Netzwerk befinden - alles ganz normal.


Ich unterstelle mal, dass deine Auswertung per Wireshark nicht ganz akkurat ist. Die tatsächlichen Befehle werden ganz sicher nicht als Broadcast an .255 verschickt, sondern als Unicast an .46 und dort an Port 1925.


Wie dem auch sei, soweit der kleine Exkurs zum Thema Netzwerktechnik  :)


Bitte beachte meine anderen Kommentare:


Zitat von: Loredo am 24 Februar 2015, 16:47:20
Das PHTV Modul ist nur für Geräte 2010-2013 ausgelegt, die 2014er Geräteklassen kann ich nicht testen und ich habe nur rudimentären Support dafür auf gut Glück eingebaut (siehe weiter vorne hier in dieser Diskussion). Das Attribut "jsversion" auf 5 zu setzen ist für die Geräte ab 2014 genau das richtige. Um im Logfile zu sehen, was das Modul genau bei der Abfrage tut und was es zurück bekommt, kann man das Attribut verbose kurzzeitig auf 5 setzen. Das Hilft bei der Fehlersuche und Interpretation.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

RonnyLULU

Vielen Dank für deine Erklärungen und deinen Exkurs.

Bzgl. Wireshark kann es sein dass meine Auswertung nicht 100%ig sind, da ich mich damit tatsächlich nicht gut auskenne.

Zitat von: Loredo am 25 Februar 2015, 12:31:41
Weil du nicht im richtigen Format anfragst und die falsche URI verwendet wird, was nicht der API entspricht. Ein "Forbidden" ist da vollkommen in Ordnung.

Aber wie kann ich "manuell" überprüfen ob der TV Befehle aus dem Netzwerk annimmt?
Sollte da nicht die Documentation der API erscheinen anstelle eines "Forbidden"?

MfG

Loredo

#176
Zitat von: RonnyLULU am 27 Februar 2015, 12:32:11
Aber wie kann ich "manuell" überprüfen ob der TV Befehle aus dem Netzwerk annimmt?
Sollte da nicht die Documentation der API erscheinen anstelle eines "Forbidden"?


Das hat sich Philips bei der Neuimplementierung der API unter Android wohl gespart.
Bisher habe ich keine offizielle Dokumentation der v5 API gefunden; offenbar gelten aber ansonsten auch die v1 Befehle. Daher kannst du jede JointSpace v1 Dokumentation hernehmen und musst in der URI nur 1 durch 5 ersetzen:
http://jointspace.sourceforge.net/projectdata/documentation/jasonApi/1/doc/API.html


Das PHTV Modul zeigt dir bei verbose=5 auch an, welche Befehle es absetzt bzw. wie die generierten URLs dazu aussehen.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

DOCa Cola

Btw. Die Thematik mit den Fehlfarben ist bei mir immer noch präsent.
Ein 100% weisses bzw schwarzes Bild generiert immer noch ein gelbliches Licht. Ich nutze die aktuelle dev version.

OsiRis

#178
Hallo,

Vielen Dank für die großartige Arbeit an diesem Modul. Es ist genau das was ich gesucht habe um mein Ambilight zu erweitern. Leider bin ich vor kurzem erst auf FHEM gestoßen und noch sehr unerfahren. Ich habe also PHTV eingebunden und die Lampen die ich ansteuern möchte angegeben. Es würde mich freuen wenn sich einer mal den Code ansehen könnte.

define PhilipsTV PHTV 192.168.178.30
attr PhilipsTV ambiHueLeft HUEDevice2 HUEDevice3 HUEDevice9
attr PhilipsTV ambiHueRight HUEDevice1 HUEDevice4
attr PhilipsTV devStateIcon on:rc_GREEN:off off:rc_YELLOW:on absent:rc_STOP:on
attr PhilipsTV icon it_television
attr PhilipsTV inputs EXT_1:HDMI_1:HDMI_2:HDMI_3:HDMI_Side:Watch_Satellite:Watch_TV:VGA:Y_Pb_Pr
attr PhilipsTV room Wohnzimmer
attr PhilipsTV webCmd volume:input:rgb


Ich komme einfach nicht auf den Fehler, vielleicht ist es ja nur eine Kleinigkeit. Das Problem ist, es scheint nicht mit mehreren Lampen pro Seite zu laufen. Wenn ich nur 2 LivingColors (Iris und Aura) einbinde läuft es einwandfrei. Sobald ich aber eine dritte Iris zuschalte werden nur die ersten 2 angesteuert, die dritte bleibt einfach aus. Ich habs auch schon mit den optionalen Argumenten (welche LEDs, Saturation, Brightness) versucht, damit klappts auch nicht. Wie gesagt, ich habe noch kaum Erfahrung mit FHEM, habe aber mal verbose beim PHTV der HUEBridge und den einzelnen Lampen auf 5 gesetzt. Meiner Meinung nach liest er die Werte richtig aus dem Fernseher aus und setzt diese jedoch nur auf den ersten 2 definierten Lampen. Hier ein Auszug aus dem Log:

2015.05.04 12:21:28 3: PHTV set PhilipsTV ambiHue on
2015.05.04 12:21:28 5: PHTV PhilipsTV: called function PHTV_SendCommand()
2015.05.04 12:21:28 4: PHTV PhilipsTV: REQ ambilight/processed
2015.05.04 12:21:28 5: PHTV PhilipsTV: GET http://192.168.178.30:1925/1/ambilight/processed
2015.05.04 12:21:28 5: PHTV PhilipsTV: called function PHTV_Set()
2015.05.04 12:21:28 5: PHTV PhilipsTV: called function PHTV_ReceiveCommand()
2015.05.04 12:21:28 4: PHTV PhilipsTV: RCV ambilight/processed
2015.05.04 12:21:28 5: PHTV PhilipsTV: RES ambilight/processed
{
"layer1": {
"left": {
"0": {
"r": 254,
"g": 230,
"b": 0
},
"1": {
"r": 254,
"g": 223,
"b": 0
},
"2": {
"r": 254,
"g": 209,
"b": 0
},
"3": {
"r": 254,
"g": 221,
"b": 0
},
"4": {
"r": 254,
"g": 232,
"b": 89
},
"5": {
"r": 254,
"g": 233,
"b": 108
},
"6": {
"r": 254,
"g": 212,
"b": 83
}
},
"top": {

},
"right": {
"0": {
"r": 254,
"g": 212,
"b": 83
},
"1": {
"r": 254,
"g": 216,
"b": 84
},
"2": {
"r": 254,
"g": 219,
"b": 90
},
"3": {
"r": 254,
"g": 217,
"b": 89
},
"4": {
"r": 254,
"g": 220,
"b": 107
},
"5": {
"r": 254,
"g": 228,
"b": 140
},
"6": {
"r": 254,
"g": 218,
"b": 129
}
},
"bottom": {

}
}
}

2015.05.04 12:21:28 4: using HUEBridge_HTTP_Request: PUT lights/2/state
2015.05.04 12:21:28 4: using HUEBridge_HTTP_Request: PUT lights/1/state
2015.05.04 12:21:28 5: PHTV PhilipsTV: called function PHTV_SendCommand()
2015.05.04 12:21:28 4: PHTV PhilipsTV: REQ ambilight/processed
2015.05.04 12:21:28 5: PHTV PhilipsTV: GET http://192.168.178.30:1925/1/ambilight/processed
2015.05.04 12:21:28 5: PHTV PhilipsTV: called function PHTV_Set()
2015.05.04 12:21:29 5: PHTV PhilipsTV: called function PHTV_ReceiveCommand()
2015.05.04 12:21:29 4: PHTV PhilipsTV: RCV ambilight/processed
2015.05.04 12:21:29 5: PHTV PhilipsTV: RES ambilight/processed
{
"layer1": {
"left": {
"0": {
"r": 254,
"g": 227,
"b": 0
},
"1": {
"r": 254,
"g": 224,
"b": 0
},
"2": {
"r": 254,
"g": 207,
"b": 0
},
"3": {
"r": 254,
"g": 222,
"b": 0
},
"4": {
"r": 254,
"g": 233,
"b": 87
},
"5": {
"r": 254,
"g": 233,
"b": 108
},
"6": {
"r": 254,
"g": 212,
"b": 83
}
},
"top": {

},
"right": {
"0": {
"r": 254,
"g": 212,
"b": 83
},
"1": {
"r": 254,
"g": 217,
"b": 85
},
"2": {
"r": 254,
"g": 219,
"b": 90
},
"3": {
"r": 254,
"g": 217,
"b": 89
},
"4": {
"r": 254,
"g": 219,
"b": 108
},
"5": {
"r": 254,
"g": 230,
"b": 142
},
"6": {
"r": 254,
"g": 217,
"b": 125
}
},
"bottom": {

}
}
}

2015.05.04 12:21:29 5: PHTV PhilipsTV: called function PHTV_SendCommand()
2015.05.04 12:21:29 4: PHTV PhilipsTV: REQ ambilight/processed
2015.05.04 12:21:29 5: PHTV PhilipsTV: GET http://192.168.178.30:1925/1/ambilight/processed
2015.05.04 12:21:29 5: PHTV PhilipsTV: called function PHTV_ReceiveCommand()
2015.05.04 12:21:29 4: PHTV PhilipsTV: RCV ambilight/processed
2015.05.04 12:21:29 5: PHTV PhilipsTV: RES ambilight/processed
{
"layer1": {
"left": {
"0": {
"r": 254,
"g": 227,
"b": 0
},
"1": {
"r": 254,
"g": 226,
"b": 0
},
"2": {
"r": 254,
"g": 207,
"b": 0
},
"3": {
"r": 254,
"g": 222,
"b": 0
},
"4": {
"r": 254,
"g": 233,
"b": 84
},
"5": {
"r": 254,
"g": 233,
"b": 108
},
"6": {
"r": 254,
"g": 213,
"b": 83
}
},
"top": {

},
"right": {
"0": {
"r": 254,
"g": 213,
"b": 83
},
"1": {
"r": 254,
"g": 216,
"b": 84
},
"2": {
"r": 254,
"g": 219,
"b": 91
},
"3": {
"r": 254,
"g": 217,
"b": 90
},
"4": {
"r": 254,
"g": 218,
"b": 108
},
"5": {
"r": 254,
"g": 230,
"b": 144
},
"6": {
"r": 254,
"g": 218,
"b": 124
}
},
"bottom": {

}
}
}

2015.05.04 12:21:29 5: PHTV PhilipsTV: called function PHTV_SendCommand()
2015.05.04 12:21:29 4: PHTV PhilipsTV: REQ ambilight/processed
2015.05.04 12:21:29 5: PHTV PhilipsTV: GET http://192.168.178.30:1925/1/ambilight/processed
2015.05.04 12:21:29 5: PHTV PhilipsTV: called function PHTV_ReceiveCommand()
2015.05.04 12:21:29 4: PHTV PhilipsTV: RCV ambilight/processed
2015.05.04 12:21:29 5: PHTV PhilipsTV: RES ambilight/processed
{
"layer1": {
"left": {
"0": {
"r": 254,
"g": 225,
"b": 0
},
"1": {
"r": 254,
"g": 228,
"b": 0
},
"2": {
"r": 254,
"g": 205,
"b": 0
},
"3": {
"r": 254,
"g": 224,
"b": 0
},
"4": {
"r": 254,
"g": 233,
"b": 82
},
"5": {
"r": 254,
"g": 235,
"b": 109
},
"6": {
"r": 254,
"g": 213,
"b": 83
}
},
"top": {

},
"right": {
"0": {
"r": 254,
"g": 213,
"b": 83
},
"1": {
"r": 254,
"g": 216,
"b": 86
},
"2": {
"r": 254,
"g": 219,
"b": 92
},
"3": {
"r": 254,
"g": 217,
"b": 89
},
"4": {
"r": 254,
"g": 220,
"b": 110
},
"5": {
"r": 254,
"g": 226,
"b": 141
},
"6": {
"r": 254,
"g": 216,
"b": 125
}
},
"bottom": {

}
}
}

2015.05.04 12:21:29 5: PHTV PhilipsTV: called function PHTV_SendCommand()
2015.05.04 12:21:29 4: PHTV PhilipsTV: REQ ambilight/processed
2015.05.04 12:21:29 5: PHTV PhilipsTV: GET http://192.168.178.30:1925/1/ambilight/processed
2015.05.04 12:21:30 5: PHTV PhilipsTV: called function PHTV_ReceiveCommand()
2015.05.04 12:21:30 4: PHTV PhilipsTV: RCV ambilight/processed
2015.05.04 12:21:30 5: PHTV PhilipsTV: RES ambilight/processed
{
"layer1": {
"left": {
"0": {
"r": 254,
"g": 226,
"b": 0
},
"1": {
"r": 254,
"g": 229,
"b": 0
},
"2": {
"r": 254,
"g": 202,
"b": 0
},
"3": {
"r": 254,
"g": 223,
"b": 0
},
"4": {
"r": 254,
"g": 232,
"b": 80
},
"5": {
"r": 254,
"g": 235,
"b": 109
},
"6": {
"r": 254,
"g": 213,
"b": 84
}
},
"top": {

},
"right": {
"0": {
"r": 254,
"g": 213,
"b": 84
},
"1": {
"r": 254,
"g": 216,
"b": 86
},
"2": {
"r": 254,
"g": 220,
"b": 92
},
"3": {
"r": 254,
"g": 216,
"b": 89
},
"4": {
"r": 254,
"g": 221,
"b": 114
},
"5": {
"r": 254,
"g": 227,
"b": 142
},
"6": {
"r": 254,
"g": 216,
"b": 123
}
},
"bottom": {

}
}
}

2015.05.04 12:21:30 5: PHTV PhilipsTV: called function PHTV_SendCommand()
2015.05.04 12:21:30 4: PHTV PhilipsTV: REQ ambilight/processed
2015.05.04 12:21:30 5: PHTV PhilipsTV: GET http://192.168.178.30:1925/1/ambilight/processed
2015.05.04 12:21:30 5: PHTV PhilipsTV: called function PHTV_ReceiveCommand()
2015.05.04 12:21:30 4: PHTV PhilipsTV: RCV ambilight/processed
2015.05.04 12:21:30 5: PHTV PhilipsTV: RES ambilight/processed
{
"layer1": {
"left": {
"0": {
"r": 254,
"g": 223,
"b": 0
},
"1": {
"r": 254,
"g": 230,
"b": 0
},
"2": {
"r": 254,
"g": 200,
"b": 0
},
"3": {
"r": 254,
"g": 224,
"b": 0
},
"4": {
"r": 254,
"g": 230,
"b": 79
},
"5": {
"r": 254,
"g": 236,
"b": 109
},
"6": {
"r": 254,
"g": 214,
"b": 85
}
},
"top": {

},
"right": {
"0": {
"r": 254,
"g": 214,
"b": 85
},
"1": {
"r": 254,
"g": 216,
"b": 86
},
"2": {
"r": 254,
"g": 221,
"b": 93
},
"3": {
"r": 254,
"g": 217,
"b": 88
},
"4": {
"r": 254,
"g": 221,
"b": 116
},
"5": {
"r": 254,
"g": 230,
"b": 141
},
"6": {
"r": 254,
"g": 216,
"b": 123
}
},
"bottom": {

}
}
}

2015.05.04 12:21:30 4: using HUEBridge_HTTP_Request: PUT lights/1/state
2015.05.04 12:21:30 5: PHTV PhilipsTV: called function PHTV_SendCommand()
2015.05.04 12:21:30 4: PHTV PhilipsTV: REQ ambilight/processed
2015.05.04 12:21:30 5: PHTV PhilipsTV: GET http://192.168.178.30:1925/1/ambilight/processed
2015.05.04 12:21:31 5: PHTV PhilipsTV: called function PHTV_ReceiveCommand()
2015.05.04 12:21:31 4: PHTV PhilipsTV: RCV ambilight/processed
2015.05.04 12:21:31 5: PHTV PhilipsTV: RES ambilight/processed
{
"layer1": {
"left": {
"0": {
"r": 254,
"g": 222,
"b": 0
},
"1": {
"r": 252,
"g": 238,
"b": 0
},
"2": {
"r": 249,
"g": 216,
"b": 0
},
"3": {
"r": 252,
"g": 232,
"b": 0
},
"4": {
"r": 253,
"g": 234,
"b": 73
},
"5": {
"r": 252,
"g": 241,
"b": 117
},
"6": {
"r": 251,
"g": 214,
"b": 91
}
},
"top": {

},
"right": {
"0": {
"r": 251,
"g": 214,
"b": 91
},
"1": {
"r": 251,
"g": 222,
"b": 96
},
"2": {
"r": 250,
"g": 233,
"b": 107
},
"3": {
"r": 250,
"g": 225,
"b": 98
},
"4": {
"r": 252,
"g": 228,
"b": 128
},
"5": {
"r": 253,
"g": 234,
"b": 145
},
"6": {
"r": 254,
"g": 217,
"b": 119
}
},
"bottom": {

}
}
}

2015.05.04 12:21:31 4: PHTV PhilipsTV: color changed hDiff=2 sDiff=5 bDiff=3
2015.05.04 12:21:31 4: using HUEBridge_HTTP_Request: PUT lights/2/state
2015.05.04 12:21:31 4: PHTV PhilipsTV: color changed hDiff=3 sDiff=13 bDiff=3
2015.05.04 12:21:31 4: using HUEBridge_HTTP_Request: PUT lights/1/state
2015.05.04 12:21:31 5: PHTV PhilipsTV: called function PHTV_SendCommand()
2015.05.04 12:21:31 4: PHTV PhilipsTV: REQ ambilight/processed
2015.05.04 12:21:31 5: PHTV PhilipsTV: GET http://192.168.178.30:1925/1/ambilight/processed
2015.05.04 12:21:31 5: PHTV PhilipsTV: called function PHTV_ReceiveCommand()
2015.05.04 12:21:31 4: PHTV PhilipsTV: RCV ambilight/processed
2015.05.04 12:21:31 5: PHTV PhilipsTV: RES ambilight/processed
{
"layer1": {
"left": {
"0": {
"r": 252,
"g": 232,
"b": 0
},
"1": {
"r": 251,
"g": 251,
"b": 0
},
"2": {
"r": 247,
"g": 242,
"b": 0
},
"3": {
"r": 250,
"g": 248,
"b": 0
},
"4": {
"r": 253,
"g": 239,
"b": 72
},
"5": {
"r": 250,
"g": 250,
"b": 138
},
"6": {
"r": 252,
"g": 222,
"b": 112
}
},
"top": {

},
"right": {
"0": {
"r": 252,
"g": 222,
"b": 112
},
"1": {
"r": 249,
"g": 235,
"b": 120
},
"2": {
"r": 249,
"g": 248,
"b": 128
},
"3": {
"r": 249,
"g": 241,
"b": 117
},
"4": {
"r": 249,
"g": 244,
"b": 145
},
"5": {
"r": 253,
"g": 240,
"b": 149
},
"6": {
"r": 253,
"g": 221,
"b": 120
}
},
"bottom": {

}
}
}

2015.05.04 12:21:31 4: PHTV PhilipsTV: color changed hDiff=5 sDiff=21 bDiff=2
2015.05.04 12:21:31 4: using HUEBridge_HTTP_Request: PUT lights/1/state
2015.05.04 12:21:31 5: PHTV PhilipsTV: called function PHTV_SendCommand()
2015.05.04 12:21:31 4: PHTV PhilipsTV: REQ ambilight/processed
2015.05.04 12:21:31 5: PHTV PhilipsTV: GET http://192.168.178.30:1925/1/ambilight/processed
2015.05.04 12:21:31 5: PHTV PhilipsTV: called function PHTV_ReceiveCommand()
2015.05.04 12:21:31 4: PHTV PhilipsTV: RCV ambilight/processed
2015.05.04 12:21:31 5: PHTV PhilipsTV: RES ambilight/processed
{
"layer1": {
"left": {
"0": {
"r": 252,
"g": 239,
"b": 0
},
"1": {
"r": 238,
"g": 254,
"b": 0
},
"2": {
"r": 223,
"g": 254,
"b": 0
},
"3": {
"r": 238,
"g": 254,
"b": 0
},
"4": {
"r": 252,
"g": 247,
"b": 76
},
"5": {
"r": 236,
"g": 254,
"b": 172
},
"6": {
"r": 249,
"g": 238,
"b": 152
}
},
"top": {

},
"right": {
"0": {
"r": 249,
"g": 238,
"b": 152
},
"1": {
"r": 242,
"g": 251,
"b": 162
},
"2": {
"r": 229,
"g": 254,
"b": 157
},
"3": {
"r": 242,
"g": 253,
"b": 145
},
"4": {
"r": 240,
"g": 254,
"b": 165
},
"5": {
"r": 253,
"g": 247,
"b": 157
},
"6": {
"r": 254,
"g": 225,
"b": 122
}
},
"bottom": {

}
}
}

2015.05.04 12:21:31 4: PHTV PhilipsTV: color changed hDiff=9 sDiff=23 bDiff=5
2015.05.04 12:21:31 4: using HUEBridge_HTTP_Request: PUT lights/1/state
2015.05.04 12:21:31 5: PHTV PhilipsTV: called function PHTV_SendCommand()
2015.05.04 12:21:31 4: PHTV PhilipsTV: REQ ambilight/processed
2015.05.04 12:21:31 5: PHTV PhilipsTV: GET http://192.168.178.30:1925/1/ambilight/processed
2015.05.04 12:21:31 5: PHTV PhilipsTV: called function PHTV_ReceiveCommand()
2015.05.04 12:21:31 4: PHTV PhilipsTV: RCV ambilight/processed
2015.05.04 12:21:31 5: PHTV PhilipsTV: RES ambilight/processed
{
"layer1": {
"left": {
"0": {
"r": 225,
"g": 226,
"b": 0
},
"1": {
"r": 215,
"g": 255,
"b": 0
},
"2": {
"r": 190,
"g": 255,
"b": 0
},
"3": {
"r": 214,
"g": 254,
"b": 0
},
"4": {
"r": 246,
"g": 254,
"b": 80
},
"5": {
"r": 211,
"g": 254,
"b": 209
},
"6": {
"r": 231,
"g": 251,
"b": 208
}
},
"top": {

},
"right": {
"0": {
"r": 231,
"g": 251,
"b": 208
},
"1": {
"r": 216,
"g": 254,
"b": 204
},
"2": {
"r": 204,
"g": 254,
"b": 181
},
"3": {
"r": 218,
"g": 254,
"b": 168
},
"4": {
"r": 221,
"g": 254,
"b": 182
},
"5": {
"r": 251,
"g": 253,
"b": 164
},
"6": {
"r": 253,
"g": 229,
"b": 126
}
},
"bottom": {

}
}
}

2015.05.04 12:21:31 4: PHTV PhilipsTV: color changed hDiff=11 sDiff=2 bDiff=3
2015.05.04 12:21:31 4: using HUEBridge_HTTP_Request: PUT lights/2/state
2015.05.04 12:21:31 4: using HUEBridge_HTTP_Request: PUT lights/1/state
2015.05.04 12:21:32 5: PHTV PhilipsTV: called function PHTV_SendCommand()
2015.05.04 12:21:32 4: PHTV PhilipsTV: REQ ambilight/processed
2015.05.04 12:21:32 5: PHTV PhilipsTV: GET http://192.168.178.30:1925/1/ambilight/processed
2015.05.04 12:21:32 5: PHTV PhilipsTV: called function PHTV_ReceiveCommand()
2015.05.04 12:21:32 4: PHTV PhilipsTV: RCV ambilight/processed
2015.05.04 12:21:32 5: PHTV PhilipsTV: RES ambilight/processed


Handelt es sich hierbei um einen Bug, oder habe ich was falsch gemacht, oder lese ich das Log falsch.

Außerdem würde ich auch noch gerne 2 HUE Spots mit GU10 Fassung einbinden, das klappt auch wenn ich nur die beiden verwende, allerdings stimmen hier die Farben nicht gut mit denen des Fernsehers überein. Ich denke das ist das Problem das auch schon andere User angemerkt haben und liegt an den anderen Grundfarben der LEDs.

Hat das jemand schon mit mehreren Lampen laufen? Ich würde mich echt freuen wenn mir jemand weiterhelfen kann. Gebt mir Bescheid falls ich noch weitere Logs posten soll oder irgendwas ausprobieren. Für die Farbunterschiede bei den HUE Lampen gibts wahrscheinlich noch keine Lösung oder?

Vielen herzlichen Dank schonmal im Voraus!

MFG OsiRis

Mir ist gerade noch aufgefallen, dass die anderen Lampen beim Ausmachen von AmbiHue angehen, das kann ich auch im Log wiedererkennen, falls diese Erkenntnis noch von Bedeutung ist.

2015.05.04 12:31:33 5: PHTV PhilipsTV: called function PHTV_SendCommand()
2015.05.04 12:31:33 4: PHTV PhilipsTV: REQ ambilight/processed
2015.05.04 12:31:33 5: PHTV PhilipsTV: GET http://192.168.178.30:1925/1/ambilight/processed
2015.05.04 12:31:33 5: PHTV PhilipsTV: called function PHTV_Set()
2015.05.04 12:31:33 3: PHTV set PhilipsTV ambiHue off
2015.05.04 12:31:33 5: PHTV PhilipsTV: called function PHTV_Set()
2015.05.04 12:31:33 5: PHTV PhilipsTV: called function PHTV_ReceiveCommand()
2015.05.04 12:31:33 4: PHTV PhilipsTV: RCV ambilight/processed
2015.05.04 12:31:33 5: PHTV PhilipsTV: RES ambilight/processed
{
"layer1": {
"left": {
"0": {
"r": 60,
"g": 47,
"b": 19
},
"1": {
"r": 60,
"g": 47,
"b": 19
},
"2": {
"r": 60,
"g": 47,
"b": 19
},
"3": {
"r": 60,
"g": 47,
"b": 19
},
"4": {
"r": 60,
"g": 47,
"b": 19
},
"5": {
"r": 60,
"g": 47,
"b": 19
},
"6": {
"r": 60,
"g": 47,
"b": 19
}
},
"top": {

},
"right": {
"0": {
"r": 60,
"g": 47,
"b": 19
},
"1": {
"r": 60,
"g": 47,
"b": 19
},
"2": {
"r": 60,
"g": 47,
"b": 19
},
"3": {
"r": 60,
"g": 47,
"b": 19
},
"4": {
"r": 60,
"g": 47,
"b": 19
},
"5": {
"r": 60,
"g": 47,
"b": 19
},
"6": {
"r": 60,
"g": 47,
"b": 19
}
},
"bottom": {

}
}
}

2015.05.04 12:31:33 4: using HUEBridge_HTTP_Request: PUT lights/2/state
2015.05.04 12:31:33 4: using HUEBridge_HTTP_Request: PUT lights/3/state
2015.05.04 12:31:33 4: using HUEBridge_HTTP_Request: PUT lights/9/state
2015.05.04 12:31:33 4: using HUEBridge_HTTP_Request: PUT lights/1/state
2015.05.04 12:31:33 4: using HUEBridge_HTTP_Request: PUT lights/4/state

Schlimbo

#179
Hi Loredo,
ich habe seit längerem mal wieder ein update deines Moduls gemacht.
Habe ein 2014 Android TV (API v5)
Mit der aktuellen Version funktioniert bei mir das Ausschalten mittels "set PHTV off" nicht mehr.

Hier der Auszug des Logs:

2015.05.18 22:44:41 5: PHTV PhilipsTV: called function PHTV_Set()
2015.05.18 22:44:40 5: PHTV PhilipsTV: called function PHTV_Get()
2015.05.18 22:44:40 5: PHTV PhilipsTV: called function PHTV_Set()
2015.05.18 22:44:40 5: PHTV PhilipsTV: called function PHTV_Set()
2015.05.18 22:44:40 5: PHTV PhilipsTV: API command 'input/key' not supported by device.
2015.05.18 22:44:40 5: PHTV PhilipsTV: called function PHTV_SendCommand()
2015.05.18 22:44:40 3: PHTV set PhilipsTV off
2015.05.18 22:44:40 5: PHTV PhilipsTV: called function PHTV_Set()

Habe jetzt ein Backup von ende Februar zurück gespielt, damit funktioniert es wieder.
Wurde hier in letzter Zeit was geändert?

Gruß Schlimbo

Edit: 
Hatte jetzt wieder etwas Zeit und wollte mich mit dem Problem auseinandersetzen,
doch nun funktioniert es auch mit der aktuellen Version. Sehr seltsam!
Aber mein Fernseher macht in letzter Zeit sowieso des öfteren Probleme.
Kann nur jedem raten, der mit dem Gedanken spielt sich einen Philips Androiden zu hohlen,
vorher mal im Support Forum vorbei zu schauen...