Hi Anderson, Could you give me some bit of information on how to respond to the handle 0x0039?. I'm digging the bluez sources but I'm kind a lost right now and I don't know exactly what library/function should I use in order to configure it. Regards, John On Thu, Sep 13, 2012 at 2:59 PM, John Tobias <john.tobias.ph@xxxxxxxxx> wrote: > Hi Anderson, > > I added these line of codes in gatttool: > > listen_start: > g_attrib_register(attrib, ATT_OP_READ_BY_TYPE_RESP, events_handler, > attrib, NULL); > > Then, in events_handler I dumped the handles for > ATT_OP_READ_BY_TYPE_REQ and ATT_OP_READ_BY_TYPE_RESP: > > ATT_OP_READ_BY_TYPE_REQ: handle = 0x1 value: ff ff 00 2a > ATT_OP_READ_BY_TYPE_RESP: handle = 0x207 value: 00 02 03 00 00 2a 04 > 00 02 05 00 01 2a 07 00 20 08 00 05 2a > ATT_OP_READ_BY_TYPE_RESP: handle = 0xb15 value: 00 02 0c 00 31 3d 35 > 06 1e 60 70 a3 8d 4e 58 9c 2d 6a 3c 16 > ATT_OP_READ_BY_TYPE_RESP: handle = 0xd15 value: 00 8a 0e 00 32 3d 35 > 06 1e 60 70 a3 8d 4e 58 9c 2d 6a 3c 16 > ATT_OP_READ_BY_TYPE_RESP: handle = 0x1015 value: 00 88 11 00 33 3d > 35 06 1e 60 70 a3 8d 4e 58 9c 2d 6a 3c 16 > ATT_OP_READ_BY_TYPE_RESP: handle = 0x1315 value: 00 9a 14 00 52 72 > 3a 71 ae 82 0c ae e0 49 1d 18 c2 b4 d8 37 > ATT_OP_READ_BY_TYPE_RESP: handle = 0x1715 value: 00 9a 18 00 36 72 > 3a 71 ae 82 0c ae e0 49 1d 18 c2 b4 d8 37 > ATT_OP_READ_BY_TYPE_RESP: handle = 0x1b15 value: 00 9a 1c 00 37 72 > 3a 71 ae 82 0c ae e0 49 1d 18 c2 b4 d8 37 > ATT_OP_READ_BY_TYPE_RESP: handle = 0x1f15 value: 00 8a 20 00 38 72 > 3a 71 ae 82 0c ae e0 49 1d 18 c2 b4 d8 37 > ATT_OP_READ_BY_TYPE_RESP: handle = 0x2215 value: 00 98 23 00 40 72 > 3a 71 ae 82 0c ae e0 49 1d 18 c2 b4 d8 37 > ATT_OP_READ_BY_TYPE_RESP: handle = 0x2615 value: 00 9a 27 00 41 72 > 3a 71 ae 82 0c ae e0 49 1d 18 c2 b4 d8 37 > ATT_OP_READ_BY_TYPE_RESP: handle = 0x2a15 value: 00 98 2b 00 42 72 > 3a 71 ae 82 0c ae e0 49 1d 18 c2 b4 d8 37 > ATT_OP_READ_BY_TYPE_RESP: handle = 0x2e15 value: 00 88 2f 00 60 72 > 3a 71 ae 82 0c ae e0 49 1d 18 c2 b4 d8 37 > ATT_OP_READ_BY_TYPE_RESP: handle = 0x3115 value: 00 88 32 00 61 72 > 3a 71 ae 82 0c ae e0 49 1d 18 c2 b4 d8 37 > ATT_OP_READ_BY_TYPE_RESP: handle = 0x3415 value: 00 12 35 00 62 72 > 3a 71 ae 82 0c ae e0 49 1d 18 c2 b4 d8 37 > ATT_OP_READ_BY_TYPE_RESP: handle = 0x3715 value: 00 8a 38 00 39 72 > 3a 71 ae 82 0c ae e0 49 1d 18 c2 b4 d8 37 > > In hcidump: > > ACL data: handle 76 flags 0x02 dlen 9 > ATT: Error (0x01) > Error: Attribute not found (10) > Read By Type req (0x08) on handle 0x0039 > > > In hcidump, the error was the attribute for handle 0x0039. How I can > respond to that request if the I did not receive the said handle? > > > Regards, > > John > > > > On Thu, Sep 13, 2012 at 1:18 PM, Anderson Lizardo > <anderson.lizardo@xxxxxxxxxxxxx> wrote: >> Hi John, >> >> On Thu, Sep 13, 2012 at 4:11 PM, John Tobias <john.tobias.ph@xxxxxxxxx> wrote: >>> Hi Anderson, >>> >>> If I add a simple GATT/GAP server on gatttool, should I still use the >>> DBUS to listen or I can communicate directly to the kernel?. >> >> You either talk to bluetoothd (using D-Bus, like those test-* python >> scripts do), which will handle connections for you, or you talk >> directly to kernel using bluetooth socket (like gatttool does). You >> have more flexibility talking to the kernel directly, but your app >> will not be interoperable with other apps running at the same time, >> specially if they try to call connect() at the same time (one of them >> will get a EBUSY error). >> >> Using D-Bus, on the other hand, bluetoothd queues the connections properly. >> >> So you should use what is more appropriate for your use case. >> >> Best Regards, >> -- >> Anderson Lizardo >> Instituto Nokia de Tecnologia - INdT >> Manaus - Brazil -- To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html