我正在开发基于linux3.14上bluez5.37的蓝牙设备。但是我最近遇到了一个问题。问题是,当我手动断开连接后从设备重新连接iPhone时,有时会出现“ acl连接已存在”的错误,这将导致我在大约20到30秒钟内无法连接到iPhone。以下是HCI日志。
< ACL Data TX: Handle 1 flags 0x00 dlen 12 13:00:31.348207
L2CAP: Disconnection Request (0x06) ident 15 len 4
Destination CID: 57866
Source CID: 67
< ACL Data TX: Handle 1 flags 0x00 dlen 12 13:00:31.350325
L2CAP: Disconnection Request (0x06) ident 16 len 4
Destination CID: 57609
Source CID: 66
< ACL Data TX: Handle 1 flags 0x00 dlen 7 13:00:31.420332
Channel: 56840 len 3 [PSM 25 mode 0] {chan 1}
AVDTP: Close (0x08) Command (0x00) type 0x00 label 7 nosp 0
ACP SEID: 1
> HCI Event: Number of Completed Packets (0x13) plen 5 13:00:31.455746
Num handles: 1
Handle: 1
Count: 2
> ACL Data RX: Handle 1 flags 0x02 dlen 12 13:00:31.455757
L2CAP: Disconnection Response (0x07) ident 15 len 4
Destination CID: 57866
Source CID: 67
> ACL Data RX: Handle 1 flags 0x02 dlen 12 13:00:31.455759
L2CAP: Disconnection Response (0x07) ident 16 len 4
Destination CID: 57609
Source CID: 66
> HCI Event: Number of Completed Packets (0x13) plen 5 13:00:31.456883
Num handles: 1
Handle: 1
Count: 1
> ACL Data RX: Handle 1 flags 0x02 dlen 6 13:00:31.529352
Channel: 65 len 2 [PSM 25 mode 0] {chan 1}
AVDTP: Close (0x08) Response Accept (0x02) type 0x00 label 7 nosp 0
< ACL Data TX: Handle 1 flags 0x00 dlen 12 13:00:31.530186
L2CAP: Disconnection Request (0x06) ident 17 len 4
Destination CID: 57351
Source CID: 64
> ACL Data RX: Handle 1 flags 0x02 dlen 12 13:00:31.677224
L2CAP: Disconnection Response (0x07) ident 17 len 4
Destination CID: 57351
Source CID: 64
> HCI Event: Number of Completed Packets (0x13) plen 5 13:00:31.678608
Num handles: 1
Handle: 1
Count: 1
< ACL Data TX: Handle 1 flags 0x00 dlen 12 13:00:33.042869
L2CAP: Disconnection Request (0x06) ident 18 len 4
Destination CID: 56840
Source CID: 65
> HCI Event: Number of Completed Packets (0x13) plen 5 13:00:33.123297
Num handles: 1
Handle: 1
Count: 1
> HCI Event: Link Supervision Timeout Changed (0x38) plen 4 13:00:33.195809
Handle: 1
Timeout: 20000.000 msec (0x7d00)
> ACL Data RX: Handle 1 flags 0x02 dlen 12 13:00:33.197025
L2CAP: Disconnection Response (0x07) ident 18 len 4
Destination CID: 56840
Source CID: 65
< HCI Command: Disconnect (0x01|0x0006) plen 3 13:00:34.041874
Handle: 1
Reason: Remote User Terminated Connection (0x13)
> HCI Event: Command Status (0x0f) plen 4 13:00:34.050356
Disconnect (0x01|0x0006) ncmd 1
Status: Success (0x00)
> HCI Event: Disconnect Complete (0x05) plen 4 13:00:34.120562
Status: Success (0x00)
Handle: 1
Reason: Connection Terminated By Local Host (0x16)
@ Device Disconnected: 28:F0:76:F0:3B:3F (0) reason 2
< HCI Command: Create Connection (0x01|0x0005) plen 13 13:00:35.647186
Address: 28:F0:76:F0:3B:3F (Apple, Inc.)
Packet type: 0xcc18
DM1 may be used
DH1 may be used
DM3 may be used
DH3 may be used
DM5 may be used
DH5 may be used
Page scan repetition mode: R1 (0x01)
Page scan mode: Mandatory (0x00)
Clock offset: 0xa75a
Role switch: Allow slave (0x01)
> HCI Event: Command Status (0x0f) plen 4 13:00:35.655129
Create Connection (0x01|0x0005) ncmd 1
Status: Success (0x00)
> HCI Event: Connect Complete (0x03) plen 11 13:00:36.987592
Status: ACL Connection Already Exists (0x0b)
Handle: 1
Address: 28:F0:76:F0:3B:3F (Apple, Inc.)
Link type: ACL (0x01)
Encryption: Disabled (0x00)
@ Connect Failed: 28:F0:76:F0:3B:3F (0) status 0x09
这个问题使我困惑了好几个星期了,到目前为止没有任何进展。谁能提供一些建议。谢谢。
PS:cpu是IMX6,而蓝牙芯片是ti wl1837