LG Smart TV UDAP 2.0 (Netcast) (Typically 2012/2013 year TVs) Integration - Device Handler

As promised, LG Smart TV Device Handler for LG TVs that utilize the UDAP 2.0 specification (AKA Netcast TVs). This would be for TVs that were released around 2012/2013 from what I can tell. I developed and tested this on an LG 47LN5700.

I’ll be working on an LG TV device handler for more current generation LG TVs next (the one I will be developing/testing against will be an LG 49UJ6200). After that, current generation Vizio TVs.

Let me know if you run into any issues with this. Only works with SmartThings Classic.

Will be looking forward for webos 3.0 integration!

1 Like

+1 looking for Webos 3.0 intergration

This is brilliant! thanks!

Is there any possibility of toast notifications with this, or is the TV type not capable?

Thanks! This generation of TV is not capable of a toast/notification. The newer generation LG TVs are capable of notifications though, I’ve tested those out and it works fine on my model.

Thanks for the reply. Typical. I’ll have to get a new TV.

The netflix/YouTube buttons don’t work on mine. Nor does power on (but I’m guessing that’s a TV issue too) power off does.

Settings and home buttons also only seem to work when watching TV, not with an app (eg netflix) open but that’s no problem for my usage

play/pause/volume etc all work fine.

The netflix/YouTube buttons don’t work on mine.

The code works based off the name of the application… I would assume your TV version would have the same naming on the apps as mine, but maybe not! I can release a custom version for you to use so we can debug it to figure it out. Should be easy, let me know if you are interested.

Nor does power on (but I’m guessing that’s a TV issue too) power off does.

You are correct, this generation of TVs does not support the ability to turn ON via an external source. Unfortunately a WOL command won’t even work because when the TV is powered off, it turns off the networking cards. So, that will never be supported via a network. There might be some hacks you could try, like some devices (like a ChromeCast) MAY be able to wake the TV via the HDMI port detecting activity. I’d have to test this out myself to know for sure. For me, the ability to turn the TV OFF was the most important part.

Settings and home buttons also only seem to work when watching TV, not with an app (eg netflix) open but that’s no problem for my usage

I’ll try to test this out soon and see what I experience with my model.

Well, I have some bad news… the SmartThings framework doesn’t support the usage of WebSockets… which is the only way to control the current generation of LG TVs that I have found. I’ve researched it extensively and there does not appear to be another way to control the newer generation of LG TVs. There is also no way to have this work with SmartThings without additional hardware. Unfortunately, that makes this a lot more complicated.

Having said that, I am currently working on node.js implementations for each of the following TV protocols:
Sony Bravia TVs
LG Smart TV UDAP 2.0 (Netcast)
LG Web OS TVs
Vizio TVs (not sure on specific protocol yet - but I have a 2018/2019 model TV that I will be working on)

There are some node.js implementations that already exist, but they aren’t quite what I am looking for. I’ll write independent implementations for each TV, then I’ll write an HTTP server on top of it and finally a new Device Handler that can be used for each of those TV types. The Device Handler will be written generically, so it should be easy to add support for additional TV protocols by adding them underneath the HTTP server.

I am planning on testing this on a Raspberry Pi 4, but it would all theoretically be able to be ran on any system that can run node.js. I’ll make this as easy to implement as possible - but there will be some hardware costs with buying a Raspberry Pi. I’ve already tested out a proof of concept and it looks promising. This would ultimately allow us to control just about any variation of TVs out there that support some type of external control. I’ll keep the group posted - but this is probably a several month effort to get done.

Thanks for the in depth response. How would I check what names the TV is using for the apps? I may be able to modify the device handler myself if I can work that out…

I don’t really want you to waste any time on this on my account. Especially for a feature I probably won’t use much anyway…