Jump to content
videostorm

C4 driver for nVidia Shield

Recommended Posts

Shield is definitely the best media/Kodi/gaming box on the market.  

Now we have a easy way to control it via IP in C4.

You will need our $29 IrUSB device.  It will give you full menu control via IP, with the added benefit of a IR flasher you can use to control other equipment nearby (just like an extra C4 flasher output) 

EDIT:  $29 was the early promotional pricing.  IRUSB retails for $39.

Edited by videostorm

Share this post


Link to post
Share on other sites

Ok, the new driver version is ready.  This one supports everything the C4 fire tv driver did but is super fast!

Mini drivers, app launching, nav, configurable buttons, and even IR control of nearby equipment.

Let us know how it works for you!

driver link 

Share this post


Link to post
Share on other sites
On 28/10/2017 at 4:29 AM, videostorm said:

Shield is definitely the best media/Kodi/gaming box on the market.  

Now we have a easy way to control it via IP in C4.

You will need our $29 IrUSB device.  It will give you full menu control via IP, with the added benefit of a IR flasher you can use to control other equipment nearby (just like an extra C4 flasher output) 

Yep.  The shield is definately the best.  I'm looking forward to receiving our IrUSB device so that we can update our Kodi Full and Plex Full drivers.  Our recomendation going forward will be the Nvidia Shield for the best supported device for both since we can launch the apps.

Share this post


Link to post
Share on other sites

This is awesome guys! Can't wait to see this in action, any chance of a Video of it all functioning when you receive your IrUSB Alan?

Share this post


Link to post
Share on other sites

irUSB works great for IP control of the Shield. Nice work

I had to tweak some of the mini drivers to get them to work because some of the App IDs are different for the Shield vs FireTv (hulu is one example). I'm able to get pretty much any user installed app to fire from the Watch menu using the FireTv Custom_App driver, but i haven't been able to get a system app to work, such as Amazon Prime Video. 

Videostorm or Alanchow, any help getting Amazon Prime Video to work would be greatly appreciated. 

 

thanks!

Share this post


Link to post
Share on other sites

I spoke too soon... I can't get YoutubeTV to work with the Custom_App mini driver either

If anyone can provide some guidance on Amazon Video or YoutubeTV that would be awesome.

I know what the App IDs are (com.google.android.youtube.tvunplugged and com.amazon.amazonvideo.livingroom.nvidia) but when I use them there is no response from the Shield:

Please help. Thanks!

 

btw - Kodi (org.xbmc.kodi), Netflix (com.netflix.ninja) and Hulu (com.hulu.livingroomplus) all work fine using their respective App IDs in the Custom_App mini driver.

Share this post


Link to post
Share on other sites

Are you using the Video Storm c4z driver (with the Amazon minidrivers)?  If so, do you have the app type property set to Android TV?

The way our driver works is it gets the app_id from the mini driver, tries to match it to a app package from amazon app store to get the actual app name.  Then it does a table lookup on that app name to get the android app URL (using either the amazon app store table or the Google play tables bases on the app type property setting on the driver).

So you should actually leave the app_ids on the mini drivers as they are (with the amazon app store package name).  Does that make sense?

Our driver doesn't have Amazon video as one of the defaults.  We need to add that.  I think our YouTube app url specific to the shield is incorrect also.  I'll need to check those.

Share this post


Link to post
Share on other sites

Thanks for the prompt reply.

I am indeed using the Video Storm c4z driver with the Amazon minidrivers, including the Custom_App minidiver.  I'm very excited about getting this to work because I can now run everything off 1 box which really streamlines installation and maintenance and a customer can choose what to watch right from the Watch menu.

I confirmed that app type was set correctly to "Google Play TV". I understand what you're saying about leaving the app_ids alone and letting your driver do the lookups but the Hulu minidriver must not have been finding the right app_id because it wasn't working. It was easy enough to edit the minidriver with the right app_id so I went for it and it worked.

I'm trying to get the following apps to work under the Watch menu: Netflix, Hulu, Kodi, Amazon Video, YoutubeTV (not Youtube)

- Netflix minidriver worked fine out of the box with no editing or anything.

- Hulu minidriver needed to be edited to com.hulu.livingroomplus from com.hulu.plus using the C4 Driver Editor. Once I did that it worked great.

- There is no Kodi minidriver so I used the Custom_App minidriver and set the App ID to org.xbmc.kodi. Works great and I'll add a logo later.

- The Amazon Video minidriver had an app_id of com.amazon.avod and didn't work so I edited to com.amazon.amazonvideo.livingroom.nvidia and it still didn't work. I then tried using the Custom_App minidirver and setting the app_id to com.amazon.amazonvideo.livingroom.nvidia. That didn't work either. I'm at a loss on this one.

- There is no YoutubeTV mini driver so I used the Custom_App minidriver and set the app_id to com.google.android.youtube.tvunplugged. Unfortunately that didn't work so I'm at a loss again.

 

Any chance you can look into Amazon Video and YoutubeTV and let me know what I'm missing?

 

thanks again! 

 

PS I also tried the Custom App 1 field in the driver. I copied the syntax of a known successful app launch from the adb debug log but I still couldn't get it to fire. I used:

QLAUNCH android-app://com.hulu.livingroomplus#Intent;component=com.hulu.livingroomplus/.MainActivity;end   and then tried adding "\r" based on your documentation. neither worked.

 

 

 

Share this post


Link to post
Share on other sites

Videostorm, I reread your reply and am now wondering... 

Are you saying that the app_id in the minidriver is not necessarily the app_id used to launch the app and that your driver only uses it to kick off  a couple lookups to try to determine the correct app_id? 

