Macos – How to remap a play-button keypress from a Bluetooth headset on OS X

bluetoothmacosremappingwireless-headset

I have an LG Tone (HBS 700) Bluetooth stereo headset, and am using it with OS X Lion.

The headset has a play/pause toggle button, but unlike my keyboard's play button, which will toggle play/pause for, say, VLC media player if it is running, the headset's play button will launch iTunes if it is not already open, or toggle play/pause in iTunes if it is already open. It will not toggle play/pause in any other media player.

Can someone explain what system event is likely being triggered when I press play? It's clear that some system daemon is listening for something, since iTunes gets launched and can interpret the play/pause/next/prev controls just fine… Is there a way I can intercept the keypress event and remap its function? I would like it to have the same behavior as the keyboard's play button.

Thanks for your help!

Best Answer

You are looking for the Remote Control Daemon located in:

/System/Library/CoreServices/rcd.app

It can be disabled with the command

sudo chmod a-x /System/Library/CoreServices/rcd.app/Contents/MacOS/rcd
killall -9 rcd

(If you just kill it, launchd will restart it again). To re-enable it,

sudo chmod a+x /System/Library/CoreServices/rcd.app/Contents/MacOS/rcd

Then log out and back in to make launchd start it.

If you are ambitions enough, you may try editing it with a hex editor. This is outside of my realm of knowledge, but I do have two suggestions.

  1. Opening up quicktime (just blank, nothing in it) in the background may prevent the daemon from using iTunes. It depends on whether your device uses the same system event.

  2. Alternatively, there is a free utility located at the following link which patches the daemon for you. After running it, the daemon will use the active program, instead of iTunes. However, this will not remap VLC as the program to be opened when you press play. It is designed for the keyboard media keys, but I believe the OS sees your LG Tone's button as the same system event. That link: http://lifehacker.com/5651055/free-your-macs-media-keys-from-itunes-no-manual-hacking-required

Finally, I can tell you that Apple has not yet provided a simple way to change remote control settings. This is unfortunate, as this is a common question regarding the media keys on keyboards and other controls on devices such as yours. Rather than provide a solution, it seems that they have made changes to the OS in the past to ensure iTunes is the program used by this daemon. Unfortunately, there is unlikely to be a better fix than these soon.

Related Question