为什么 LE 设备在 HCI 上自动连接?

Why is LE device connected automatically on HCI up?

每当我点击 hciconfig hci0 up noscan,然后在几秒钟后点击 hcitool con,我的 LE 设备总是会自动连接。

> hciconfig hci0
hci0:   Type: BR/EDR  Bus: USB
    BD Address: YY:YY:YY:YY:YY:YY  ACL MTU: 310:10  SCO MTU: 64:8
    DOWN
    RX bytes:494922 acl:12605 sco:0 events:8429 errors:0
    TX bytes:63543 acl:917 sco:0 commands:3692 errors:0
> hciconfig hci0 up

... (wait a few seconds)

> hcitool con
Connections:
    < LE XX:XX:XX:XX:XX:XX handle 70 state 1 lm MASTER AUTH ENCRYPT

本来以为只有白名单里的设备会自动连接,结果输入以下命令才发现设备不在白名单里

> hcitool lewlrm XX:XX:XX:XX:XX:XX
Can't remove from white list: Input/output error(5)

问题:

为什么我的设备不在白名单中会自动连接?

环境:

内核版本:Linux 4.11.1
Bluez 版本:5.37

我的解决办法是用bluetoothctldisconnectremove

> bluetoothctl
[bluetooth] > disconnect XX:XX:XX:XX:XX:XX
[bluetooth] > remove XX:XX:XX:XX:XX:XX