If that's true and your lookup doesn't yield a match will it then fail to send the command to the Shield because when I tried nonsense app_ids nothing showed up in the adb debug log,?

 

 

Share this post


Link to post
Share on other sites

Correct, there are two lua tables of urls in the driver:

urltableaf   (amazon app store)

urltablegp  (google play)

You can use the lua window to dump the values if you like.  (that way you can see what app_ids will work)

for k, v in pairs(urltableaf) do

     dbg("Key: " .. k .. " Value:  " .. v)

end 

When a mini driver launches, it searches urltableaf to find any value that contains the package name in the app_id mini driver variable.  On find, it will get the App name from the corresponding key and then use that key to lookup the full app url in one of those two tables based on the app type property.  If no match, then it won't send any command (no QLAUNCH in the lua log). 

New apps can be added by simply adding new values to those two tables (via lua).  If you find ones you want, just send to us and we can permanently add to the driver.

urltableaf["new app name"]="QLAUNCH appurl\r"

urltablegp["new app name"]="QLAUNCH appurl\r"

Share this post


Link to post
Share on other sites

Now it makes sense why I hit a brickwall. 

I tried modifying your driver to add values to the tables but Driver Editor said it was encrypted and that I couldn’t edit. 

Sooo... can you add values to your tables such that Amazon Video and YoutubeTv will work when using the Custom App minidriver with the following app_ids:

com.amazon.amazonvideo.livingroom.nvidia

com.google.android.youtube.tvunplugged

You’ve really enabled the ultimate solution for a streaming/media player solution on Control4. Thank you very much!!!!

btw - any thoughts on where I might be going wrong on the Custom App syntax I posted above? 

 

 

Share this post


Link to post
Share on other sites

You can edit the driver "online" by just entering the code in the LUA window and clicking execute.  It will last till the next reboot I think.

I'll add these and check the custom app properties as well once I get a chance.  Tied up on the manufacturing right now.

Thanks for the feedback!!  Definitely makes for a better driver :)

Share this post


Link to post
Share on other sites

Thanks. I got Amazon working following your instructions.

Here's to hoping we don't get a reboot before you update the driver  :)

thanks again!

Share this post


Link to post
Share on other sites

Ok, the driver updates are online now.  

For custom commands, put the custom app url in the properties tab and access it via the RED/GREEN/BLUE buttons or the programming event using "Custom App 1" etc.

Share this post


Link to post
Share on other sites

Just bought an IR USB. Might want to update options with shipping to NOT cost 13+ bucks....I know UPS can be expensive.

So correct me if I'm wrong, I'll put this one into a Shield's (non-pro version) USB, then hook up an IR blaster to the IR USB?

Also, will your driver work with the "pro" version of the Shield (built in IR) without the IRUSB?

Share this post


Link to post
Share on other sites
4 minutes ago, Jed Peters said:

Just bought an IR USB. Might want to update options with shipping to NOT cost 13+ bucks....I know UPS can be expensive.

So correct me if I'm wrong, I'll put this one into a Shield's (non-pro version) USB, then hook up an IR blaster to the IR USB?

Also, will your driver work with the "pro" version of the Shield (built in IR) without the IRUSB?

The IRUSB is required to inject USBHID commands into the android device and will work with pretty much any android device.  We have tested it with quite a few here in Australia

Share this post


Link to post
Share on other sites
11 minutes ago, alanchow said:

The IRUSB is required to inject USBHID commands into the android device and will work with pretty much any android device.  We have tested it with quite a few here in Australia

So I connect the C4's IR flasher to the IRUSB. The Pro would not work then.

Share this post


Link to post
Share on other sites
2 minutes ago, Jed Peters said:

So I connect the C4's IR flasher to the IRUSB. The Pro would not work then.

No the IRUSB does not require IR for IP control.  The reason why its called IRUSB is that it also has (on top of IP control) IR control and IR output (which you can use as an ADDITIONAL IR output for your control4 system).

 

Share this post


Link to post
Share on other sites
1 minute ago, alanchow said:

No the IRUSB does not require IR for IP control.  The reason why its called IRUSB is that it also has (on top of IP control) IR control and IR output (which you can use as an ADDITIONAL IR output for your control4 system).

 

And I don't have to hack the android file system, correct? This is plug and play?

 

Share this post


Link to post
Share on other sites
1 minute ago, Jed Peters said:

And I don't have to hack the android file system, correct? This is plug and play?

 

yes, but it does require installing the IRUSB app from Google Play

Share this post


Link to post
Share on other sites
1 minute ago, Jed Peters said:

And I don't have to hack the android file system, correct? This is plug and play?

 

No need to root it or do anything special.  You just install the IRUSB app from play store.  We have tested this on Nvidia Shield, Fire TV and Foxtel Now with great success.

Share this post


Link to post
Share on other sites
1 hour ago, alanchow said:

No the IRUSB does not require IR for IP control.  The reason why its called IRUSB is that it also has (on top of IP control) IR control and IR output (which you can use as an ADDITIONAL IR output for your control4 system).

So this allows you to now have IR control in a room with no C4 controller or other type of extender?  

Share this post


Link to post
Share on other sites
So this allows you to now have IR control in a room with no C4 controller or other type of extender?  
Not In a room. Only for a shield or firetv

Sent from my BBB100-1 using Tapatalk

Share this post


Link to post
Share on other sites
2 hours ago, alanchow said:

IR control and IR output (which you can use as an ADDITIONAL IR output for your control4 system).

 

29 minutes ago, msgreenf said:

Not In a room. Only for a shield or firetv

That's NOT how I would read the first quote

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×