# Philips TV \> 2016 support

**URL:** <https://community.homey.app/t/philips-tv-2016-support/4321>\
**Category:** Questions & Help\
**Created:** [November 22, 2018, 7:21am UTC](https://community.homey.app/t/philips-tv-2016-support/4321 "2018-11-22T07:21:08Z")\
**Posts on this page:** 19\
**Page:** 1

<div class="post-metadata">

**Author:** ![Edgar](https://avatars.discourse-cdn.com/v4/letter/e/b487fb/32.png) [@Edgar](https://community.homey.app/u/Edgar)\
**Post date:** [November 22, 2018, 7:21am UTC](https://community.homey.app/t/philips-tv-2016-support/4321/1 "2018-11-22T07:21:08Z")

</div>

Hi there

On the old forum: [https://forum.athom.com/discussion/comment/72668](https://forum.athom.com/discussion/comment/72668)  
some people (incl me) had problems to control Philips tv’s newer then 2016  
some said that is was impossible coz philips wouldn’t support jointspace anymore. But that is not correct. Since then jointspace is activated by default. The error message “forbidden” shows when you are doing it wrong 🙂

But i managed to control it finaly. I have the Philips 43PUS6262/12 and some features i allready have working.

i can at least put the tv in standby mode with this:

app: [https://apps.athom.com/app/com.internet](https://apps.athom.com/app/com.internet)  
flowcard: POST JSON  
1st field: [http://192.168.2.16:1925/6/input/key](http://192.168.2.16:1925/6/input/key)  
2nd field: { "key": "Standby" }

now you know how you can control your newer philips tv and i bet the rest of the commands can be figured out by anyone. i hope you will share them because this is till now the only one which i got working.

---

<div class="post-metadata">

**Author:** ![Mickel\_Luiten](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/mickel_luiten/32/12404_2.png) [@Mickel\_Luiten](https://community.homey.app/u/Mickel_Luiten)\
**Post date:** [November 23, 2018, 8:37pm UTC](https://community.homey.app/t/philips-tv-2016-support/4321/2 "2018-11-23T20:37:39Z")

</div>

Hi All,

I have a Philips 49pus7101/12 from March 2016 and can tell you that Jointspace will not work on this model on port 1925 , i also think some later models?!

But in the past i have searched for other methods to control the TV and found some interesting stuff.

Before i had Homey i did some testing with Openhab on an RaspPi.  
Below is a copy of some thing i have founded and tested.

I found on website [https://github.com/suborb/philips\_android\_tv](https://github.com/suborb/philips_android_tv) some python code.  
With this code the controls works.

First you need to us the command pair to pair the TV with the server, when you do this the TV generates a code that you need to enter in the python code…  
When that is done, a new user and pass is shown and with this user and pass you can conrol you TV.

Some notes from site  
The API is roughly the same as JointSpace ([http://jointspace.sourceforge.net/](http://jointspace.sourceforge.net/)) with the following differences:

-Uses HTTPS over port 1926  
-Uses /6/ instead of /1/ as the API path  
-All calls have to have digest auth to be successful  
-An initial pairing to determine the user/pass is required  
-Channel and Source methods aren’t available  
-Channel status and changes are performed using a different protocol that isn’t described here.

The tool here will do the initial pairing. The credentials can then be used in a standard way (digest) in other tools

Orignal link to openhab forum : [https://community.openhab.org/t/binding-to-philips-49pus7101-12-android-tv/12428/4](https://community.openhab.org/t/binding-to-philips-49pus7101-12-android-tv/12428/4)

Maybe this will help in futher development in a working Homey App for the new models ( Without IR)

Mickel

---

<div class="post-metadata">

**Author:** ![Willemtax](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/willemtax/32/12368_2.png) [@Willemtax](https://community.homey.app/u/Willemtax)\
**Post date:** [March 10, 2019, 9:09am UTC](https://community.homey.app/t/philips-tv-2016-support/4321/5 "2019-03-10T09:09:00Z")

</div>

Not really sure if it helps but I also found this Repo; [https://github.com/arzzen/philips-tv](https://github.com/arzzen/philips-tv)  
Not that many commands… Your site looks promising!

Is there someone on this forum who could take a look to see what the possibilities of these resources are?

---

<div class="post-metadata">

**Author:** ![Edgar](https://avatars.discourse-cdn.com/v4/letter/e/b487fb/32.png) [@Edgar](https://community.homey.app/u/Edgar)\
**Post date:** [March 11, 2019, 7:00am UTC](https://community.homey.app/t/philips-tv-2016-support/4321/6 "2019-03-11T07:00:01Z")

</div>

Please check my screenshot… at least that is working.

{“method”:“post”,“protocol”:“http:”,“hostname”:“192.168.2.16”,“port”:1925,“path”:"/6/input/key",“headers”:{“content-type”:“application/json”}}

 ![](https://us1.discourse-cdn.com/flex025/uploads/athom/original/2X/c/c28c33fa5025ffe60712b6b758a4ad37c5cfa199.jpeg)

---

<div class="post-metadata">

**Author:** ![lucasvdh](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/lucasvdh/32/54915_2.png) [@lucasvdh](https://community.homey.app/u/lucasvdh)\
**Post date:** [June 3, 2019, 10:08am UTC](https://community.homey.app/t/philips-tv-2016-support/4321/8 "2019-06-03T10:08:04Z")

</div>

I think you’ll be happy to hear that I’m currently working on a Homey app for Philips tv’s that supports 2016 models and up.

The most difficult part is behind me (digest auth on node combined with Philips tv is a nightmare). I’ve managed to get the pairing process working and I’m now able to call authed endpoints (which is basically all on the newer models).

I’ll be putting an initial version on github soon, will post a link here when it’s up.

I myself don’t have any channels installed on my Philips tv, so if there’s anyone who does and wants to help me test that part, that would be great.

---

<div class="post-metadata">

**Author:** ![Edgar](https://avatars.discourse-cdn.com/v4/letter/e/b487fb/32.png) [@Edgar](https://community.homey.app/u/Edgar)\
**Post date:** [June 3, 2019, 10:21am UTC](https://community.homey.app/t/philips-tv-2016-support/4321/9 "2019-06-03T10:21:08Z")

</div>

That is awesome!  
Can you also switch from (fe) HDMI1 to HDMI2 with 1 action?

---

<div class="post-metadata">

**Author:** ![lucasvdh](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/lucasvdh/32/54915_2.png) [@lucasvdh](https://community.homey.app/u/lucasvdh)\
**Post date:** [June 3, 2019, 11:03am UTC](https://community.homey.app/t/philips-tv-2016-support/4321/10 "2019-06-03T11:03:31Z")

</div>

Not sure if that is still supported, I think they removed selecting a source from the JointSpace API in v6 because this does no longer work: [http://jointspace.sourceforge.net/projectdata/documentation/jasonApi/1/doc/API-Method-sources-current-POST.html](http://jointspace.sourceforge.net/projectdata/documentation/jasonApi/1/doc/API-Method-sources-current-POST.html)

But maybe there’s another way, you’re able to send an intent with an action to your tv, maybe it’s possible to open the native android app and pass along hmd2 as an action? I’m still looking into what all the calls are that I can implement. The process is a bit tedious because there’s no documentation whatsoever on v6. Everything I’ve done so far has been reverse engineering and copying stuff from other implementations such as [https://github.com/arzzen/philips-tv/](https://github.com/arzzen/philips-tv/).

A short overview of the functionality that I’ve managed to succesfully test so far:

Getters:

- system info
- applications (installed android tv apps)
- channels
- ambilight (current configuration; follow video/audio/etc and the type relax/intense/etc)
- current activity (the currently opened app)
- audio (level, muted)
- powerstate (on/standby)

Setters:

- post key (a key from remote .e.g. CursorUp, Confirm or Standby)
- launch activity (send an intent to open an application)
- ambilight
- audio (set volumne, mute, unmute)
- powerstate
- wake on lan

---

<div class="post-metadata">

**Author:** ![Edgar](https://avatars.discourse-cdn.com/v4/letter/e/b487fb/32.png) [@Edgar](https://community.homey.app/u/Edgar)\
**Post date:** [June 3, 2019, 12:59pm UTC](https://community.homey.app/t/philips-tv-2016-support/4321/11 "2019-06-03T12:59:20Z")

</div>

> **[jointSPACE - Bindings](https://www.openhab.org/addons/bindings/jointspace1/)**
>
> The jointSPACE binding lets you control your Philips TV that is compatible with the jointSPACE JSON API over Ethernet.

See bullit 4, set source. Does that mean that it is possible or is this the old way?

---

<div class="post-metadata">

**Author:** ![lucasvdh](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/lucasvdh/32/54915_2.png) [@lucasvdh](https://community.homey.app/u/lucasvdh)\
**Post date:** [June 3, 2019, 1:18pm UTC](https://community.homey.app/t/philips-tv-2016-support/4321/12 "2019-06-03T13:18:31Z")

</div>

This article references the old (v1) implementation. An easy way to see what api version a specific call is, is by looking at the integer at the start of the path, e.g.:

v1 will have a uri like this:

```auto
http://192.168.1.10:1925/1/system

```

v6 will have a uri like this:

```auto
https://192.168.1.10:1926/6/system

```

I was thinking though… with the app that I’m making now you could in theory change the source by sending the following commands:

```auto
POST /6/input/key { "key": "Source" }
POST /6/input/key { "key": "CursorDown" }
POST /6/input/key { "key": "CursorDown" }
POST /6/input/key { "key": "CursorDown" }
POST /6/input/key { "key": "CursorDown" }
POST /6/input/key { "key": "Submit" }

```

Not the nicest way… but still better than doing it manually.

---

<div class="post-metadata">

**Author:** ![Edgar](https://avatars.discourse-cdn.com/v4/letter/e/b487fb/32.png) [@Edgar](https://community.homey.app/u/Edgar)\
**Post date:** [June 3, 2019, 2:31pm UTC](https://community.homey.app/t/philips-tv-2016-support/4321/13 "2019-06-03T14:31:53Z")

</div>

Oh… Geel… that explains a lot!!  
Thnx!

---

<div class="post-metadata">

**Author:** ![Mickel\_Luiten](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/mickel_luiten/32/12404_2.png) [@Mickel\_Luiten](https://community.homey.app/u/Mickel_Luiten)\
**Post date:** [June 3, 2019, 4:03pm UTC](https://community.homey.app/t/philips-tv-2016-support/4321/14 "2019-06-03T16:03:14Z")

</div>

Hi @lucasvdh,  
Great work, happy to test the new Philips tv app for you.

---

<div class="post-metadata">

**Author:** ![lucasvdh](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/lucasvdh/32/54915_2.png) [@lucasvdh](https://community.homey.app/u/lucasvdh)\
**Post date:** [June 3, 2019, 6:38pm UTC](https://community.homey.app/t/philips-tv-2016-support/4321/15 "2019-06-03T18:38:13Z")

</div>

Published an initial version at [lucasvdh/codes.lucasvdh.philips-jointspace](https://github.com/lucasvdh/codes.lucasvdh.philips-jointspace).

I’ll submit an alpha version of the app soon. If you want to test the alpha version, DM me your email address so I can add you to the testers.

---

<div class="post-metadata">

**Author:** ![lucasvdh](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/lucasvdh/32/54915_2.png) [@lucasvdh](https://community.homey.app/u/lucasvdh)\
**Post date:** [June 3, 2019, 8:28pm UTC](https://community.homey.app/t/philips-tv-2016-support/4321/16 "2019-06-03T20:28:27Z")

</div>

An alpha version of the app is now available here:  
[https://apps.athom.com/app/codes.lucasvdh.philips-jointspace](https://apps.athom.com/app/codes.lucasvdh.philips-jointspace)

I’ve only had time to implement the on/off feature. I’ll try to implement more features, triggers and actions soon.

---

<div class="post-metadata">

**Author:** ![lucasvdh](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/lucasvdh/32/54915_2.png) [@lucasvdh](https://community.homey.app/u/lucasvdh)\
**Post date:** [June 4, 2019, 2:45pm UTC](https://community.homey.app/t/philips-tv-2016-support/4321/17 "2019-06-04T14:45:43Z")

</div>

> [@\[APP\]\[Pro\] Philips TV Testing](https://community.homey.app/t/philips-tv-testing/14064):
>
> Hello everyone, I’ve recently published an alpha version of the Philips TV Remote Control app partying_face and have already invited a few of you to test it. Currently the app only has the on/off feature implemented, but stay tuned because I’ll add some more features soon. Release version: [Philips TV App for Homey | Homey](https://homey.app/a/codes.lucasvdh.philips-jointspace) Test version: [Philips TV | Homey](https://homey.app/a/codes.lucasvdh.philips-jointspace/Test) This app supports all Philips TV models which have the JointSpace API enabled. So it should work on older models from 2015 and before as …

---

<div class="post-metadata">

**Author:** ![Rocodamelshekima](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/rocodamelshekima/32/8209_2.png) [@Rocodamelshekima](https://community.homey.app/u/Rocodamelshekima)\
**Post date:** [June 4, 2019, 5:50pm UTC](https://community.homey.app/t/philips-tv-2016-support/4321/18 "2019-06-04T17:50:41Z")

</div>

Split this topic on June 4, 2019, 5:50pm UTC

2 posts were merged into an existing topic: [Philips TV Testing](https://community.homey.app/t/philips-tv-testing/14064/2)

---

<div class="post-metadata">

**Author:** ![lucasvdh](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/lucasvdh/32/54915_2.png) [@lucasvdh](https://community.homey.app/u/lucasvdh)\
**Post date:** [June 4, 2019, 5:18pm UTC](https://community.homey.app/t/philips-tv-2016-support/4321/20 "2019-06-04T17:18:24Z")

</div>

@Mickel_Luiten I’ve you’ve got nodejs locally I could provide you a debug script so you can see at which step the pairing process fails. Let me know.

---

<div class="post-metadata">

**Author:** ![Mickel\_Luiten](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/mickel_luiten/32/12404_2.png) [@Mickel\_Luiten](https://community.homey.app/u/Mickel_Luiten)\
**Post date:** [June 4, 2019, 8:21pm UTC](https://community.homey.app/t/philips-tv-2016-support/4321/21 "2019-06-04T20:21:44Z")

</div>

@lucasvdh, please do with a little explenation.  
I have nodejs running on my laptop also for athom-cli  
tomorrow evening i have soms time to try out out.  
Thanka

---

<div class="post-metadata">

**Author:** ![lucasvdh](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/lucasvdh/32/54915_2.png) [@lucasvdh](https://community.homey.app/u/lucasvdh)\
**Post date:** [June 5, 2019, 9:05am UTC](https://community.homey.app/t/philips-tv-2016-support/4321/22 "2019-06-05T09:05:52Z")

</div>

@Mickel_Luiten I’ve just pushed a new test script to the git repository with which you should be able to debug the pairing process more thoroughly.

You can run the test script like this:

```auto
~ $ git clone git@github.com:lucasvdh/codes.lucasvdh.philips-jointspace.git\
 && cd codes.lucasvdh.philips-jointspace\
 && git checkout alpha\
 && cd tests
Cloning into 'codes.lucasvdh.philips-jointspace'...
remote: Enumerating objects: 5887, done.
remote: Counting objects: 100% (5887/5887), done.
remote: Compressing objects: 100% (3247/3247), done.
remote: Total 5887 (delta 2229), reused 5816 (delta 2158), pack-reused 0
Receiving objects: 100% (5887/5887), 4.52 MiB | 3.90 MiB/s, done.
Resolving deltas: 100% (2229/2229), done.
Switched to a new branch 'alpha'
~ $ node pairing.js

```

---

<div class="post-metadata">

**Author:** ![Dijker](https://avatars.discourse-cdn.com/v4/letter/d/b9bd4f/32.png) [@Dijker](https://community.homey.app/u/Dijker)\
**Post date:** [June 26, 2025, 5:38am UTC](https://community.homey.app/t/philips-tv-2016-support/4321/23 "2025-06-26T05:38:46Z")

</div>

Archived on June 26, 2025, 5:38am UTC


