2015-06-29 09:00:31

by Zheng, Wu

[permalink] [raw]
Subject: how to use "example-gatt-server" test gatt?

Hi all,

1. I use the latest version of Bluez and run as "bluetoothd -Edn" to test gatt.

2. I try to use example-gatt-server to test it.

However, it failed. Please check the following log.

Run "Bluetooth -Edn"
"
bluetoothd[17456]: src/gatt-database.c:manager_register_service() Registering service - path: /org/bluez/example/service0
bluetoothd[17456]: src/gatt-database.c:manager_register_service() Registering service - path: /org/bluez/example/service1
bluetoothd[17456]: src/gatt-database.c:manager_register_service() Registering service - path: /org/bluez/example/service2
bluetoothd[17456]: src/gatt-database.c:client_disconnect_cb() Client disconnected
bluetoothd[17456]: src/gatt-database.c:client_disconnect_cb() Client disconnected
bluetoothd[17456]: src/gatt-database.c:client_disconnect_cb() Client disconnected
"

Then Run "./example-gatt-server"
"
./example-gatt-server
Battery Level drained: 98
Battery Level drained: 96
Battery Level drained: 94
Battery Level drained: 92
Failed to register service: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
"

After checked the source code, I find that "RegisterService" not return the dbus message and only after invoking client_ready_cb, the dbus message is returned.

I missed some steps to test it? Please help. Thanks.

Best Regards
Zheng Wu


2015-06-29 11:32:33

by Luiz Augusto von Dentz

[permalink] [raw]
Subject: Re: how to use "example-gatt-server" test gatt?

Hi,

On Mon, Jun 29, 2015 at 12:00 PM, Zheng, Wu <[email protected]> wrote:
> Hi all,
>
> 1. I use the latest version of Bluez and run as "bluetoothd -Edn" to test gatt.
>
> 2. I try to use example-gatt-server to test it.
>
> However, it failed. Please check the following log.
>
> Run "Bluetooth -Edn"
> "
> bluetoothd[17456]: src/gatt-database.c:manager_register_service() Registering service - path: /org/bluez/example/service0
> bluetoothd[17456]: src/gatt-database.c:manager_register_service() Registering service - path: /org/bluez/example/service1
> bluetoothd[17456]: src/gatt-database.c:manager_register_service() Registering service - path: /org/bluez/example/service2
> bluetoothd[17456]: src/gatt-database.c:client_disconnect_cb() Client disconnected
> bluetoothd[17456]: src/gatt-database.c:client_disconnect_cb() Client disconnected
> bluetoothd[17456]: src/gatt-database.c:client_disconnect_cb() Client disconnected
> "
>
> Then Run "./example-gatt-server"
> "
> ./example-gatt-server
> Battery Level drained: 98
> Battery Level drained: 96
> Battery Level drained: 94
> Battery Level drained: 92
> Failed to register service: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
> "
>
> After checked the source code, I find that "RegisterService" not return the dbus message and only after invoking client_ready_cb, the dbus message is returned.
>
> I missed some steps to test it? Please help. Thanks.

Check if you had update the D-Bus policy file, we will try to access
the clients services via ObjectManager etc, so you need the policy to
enable that.


--
Luiz Augusto von Dentz

2015-07-08 02:48:22

by Zheng, Wu

[permalink] [raw]
Subject: RE: how to use "example-gatt-server" test gatt?

