Samsung TV plugin for Homebridge
This plugin allows you to control your Samsung TV (models until 2014) with HomeKit and Siri.
npm install -g homebridge
npm install -g homebridge-samsungtv-control
"accessories":"accessory": "SamsungTV""name": "TV Living room""ip_address": "192.168.1.2""send_delay": 400
|accessory||Must always be "SamsungTV". (required)|
|name||The name you want to use to control the TV.|
|ip_address||The internal ip address of your samsung TV.|
|send_delay||When switching to another channel the individual keys will be send with a short delay (in ms) between them. (default 400)|
The first numeric characteristic represents the volume. When changing the volume characteristic the number represents the count of times the volume up or down key will be triggered. In other words to increase the volume by 3 units, the characteristic should be set to 3, to decrease the volume by 2 units e.g. the value would be -2. By setting volume to 0 the mute key will be triggered.
The next characteristic represents the channel. To set a channel just set up a scene with the numeric value of the channel.
The last characteristic allows sending any key from this list without the
KEY_ at the beginning. To send the pre-channel key e.g. set up a scene where this characteristic will be set to
The volume, channel and key characteristics send single keys with a short delay between them to accomplish their task. Therefore to set these characteristics values you should set up a scene with the desired value in the corresponding characteristics so that not every single change will be send before you've finished typing.
Since some Samsung TV's will disconnect from the network when turned off it is not possible to turn them back on again over network. Furthermore it is not possible to observe current values such as the volume or the channel. Therefore only channel changes that where made through this plugin will be tracked (channel changes with the regular remote for example can not be tracked).
By now, only Samsung TV's until 2014 are supported by this plugin because Samsung dropped the old remote control protocol from their newer tv series. Samsung unfortunately has no documentation on how to pair with the newer tv's and remote control them afterwards. The current state of reverse engineering the newer api can be seen here (contribution is welcome).