464 key - additional information

Lokean Darken lokean.darken at gmail.com
Mon Jan 26 22:15:56 PST 2009


I am sorry I am making an monologue in this thread, but I have one more
interesting remark:

I played with my laptop keyboard. When I press Fn + <key>, XEV catch one
unique keycode. I suppose that keyboard is build to send one keycode for
combination of Fn + something.

My PDA keyboard work in different way. It don't generate unique keycode for
each combo. Instead, Fn is common key, like shift, ctrl or alt. Except, it's
a key with keycode > 255. And such code is not accepted by Xorg. So what I
need is to catch this code and send it to Xorg evdev driver already remaped.


It is even possible to do such think ?

Thank you

On Tue, Jan 27, 2009 at 6:34 AM, Lokean Darken <lokean.darken at gmail.com>wrote:

> Sorry for spaming, but last naybe interesting info: This is how HAL see my
> keyboard
>
> udi = '/org/freedesktop/Hal/devices/computer_logicaldev_input'
>   info.addons.singleton = {'hald-addon-input'} (string list)
>   info.callouts.add = {'hal-setup-keymap'} (string list)
>   info.capabilities = {'input', 'input.keyboard', 'input.keys', 'button',
> 'input.keymap'} (string list)
>   info.category = 'input'  (string)
>   info.parent = '/org/freedesktop/Hal/devices/computer'  (string)
>   info.product = 'Internal keyboard'  (string)
>   info.subsystem = 'input'  (string)
>   info.udi = '/org/freedesktop/Hal/devices/computer_logicaldev_input'
> (string)
>   input.device = '/dev/input/event0'  (string)
>   input.keymap.data = {'0x1d0:space'} (string list)
>   input.product = 'Internal keyboard'  (string)
>   input.x11_driver = 'evdev'  (string)
>   input.xkb.layout = 'us'  (string)
>   input.xkb.model = 'evdev'  (string)
>   input.xkb.rules = 'base'  (string)
>   input.xkb.variant = ''  (string)
>   linux.device_file = '/dev/input/event0'  (string)
>   linux.hotplug_type = 2  (0x2)  (int)
>   linux.subsystem = 'input'  (string)
>   linux.sysfs_path = '/sys/class/input/input0/event0'  (string)
>
>
>
> On Tue, Jan 27, 2009 at 1:13 AM, Lokean Darken <lokean.darken at gmail.com>wrote:
>
>> And I forget:
>>
>> This is how keyboard is defined in xorg.conf (I tried it without
>> definition too)
>>
>> Section "InputDevice"
>>         Identifier      "Generic Keyboard"
>>         Driver          "evdev"
>>         Option          "XkbRules"      "evdev"
>>         Option          "XkbModel"      "evdev"
>>         Option          "XkbLayout"     "us"
>> EndSection
>>
>> And this is output from Xorg.0.log
>>
>>
>> (II) config/hal: Adding input device Internal keyboard
>> (II) LoadModule: "evdev"
>> (II) Loading /usr/lib/xorg/modules/input//evdev_drv.so
>> (II) Module evdev: vendor="X.Org Foundation"
>>         compiled for 1.5.99.901, module version = 2.1.1
>>         Module class: X.Org XInput Driver
>>         ABI class: X.Org XInput driver, version 4.0
>> (**) Internal keyboard: always reports core events
>> (**) Internal keyboard: Device: "/dev/input/event0"
>> (II) Internal keyboard: Found keys
>> (II) Internal keyboard: Configuring as keyboard
>> (II) XINPUT: Adding extended input device "Internal keyboard" (type:
>> KEYBOARD)
>> (**) Option "xkb_rules" "evdev"
>> (**) Internal keyboard: xkb_rules: "evdev"
>> (**) Option "xkb_model" "pc105"
>> (**) Internal keyboard: xkb_model: "pc105"
>> (**) Option "xkb_layout" "us"
>> (**) Internal keyboard: xkb_layout: "us"
>> (WW) Internal keyboard: unable to handle keycode 464
>>
>>
>>
>> On Tue, Jan 27, 2009 at 1:06 AM, Lokean Darken <lokean.darken at gmail.com>wrote:
>>
>>> Hello, thank you for reply
>>>
>>> On Tue, Jan 27, 2009 at 12:52 AM, Sébastien Mazy <melyadon at gmail.com>wrote:
>>>
>>>> Hi Michal,
>>>>
>>>> On Tue, Jan 27, 2009 at 12:39:20AM +0100, Lokean Darken wrote:
>>>> > This is my fdi which I use to remap key 464 to key 216
>>>> >
>>>> <snip>
>>>> >
>>>> > Anyway, xev still don't catch any signal while I press this key...
>>>> >
>>>> > Is this configuration right? If yes, how should I found where is the
>>>> > problem?
>>>>
>>>> 1) make sure your fdi file is under /etc/hal/fdi/policy, so that it is
>>>> processed after the ones from your distribution
>>>
>>>
>>> Yes, fullpath is  /etc/hal/fdi/policy/30-n810.fdi
>>>
>>>>
>>>>
>>>> 2) is 0x1d0 really the scancode from the key? How did you find it?
>>>
>>>
>>> To be honest, I can't swear. I used hexadecimal form of 464 and in
>>> /usr/include/linux/input.h is such key defined as:
>>>
>>> #define KEY_FN                  0x1d0
>>>
>>> Then I guessed it's ok. Unfortunelly, I have no access to real console
>>> for this device, only over X or by ssh, so I don't know howto make better
>>> guess.
>>>
>>>>
>>>>
>>>> 3) what returns lshal -m when you press the key?
>>>>
>>>
>>> Nothing, no matter what key I press, there is no output.
>>>
>>>>
>>>> --
>>>> Sébastien Mazy
>>>>
>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freedesktop.org/archives/hal/attachments/20090127/293ad9bf/attachment.html 


More information about the hal mailing list