Keyspan Express Remote
Outdated: The information on this page may no longer be relevant to the current release of MythTV, 34.0. Please consider helping to update it. This page was last modified on 2021-05-29.
Keyspan Express Remote
A USB IR remote and dongle with OS X support.
Vendor's Website: http://www.keyspan.com/products/urm17a/
Support Status: Not explicitly supported. Requires some workarounds.
Description
One of the few IR receivers with OS X support. (It comes with OS 9 and Windows drivers as well; not covered here.)
It ships with a credit card-sized remote and drivers to control typical OS X applications such as iTunes and the DVD player. It can launch applications, run Apple Script, or synthesize keypresses. An unadvertised feature is receiving JVC-style IR remote commands as well. Since most "universal" remotes can be set to mimic a JVC VCR (see http://lirc.sourceforge.net/remotes/jvc/HR-S7600U), you may be able to use your existing remote with this.
Issues and Problems
As noted on http://home.comcast.net/~spuppet/myth.html#miniremote , the current OS X Front End application does not have a "title" and therefore any keymappings designed for myth have to be set as global actions---the driver doesn't know that the Mythfrontend application is active. This means you won't be able to have separate keymappings for myth and iTunes, for example.
Update: You can get a separate keymapping for MythTV using this workaround: Add the Mythfrontend application through the ip mapping software. Then edit the ~/Library/Preferences/Keyspan\ DMR\ Preferences/KeyspanDMR17.map file, find the Mythfrontend section, and rename it from "Mythfrontend" to "mythfrontend" or "mythfrontend.bin" (experiment to see which works for you.)
FAQs
Q: Can I use this with some random remote I have lying around?
A: Likely yes. See http://faithful.be/remote-control/ or http://www.xyster.net/junk/index.php .
Q: Where are those configuration files?
A: In ~/Library/Preferences/Keyspan\ DMR\ Preferences/. Anything with a .REM extension is a candidate for setting as "the remote to listen to".
Q: How do I define new buttons? My remote already speaks the JVC protocol but some keys aren't recognized.
A: Well, here's an awful perl script that I wrote. It reads a (very format-constrained) lirc remote definition that looks like:
begin remote name bbb bits 8 flags SPACE_ENC|NO_HEAD_REP pre_data 0xC2 [...] begin codes power 0xD0 repeat/prev-ch 0xD2 subtitle/cc 0xDC [...]
and produces
FRQ 38000 BIT 520 CMD POWER 0103 0103 0101 0101 0101 0101 0103 0101 0103 0103 0101 0103 0101 0101 0101 0101 01ff CMD REPEAT_PREV_CH 0103 0103 0101 0101 0101 0101 0103 0101 0103 0103 0101 0103 0101 0101 0103 0101 01ff CMD SUBTITLE_CC 0103 0103 0101 0101 0101 0101 0103 0101 0103 0103 0101 0103 0103 0103 0101 0101 01ff [...]
#!/usr/bin/perl -n BEGIN { print "FRQ 38000\n\nBIT 520\n\n"; } if (/<sup> ([</sup> #]+) +([0-9A-Zx]+)/) { $h = hex($2); $name = $1; $name = uc $name; $name =~ s/[^a-zA-Z]/_/g; print "CMD $name "; # This is just the 0xC2 prefix print "0103 0103 0101 0101 0101 0101 0103 0101 "; for ($i=0; $i < 8; $i++) { $bit = ($h >> (7-$i)) & 0x1; if ($bit eq 1) { print "0103 "; } else { print "0101 ";} } print "01ff \n"; }