6 posts / 0 new
Last post
Kazuyori Miyamoto
Offline
Last seen:6 years 2 months ago
加入:2014-06-03 08:38
Connect failure

Hello, dialog

We ported to another MCU based on DA14580_SDK_3.0.4.0_0/DA14580_SDK_3.0.4.0/host_apps/da14580/proximity/reporter.
Then we tried to connect with central booted by the Connection Manager.
Discovery of Characteristics was not made, and then lost connection.

We can be caught Adverising by the Scan, but can't be connected.
Compared with the based software, Behavior during "Establish Link" is different.
We have checked to be the same command until sending PROXR_ENABLE_REQ of HCI layer of da14580 between Host MCU.

For this different result, We have no idea.
Please let us know if there is a point to be checked.

Best Regards,

Kazuyori Miyamoto
Offline
Last seen:6 years 2 months ago
加入:2014-06-03 08:38
Hello, dialog

Hello, dialog

I rewrite my question.

System A:
Our host MCU - da14580
System B:
da14580 - da14580
System X:
PC(Connection Manager) - da14580

I ported the firmware based on DA14580_SDK_3.0.4.0_0/DA14580_SDK_3.0.4.0/host_apps/da14580/proximity/reporter to another MCU(not Cortex-M0).
And I tried to connect Sytem A with Sytem X.
System X has da14580 that Central role program was implemented by using Connection Manager.

System X caught Adverising from System A when the Scan buttom was pressed on the Connection Manager.
Then, I pushed Establish Link buttom on the Connection Manager, and lost connection.
I confirmed the Log of System A and System X. It seems that System X did not discover characteristics.
The following is the log around disconnect.
---------------- Log of Our host MCU in Sytem A -----------------
[RX]
Type = 0x040F(LLC_RD_TX_PW_LVL_CMP_EVT)
Dstid = 0x003F(TASK_GTL)
Srcid = 0x0001(TASK_LLC)
Length = 0x0006
Data = 0x00 0x00 0x00 0x00 0x00 0x00
[TX]
Type = 0x4000(PROXR_ENABLE_REQ)
Dstid = 0x0010(TASK_PROXR)
Srcid = 0x003F(TASK_GTL)
Length = 0x0006
Data = 0x00 0x00 0x01 0x02 0x00 0x00
[RX]
Type = 0x3803(GAPC_DISCONNECT_IND)
Dstid = 0x003F(TASK_GTL)
Srcid = 0x000E(TASK_GAPC)
Length = 0x0004
Data = 0x00 0x00 0x3E 0x00
-----------------------------------------------------------------

——连接人的日志ager in Sytem X with System A --------
====> [16:22:40.266] Tx <====
Src Task : 0x3f (TASK_APP)
Dst Task : 0xc (TASK_GATTC)
Msg Id : 0x3002 (GATTC_DISC_CMD)
Con Hdl : 0x0
Req Type : 0x5 (GATTC_DISC_ALL_CHAR)
Start Hdl : 0x1
End Hdl : 0xfffe
Payload : 02 30 0c 00 3f 00 17 00 05 10 01 00 fe ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

====> [16:22:41.015] Rx <====
Src Task : 0xe (TASK_GAP)
Dst Task : 0x3f (TASK_APP)
Msg Id : 0x3803 (GAPC_DISCONNECT_IND)
Con Hdl : 0x0
Reason : 0x3e
Payload : 03 38 3f 00 0e 00 04 00 00 00 3e 00
-----------------------------------------------------------------

I confirmed that System B connected with System X correctly.
The following is the log at the same point as above.
---------------- Log of da14580 in Sytem B ----------------------
[RX]
Type = 0x040F(LLC_RD_TX_PW_LVL_CMP_EVT)
Dstid = 0x003F(TASK_GTL)
Srcid = 0x0001(TASK_LLC)
Length = 0x0006
Data = 0x00 0x00 0x00 0x00 0x00 0x00
[TX]
Type = 0x4000(PROXR_ENABLE_REQ)
Dstid = 0x0010(TASK_PROXR)
Srcid = 0x003F(TASK_GTL)
Length = 0x0006
Data = 0x00 0x00 0x01 0x02 0x00 0x00
-----------------------------------------------------------------

——连接人的日志ager in System X with System B -------
====> [18:10:13.672] Tx <====
Src Task : 0x3f (TASK_APP)
Dst Task : 0xc (TASK_GATTC)
Msg Id : 0x3002 (GATTC_DISC_CMD)
Con Hdl : 0x0
Req Type : 0x5 (GATTC_DISC_ALL_CHAR)
Start Hdl : 0x1
End Hdl : 0xfffe
Payload : 02 30 0c 00 3f 00 17 00 05 10 01 00 fe ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

====> [18:10:13.942] Rx <====
Src Task : 0xc (TASK_GATTC)
Dst Task : 0x3f (TASK_APP)
Msg Id : 0x3005 (GATTC_DISC_CHAR_IND)
Attr Hdl: 0 x2
Pntr Hdl : 0x3
Prop : 0x2
UUID length : 0x2
UUID : 00 2a
Payload : 05 30 3f 00 0c 00 08 00 02 00 03 00 02 02 00 2a

(note : be continued recieving GATTC_DISC_CHAR_IND)
-----------------------------------------------------------------

I am having trouble because I haven't gotten reply from you.
Please let me know if there is a point to be checked as soon as possible.

Best Regards,

Gotok (not verified)
Dear Miyamoto-san,

Dear Miyamoto-san,

I informed our BTLE Support.
I will inform you when I will get answeer.

Best Regards,
Katsuya Goto

WT_Dialog
Offline
Last seen:3 years 2 months ago
Staff
加入:2013-12-05 14:43
Hi Miyamoto-san,

Hi Miyamoto-san,

I have received quite some information from our local team.

I have read through your message sequence. The disconnection happens when the peer device is trying to find the characteristics.

It is not very clear to me how this could happen. I suspect the database operation was not correctly done. I would start with extra questions:

1. Is the profile still running on DA14580?

2. Do you have a air sniffer (e.g. frontlinehttp://www.fte.com/) to captuer the reason of disconnection? Is it because of time out or termination?

3. If you do not discover the characteristic, would the connection be dropped?

sabasit
Offline
Last seen:9 months 4 weeks ago
Expert
加入:2014-10-14 14:20
Hi Miyamoto-san,

Hi Miyamoto-san,

Have you got the solution of your problem. I am facing same problem as you were. can you help me to resolve it?

thanks,
Basit

Gotok (not verified)
Hi everyone,

Hi everyone,

This issue was solved.

Best Regards,
Katsuya