Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 25 Aug 2009 15:51:36 +0800
From:      Henry Hu <henry.hu.sh@gmail.com>
To:        Israel Jacques <mrkotfw@gmail.com>
Cc:        freebsd-drivers@freebsd.org
Subject:   Re: Dell USB keyboard
Message-ID:  <53a1e0710908250051k297cff18l25daeb1e27656ac5@mail.gmail.com>
In-Reply-To: <5cd4c4cd0908242303q16031125m62d1122f7a024bd2@mail.gmail.com>
References:  <5cd4c4cd0908221713y5d396946h5e4000ee11a48e0c@mail.gmail.com> <200908230216.CAA12582@sopwith.solgatos.com> <53a1e0710908222309x78b04000t40e31fbee495355c@mail.gmail.com> <5cd4c4cd0908232210p61f1b56aw660aad2bb4e53fbb@mail.gmail.com> <53a1e0710908242202n1345eb1fj53a7a2bf1d3672f@mail.gmail.com> <5cd4c4cd0908242303q16031125m62d1122f7a024bd2@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Aug 25, 2009 at 2:03 PM, Israel Jacques<mrkotfw@gmail.com> wrote:
> Hi Henry.
>
> After about a minute of running: usbhidctl -alrv -f /dev/uhid0 > dump, I =
get:
> 00000000 =A052 65 70 6f 72 74 20 64 =A065 73 63 72 69 70 74 6f =A0|Report=
 descripto|
> 00000010 =A072 3a 0a 54 6f 74 61 6c =A020 20 20 69 6e 70 75 74 =A0|r:.Tot=
al =A0 input|
> 00000020 =A020 73 69 7a 65 20 30 20 =A062 79 74 65 73 0a 54 6f =A0| size =
0 bytes.To|
> 00000030 =A074 61 6c 20 20 6f 75 74 =A070 75 74 20 73 69 7a 65 =A0|tal =
=A0output size|
> 00000040 =A020 31 20 62 79 74 65 73 =A00a 54 6f 74 61 6c 20 66 =A0| 1 byt=
es.Total f|
> 00000050 =A065 61 74 75 72 65 20 73 =A069 7a 65 20 31 20 62 79 =A0|eature=
 size 1 by|
> 00000060 =A074 65 73 0a 0a 0a 0a 0a =A00a 0a 0a 0a 0a 0a 0a 0a =A0|tes...=
..........|
> 00000070 =A00a 0a 0a 0a 0a 0a 0a 0a =A00a 0a 0a 0a 0a 0a 0a 0a =A0|......=
..........|
> *
> 0b675000
>
> There is an option in the BIOS that allows me to disable BIOS support
> for USB. I'll reboot and report back on whether or not it makes a
> difference.
>
> As with usbhidaction, I'm assuming I would need to be able to get
> output from /dev/uhid0 in order to write a configuration file.
> Correct?

I'm sorry. After googling more, I find out that most multimedia keys
are sent through the normal keyboard device, it seems like only the
volume control information is sent through other devices.
So if you run xev, and press the multimedia keys, you would see these
keycodes, right?
Which WM are you using? For compiz, you may specify the program to run
in the CCSM. I'm not familiar with metacity, but I know at least you
may specify it in gconf-editor.

>
> On Mon, Aug 24, 2009 at 10:02 PM, Henry Hu<henry.hu.sh@gmail.com> wrote:
>> On Mon, Aug 24, 2009 at 1:10 PM, Israel Jacques<mrkotfw@gmail.com> wrote=
:
>>> I have the following in my ~/.xmodmaprc:
>>>
>>> keycode 234 =3D XF86Back
>>> keycode 233 =3D XF86Forward
>>> keycode 232 =3D XF86Stop
>>> keycode 231 =3D XF86Refresh
>>> keycode 130 =3D XF86HomePage
>>> keycode 236 =3D XF86Mail
>>> keycode 198 =3D XF86MyComputer
>>> keycode 161 =3D XF86Calculator
>>> keycode 160 =3D XF86AudioMute
>>> keycode 164 =3D XF86AudioStop
>>> keycode 144 =3D XF86AudioPrev
>>> keycode 153 =3D XF86AudioNext
>>> keycode 162 =3D XF86AudioPlay
>>> keycode 129 =3D XF86AudioMedia
>>> keycode 174 =3D XF86AudioLowerVolume
>>> keycode 176 =3D XF86AudioRaiseVolume
>>>
>>> And it doesn't work with my WM.
>> If the messages of the multimedia keys are sent through the uhid
>> device, then you need to write a configuration file for the
>> usbhidaction, specify the keys and corresponding commands, and run
>> usbhidaction when keyboard inserted.
>> Can you see anything when a key is pressed with usbhidctl -alrv -f /dev/=
uhid0 ?
>>>
>>> Thanks for the tip.
>>>
>>> So far, I ran (as root):
>>>
>>> # usbhidctl -anrv -f /dev/uhid0
>>> Report descriptor:
>>> Total =A0 input size 0 bytes
>>> Total =A0output size 1 bytes
>>> Total feature size 1 bytes
>>>
>>> On Sat, Aug 22, 2009 at 11:09 PM, Henry Hu<henry.hu.sh@gmail.com> wrote=
:
>>>> On Sun, Aug 23, 2009 at 10:16 AM, Dieter<freebsd@sopwith.solgatos.com>=
 wrote:
>>>>>> My question is, how do I go about writing a userland application to
>>>>>> access the extra buttons? Would I have to use ioctl(2) to poll
>>>>>> /dev/ukbd0? I would like to write the userland application in order =
to
>>>>>> map them to:
>>>>>> XF86Back
>>>>> ...
>>>>>> XF86AudioRaiseVolume
>>>>>>
>>>>>> Any suggestions?
>>>>>
>>>>> Can xmodmap(1) do what you need? =A0Appears to be in ports.
>>>>> _______________________________________________
>>>>> freebsd-drivers@freebsd.org mailing list
>>>>> http://lists.freebsd.org/mailman/listinfo/freebsd-drivers
>>>>> To unsubscribe, send any mail to "freebsd-drivers-unsubscribe@freebsd=
.org"
>>>>>
>>>> You might try usbhidaction and usbhidctl on the uhid device.
>>>> Once I was using a microsoft keyboard, and I hacked the programs a
>>>> bit, and wrote a configuration file for usbhidaction, and finally I
>>>> can use the multimedia keys.
>>>> These programs have problems parsing the Report ID field. You might
>>>> have to refer to the HID standard to modify them a bit.
>>>>
>>>> Good luck.
>>>>
>>> _______________________________________________
>>> freebsd-drivers@freebsd.org mailing list
>>> http://lists.freebsd.org/mailman/listinfo/freebsd-drivers
>>> To unsubscribe, send any mail to "freebsd-drivers-unsubscribe@freebsd.o=
rg"
>>>
>>
> _______________________________________________
> freebsd-drivers@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-drivers
> To unsubscribe, send any mail to "freebsd-drivers-unsubscribe@freebsd.org=
"
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?53a1e0710908250051k297cff18l25daeb1e27656ac5>