Announcements
IMPORTANT: Cypress Developer Community is transitioning on October 20th. To learn more and be prepared for this change, check out our latest announcement.
cancel
Showing results for 
Search instead for 
Did you mean: 

WICED Smart Bluetooth

Anonymous
Not applicable

Sometimes, when the master and the slave try to connect, it fails and the message I saw is "ConnTimer stopped"

14:13:49   ConnTimer stopped: 2

14:13:49   BLE_low_conn:timer(0)

What is this timer about and how to configure it?

0 Likes
15 Replies
BoonT_56
Employee

I don't think "ConnTimer" is something that you can configure. You may probably want to focus on why your devices failed to connect instead.

Anonymous
Not applicable

What is the value of ConnTimer then?

I sometimes got the error continuously and sometimes I did not get the error under the same setup.  See below I got 6 timeout within 4 seconds.  This is connection for one slave.  Any idea why this could happen sometimes?  How to troubleshooting this?  Thank you.

16:26:05   ConnTimer stopped: 2

16:26:05   BLE_low_conn:timer(0)

16:26:06   ConnTimer stopped: 2

16:26:06   BLE_low_conn:timer(0)

16:26:06   ConnTimer stopped: 2

16:26:06   BLE_low_conn:timer(0)

16:26:07   ConnTimer stopped: 2

16:26:07   BLE_low_conn:timer(0)

16:26:07   ConnTimer stopped: 2

16:26:07   BLE_low_conn:timer(0)

16:26:08   ConnTimer stopped: 2

16:26:08   BLE_low_conn:timer(0)

0 Likes
JacobT_81
Employee

1. Try increasing both high_scan_duration and low_scan_duration and let me know if that works. May be creating a loop of killing the connection while it's trying to start if the duration is too low.

2. You say this is for a single slave, yet your traces show multiple connection timers running. I don't believe this should be happening.

Reference hello_client.c in the connection down function. Ensure that you are properly dealing with dead connections. Specifically:

pastedImage_4.png

Jacob

Anonymous
Not applicable

The scan interval is set to maximum about 10 sec and the scan duration is about 3600 sec, but it's still the same.

Also, I used "blecm_startScan".

The slave sends out beacons every 500 ms.

Here is a log shows when the master node receive the beacons

18:53:52 - Advertisement report: receive beacon, try to connect

18:53:52 -

18:53:52   ConnTimer stopped: 2

18:53:52   BLE_low_conn:timer(0)

18:53:53 - Advertisement report:  receive beacon, try to connect

18:53:54 -

18:53:54   ConnTimer stopped: 2

18:53:54   BLE_low_conn:timer(0)

18:53:55 - Advertisement report: receive beacon, try to connect

18:53:56 -

18:53:56   ConnTimer stopped: 2

18:53:56   BLE_low_conn:timer(0)

0 Likes
chihL_61
Employee

Hi hlee

Have you tried the below items? , because you mention the scan interval/

blecen_cen_cfg.high_scan_duration       = 30;

blecen_cen_cfg.low_scan_duration        = 300;      // seconds

Anonymous
Not applicable

My understand is that "blecm_startScan" does not use "duration" since it will keep running.

Nevertheless, my duration is set to very long seconds so they should have no impact.  (Consider my problem is within few seconds)

blecen_cen_cfg.high_scan_duration       = 3600;

blecen_cen_cfg.low_scan_duration        = 3600;      // seconds

Also, I used sniffer and found that the master does NOT send out connection requests when blecen_Conn(LOW_CONN, evt->wd_addr, evt->addressType) was called.  It should be the reason we saw the error:

18:53:52   ConnTimer stopped: 2

18:53:52   BLE_low_conn:timer(0)

Is it possible to trace why the master does not send out connection request?

0 Likes
JacobT_81
Employee

Can you post a snip of code that will allow us to emulate? (or email to community-manager@cypress.com)

You only show failures with LOW_CONN parameters. Does the same thing happen with your HIGH_CONN parameters?

