Logitech Keyboard Media Keys

From wiki.jriver.com
Revision as of 04:17, 19 August 2007 by Gateley (talk | contribs) (Reverted edits by VmwK3l (Talk); changed back to last version by Mark h)
Jump to navigation Jump to search

The Media Keys on Logitech keyboards only work, by default, when Media Center is the focussed application. In order to fix this, make the following changes:

For MC12, use make the following changes:

Find the file C:\Program files\Logitech\SetPoint\players.ini

Under the [Players] header:
Add:
Code:
JRMedia=wac,Media Center 12.exe,MJFrame,xxx,xxx,10001,10000,10002,10004,10003,0,1,Media Center 12

Under [Players.Display] add:
JRMedia=Media Center 12

Under [Players.IsRemote] add:
JRMedia=True

Discussion thread for the above information is here: http://yabb.jriver.com/interact/index.php?topic=39739.0

Alternatively:

I used to have a MS keyboard that had media keys and they worked with everything but Media Center. I dismissed it as an old keyboard. But I recently bought the Logitech LX700 keyboard/mouse combo. I love this thing! It actually has media keys I can use, except the Next/Prev/Play/Stop. Like many of you, I too had the problem of the next button "sticking" and jumping too many songs, and the play/stop not working properly. Needless to say, I've been quite ticked about that. I read that if you turn off/uninstall SetPoint it works perfectly but that stinks because then you can't use any of the media keys which I have all custom programmed for my tastes. Which got me thinking.

Why not just hack the config files?

If you look in C:\Program Files\Logitech\SetPoint\Devices\Keyboard there are 10 folders, the first 7 are the keyboard config files for Logitech's supported line. I'm going to use my LX700 Keyboard as an example because that's the one I own and know works. For the LX700, the folder is "200002D" in there there is an XML file called "200002D.xml." Open that and you'll see definitions for all the keys on the keyboard. Search for this:

<!-- Button Name => STOP  -->
<Button Number="786615" Name="Stop">
<Trigger Class="ButtonPress">
<PARAM Button="786615" />
<TriggerState Name="ButtonDownUp"       HandlerSet="MM STOP"  HandlerSetGroup="Keyboard"  />
</Trigger>
</Button>

<!-- Button Name => PLAY  -->
<Button Number="786637" Name="Play">
<Trigger Class="ButtonPress">
<PARAM Button="786637" />
<TriggerState Name="ButtonDownUp"       HandlerSet="MM PLAY"  HandlerSetGroup="Keyboard"  />
</Trigger>
</Button>

<!-- Button Name => NEXT TRACK  -->
<Button Number="786613" Name="Next Track">
<Trigger Class="ButtonPress">
<PARAM Button="786613" />
<TriggerState Name="ButtonDownUp"       HandlerSet="MM NEXT"  HandlerSetGroup="Keyboard"  />
</Trigger>
</Button>

<!-- Button Name => PREVIOUS TRACK -->
<Button Number="786614" Name="Previous Track">
<Trigger Class="ButtonPress">
<PARAM Button="786614"  />
<TriggerState Name="ButtonDownUp"       HandlerSet="MM PREVIOUS"  HandlerSetGroup="Keyboard"  />
</Trigger>
</Button>

Always make a backup copy of the files before editing. What I did was shut down SetPoint, delete that whole section, and restart SetPoint. Logitech configures the keyboard except for those buttons. So all my programmed buttons still work, and the Next/Prev/Play/Stop work as if SetPoint was not running. Now, there is no OSD that says "Next Track", "Play", etc. but that's a small price to pay. All the other buttons show their OSD. I tried to just edit certain pieces of the XML code above to maybe enable the OSD, but I couldn't get it to work. If anyone else can, please let us all know!

I have found that the buttons no longer work with WinAmp, but they still work with Windows Media Player. I haven't really tried any other programs because I only use these keys for Media Center. I also didn't go into the other keyboard XML files because I don't own them, but that same code is in all of them, so just find which file is for your keyboard and edit that one (you can see by opening the XML file. The keyboard is labeled at the top.). Like I said it works for me, and I am finally a happy camper with the keyboard.

Thanks unrealreality.