Return-Path: Message-ID: <55BA16BA.5060302@gmail.com> Date: Thu, 30 Jul 2015 14:21:14 +0200 From: Florian Grandel MIME-Version: 1.0 To: Marcel Holtmann CC: Szymon Janc , BlueZ development Subject: Re: Problems with incoming connection request on Nexus 4 References: <55B83614.8090702@gmail.com> In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed List-ID: Hi Marcel, >> Symptoms: >> - The connection request times out. >> - bt_io_accept() is being called but the accept_cb (=connect_cb) only gets called when the request times out. >> - the device is stuck in the CONNECT READY state and never reaches the CONNECTED state >> >> >> Any ideas how I could analyze/solve that problem? I'm stuck on this for many hours already... > > what does btmon actually tell you about what is going on with HCI. = New Index: 10:68:3F:56:AD:35 (BR/EDR,UNKNOWN,hci0) [hci0] 0.629837 @ Advertising Added: 1 < HCI Command: LE Set Advertising Para.. (0x08|0x0006) plen 15 [hci0] 4.398493 Min advertising interval: 1280.000 msec (0x0800) Max advertising interval: 1280.000 msec (0x0800) Type: Connectable undirected - ADV_IND (0x00) Own address type: Public (0x00) Direct address type: Public (0x00) Direct address: 00:00:00:00:00:00 (OUI 00-00-00) Channel map: 37, 38, 39 (0x07) Filter policy: Allow Scan Request from Any, Allow Connect Request from Any (0x00) > HCI Event: Command Complete (0x0e) plen 4 [hci0] 4.401392 LE Set Advertising Parameters (0x08|0x0006) ncmd 1 Status: Success (0x00) < HCI Command: LE Set Advertise Enable (0x08|0x000a) plen 1 [hci0] 4.401484 Advertising: Enabled (0x01) > HCI Event: Command Complete (0x0e) plen 4 [hci0] 4.402277 LE Set Advertise Enable (0x08|0x000a) ncmd 1 Status: Success (0x00) There is no connection related HCI activity going on at all on the Nexus 4 side. You can see from the debug logs that I sent before, that the connection is being initiated correctly. The bt_io_accept() call does return without error, just the accept callback never gets called. To me it seems as if the Nexus4 was not responding to the incoming connect request. > Remember that a connection disables advertising in the controller. The advertising being aborted on connect is not a problem. The advertising part works flawlessly. Connecting Florian