Jacob

0 Likes
chihL_61
Employee

There are several conditions be checked under the blecen_Conn, the connection will be processed until  all the check be passed.

Could you give me the parameters used on BLE connection?

blecen_cen_cfg.high_scan_interval,

blecen_cen_cfg.high_scan_window,

blecen_cen_cfg.init_filter_policy,

peer_addr_type,

(char *)peer_addr,

blecen_cen_cfg.init_addr_type,

blecen_cen_cfg.high_conn_min_interval,

blecen_cen_cfg.high_conn_max_interval,

blecen_cen_cfg.high_conn_latency,

blecen_cen_cfg.high_supervision_timeout,

blecen_cen_cfg.conn_min_event_len,

blecen_cen_cfg.conn_max_event_len

Anonymous
Not applicable

Sure, here is the parameters:

blecen_Conn(LOW_CONN, evt->wd_addr, evt->addressType);

blecen_cen_cfg.high_scan_interval = 16000

blecen_cen_cfg.high_scan_window = 16000

blecen_cen_cfg.init_filter_policy = HCIULP_INITIATOR_FILTER_POLICY_WHITE_LIST_NOT_USED

peer_addr_type

(char *)peer_addr

blecen_cen_cfg.init_addr_type = HCIULP_PUBLIC_ADDRESS

blecen_cen_cfg.high_conn_min_interval = 300

blecen_cen_cfg.high_conn_max_interval = 300

blecen_cen_cfg.high_conn_latency = 0

blecen_cen_cfg.high_supervision_timeout = 500

blecen_cen_cfg.conn_min_event_len = 0

blecen_cen_cfg.conn_max_event_len = 0

0 Likes
chihL_61
Employee

1. Please add this library to WICED-Smart-SDK\Wiced-Smart\tier2\brcm\libraries\lib\20737(20736)

2. Edit makefile (APP_PATCHES_AND_LIBS += debug_hciulp_HandleCreateLLConection.a)

3. Clean build

4. Feedback the client message once timeout.

One of the below messages should be sent out if the LL connection be rejected.

log("\r command disallowed :\n");

||
log("\r invalid hci command parameters:\n");

||

log("\r acl connection already exists:\n");

||

log("\r connection limit exceeded :\n");

0 Likes
Anonymous
Not applicable

chihwen.lu

I do not see the exact error message you mentioned, but only see _hciulp_HandleCreateLLConection and then see ConnTimer stopped: 2

Is it correct?

14:16:05 - Advertisement report: connecting to slave1

14:16:05 - blecm evt handler:

14:16:05 - 0e04010e2000

14:16:05 -

14:16:05 - bl

14:16:05 -  _hciulp_HandleCreateLLConection:

14:16:05 -

14:16:05 - ecm evt handler:

14:16:05 - 3e13010241000000b19b187a73202c01

14:16:05 - 0000f40105

14:16:05 -

14:16:05 - blecm evt handler:

14:16:05 - 0f0400010d20

14:16:05   ConnTimer stopped: 2

14:16:05   BLE_low_conn:timer(0)

14:16:05 -

14:16:05 - blecm evt handler:

14:16:05 - 3e280201030172396bcacd721c030935

14:16:05 - 5805ff000001011107ef48a23217c6a6

14:16:05 - bcfa44547c0d9003dcba

14:16:05 -

14:16:05 - blecm evt handler:

14:16:05 - 3e280201030172396bcacd721c030935

14:16:05 - 5805ff000001011107ef48a23217c6a6

14:16:05 - bcfa44547c0d9003dcba

14:16:05 -

14:16:05 - blecm evt handler:

14:16:05 - 3e1b0201000061ed9ac01a1c0f02011a

14:16:05 - 0bff4c0009060340c0a801b29c

14:16:05 -

14:16:05 - blecm evt handler:

14:16:05 - 3e2b02010000b19b187a73201f020105