SGkgTHVpeiwNCg0KVGhhbmtzLiBJdCB3b3JrIHdlbGwuDQoNCkJlc3QgUmVnYXJkcw0KWmhlbmcg
V3UNCg0KLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCkZyb206IEx1aXogQXVndXN0byB2b24g
RGVudHogW21haWx0bzpsdWl6LmRlbnR6QGdtYWlsLmNvbV0gDQpTZW50OiBNb25kYXksIEp1bmUg
MjksIDIwMTUgNzozMyBQTQ0KVG86IFpoZW5nLCBXdQ0KQ2M6IGxpbnV4LWJsdWV0b290aEB2Z2Vy
Lmtlcm5lbC5vcmcNClN1YmplY3Q6IFJlOiBob3cgdG8gdXNlICJleGFtcGxlLWdhdHQtc2VydmVy
IiB0ZXN0IGdhdHQ/DQoNCkhpLA0KDQpPbiBNb24sIEp1biAyOSwgMjAxNSBhdCAxMjowMCBQTSwg
WmhlbmcsIFd1IDx3dS56aGVuZ0BpbnRlbC5jb20+IHdyb3RlOg0KPiBIaSBhbGwsDQo+DQo+IDEu
IEkgdXNlIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiBCbHVleiBhbmQgcnVuIGFzICJibHVldG9vdGhk
ICAtRWRuIiB0byB0ZXN0IGdhdHQuDQo+DQo+IDIuIEkgdHJ5IHRvIHVzZSBleGFtcGxlLWdhdHQt
c2VydmVyIHRvIHRlc3QgaXQuDQo+DQo+IEhvd2V2ZXIsIGl0IGZhaWxlZC4gUGxlYXNlIGNoZWNr
IHRoZSBmb2xsb3dpbmcgbG9nLg0KPg0KPiBSdW4gIkJsdWV0b290aCAtRWRuIg0KPiAiDQo+IGJs
dWV0b290aGRbMTc0NTZdOiBzcmMvZ2F0dC1kYXRhYmFzZS5jOm1hbmFnZXJfcmVnaXN0ZXJfc2Vy
dmljZSgpIA0KPiBSZWdpc3RlcmluZyBzZXJ2aWNlIC0gcGF0aDogL29yZy9ibHVlei9leGFtcGxl
L3NlcnZpY2UwDQo+IGJsdWV0b290aGRbMTc0NTZdOiBzcmMvZ2F0dC1kYXRhYmFzZS5jOm1hbmFn
ZXJfcmVnaXN0ZXJfc2VydmljZSgpIA0KPiBSZWdpc3RlcmluZyBzZXJ2aWNlIC0gcGF0aDogL29y
Zy9ibHVlei9leGFtcGxlL3NlcnZpY2UxDQo+IGJsdWV0b290aGRbMTc0NTZdOiBzcmMvZ2F0dC1k
YXRhYmFzZS5jOm1hbmFnZXJfcmVnaXN0ZXJfc2VydmljZSgpIA0KPiBSZWdpc3RlcmluZyBzZXJ2
aWNlIC0gcGF0aDogL29yZy9ibHVlei9leGFtcGxlL3NlcnZpY2UyDQo+IGJsdWV0b290aGRbMTc0
NTZdOiBzcmMvZ2F0dC1kYXRhYmFzZS5jOmNsaWVudF9kaXNjb25uZWN0X2NiKCkgQ2xpZW50IA0K
PiBkaXNjb25uZWN0ZWQNCj4gYmx1ZXRvb3RoZFsxNzQ1Nl06IHNyYy9nYXR0LWRhdGFiYXNlLmM6
Y2xpZW50X2Rpc2Nvbm5lY3RfY2IoKSBDbGllbnQgDQo+IGRpc2Nvbm5lY3RlZA0KPiBibHVldG9v
dGhkWzE3NDU2XTogc3JjL2dhdHQtZGF0YWJhc2UuYzpjbGllbnRfZGlzY29ubmVjdF9jYigpIENs
aWVudCANCj4gZGlzY29ubmVjdGVkICINCj4NCj4gVGhlbiBSdW4gIi4vZXhhbXBsZS1nYXR0LXNl
cnZlciINCj4gIg0KPiAuL2V4YW1wbGUtZ2F0dC1zZXJ2ZXINCj4gQmF0dGVyeSBMZXZlbCBkcmFp
bmVkOiA5OA0KPiBCYXR0ZXJ5IExldmVsIGRyYWluZWQ6IDk2DQo+IEJhdHRlcnkgTGV2ZWwgZHJh
aW5lZDogOTQNCj4gQmF0dGVyeSBMZXZlbCBkcmFpbmVkOiA5Mg0KPiBGYWlsZWQgdG8gcmVnaXN0
ZXIgc2VydmljZTogb3JnLmZyZWVkZXNrdG9wLkRCdXMuRXJyb3IuTm9SZXBseTogRGlkIG5vdCBy
ZWNlaXZlIGEgcmVwbHkuIFBvc3NpYmxlIGNhdXNlcyBpbmNsdWRlOiB0aGUgcmVtb3RlIGFwcGxp
Y2F0aW9uIGRpZCBub3Qgc2VuZCBhIHJlcGx5LCB0aGUgbWVzc2FnZSBidXMgc2VjdXJpdHkgcG9s
aWN5IGJsb2NrZWQgdGhlIHJlcGx5LCB0aGUgcmVwbHkgdGltZW91dCBleHBpcmVkLCBvciB0aGUg
bmV0d29yayBjb25uZWN0aW9uIHdhcyBicm9rZW4uDQo+ICINCj4NCj4gQWZ0ZXIgY2hlY2tlZCB0
aGUgc291cmNlIGNvZGUsIEkgZmluZCB0aGF0ICJSZWdpc3RlclNlcnZpY2UiIG5vdCByZXR1cm4g
dGhlIGRidXMgbWVzc2FnZSBhbmQgb25seSBhZnRlciBpbnZva2luZyBjbGllbnRfcmVhZHlfY2Is
IHRoZSBkYnVzIG1lc3NhZ2UgaXMgcmV0dXJuZWQuDQo+DQo+IEkgbWlzc2VkIHNvbWUgc3RlcHMg
dG8gdGVzdCBpdD8gUGxlYXNlIGhlbHAuIFRoYW5rcy4NCg0KQ2hlY2sgaWYgeW91IGhhZCB1cGRh
dGUgdGhlIEQtQnVzIHBvbGljeSBmaWxlLCB3ZSB3aWxsIHRyeSB0byBhY2Nlc3MgdGhlIGNsaWVu
dHMgc2VydmljZXMgdmlhIE9iamVjdE1hbmFnZXIgZXRjLCBzbyB5b3UgbmVlZCB0aGUgcG9saWN5
IHRvIGVuYWJsZSB0aGF0Lg0KDQoNCi0tDQpMdWl6IEF1Z3VzdG8gdm9uIERlbnR6DQo=