[ST Edge] Roku Driver

@TAustin is it possible to send a post command threw the API to your driver and turn the TV on? I’ve tried.

{ "commands": [ { "component": "main", "capability": "powerSwitch", "command": "On", "arguments": [] } ] }

But it doesn’t work.

You’re doing this through a Rule?

Yes, kind of, more like a postman post call. It’s for a widget on a cellphone.

OK, I’ll see if I can reproduce it. I’m pretty sure an automation routine has no problems, so not sure why this approach would be any different, but sometimes the commands getting to the driver can be different.

Thanks, I appreciate it.

@Jake_Mohl @TAustin

When I’ve needed to check on what the structure of a request should look like on the API, usually when I’m being dumb I do the following.

  1. Turn on debug on the CLI
  2. Make the request I want using the CLI
  3. Inspect the request the CLI sent to the API
  4. Copy it and do the same from my application

It’s been fool proof so far, and I’m a good test of that :grinning:

1 Like

I have a TCL with Roku OS. The driver can’t find 3 Roku TV. It did find my Ultra. Any idea on this?

Make sure TV fast startup is enabled on your TCL TVs (it’s off by default). Also ensure that the TVs are on the same network as the Hub.

@ThomasTrain Thanks for the reply. I checked everything, I have my smart tv hard wired on a 24 port switch and a link from switch to router running my dhcp. Standard setup. I have updated all Roku tv’s reloaded the Roku edge driver….still nothing. Only the two TCL I have won’t show up. The other 2, Hisense and Roku Ultra do.
I will keep looking maybe try removing it TCL from network and get new address.

Are you able to control the TV from the Roku app on your phone? That uses the same API.

Jake - I lost my attention on this one. I’ll promise to check it out tomorrow.

1 Like

I don’t know if it uses UPnP to discover the device, which is the issue he’s having.

I have found that it can take several tries for some devices to get found. Sometimes it helps to power them down and back up again. You really shouldn’t have to do this but I’ve been forced to do it on occasion.

@Huskerswon It shouldn’t matter, but do you have them configured with static IPs on your router?

@TAustin @ThomasTrain
I Factory Reset the TCL, updated firmware and reloaded the Roku edge driver. Success!
I don’t have static address.
Thanks again for the extra help.

1 Like

This should work:

{ "commands": [ { "component": "main", "capability": "partyvoice23922.rokupower", "command": "powerOn", "arguments": [] } ] }

or

{ "commands": [ { "component": "main", "capability": "partyvoice23922.rokupower", "command": "powerOff", "arguments": [] } ] }

I will give these a try, thanks.

This is a pretty cool driver that I didn’t even expect to find. While I am disappointed that the media control buttons aren’t working in SmartThings, I am happy to at least be able to see on and off states and be able to create some automations based on TV state.

My TV shows as offline and it won’t change state even if I turn TV on. At first it seemed temporary and I could even control the TV when it said offline. No longer though. Do I need to change some settings in the driver?

Yes, this is a nuisance and I wish that SmartThings would get them fixed. Technically that capability is still in “proposed” status and not “production” status, so there’s no urgency to address it, unfortunately.

1 Like

I’m currently looking at this. I see the same ‘offline’ status on the dashboard. I don’t have a TV, so can’t test that behavior. But I think it may have something to do with the power button itself. I will get back to you on this.

If it’s not too much inconvenience, can you please delete the SmartThings roku device and then do a re-scan to get it recreated? Let me know if that clears things up for you so can at least control the TV again. If you have a bunch of automations defined and it would be a big pain to recreate the device, the alternative is to reboot your hub.

The ‘offline’ status that shows on the dashboard is an issue I’m trying to get help with from SmartThings.