linux-input.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Jon Smirl" <jonsmirl@gmail.com>
To: linux-input@vger.kernel.org
Subject: Bringing IR (common remote controls) into the input fold
Date: Fri, 7 Nov 2008 14:57:55 -0500	[thread overview]
Message-ID: <9e4733910811071157o30629f69xce03e5f6a1f68324@mail.gmail.com> (raw)

I just found the linux-input list. I've been working on integrating IR
support into the kernel in a manner consistent with the design of the
rest of the input subsystem. I'm aware of LIRC. I'm posting this code
to the LIRC mailing list and asking for feedback/help but none has
been forth coming.

LIRC exists outside of the kernel and builds its device drivers
externally. It has an independent design as an input system and
requires apps to be aware of it. It needs a daemon running.  LIRC has
been around ten years and works fine, it's just not integrated with
the rest of input.

I'm looking for feedback and help designing a more optimal way of
integrating IR into the input framework.

I posted V4 of my in-kernel IR system to LKML.  It supports mapping
from IR events to key strokes now.
http://lkml.org/lkml/2008/11/5/233

To do the mapping it uses configfs (part of the kernel).  The main
directory is remotes. You use a shell script to build mappings between
the IR event and key stroke.

mkdir /config/remotes/sony
  -- this creates a new evdev device
mkdir remotes/sony/one
echo 7 >remotes/sony/one/procotol
echo 264 >remotes/sony/one/command
echo 2 >remotes/sony/one/keycode

This transforms a button push of 1 on my remote into a key stroke for KEY_1

 *   configfs root
 *   --remotes
 *   ----specific remote
 *   ------keymap
 *   --------protocol
 *   --------device
 *   --------command
 *   --------keycode
 *   ------repeat keymaps
 *   --------....
 *   ----another remote
 *   ------more keymaps

You can map the 1 button from multiple remote to KEY_1 if you want. Or
you can use a single remote to create multiple virtual keyboards.

I'm always looking for help with this code. I've implemented support
for my embedded GPIO based receiver and Microsoft MCEUSB. I'd really
like to see IR added to existing Linux input family of keyboards,
mice, joystick, tablet, touchscreen and gameport.

-- 
Jon Smirl
jonsmirl@gmail.com

                 reply	other threads:[~2008-11-07 19:57 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=9e4733910811071157o30629f69xce03e5f6a1f68324@mail.gmail.com \
    --to=jonsmirl@gmail.com \
    --cc=linux-input@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).