Parsing IR Remote Control Signals In Windows Using EventGhost

Now that we’ve learned the secret to getting WinLIRC to run correctly, it’s time to decode those signals into commands that Windows can use. To do this, we’re going to use a powerhouse automation tool that is unique to Windows called EventGhost.

EventGhost is a plugin-extensible application that takes input from any myriad of devices or programs and, through the use of a simple IF/THEN programming setup (think IFTTT), calls the desired response within Windows, a particular application, or even connected devices.

Getting the VCR remote set up in EventGhost was more of a headache than I anticipated, and required a lot of scanning fora and a little noodling to get working correctly. However, once I found the proper combination of versions, plugins, and conditions, it’s working like a champ!

First, you have to download and install EventGhost. At the time of this writing, the newest version (0.4.1.r1700, released 4 Mar 2015) seems to be the culprit behind my inability to get the plugins working, so make sure you go with (as of right now) v0.4.1.r1694, released 27 Jan 2015. If there is development between now and the time you’re working on this, just bear this tip in mind if the latest version does not seem to be working.

When you first run EventGhost, there will be quite a bit of detritus that you won’t likely need already programmed as examples. Disable or delete everything in the Configuration Tree except “Volume Control”

The default configuration tree.

To enable remote control commands, you must activate the MCE Remote plugin. To add the plugin, choose “Add Plugin…” from the “Configuration” menu.

Select “Microsoft MCE Remote” from the list.

Do not install the version marked for Vista/Win7 as it is rather finicky and difficult to work with, requiring the installation of an alternate MCE IR service that is buggier than that scene in Temple of Doom.

Pictured: Attempting to work with AlternateMceIrService in Windows 7 (CREDIT: LucasFilm)

The settings for this plugin will allow you to set a custom button release timeout, which will be handy if your system is registering multiple button presses from your remote. I have mine set to 0.75 seconds, which seems to be just enough time. Play around with this setting to find something that works for you.

Additionally, the settings dialog will prompt you to disable HID service for the remote. You do not need to do this except under special circumstances. The HID service in Windows 7 works fine.

Test to make sure that the correct button presses are being registered in the left sidebar. If they are, congratulations! Your remote is now working in Windows and you can customise buttons to your heart’s content!

How To Use A Remote Control With Kodi In Windows

Kodi, as we’ve discussed before, is the most powerful all-in-one home theatre solution for the 21st century that combines a comprehensive metadata-driven viewing experience for all your local media as well as the ability to extend functionality through the use of plugins for many kinds of streaming media. The one problem with this setup is that Kodi does not recognize Windows Media Remote commands out of the box and will require a separate process to parse those commands into something useable.

If you have EventGhost properly setup to receive and interpret IR commands from your remote control, there is a stock plugin available for EG that will translate those keypresses into Kodi commands, allowing you to easily program a remote control with Kodi.

Highlight “Autostart” in the EventGhost Configuration Tree. Right-click and choose “Add Plugin…” From the plugin menu, scroll down to “XBMC2” in the “Program Control” folder, highlight, and click “OK”.

Screen Shot 2015-04-15 at 7.38.48 PM

Unless your Kodi/XBMC settings are different from the defaults, go ahead and click OK on the next screen as well. EventGhost will prompt you to add actions, but you don’t need to. All of your macros and actions have now been added to the “XBMC2” folder in the Configuration Tree.

The next part is somewhat tedious, but only required once. Press each button on the remote to register the event in EG. Then, drag each button press event to the corresponding macro in the XBMC2/Buttons folder.

Screen Shot 2015-04-19 at 10.17.25 AM
Once your buttons are programmed, you are ready to use your remote with Kodi!

EventGhost Configuration Tree

I’m constantly updating EventGhost with new macros as I see the need to. Check back to this post for a new version as the VCR Project evolves! You can download the current EventGhost configuration tree here.