Fine Tuning Mac Mini, Logitech Harmony, Plex Nine & EyeTV

In my first post I covered how to get your Logitech Harmony remote to work via a standard Mac IR port and map the buttons accordingly. In this post I show how to take those steps and use them to seamlessly let you control 2 programs from the couch.
If you’re setting up something similar you might be interested in the follow steps as it took me weeks of reading and joining the dots across many forum and blog posts.

Remote Buddy

A very simple menu design.

First, I don’t want Remote Buddy to do too much, as currently the RB OSD menu isn’t as customisable as I’d hope particularly the default menu. One thing it is good for though is as an App switcher and just show things like ‘Run Plex’ or ‘Watch TV’.

To disable hierarchical menus go to Menu in RemoteBuddy preferences and untick ‘Descend into the respective context menu when choosing a behaviour in the menu’. Also untick ‘Display a button mapping chart for each behaviour’ if its selected, this shows a picture of an Apple remote on the menus and is irrelevant if you’re using a Harmony as its sending lots of remotes’ codes.

Now to create a custom RemoteBuddy Menu that shows only what I want.
Still in the Menu section of the RB preferences, click the + drop down in the bottom left to add a new menu, in my case I setup ‘MacMini’

Now click on the new Menu Profile you made and a bunch of options should popup (or click on the forth icon on the bottom left menu bar). Go to Behaviours and drag which ever apps you want to be able to open via RB’s OSD. In this case I’ve added Plex, EyeTV and DVD Player along with some basic system commands. You can rename them to more human titles as you need.

Now when you press the menu button on your harmony remote, the menu you have just designed will appear and open/switch to the app you want along with setting up RB to pass through you mappings.

PLEX

Plex remote map.

In Plex, go to Preferences, System, Input Devices and select ‘Harmony’ as the remote option and enable ‘all ways on’
You can now customise a harmony.xml keymap as you need, mainly to set you F1-F14 keys to open specific menus. In my case I setup keys to Enable Subtitles, Change Aspect ratio, show New Movies, Show New TV and quick access to both TV & Movie sections  via the softkeys on my remote.

There is a default harmony.xml located in /Applications/Plex.app/Contents/Resources/Plex/keymaps which if copied into /~/Library/Application\ Support/Plex/userdata/keymaps will override the default. Theres more info on how to get to specific menus in the Plex forums.

EyeTV remote map.

EyeTV
EyeTV has functional setup for your default Apple Remote but now you have the ability to use all the buttons of your harmonies buttons is obvious. The main buttons can be set but some just don’t have calls, the most notable is the ability to popup the OSD Guide. I think this will come in time but for now I’ve setup my EyeTV as it is below.

The most complex part of this setup is making the setup fool proof and cover any chance something happening and needing a keyboard to fix it. So far these are the two situations I need something unique mapped.

EyeTV uses almost no resources when there is now Video window displayed, so if I’m in Plex watching a movie I don’t want EyeTV to be decoding TV in the background, but still want it open if theres a scheduled show or if someone is streaming TV to the household iPad.
To solve this I set a ‘Close All Video windows’ button on the remote.
The other issue would be if I switch to EyeTV and theres no video windows open. I’ll also need a button to open a TV window and full screen it. This unfortunately needs two commands – CMD-O to open a new window and then CMD-0 to full screen it.
To set this up find the remote ID & specific key you want to map via the Mapping Button and choose Custom Actions from the list. Name the action something like ‘New Fullscreen TV Window’ set the 2 commands to run in the correct order and you’re done.

Leave a Reply

Your email address will not be published. Required fields are marked *