Bug 92370

Summary: Add support for Bluetooth LE HID devices
Product: upower Reporter: Bastien Nocera <bugzilla>
Component: generalAssignee: Richard Hughes <richard>
Status: RESOLVED FIXED QA Contact:
Severity: enhancement    
Priority: medium CC: bugzilla, elvis.angelaccio, yaroslav.isakov
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments: linux: Add support for Bluetooth LE device batteries
linux: Add test for Bluetooth LE battery support
linux: Add support for Bluetooth LE device batteries
linux: Add test for Bluetooth LE battery support
linux: Add support for Bluetooth LE device batteries
linux: Add test for Bluetooth LE battery support

Description Bastien Nocera 2015-10-09 17:47:13 UTC
Bluetooth LE devices export battery status in a different way from "legacy" Bluetooth devices. That information is not visible from the kernel.

BlueZ support for this is needed.
Comment 1 Bastien Nocera 2017-09-21 15:27:30 UTC
BlueZ support has been written:
https://marc.info/?l=linux-bluetooth&m=150600624229315&w=2

We'll need to figure out how to implement this in UPower.
Comment 2 Bastien Nocera 2017-10-20 23:00:14 UTC
Created attachment 134952 [details] [review]
linux: Add support for Bluetooth LE device batteries

As exported through BlueZ's org.bluez.Battery1 D-Bus interface. This
interface is only used for device where the battery information cannot
be processed in the kernel.

This is the first UpDevice type that doesn't use UdevDevice for the
Linux backend, and it is also the first that does not poll() status at
all.
Comment 3 Bastien Nocera 2017-10-20 23:00:17 UTC
Created attachment 134953 [details] [review]
linux: Add test for Bluetooth LE battery support
Comment 4 Bastien Nocera 2017-10-30 17:18:04 UTC
Created attachment 135166 [details] [review]
linux: Add support for Bluetooth LE device batteries

As exported through BlueZ's org.bluez.Battery1 D-Bus interface. This
interface is only used for device where the battery information cannot
be processed in the kernel.

This is the first UpDevice type that doesn't use UdevDevice for the
Linux backend, and it is also the first that does not poll() status at
all.
Comment 5 Bastien Nocera 2017-10-30 17:18:09 UTC
Created attachment 135167 [details] [review]
linux: Add test for Bluetooth LE battery support
Comment 6 Bastien Nocera 2017-10-30 17:19:52 UTC
The second set of patches were updated to make use of a simpler BlueZ interface. Turns out one of the interfaces we implemented wasn't accepted or used, but still listed.

The test suite passes as well.
Comment 7 Bastien Nocera 2017-11-02 14:38:01 UTC
Created attachment 135210 [details] [review]
linux: Add support for Bluetooth LE device batteries

As exported through BlueZ's org.bluez.Battery1 D-Bus interface. This
interface is only used for device where the battery information cannot
be processed in the kernel.

This is the first UpDevice type that doesn't use UdevDevice for the
Linux backend, and it is also the first that does not poll() status at
all.
Comment 8 Bastien Nocera 2017-11-02 14:38:05 UTC
Created attachment 135211 [details] [review]
linux: Add test for Bluetooth LE battery support
Comment 9 Bastien Nocera 2017-11-06 22:22:46 UTC
Attachment 135210 [details] pushed as ccb1b0e - linux: Add support for Bluetooth LE device batteries
Attachment 135211 [details] pushed as 7771a57 - linux: Add test for Bluetooth LE battery support
Comment 10 Elvis Angelaccio 2018-01-20 16:41:51 UTC
*** Bug 99082 has been marked as a duplicate of this bug. ***

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.