2006-04-22 18:31:17

by Philip Langdale

[permalink] [raw]
Subject: [Bluez-devel] Experiences with mx-5000 bluetooth mouse+keyboard combo

Hi all,

I decided to get myself an mx-5000 set this week and I've been fiddling
with it and while I've got it working well, I'm not quite there yet. I
do want to report my initial findings however.

0) Everything works fine in HID mode. All the buttons on the mouse
and keyboard work correctly at the input level as reported by evtest.

1) The patch to hid2hci.c that Trevor Joynson provided and which was
incorporated is not correct - and this is consistent with the reported
experience of other people with the di novo laser desktop combo.

- the 0x0b02 device is the usb hub itself and it is not the right thing
to attempt to switch to hci mode. Rather, you try to switch the HID
devices themselves. In the case of the mx-5000, the hid devices are
0xc70a (the mouse) and 0xc70e (the keyboard). I belive that the
di novo devices are 0xc70b and 0xc70c.

- Once switched, the hci device appears as 0xc709 - the same as in the
di novo receiver.

2) I did not need Trevor's hci_usb patch, which Marcel did not see a
need for either.

3) I had to apply 2.6.15-mh1 to my 2.6.16 kernel (with the already
applied parts stripped out) to get HID report mode support.

4) In HID report mode, the HWHEEL is mangled at some point. Instead of
reporting a usage of 0x10036, it reports 0xC0238, causing it to be
marked as an unknown button. I put a hack into hidp's hid.c to catch
this case and rewrite the usage. The rest of the characteristics seem
to be correct and the horizontal scrolling works correctly.

5) The keyboard is in a similar situation but I have not mapped out the
broken usages yet, and even some of the multimedia keys that do work
report different codes from HID mode.

So, the main question is: Are the usages broken in the devices
themselves or are the drivers mangling them before hidp sees them?

--phil



-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Bluez-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-devel


2006-04-22 18:38:08

by Philip Langdale

[permalink] [raw]
Subject: [Bluez-devel] Re: Experiences with mx-5000 bluetooth mouse+keyboard combo

Philip Langdale wrote:
> Hi all,
>
> I decided to get myself an mx-5000 set this week and I've been fiddling
> with it and while I've got it working well, I'm not quite there yet. I
> do want to report my initial findings however.
>
> 0) Everything works fine in HID mode. All the buttons on the mouse
> and keyboard work correctly at the input level as reported by evtest.
>
>
> 5) The keyboard is in a similar situation but I have not mapped out the
> broken usages yet, and even some of the multimedia keys that do work
> report different codes from HID mode.
>

This is only partially true. There are some keys that don't generate
input events in either mode, and some keys that generate different codes
in HCI mode. So, there's two problems there.

--phil


-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Bluez-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-devel

2006-05-06 18:48:36

by Philip Langdale

[permalink] [raw]
Subject: [Bluez-devel] Re: Experiences with mx-5000 bluetooth mouse+keyboard combo

Philip Langdale wrote:
> Philip Langdale wrote:
>> Hi all,
>>
>> I decided to get myself an mx-5000 set this week and I've been fiddling
>> with it and while I've got it working well, I'm not quite there yet. I
>> do want to report my initial findings however.
>>
>> 0) Everything works fine in HID mode. All the buttons on the mouse
>> and keyboard work correctly at the input level as reported by evtest.
>>
>>
>> 5) The keyboard is in a similar situation but I have not mapped out the
>> broken usages yet, and even some of the multimedia keys that do work
>> report different codes from HID mode.
>>
>
> This is only partially true. There are some keys that don't generate
> input events in either mode, and some keys that generate different codes
> in HCI mode. So, there's two problems there.

I did some more investigation today and came up with useful conclusions.

1) The initial attempt at mapping the usage code is correct, but a later
step in the configuration mangles the codes so they end up incorrect.
(incorrect is a relative term as long as your desktop environment/apps
supports configurable keybindings - so it's not a deal breaker).

This step is:

while (usage->code <= max && test_and_set_bit(usage->code, bit)) {
usage->code = find_next_zero_bit(bit, max + 1, usage->code);
}

in hidinput_configure_usage.

eg: It mangles KEY_UNDO (131) into KEY_SENDFILE (145) which doesn't seem
very useful.

2) Some of the keys that generated no input events are simply keys that
hidinput_configure_usage doesn't know about. I added entries for them
and now they work (some are mangled, some are not).

3) Much more interestingly, there are multiple keys that generate *no*
meaningful events, even at the hcidump level. I assume that these can
only be made to work by downloading programs to the keyboard (the
mx-5000 and di novo are programmable but the interface is apparently
unknown).

--phil


-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Bluez-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-devel

2006-05-06 13:26:14

by Philip Lawatsch

[permalink] [raw]
Subject: Re: [Bluez-devel] Experiences with mx-5000 bluetooth mouse+keyboard combo

Philip Langdale wrote:
> Hi all,

Hi,

> I decided to get myself an mx-5000 set this week and I've been fiddling
> with it and while I've got it working well, I'm not quite there yet.

Same here, but my goal is to actually use the / manipulate the lcd from
linux.

Did someone already do some research in this direction?

And, would someone happen to know a tool to sniff the traffic between
the windows drivers and the keyboard (preferably free and without the
need for a second dongle)

Logitech does not seem to be willing to hand out any specs :(

kind regards Philip


-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Bluez-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-devel