Thread (6 messages) 6 messages, 4 authors, 2022-05-23

Re: Battery indication for Logitech devices

From: Bastien Nocera <hadess@hadess.net>
Date: 2022-04-04 10:12:43

On Mon, 2022-04-04 at 09:10 +0200, Nestor Lopez Casado wrote:
Hello,

I've got this from asking internally:

" The information should be accurate in both BAS and HIDPP
interfaces.
However, today the BAS interface is limited. Version  2.0 will be
better but not yet released. As you have access to the HIDPP, I
recommend using only this one. Like this, the type of connection can
be ignored (BLE or USB dongle) "
As per the patch I just sent (HID: logitech-hidpp: Add Signature M650),
it will unfortunately be difficult to disable the battery reporting
directly from bluetoothd.

We can detect whether a Bluetooth device supports HID++, as it has a
GATT attribute with a Logitech specific UUID[1] (more info/specs
welcome), but not all the HID++ capable Bluetooth devices seem to be
detected by the kernel and they need to be added to a list.

Ideally, the kernel could enable HID++ support for all the Bluetooth
HID++-capable devices, and we could easily block reporting in upower or
bluetoothd without having to care at runtime about whether there's a
separate battery reporting interface because we could assume it was
always there.

Any ideas on how to do that?

[1]:
Device DE:1D:F3:3B:E4:B0 (random)
	Name: Logi M650
	Alias: Logi M650
	Appearance: 0x03c2
	Icon: input-mouse
	Paired: yes
	Trusted: yes
	Blocked: no
	Connected: no
	WakeAllowed: yes
	LegacyPairing: no
	UUID: Generic Access Profile    (00001800-0000-1000-8000-00805f9b34fb)
	UUID: Generic Attribute Profile (00001801-0000-1000-8000-00805f9b34fb)
	UUID: Device Information        (0000180a-0000-1000-8000-00805f9b34fb)
	UUID: Battery Service           (0000180f-0000-1000-8000-00805f9b34fb)
	UUID: Human Interface Device    (00001812-0000-1000-8000-00805f9b34fb)
	UUID: Logitech International SA (0000fd72-0000-1000-8000-00805f9b34fb)
	UUID: Vendor specific           (00010000-0000-1000-8000-011f2000046d)
	Modalias: usb:v046DpB02Ad0009
	ManufacturerData Key: 0x0006
	ManufacturerData Value:
  03 00 80                                         ...             
	ServiceData Key: 0000fd72-0000-1000-8000-00805f9b34fb
	ServiceData Value:
  10 01 01 2a b0 02 02 09                          ...*....        
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help