Thread (19 messages) 19 messages, 2 authors, 2016-02-29

Re: What does mean "GattServices is nil" ?

From: François Beaufort <hidden>
Date: 2016-02-25 13:59:07

Here's an interesting bit, I've tried with Chromebook Pixel 2013 and
Chromebook Pixel 2015 (different chipsets) and the results are
differents

Chromebook Pixel 2013 fails to get GATT Services:
http://pastebin.com/raw/gsi63kWg
Chromebook Pixel 2015 can discover all of them: http://pastebin.com/raw/z5vr0B3P

Does that make some kind of sense?

On Wed, Feb 17, 2016 at 6:12 PM, François Beaufort
[off-list ref] wrote:
I didn't have a chance to try your patches sadly.
Feel free to push them as it will still be valuable for sure.

On Tue, Feb 16, 2016 at 12:49 PM, Luiz Augusto von Dentz
[off-list ref] wrote:
quoted
Hi François,

On Mon, Feb 15, 2016 at 2:32 PM, Luiz Augusto von Dentz
[off-list ref] wrote:
quoted
Hi François,

On Mon, Feb 15, 2016 at 12:20 PM, François Beaufort
[off-list ref] wrote:
quoted
And here are my bluetoothd logs when enabling debug mode:
http://pastebin.com/raw/WjRVrMk5

bluetoothd[21655]: src/device.c:device_connect_le() Connection attempt
to: F1:6F:DE:EC:F1:D6
bluetoothd[21655]: src/adapter.c:connect_failed_callback() hci0
F1:6F:DE:EC:F1:D6 status 2
bluetoothd[21655]: plugins/policy.c:conn_fail_cb() status 2
bluetoothd[21655]: src/adapter.c:bonding_attempt_complete() hci0
bdaddr F1:6F:DE:EC:F1:D6 type 2 status 0x2
bluetoothd[21655]: src/device.c:device_bonding_complete() bonding
(nil) status 0x02
bluetoothd[21655]: src/device.c:device_bonding_failed() status 2
bluetoothd[21655]: src/adapter.c:resume_discovery()
bluetoothd[21655]: src/device.c:att_connect_cb() connect error:
Transport endpoint is not connected (107)
bluetoothd[21655]: src/adapter.c:connected_callback() hci0 device
F1:6F:DE:EC:F1:D6 connected eir_len 24
bluetoothd[21655]: attrib/gattrib.c:g_attrib_ref() 0x7f3ccfe929b0:
g_attrib_ref=1
bluetoothd[21655]: src/device.c:load_gatt_db() Restoring
F1:6F:DE:EC:F1:D6 gatt database from file
bluetoothd[21655]: src/device.c:load_service() loading service:
0x0001, end: 0x0007, uuid: 1800
bluetoothd[21655]: src/device.c:load_service() loading service:
0x0008, end: 0x000b, uuid: 00001801-0000-1000-8000-00805f9b34fb
bluetoothd[21655]: src/device.c:load_service() loading service:
0x0012, end: 0x0019, uuid: 0000180d-0000-1000-8000-00805f9b34fb
bluetoothd[21655]: src/device.c:load_service() loading service:
0x001a, end: 0xffff, uuid: 0000180a-0000-1000-8000-00805f9b34fb
bluetoothd[21655]: src/device.c:load_chrc() loading characteristic
handle: 0x0002, value handle: 0x0003, properties 0x000a uuid: 2a00
bluetoothd[21655]: src/device.c:load_chrc() loading characteristic
handle: 0x0004, value handle: 0x0005, properties 0x0002 uuid: 2a01
bluetoothd[21655]: src/device.c:load_chrc() loading characteristic
handle: 0x0006, value handle: 0x0007, properties 0x0002 uuid: 2a04
bluetoothd[21655]: src/device.c:load_chrc() loading characteristic
handle: 0x0009, value handle: 0x000a, properties 0x0020 uuid:
00002a05-0000-1000-8000-00805f9b34fb
bluetoothd[21655]: src/device.c:load_chrc() loading characteristic
handle: 0x000a, value handle: 0x000b, properties 0x0010 uuid:
6e400003-b5a3-f393-e0a9-e50e24dcca9e
bluetoothd[21655]: saving characteristic to db failed
bluetoothd[21655]: Unable to load gatt db from file for F1:6F:DE:EC:F1:D6
bluetoothd[21655]: src/gatt-client.c:btd_gatt_client_connected()
Device connected.
bluetoothd[21655]: src/device.c:att_browse_cb() ATT connection successful
bluetoothd[21655]: src/device.c:gatt_debug() MTU exchange complete, with MTU: 23
bluetoothd[21655]: src/device.c:gatt_debug() Primary services found: 5
bluetoothd[21655]: src/device.c:gatt_debug() start: 0x0001, end:
0x0007, uuid: 00001800-0000-1000-8000-00805f9b34fb
bluetoothd[21655]: src/device.c:gatt_debug() start: 0x0008, end:
0x000b, uuid: 00001801-0000-1000-8000-00805f9b34fb
bluetoothd[21655]: src/device.c:gatt_debug() start: 0x000c, end:
0x0011, uuid: 00001530-1212-efde-1523-785feabcd123
bluetoothd[21655]: src/device.c:gatt_debug() start: 0x0012, end:
0x0019, uuid: 0000180d-0000-1000-8000-00805f9b34fb
bluetoothd[21655]: src/device.c:gatt_debug() start: 0x001a, end:
0xffff, uuid: 0000180a-0000-1000-8000-00805f9b34fb
bluetoothd[21655]: src/device.c:gatt_debug() Secondary service
discovery failed. ATT ECODE: 0x0a
bluetoothd[21655]: src/device.c:gatt_debug() Characteristics found: 1
bluetoothd[21655]: src/device.c:gatt_debug() start: 0x0009, end:
0x000b, value: 0x000a, props: 0x20, uuid: 00002a05-0000-1
bluetoothd[21655]: src/device.c:gatt_debug() Failed to initialize gatt-client
bluetoothd[21655]: src/device.c:gatt_client_ready_cb() status: failed, error: 10
bluetoothd[21655]: src/device.c:device_svc_resolved()
/org/bluez/hci0/dev_F1_6F_DE_EC_F1_D6 err -5
bluetoothd[21655]: src/device.c:gatt_service_removed() start: 0x0001,
end: 0x0007
It turns out it was the cache malfunctioning, it does clear the cache
properly before storing the services when it changed so you would end
up with new and old services which obviously does not work as the
ranges tend to overlap.
Have you tried my patches? I will probably push them today if you don't object.



--
Luiz Augusto von Dentz
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help