Re: [Bluez-users] Epox Barton keyboard: HID create error 53

Marcel Holtmann
2004-06-29T09:09:05Z

Hi Matthias,

> the HID Specification 1.11 states on page 19:
>
> "Multibyte numeric values in reports are represented in little-endian
> format, with the least significant byte at the lowest address."

this makes is clear the EPoX HID descriptor is buggy and the only reason
their mouse works is, because it doesn't uses a multibyte value.

> So it really is 65280, isn't it? Also, I got this value by use of the
> HID Descriptor Tool.
> Moreover, the descriptor of the Apple keyboard, according to your web
> page, has a similar sequence the other way round: "2a ff 00"

I know. I checked my HID devices to see what the other manufacturer did
and if some other one uses multibyte.

> The funny thing is, the Windows Widcomm Bluetooth stack seems to cope
> with this, I tried it on a Thinkpad.

That is not so funny, because even the bthid was able to work with EPoX
keyboard. Everything depends on how you implement the parser. The Linux
kernel HID parser stores some values for faster access. We are inside
the kernel, we can't parse it everytime a report arrives.

> So what do we do?

I will notify EPoX about it, so they can correct their bug. We must
introduce a quirk for it, but I don't know how to trigger. The keyboard
don't uses Bluetooth DeviceID and the presenter DeviceID is also wrong.
At Cebit I told them that they should take care of DeviceID :(

For a future safe code I will implement the boot protocol, so we can use
it if the parsing of the report descriptor fails.

Regards

Marcel

-------------------------------------------------------
This SF.Net email sponsored by Black Hat Briefings & Training.
Attend Black Hat Briefings & Training, Las Vegas July 24-29 -
digital self defense, top technical experts, no vendor pitches,
unmatched networking opportunities. Visit www.blackhat.com