Homebridge module for Philips TV (with JointSpace enabled)
Hint: If you are looking for a homebridge-plugin which supports 2018 philips models checkout this plugin's fork by jebabin.
This plugin is basically a modification of homebridge-http. Main difference is:
- Ability to poll every 5 min a PhilipsTV
- Ability to sent on Standbye command
- If no answer is received, the power state is set to false
- If any answer is received, the power state is set to true
Added power-on function for models after 2014 (thanks to uronito - https://github.com/uronito )
Added support for 2016 philips models
Added 'has_ambilight' (true/false) switch. Defaults to 'false'
- Install homebridge using: npm install -g homebridge
- Install this plugin using: npm install -g homebridge-philipstv-x
- Update your configuration file. See the sample below. If you have a 2016 model you have to generate some access-credentials before (see below)
Example accessory config for models before 2014 (needs to be added to the homebridge config.json):
"accessories": [
{
"accessory": "PhilipsTV",
"name": "My Philips TV",
"ip_address": "10.0.1.23",
"poll_status_interval": "60",
"model_year" : "2013"
}
]
Example accessory config for models from 2014 and 2015 (needs to be added to the homebridge config.json):
"accessories": [
{
"accessory": "PhilipsTV",
"name": "My Philips TV",
"ip_address": "10.0.1.23",
"poll_status_interval": "60"
}
]
Example accessory config for models from 2016 (needs to be added to the homebridge config.json):
"accessories": [
{
"accessory": "PhilipsTV",
"name": "My Philips TV",
"ip_address": "10.0.1.23",
"poll_status_interval": "60",
"model_year": 2016,
"has_ambilight": true,
"username": "deadbeef0815",
"password": "deadbeef0815deadbeef0815deadbeef0815deadbeef0815deadbeef0815",
}
]
Added test option for WakeOnWLAN:
"accessories": [
{
"accessory": "PhilipsTV",
"name": "My Philips TV",
"ip_address": "10.0.1.23",
"poll_status_interval": "60",
"model_year" : "2014",
"wol_url": "wol://18:8e:d5:a2:8c:66"
}
]
As of 2016 models Philips closed the open, non-https JointSpace API (v5) and switched to the secured API-version 6. Every control- or status-call needs digest authentification which contains of a pre generated username and password. You have to do this once for your TV. We reccomend to use the python script philips_android_tv.
Here is an example pairing call for philips_android_tv :
python ./philips.py --host 10.0.1.23 pair