14:16:05 - 0209501107ab48a23217c6a6bcfa4454

14:16:06 - 7c0d9003dc06ff00000105cdb9

14:16:06 - blecm evt handler:

14:16:06 - 3e280201030172396bcacd721c030935

14:16:06 - 5805ff000001011107ef48a23217c6a6

14:16:06 - bcfa44547c0d9003dcba

14:16:06 -

14:16:06 - blecm evt handler:

14:16:06 - 0e04010c2000

14:16:06 -

14:16:06 - blecm evt handler:

14:16:06 - 0e04010b2000

14:16:06 -

14:16:06 - blecm evt handler:

14:16:06 - 0e04010c2000

14:16:06 -

14:16:06 - blecm evt handler:

14:16:06 - 3e1b0201000061ed9ac01a1c0f02011a

14:16:06 - 0bff4c0009060340c0a801b29c

14:16:06 -

14:16:06 - blecm evt handler:

14:16:06 - 3e280201030172396bcacd721c030935

14:16:06 - 5805ff000001011107ef48a23217c6a6

14:16:06 - bcfa44547c0d9003dcba

14:16:06 -

14:16:06 - blecm evt handler:

14:16:06 - 3e2b02010000b19b187a73201f020105

14:16:06 - 0209501107ab48a23217c6a6bcfa4454

14:16:06 - 7c0d9003dc06ff00000105cdbd

14:16:06 - blecm evt handler:

14:16:06 - 3e280201030172396bcacd721c030935

14:16:06 - 5805ff000001011107ef48a23217c6a6

14:16:06 - bcfa44547c0d9003dcba

14:16:06 -

14:16:06 - blecm evt handler:

14:16:06 - 3e280201030172396bcacd721c030935

14:16:06 - 5805ff000001011107ef48a23217c6a6

14:16:06 - bcfa44547c0d9003dcba

14:16:07 -

14:16:07 - blecm evt handler:

14:16:07 - 3e2b02010000b19b187a73201f020105

14:16:07 - 0209501107ab48a23217c6a6bcfa4454

14:16:07 - 7c0d9003dc06ff00000105cdbc

14:16:07 - Advertisement report: connecting to slave1

0 Likes
Anonymous
Not applicable

Hi chihwen.lu

I would appreciate your input.  I followed your suggestion and did not see any error message that you mentioned.  Is it possible that I missed some steps?   Thank you.

0 Likes
chihL_61
Employee

Hi hlee

Below was the hci event detail show by your log, i am trying to figure out the cause. Could you help me to do more tests and check the event(connection complete event), are they the same?

14:16:05 - ecm evt handler:

14:16:05 - 3e 13 01 02 4100 00 00 b19b187a7320 2c01

14:16:05 - 0000 f401 05

LE event code:0x3E

length:0x13

Subevent_Code:0x01 LE Connection Complete Event

Status:0x02 --> The Unknown Connection Identifier error code indicates that a command was

                sent from the Host that should identify a connection, but that connection does

                not exist.

Connection_Handle:0x4100

Role:0x00 master

Peer_Address_Type:0x00 Public Device Address

Peer_Address: b19b187a7320

Conn_Interval: 0x2c01

Conn_Latency:  0x0000

Supervision_Timeout: 0xf401

Master_Clock_Accuracy: 0x05

0 Likes
Anonymous
Not applicable

chihwen.lu

Here is one example that the slave and the master connected.

15:53:54 - blecm evt handler:

15:53:54 - 3e260201000194cd04ec87791a02011a

15:53:54 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:54 - 03dc0409010102d6

15:53:54 -

15:53:54 -  permission check retCode = 00

15:53:54 -

15:53:54 - blecm evt handler:

15:53:54 - 3e2602010000b29b187a73201a020105

15:53:54 - 04090205161107ab48a23217c6a6bcfa

15:53:54 - 44547c0d9003dcd5

15:53:54 - Advertisement report: connect to slave

15:53:54 -

