core: New samsungtv component does not work with newer Samsung TVs

The problem

The new samsungtv component does not with my NU8000 (2018) model. When I add my TV using the UI, I get the error This Samsung TV devices is currently not supported.

Environment

  • Home Assistant release with the issue: .104
  • Last working Home Assistant release (if known): NA
  • Operating environment (Hass.io/Docker/Windows/etc.): Ubuntu (venv)
  • Integration causing this issue: samsungtv
  • Link to integration documentation on our website: https://www.home-assistant.io/integrations/samsungtv/

Problem-relevant configuration.yaml

Added using the UI.

Traceback/Error logs

2020-01-18 11:51:45 DEBUG (SyncWorker_3) [custom_components.samsungtv] Try config: {'name': 'HomeAssistant', 'description': 'HomeAssistant', 'id': 'ha.component.samsung', 'host': '192.168.2.252', 'method': 'websocket', 'port': None, 'timeout': 1}
2020-01-18 11:51:45 DEBUG (SyncWorker_3) [custom_components.samsungtv] Working but unsupported config: {'name': 'HomeAssistant', 'description': 'HomeAssistant', 'id': 'ha.component.samsung', 'host': '192.168.2.252', 'method': 'websocket', 'port': None, 'timeout': 1}

Additional information

@escoand (on Discord) indicated that the newer Samsung TVs use a different protocol and the current integration will not be able to support them. There are a couple of custom components that work with my TV. I have personally tested https://github.com/xchwarze/ha-samsungtv-custom and it works with my TV. Here’s another one https://github.com/jaruba/ha-samsungtv-custom. Both of these use the WS approach to connect with the tv. This is something we need to control the newer TVs.

cc: @tulindo

About this issue

  • Original URL
  • State: closed
  • Created 4 years ago
  • Comments: 79 (52 by maintainers)

Most upvoted comments

I have been summoned! source

Upgraded, basic functionality restored for 6290 UHD 4k (UN55KU6290)!

Since both @jaruba and @xchwarze are on the thread, I am wondering what is the difference between your components. Both are targeted towards newer TVs so it would make sense to combine them. There are already too many samsungtv components 😂

I’m going to try, but with a slightly differend approach (probably easier to implement): use samsungctl for legacy and samsungtvws for websocket. Stay tuned 😉

tried samsungctl --host 192.168.2.252 --port 8002 --method websocket KEY_VOLDOWN but it just stays there…nothing happens.

Hi all. I did some tests on the samsungtvws library. I tested both @xchwarze and @jaruba versions. Both managed correctly my 2 websocket TV. They both have the ability to:

  • send keys to the TV
  • List the installed apps on the TV (i.e. youtube, nexflix…)
  • Open an URL on the TV’s browser
  • Run an application on the TV (If an app is not installed the TV asks for installation)

@jaruba’s version provides also the ability to:

  • get current volume level
  • set volume to a specific value (it was too late to test it)
  • detect what is the current visible application (so it’s able to see if the TV is currently displaying TV channel)

Only problem with @jaruba’s version is that is not on pypi (being a fork of the pypi’s hosted @xchwarze’s version)