Keyspan Express Remote

From MythTV Official Wiki
Revision as of 20:54, 12 March 2011 by Wagnerrp (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Keyspan Express Remote

KeyspanExpressRemote.jpg

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";
}