Monday, May 6, 2013

Research

Now it is time for the research. The purpose of this post is to illustrate the steps I went through to try to find a solution to controlling the ASUS Cube via infrared (IR).

The first thing I did was look at the Cube's remote end through my phone's camera since cameras are capable of seeing infrared. I pressed all the buttons on the remote and the only one that sent an IR signal was the power button. It makes sense for the power button to be IR since the remote becomes disconnected from the unit in standby.

This gave me hope, though. That means the unit has the capability of accepting IR. I then tried to dive into the files of the google tv system to see if there was an app that was controlling the IR capability. I could not find one.

I then researched the Logitech Revue sense it was the only Google TV device that could be controlled via IR. I dug into its files and noticed it had a system app named HarmonyControl.apk which controlled the IR. I was thinking that I could possibly take this app and sideload it to the Cube and be able to use Revue IR codes to control it. Then I thought this is too complicated and would probably require root on my device.

Then I had an epiphany. I was looking at this all wrong. The Cube already has the capability of accepting a USB keyboard. What if there is a remote that can act as a USB keyboard. I scoured the internet looking for one and found this: Windows 7 Vista XP Media Center MCE PC Remote Control and Infrared Receiver for Home, Premium and Ultimate Edition. It did not need drivers to be installed to work, and for only $16, I ordered it.

When it arrived, I hooked up the USB IR receiver to the Cube. I then started pushing buttons and the Cube started responding to my button pushes. This is because the remote and receiver are acting as a generic keyboard. The remote is converting keystrokes to IR. However, I only had limited control and the buttons were not mapped how I would want them too, but this gave me a starting point.

So how do I add the capability to add more functionality to the IR remote from amazon? I then found posts and articles on changing keymapping in android. This would let me change what would happen if, for example, a T was pressed on a keyboard. However, changing the keymapping also requires root. I wanted a solution without requiring root. So I searched for apps and found this: http://code.google.com/p/extkeyboardremapper/  This is exactly what I needed. This app installs another keyboard onto the android system that gives the ability to remap the keys through configuration files.

Now I am at the point of development and testing. I have to determine the scan codes being delivered by the remote so that I can implement into the config files how I want Android to react to those codes. I then have to learn the IR codes in Pronto Hex format from the remote so that it can be used for numerous universal remotes.

UPDATE:  I found an app in the Play Store that fit my needs better than the above app. External Keyboard Helper Pro. It is more refined, and it allows me to map apps to buttons for one button access.

1 comment:

  1. hi where u ever able to get his to work ? because i have an google tv ASUS model and
    a IR receiver with a harmony remote ...the receiver looks like its receiving commands when i press buttons since the ir receiver lights up everytime i press i button... but no action happens...

    ReplyDelete