CC33XX-SOFTWARE: CC33XX BLE Connection Fails with Reason 1 After Short Success

Part Number: CC33XX-SOFTWARE

Tool/software:

Hello,

I’ve successfully integrated the CC33XX Linux driver (v1.0.0.8) into my Yocto (Scarthgap) image. BLE scanning works fine, and I can find nearby devices using bluetoothctl.
However, when I try to connect to a BLE device, the connection succeeds momentarily but then disconnects shortly after with reason 1.

Procedure:

1- cd /usr/share/cc33xx
2- ./ap_start.sh
3- ./ ble_enble.sh
4- hciconfig hci0 up
none of them fails and then using bluetoothctl I scan for available devices then try to connect to one of them.

LOG from bluetoothctl:

Fullscreen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
[bluetooth]# connect D0:2E:AB:96:8B:65
Attempting to connect to D0:2E:AB:96:8B:65
hci0 D0:2E:AB:96:8B:65 type LE Public connected eir_len 15
[CHG] Device D0:2E:AB:96:8B:65 Connected: yes
Connection successful
[CHG] Device D0:2E:AB:96:8B:65 ServicesResolved: yes
[T115i SN:46775741]# info D0:2E:AB:96:8B:65
Device D0:2E:AB:96:8B:65 (public)
Name: T115i SN:46775741
Alias: T115i SN:46775741
Paired: no
Bonded: no
Trusted: no
Blocked: no
Connected: yes
LegacyPairing: no
UUID: Generic Access Profile (00001800-0000-1000-8000-00805f9b34fb)
UUID: Generic Attribute Profile (00001801-0000-1000-8000-00805f9b34fb)
UUID: Device Information (0000180a-0000-1000-8000-00805f9b34fb)
UUID: Unknown (00005a90-0000-1000-8000-00805f9b34fb)
UUID: Unknown (0000fff0-0000-1000-8000-00805f9b34fb)
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX


Any idea why the connection fails after short time?

Update:
the btmon-log shows that the remote sends a req. to update connection parameters and it gets rejected by the agent/kernel.

Fullscreen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
bluetoothd[3840]: < ACL Data TX: Handl.. flags 0x00 dlen 7 #65 [hci0] 7.031683
ATT: Read Request (0x0a) len 2
Handle: 0x0027 Type: PnP ID (0x2a50)
> ACL Data RX: Handle 3584 flags 0x02 dlen 16 #66 [hci0] 7.100355
LE L2CAP: Connection Parameter Update Request (0x12) ident 1 len 8
Min interval: 32
Max interval: 80
Peripheral latency: 0
Timeout multiplier: 400
< ACL Data TX: Handle 3584 flags 0x00 dlen 10 #67 [hci0] 7.100409
LE L2CAP: Connection Parameter Update Response (0x13) ident 1 len 2
Result: Connection Parameters rejected (0x0001)
> HCI Event: Number of Completed Packets (0x13) plen 5 #68 [hci0] 7.167702
Num handles: 1
Handle: 3584 Address: D0:2E:AB:96:8B:65 (Texas Instruments)
Count: 1
#65: len 7 (0 Kb/s)
Latency: 136 msec (50-136 msec ~109 msec)
> ACL Data RX: Handle 3584 flags 0x02 dlen 12 #69 [hci0] 7.211792
ATT: Read Response (0x0b) len 7
> HCI Event: Number of Completed Packets (0x13) plen 5 #70 [hci0] 7.253243
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX


  • Hi,

    I have a couple of ideas that could be happening here.

    First if you are trying to connect to a phone you will need to have the resolving list on this can be done by calling

    hcitool lerlon

    Another thing could be if this device has connected before, it could have been previously bonded but the key was not saved.

    What agent mode are you using in bluetoothctl?

    Best,

    Rogelio