IRUSB FAQ:
How do I set up IRUSB? Where are the setup instructions? | You need to follow the quick setup instructions on the IRUSB webpage |
How does IRUSB control the FireTV or Shield. Is it IR? | IRUSB provides full 2 way IP control of your Android device (FireTV or Shield). It will ALSO give you the ability to send and receive IR to control OTHER devices. It is single device which provides TWO functions independently. |
No device ID. What do I do? | For FireTV, you need OTG cable, and DISABLE ADB in the developer options. For Shield, DISABLE USB debugging in the developer options. Then follow install instructions. |
How do I verify the IRUSB device is working? | You need to obatin device ID first. You can then use the "send IR" button in the irusb app to verify the IRUSB is working (one side of the device will flash the led when the button is pressed). If that is working, then the problem is a network connectivity issue between Control4/RTI and Amazon/nVidia device. |
I installed the Control4 and/or RTI driver, it doesn't control IRUSB? | You need to download and install the IRUSB app from Amazon/Google app store BEFORE installing the driver. Follow install steps. |
How do I get your free drivers for Control4 and RTI? | All our free drivers are available for download here. |
How do I connect the driver for Control4 or RTI to IRUSB? | Enter the IP address of the device IRUSB is attached to (ie. Fire TV, Shield, et). Use a static IP on that device. |
There is no multiple instance driver in RTI for IRUSB? | You can use an instance of the driver for each IRUSB with the unique IP address from the Amazon/nVidia device they are attached to. |
What does the 'HOLD' parameter on the RTI driver commands do? | If you set the HOLD parameter to TRUE and your IRUSB is on firmware v225+, then that key press will be a 'long' press instead of a normal 'short' press. This is to activate special 'long' press functions on keys. To prevent the 'long' press issue, you need to set the HOLD parameter to FALSE in your RTI programming. Refer to the IRUSB RTI driver documentation for more details. |
I did a soft reboot of the Fire TV, but IRUSB did not auto start after the reboot. | Hard reboot (power cycle) will auto restart IRUSB. If your device loses power, IRUSB will auto start 1 minute after it boots. Soft reboots (from the menu) will not auto restart IRUSB on some platforms (such as FireTV). Note that soft reboots are not part of typical operation. |
Where do I find the QLAUNCH commands? | http://www.c4forums.com/topic/23198-netplay-home-compatible-equipment-list/ |
The App I want to
launch isn't in the list. How do I write my own QLAUNCH commands? |
See the information below regarding how to find and construct the QLAUNCH command for any app |
One of the mini drivers or app launch commands don't work (app doesn't launch). | The App url has likely changed. Please see the instructions below for QLAUNCH commands to find the new URL. Please notify Video Storm via our ticket system with the correct URL if you would like the standard drivers updated. |
I have an app that I can't properly control the menus of. | This can occur if you are using non standard Android box which uses apps that were designed only for tablets (touch screen interface). You can resolve this by sideloading the proper version of the app that was designed for keyboard / remote control (all Android TV apps are designed for keyboard control). |
I updated to Control4 OS 3.0, but now my mini drivers don't launch | Please update your IRUSB driver to the latest version from our website. |
How do I know which Android device I have? | Please use Google to find device manufacturer information or versions. |
Don't see the answer to your question? More answers are in our online Knowledge Base.
QLAUNCH command creation
QLAUNCH commands use standard Android Intent URLs with the following format:
QLAUNCH android-app://PACKAGE_NAME#Intent;component=COMPONENT_TO_LAUNCH;end
Both the PACKAGE_NAME and COMPONENT_TO_LAUNCH names are required. You can find these by looking at the ADB log output when manually starting any app. You can filter the log with cmp= to find these (after manually launching the app using the gui).
ADB logcat instructions for Windows
11-30 18:04:36.364 1602 1613 I ActivityManager: START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.netflix.ninja/.MainActivity} from uid 10124 on display 0
The BOLD text above is the COMPONENT_TO_LAUNCH for that app. The PACKAGE_NAME is the first part before the "/", in this case com.netflix.ninja.
The full QLAUNCH url for this example would be
QLAUNCH android-app://com.netflix.ninja#Intent;component=com.netflix.ninja/.MainActivity;end
If Android 7.0+, here is an easier method:
Deep links:
IrUSB support several methods to link directly to programs or channels within apps. This is known as 'Deep linking'.
Web site URL syntax (try this method first):
This method is the most straightforward. You simply find the web url syntax for your title, video, or show. For Youtube, examples are:
'intent://' URL syntax:
This method is better if your device can't figure out which app to send the web url to. You are adding the package name as well as the web url. For Youtube, examples are:
'android-app://' URL syntax:
This method is just a different format of the 'intent' type. The following examples are for Netflix which requires extra data (see below):
Extra Data syntax:
Some apps require sending 'extra data' in order to select content directly. Both intent types and android-app types support this.
QLAUNCH android-app://PACKAGE_NAME/DATA#Intent;component=COMPONENT_TO_LAUNCH;EXTRADATA;end
QLAUNCH intent://DATA#Intent;package=PACKAGE_NAME;component=COMPONENT_TO_LAUNCH;EXTRADATA;end
The format of EXTRADATA is
DATA is usually a web url (http://host/path)
As there is no standard covering what values can be passed to different apps, Google is the best way to find information on what values are needed.
For Netflix, the app requires S.source=30
http://www.netflix.com/watch/NETFLIXID (NETFLIXID is a unique value per title)
Further information on the Android Intent URL formats can be found at Android developer docs
Additional information can also be supplied in the app URLs (uncommonly used):