samsung-remote-pin-paired
v1.1.0
Published
This is just a fork of [tdudek/samsung-remote-models-2014-and-newer](https://github.com/tdudek/samsung-remote-models-2014-and-newer) that was slightly modified to work with [homebridge-samsungtv-control](https://github.com/mmende/homebridge-samsungtv-cont
Downloads
56
Readme
Note
This is just a fork of tdudek/samsung-remote-models-2014-and-newer that was slightly modified to work with homebridge-samsungtv-control.
Samsung TV Remote for models 2014+
This project is a proof of concept to remote control Samsung TV models 2014+ which require encrypted communication with the internal web service of the TV.
Credits go to https://github.com/Ape/samsungctl/issues/22.
Models working
Until now I could test the connection with my own TV. If you have any new insights with other models, please share your results, so I can update the following list.
- UE48H6270 (confirmed by paolog89)
- UE48H6400 (confirmed by kkapitan)
- UE48J6300 (confirmed by luca-angemi)
- UE48JS9000 (confirmed by Iniaki)
- UE50HU6900 (confirmed by Holland1)
- UE50JU6800 (confirmed by Jeroen-R)
- UE55H6400 (confirmed by axel3rd)
- UE55HU7500 (confirmed by riemers)
- UE55JS8500 (confirmed by twistedpixel)
- UE55JU6800 (confirmed by fquinto)
- UE55JU7505 (confirmed by holmie)
- UE55JU7590
- UN40JU6000 (confirmed by vsnine)
- UN60JS7000 (confirmed by nspinelli)
Demo
To try out the API quickly, there is a demo which can be found in the ./example/
directory.
To start the demo, please use the following commands:
$ yarn install
$ yarn start
This will start a server at http://localhost:3000. After the server is started, open the URL in your browser. You will see a demo UI, which allows you to easily connect to your TV.
Getting Started
To use the API within your project, you will need to follow these steps:
Configuration
The following configuraiton details are required:
const deviceConfig = {
// address of the TV device
ip: '192.168.178.50',
// your client identification
appId: '721b6fce-4ee6-48ba-8045-955a539edadb',
// user id for the connection with the TV
userId: '654321',
}
Usage
Create and initialize an instance of the SamsungTv library:
const SamsungTv = require('samsung-remote-pin-paired')
const deviceConfig = {
// ...
}
const tv = new SamsungTv(deviceConfig)
await tv.init()
// await tv.init(identity) // if paired before
Then request the PIN:
await tv.requestPin()
The PIN should appear at your TV.
Confirm the PIN and establish connection:
const identity = await tv.confirmPin('9603')
await tv.connect()
After the connection is established, use SamsungTv#sendKey() to send keys:
tv.sendKey('KEY_MUTE')
Examples
Here you can find examples how to use the library: