[PC-BSD Dev] Mouse detection problem in PCBSD 10

Claudio L. claudio at hpgcc3.org
Sat Feb 1 14:49:59 PST 2014

I reported this in another thread but I'll make it a separate one 
because it will affect a lot of people.
My USB mouse and keyoard are sharing a single device with multiple 
endpoints. Same thing with my graphing tablet, it has multiple devices 
for the macro keys, scroll keys and the tablet itself.
It seems the new auto-detection of devices is not smart enough to detect 
this kind of composite USB devices.

Here's what happens:
devd detects the device and loads the kernel modules ukbd which attaches 
to the keyboard portion of it only. The mouse portion should be handled 
by ums but it's never loaded (or perhaps it is but fails to attach to 
the device).

The solution is to use uhidd, which seems to work. At least I tested it 
in text mode, in single user mode but never under X.

In my case, my device is in ugen2.2 and the other device is in ugen4.7, 
so from the console I do:

sudo uhidd -d -u -kmo /dev/ugen2.2
sudo uhidd -d -u -kmo /dev/ugen4.7

and then I load moused.

I can test it with
vidcontrol -m on

and I can see the mouse moving perfectly with either device in text 
mode. I'm not sure how to make the system autodetect this properly.
Is there any way to run uhidd first instead of the kernel drivers?
The wiki says we should compile the kernel without the drivers, but it 
might be outdated, since now ums is loaded dynamically (I know because 
mine isn't loading).

I noticed the author is Warner Losh (are you reading this Warner? I'd 
appreciate your input).


More information about the Dev mailing list