linux-media.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jarod Wilson <jarod@wilsonet.com>
To: Linux Media Mailing List <linux-media@vger.kernel.org>
Subject: Re: [PATCH] [media] rc-core support for Microsoft IR keyboard/mouse
Date: Sat, 4 Jun 2011 13:52:31 -0400	[thread overview]
Message-ID: <A3D446C7-183C-4471-A90E-F9DF5EA27CF2@wilsonet.com> (raw)
In-Reply-To: <1307136508-19455-1-git-send-email-jarod@redhat.com>

On Jun 3, 2011, at 5:28 PM, Jarod Wilson wrote:

> This is a custom IR protocol decoder, for the RC-6-ish protocol used by
> the Microsoft Remote Keyboard.
> 
> http://www.amazon.com/Microsoft-Remote-Keyboard-Windows-ZV1-00004/dp/B000AOAAN8
> 
> Its a standard keyboard with embedded thumb stick mouse pointer and
> mouse buttons, along with a number of media keys. The media keys are
> standard RC-6, identical to the signals from the stock MCE remotes, and
> will be handled as such. The keyboard and mouse signals will be decoded
> and delivered to the system by an input device registered specifically
> by this driver.
> 
> Successfully tested with an mceusb-driven receiver, but this should
> actually work with any raw IR rc-core receiver.
> 
> This work is inspired by lirc_mod_mce:
> 
> http://mod-mce.sourceforge.net/
> 
> The documentation there and code aided in understanding and decoding the
> protocol, but the bulk of the code is actually borrowed more from the
> existing in-kernel decoders than anything. I did recycle the keyboard
> keycode table and a few defines from lirc_mod_mce though.

Nb: this should more or less be considered as an RFC.

One thing I already know I need/want to add is a timer callback to make
sure we don't get stuck keys due to missing a release event signal.

The main area of contention though is over how the keyboard/mouse device is
set up. Currently, if you have three raw rc-core IR receivers in your system,
you get three separate keyboard/mouse event devices, stored inside
rc_dev->raw->mce_kbd->idev. I *think* this is the right way to do this, but
one could argue that the decoder should just have a single input_dev within
the decoder itself, which is used to feed along signals from any raw IR device.

The other question is whether or not this module should be loaded by default
when rc-core is initialized. The current implementation means this is loaded,
and input devices are set up for every raw IR device, and I doubt the vast
majority of people with raw IR receivers actually have this keyboard.

-- 
Jarod Wilson
jarod@wilsonet.com




  reply	other threads:[~2011-06-04 17:52 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-03 21:28 [PATCH] [media] rc-core support for Microsoft IR keyboard/mouse Jarod Wilson
2011-06-04 17:52 ` Jarod Wilson [this message]
2011-06-11 13:38 ` Mauro Carvalho Chehab
2011-06-12 18:09   ` Jarod Wilson
2011-07-13 21:09 ` [PATCH v2] " Jarod Wilson

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=A3D446C7-183C-4471-A90E-F9DF5EA27CF2@wilsonet.com \
    --to=jarod@wilsonet.com \
    --cc=linux-media@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).