15:53:54 -

15:53:54 - blecm evt handler:

15:53:54 - 3e260201000194cd04ec87791a02011a

15:53:54 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:54 - 03dc0409010102d5

15:53:54 -

15:53:54 -  _hciulp_HandleCreateLLConection:

15:53:54 -

15:53:54 -  permission check retCode = 00

15:53:54 -

15:53:54 - blecm evt handler:

15:53:54 - 0e04010e2000

15:53:54 -

15:53:54 - blecm evt handler:

15:53:54 - 3e13010240000000b29b187a73202c01

15:53:54 - 0000f40105

15:53:54 -

15:53:54 - blecm evt handler:

15:53:54 - 3e260201000194cd04ec87791a02011a

15:53:54 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:54 - 03dc0409010102d6

15:53:54 -

15:53:54 -  permission check retCode = 00

15:53:54 -

15:53:54 - blecm evt handler:

15:53:54 - 0f0400010d20

15:53:54   ConnTimer stopped: 2

15:53:54   BLE_low_conn:timer(0)

15:53:54 -

15:53:54 - blecm evt handler:

15:53:54 - 3e260201000194cd04ec87791a02011a

15:53:54 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:54 - 03dc0409010102d6

15:53:54 -

15:53:54 -  permission check retCode = 00

15:53:54 -

15:53:54 - blecm evt handler:

15:53:54 - 3e260201000194cd04ec87791a02011a

15:53:54 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:54 - 03dc0409010102d6

15:53:54 -

15:53:54 -  permission check retCode = 00

15:53:54 -

15:53:54 - blecm evt handler:

15:53:54 - 0e04010c2000

15:53:54 -

15:53:54 - blecm evt handler:

15:53:54 - 0e04010b2000

15:53:54 -

15:53:54 - blecm evt handler:

15:53:54 - 0e04010c2000

15:53:54 -

15:53:54 - blecm evt handler:

15:53:54 - 3e260201000194cd04ec87791a02011a

15:53:54 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:54 - 03dc0409010102d6

15:53:54 -

15:53:54 -  permission check retCode = 00

15:53:54 -

15:53:54 - blecm evt handler:

15:53:54 - 3e260201000194cd04ec87791a02011a

15:53:54 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:54 - 03dc0409010102d6

15:53:54 -

15:53:54 -  permission check retCode = 00

15:53:54 -

15:53:54 - blecm evt handler:

15:53:54 - 3e1b0201000061ed9ac01a1c0f02011a

15:53:54 - 0bff4c000906034ac0a801b2a3

15:53:54 -

15:53:54 - blecm evt handler:

15:53:54 - 3e260201000194cd04ec87791a02011a

15:53:54 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:54 - 03dc0409010102d6

15:53:54 -

15:53:54 -  permission check retCode = 00

15:53:54 -

15:53:54 - blecm evt handler:

15:53:55 - 3e260201000194cd04ec87791a02011a

15:53:55 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:55 - 03dc0409010102d6

15:53:55 -

15:53:55 -  permission check retCode = 00

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 3e260201000194cd04ec87791a02011a

15:53:55 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:55 - 03dc0409010102d6

15:53:55 -

15:53:55 -  permission check retCode = 00

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 3e2102010000087adb1fdf0815020102

15:53:55 - 0303befe0dff1001400c01413c15c2da

15:53:55 - 02a79b

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 3e260201000194cd04ec87791a02011a

15:53:55 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:55 - 03dc0409010102d6

15:53:55 -

15:53:55 -  permission check retCode = 00

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 3e1b0201000061ed9ac01a1c0f02011a

15:53:55 - 0bff4c000906034ac0a801b2a4

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 3e260201000194cd04ec87791a02011a

15:53:55 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:55 - 03dc0409010102d6

15:53:55 -

15:53:55 -  permission check retCode = 00

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 3e260201000194cd04ec87791a02011a

15:53:55 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:55 - 03dc0409010102d6

15:53:55 -

15:53:55 -  permission check retCode = 00

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 3e260201000194cd04ec87791a02011a

15:53:55 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:55 - 03dc0409010102d6

15:53:55 -

15:53:55 -  permission check retCode = 00

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 3e260201000194cd04ec87791a02011a

15:53:55 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:55 - 03dc0409010102d6

15:53:55 -

15:53:55 -  permission check retCode = 00

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 3e260201000194cd04ec87791a02011a

15:53:55 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:55 - 03dc0409010102d6

15:53:55 -

15:53:55 -  permission check retCode = 00

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 3e260201000194cd04ec87791a02011a

15:53:55 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:55 - 03dc0409010102d6

15:53:55 -

15:53:55 -  permission check retCode = 00

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 3e260201000194cd04ec87791a02011a

15:53:55 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:55 - 03dc0409010102d6

15:53:55 -

15:53:55 -  permission check retCode = 00

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 3e260201000194cd04ec87791a02011a

15:53:55 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:55 - 03dc0409010102d6

15:53:55 -

15:53:55 -  permission check retCode = 00

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 3e260201000194cd04ec87791a02011a

15:53:55 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:55 - 03dc0409010102d5

15:53:55 -

15:53:55 -  permission check retCode = 00

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 3e260201000194cd04ec87791a02011a

15:53:55 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:55 - 03dc0409010102d6

15:53:55 -

15:53:55 -  permission check retCode = 00

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 3e1b0201000061ed9ac01a1c0f02011a

15:53:55 - 0bff4c000906034ac0a801b2a3

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 3e260201000194cd04ec87791a02011a

15:53:55 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:55 - 03dc0409010102d6

15:53:55 -

15:53:55 -  permission check retCode = 00

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 3e260201000194cd04ec87791a02011a

15:53:55 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:55 - 03dc0409010102d5

15:53:55 -

15:53:55 -  permission check retCode = 00

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 3e260201000194cd04ec87791a02011a

15:53:55 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:55 - 03dc0409010102d5

15:53:55 -

15:53:55 -  permission check retCode = 00

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 3e13010040000000b29b187a73202c01

15:53:55 - 0000f40105

15:53:55 - GetBondedInfoIdx returns 0 meaning no bonded info

15:53:55 -

15:53:55 - Load Dev Info:

15:53:55 - b29b187a7320

15:53:55 -  idx = -1

15:53:55 -

15:53:55 - No Bonded Info

15:53:55 - connection_up handle:40 role:0 num_of_slaves:1

15:53:55 - Tx buffer = 15

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 3e260201000194cd04ec87791a02011a

15:53:55 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:55 - 03dc0409010102d5

15:53:55 -

15:53:55 -  permission check retCode = 00

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 0e04010a2000

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 3e260201000194cd04ec87791a02011a

15:53:55 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:55 - 03dc0409010102d5

15:53:55 -

15:53:55 -  permission check retCode = 00

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 0e0401062000

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 3e1b0201000061ed9ac01a1c0f02011a

15:53:55 - 0bff4c000906034ac0a801b2a4

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 0e04010a2000

15:53:55 -

15:53:55 - blecm evt handler:

15:53:55 - 3e260201000194cd04ec87791a02011a

15:53:55 - 1107ef48a23217c6a6bcfa44547c0d90

15:53:55 - 03dc0409010102d5

15:53:56 -

15:53:56 -  permission check retCode = 00

15:53:56 -

15:53:56 - l2cap Rx:

15:53:56 - 40200900050004005237000031

15:53:56 -

15:53:56 - write cmd

15:53:56 -

15:53:56 - Checking readable attribute 0037

15:53:56 -

15:53:56 -  permission check retCode = 00

15:53:56 -

15:53:56 -  permission check retCode = 00

0 Likes
Anonymous
Not applicable

chihwen.lu​  do you need more info?   it's really strange the master stops the connection establishment without giving the reason.

0 Likes