Невозможно включить Bluetooth на Tinkerboard (Armbian)
У меня есть устройство ASUS Tinker Board. Он работает под управлением Armbian (Ubuntu 20.04.3 LTS/5.10.60).
$ uname -a
Linux tinkerboard 5.10.60-rockchip #21.08.1 SMP PREEMPT Wed Aug 25 19:43:43 UTC 2021 armv7l armv7l armv7l GNU/Linux
Устройство подключено к аудиоресиверу через кабель HDMI.
Короче говоря, я пытаюсь передать звук со своего телефона на аудиоприемник через Tinker Board через Bluetooth, но не могу подключить телефон к Tinkerboard.
Я попытался открыть настройки Bluetooth (Меню->Настройки->Адаптеры Bluetooth). Ничего не произошло. Окно появляется и сразу закрывается.
# blueman-adapters
blueman-adapters 01.01.50 ERROR Adapter:53 __init__ : No adapter(s) found
# bluetoothctl devices
No default controller available
# dmesg | grep -i blue
[ 1.249497] Bluetooth: Core ver 2.22
[ 1.249597] Bluetooth: HCI device and connection manager initialized
[ 1.249618] Bluetooth: HCI socket layer initialized
[ 1.249637] Bluetooth: L2CAP socket layer initialized
[ 1.249675] Bluetooth: SCO socket layer initialized
[ 4.461374] Bluetooth: HCI UART driver ver 2.3
[ 4.461391] Bluetooth: HCI UART protocol H4 registered
[ 4.461403] Bluetooth: HCI UART protocol ATH3K registered
[ 4.461456] Bluetooth: HCI UART protocol Three-wire (H5) registered
[ 4.477617] Bluetooth: RFCOMM socket layer initialized
[ 4.477661] Bluetooth: RFCOMM ver 1.11
[ 4.477691] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[ 4.477713] Bluetooth: HIDP socket layer initialized
# service bluetooth status
● bluetooth.service - Bluetooth service
Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2022-01-12 00:33:19 CET; 51min ago
Docs: man:bluetoothd(8)
Main PID: 963 (bluetoothd)
Status: "Running"
Tasks: 1 (limit: 4739)
Memory: 1.0M
CGroup: /system.slice/bluetooth.service
└─963 /usr/lib/bluetooth/bluetoothd
Jan 12 00:33:19 tinkerboard systemd[1]: Starting Bluetooth service...
Jan 12 00:33:19 tinkerboard bluetoothd[963]: Bluetooth daemon 5.53
Jan 12 00:33:19 tinkerboard systemd[1]: Started Bluetooth service.
Jan 12 00:33:19 tinkerboard bluetoothd[963]: Starting SDP server
Jan 12 00:33:19 tinkerboard bluetoothd[963]: kernel lacks bnep-protocol support
Jan 12 00:33:19 tinkerboard bluetoothd[963]: System does not support network plugin
Jan 12 00:33:19 tinkerboard bluetoothd[963]: Bluetooth management interface 1.18 initialized
# hcitool dev
Devices:
# rfkill list
0: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no
Насколько я понимаю, блютуз реализован в микросхеме RTL8723:
# lsmod | grep 87
r8723bs 499712 0
# dmesg | grep 8723
[ 11.732800] r8723bs: module is from the staging directory, the quality is unknown, you have been warned.
[ 11.737243] RTL8723BS: module init start
[ 11.737260] RTL8723BS: rtl8723bs v4.3.5.5_12290.20140916_BTCOEX20140507-4E40
[ 11.737264] RTL8723BS: rtl8723bs BT-Coex version = BTCOEX20140507-4E40
[ 11.872845] RTL8723BS: rtw_ndev_init(wlan0)
[ 11.873772] RTL8723BS: module init ret =0
[ 13.734707] rtl8723bs: acquire FW from file:rtlwifi/rtl8723bs_nic.bin
[ 43.309445] RTL8723BS: rtw_set_802_11_connect(wlan0) fw_state = 0x00000008
[ 50.849151] RTL8723BS: rtw_set_802_11_connect(wlan0) fw_state = 0x00000008
[ 50.912171] RTL8723BS: start auth
[ 50.914273] RTL8723BS: auth success, start assoc
[ 50.925153] RTL8723BS: rtw_cfg80211_indicate_connect(wlan0) BSS not found !!
[ 50.925175] RTL8723BS: assoc success
[ 51.063472] RTL8723BS: send eapol packet
[ 51.068690] RTL8723BS: send eapol packet
[ 51.069246] RTL8723BS: set pairwise key camid:4, addr:68:02:b8:xx:xx:xx, kid:0, type:AES
[ 51.073836] RTL8723BS: set group key camid:5, addr:68:02:b8:xx:xx:xx, kid:1, type:AES
# lsusb
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 012: ID 413c:2113 Dell Computer Corp.
Bus 001 Device 014: ID 1bcf:0007 Sunplus Innovation Technology Inc. Optical Mouse
Bus 001 Device 010: ID 05e3:0610 Genesys Logic, Inc. 4-port hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 002: ID 0bda:481a Realtek Semiconductor Corp. USB Audio
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
# lspci
pcilib: Cannot open /proc/bus/pci
lspci: Cannot find any working access method.
# lshw
# lshw
tinkerboard
description: ARMv7 Processor rev 1 (v7l)
product: Rockchip RK3288 Asus Tinker Board S
width: 32 bits
capabilities: smp
*-core
description: Motherboard
physical id: 0
*-cpu:0
description: CPU
product: cpu
physical id: 0
bus info: cpu@0
size: 816MHz
capacity: 1800MHz
capabilities: half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm cpufreq
*-cpu:1
description: CPU
product: cpu
physical id: 1
bus info: cpu@1
size: 816MHz
capacity: 1800MHz
capabilities: half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm cpufreq
*-cpu:2
description: CPU
product: cpu
physical id: 2
bus info: cpu@2
size: 816MHz
capacity: 1800MHz
capabilities: half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm cpufreq
*-cpu:3
description: CPU
product: cpu
physical id: 3
bus info: cpu@3
size: 816MHz
capacity: 1800MHz
capabilities: half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm cpufreq
*-memory
description: System memory
physical id: 4
size: 2000MiB
*-usbhost:0
product: DWC OTG Controller
vendor: Linux 5.10.60-rockchip dwc2_hsotg
physical id: 2
bus info: usb@1
logical name: usb1
version: 5.10
capabilities: usb-2.00
configuration: driver=hub slots=1 speed=480Mbit/s
*-usb
description: USB hub
product: USB2.0 Hub
vendor: Genesys Logic, Inc.
physical id: 1
bus info: usb@1:1
version: 32.98
capabilities: usb-2.00
configuration: driver=hub maxpower=100mA slots=4 speed=480Mbit/s
*-usb:0
description: Mouse
product: USB Optical Mouse
vendor: Sunplus Innovation Technology Inc.
physical id: 3
bus info: usb@1:1.3
version: 0.14
capabilities: usb-2.00
configuration: driver=usbhid maxpower=98mA speed=2Mbit/s
*-usb:1
description: Keyboard
product: Dell KB216 Wired Keyboard
vendor: Dell Computer Corp.
physical id: 4
bus info: usb@1:1.4
version: 1.08
capabilities: usb-1.10
configuration: driver=usbhid maxpower=100mA speed=2Mbit/s
*-usbhost:1
product: DWC OTG Controller
vendor: Linux 5.10.60-rockchip dwc2_hsotg
physical id: 3
bus info: usb@2
logical name: usb2
version: 5.10
capabilities: usb-2.00
configuration: driver=hub slots=1 speed=480Mbit/s
*-usbhost:2
product: EHCI Host Controller
vendor: Linux 5.10.60-rockchip ehci_hcd
physical id: 1
bus info: usb@3
logical name: usb3
version: 5.10
capabilities: usb-2.00
configuration: driver=hub slots=1 speed=480Mbit/s
*-usb
description: Audio device
product: USB Audio
vendor: Generic
physical id: 1
bus info: usb@3:1
version: 0.00
serial: 201405280001
capabilities: usb-2.00 audio-control
configuration: driver=usbhid maxpower=100mA speed=480Mbit/s
*-network:0 DISABLED
description: Ethernet interface
physical id: 4
logical name: dummy0
serial: 02:9e:9c:16:01:c2
capabilities: ethernet physical
configuration: broadcast=yes driver=dummy driverversion=5.10.60-rockchip
*-network:1
description: Ethernet interface
physical id: 5
logical name: eth0
serial: 2c:4d:54:xx:xx:xx
capacity: 1Gbit/s
capabilities: ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
configuration: autonegotiation=on broadcast=yes driver=st_gmac driverversion=Jan_2016 link=no multicast=yes port=MII
*-network:2
description: Wireless interface
physical id: 6
logical name: wlan0
serial: f0:03:8c:xx:xx:xx
capabilities: ethernet physical wireless
configuration: broadcast=yes driver=rtl8723bs driverversion=5.10.60-rockchip ip=192.168.0.6 multicast=yes wireless=IEEE 802.11bgn
# Extract from the /boot/config-5.10.60-rockchip
CONFIG_SERIAL_DEV_BUS=y
CONFIG_BT_HCIUART_3WIRE=y
CONFIG_BT_HCIUART_SERDEV=y
# CONFIG_BT_HCIUART_RTL - is not set
# CONFIG_SERIAL_DEV_CTRL_TTYPORT - is not set
ТинкерОС
Если я устанавливаю TinkerOS (ядро v4.4), Bluetooth работает как положено. Я думаю, что смогу его использовать, но тот факт, что этому дистрибутиву 2 года... Я бы хотел сначала попробовать настроить Armbian.
Ниже приведен тот же результат для TinkerOS.
# uname -a
Linux tinkerboard 4.4.132+ #1 SMP Wed Aug 21 19:15:55 CST 2019 armv7l GNU/Linux
# bluetoothctl devices
[NEW] Controller F0:03:8C:xx:xx:xx R-Pi [default]
# dmesg | grep -i blue
[ 2.005682] Bluetooth: Core ver 2.21
[ 2.005754] Bluetooth: HCI device and connection manager initialized
[ 2.005775] Bluetooth: HCI socket layer initialized
[ 2.005792] Bluetooth: L2CAP socket layer initialized
[ 2.005846] Bluetooth: SCO socket layer initialized
[ 3.116728] Bluetooth: Virtual HCI driver ver 1.5
[ 3.116976] Bluetooth: HCI UART driver ver 2.3
[ 3.116991] Bluetooth: HCI UART protocol H4 registered
[ 3.117002] Bluetooth: HCI UART protocol Three-wire (H5) registered
[ 3.117690] Bluetooth: Generic Bluetooth SDIO driver ver 0.1
[ 6.272220] Bluetooth: RFCOMM TTY layer initialized
[ 6.272237] Bluetooth: RFCOMM socket layer initialized
[ 6.272260] Bluetooth: RFCOMM ver 1.11
[ 6.272282] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 6.272289] Bluetooth: BNEP filters: protocol multicast
[ 6.272301] Bluetooth: BNEP socket layer initialized
[ 6.272314] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[ 6.272324] Bluetooth: HIDP socket layer initialized
[ 6.273304] of_get_named_gpiod_flags: parsed 'uart_rts_gpios' property of node '/wireless-bluetooth[0]' - status (0)
[ 6.273313] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: uart_rts_gpios = 139.
[ 6.273326] of_get_named_gpiod_flags: can't parse 'BT,power_gpio' property of node '/wireless-bluetooth[0]'
[ 6.273350] of_get_named_gpiod_flags: parsed 'BT,reset_gpio' property of node '/wireless-bluetooth[0]' - status (0)
[ 6.273357] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: BT,reset_gpio = 149.
[ 6.273379] of_get_named_gpiod_flags: parsed 'BT,wake_gpio' property of node '/wireless-bluetooth[0]' - status (0)
[ 6.273386] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: BT,wake_gpio = 146.
[ 6.273407] of_get_named_gpiod_flags: parsed 'BT,wake_host_irq' property of node '/wireless-bluetooth[0]' - status (0)
[ 6.273415] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: BT,wake_host_irq = 151.
[ 6.273426] [BT_RFKILL]: bluetooth_platdata_parse_dt: clk_get failed!!!.
[ 12.763584] Bluetooth: Out-of-order packet arrived (7 != 0)
# service bluetooth status
● bluetooth.service - Bluetooth service
Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2022-01-12 10:40:07 CET; 10min ago
Docs: man:bluetoothd(8)
Main PID: 686 (bluetoothd)
Status: "Running"
CGroup: /system.slice/bluetooth.service
└─686 /usr/lib/bluetooth/bluetoothd
Jan 12 10:40:06 tinkerboard bluetoothd[686]: Bluetooth daemon 5.43
Jan 12 10:40:07 tinkerboard bluetoothd[686]: Starting SDP server
Jan 12 10:40:07 tinkerboard bluetoothd[686]: Bluetooth management interface 1.10 initialized
Jan 12 10:40:07 tinkerboard bluetoothd[686]: Failed to obtain handles for "Service Changed" characteristic
Jan 12 10:40:07 tinkerboard bluetoothd[686]: Sap driver initialization failed.
Jan 12 10:40:07 tinkerboard bluetoothd[686]: sap-server: Operation not permitted (1)
Jan 12 10:40:19 tinkerboard bluetoothd[686]: Endpoint registered: sender=:1.66 path=/MediaEndpoint/A2DPSource
Jan 12 10:40:19 tinkerboard bluetoothd[686]: Endpoint registered: sender=:1.66 path=/MediaEndpoint/A2DPSink
# hcitool dev
Devices:
hci0 F0:03:8C:xx:xx:xx
# rfkill list
0: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no
1: hci0: Bluetooth
Soft blocked: no
Hard blocked: no
# lsmod | grep -i blue
# lsmod | grep 87
8723bs 1757184 0
# dmesg | grep 8723
[ 10.315776] RTW: rtl8723bs v5.1.7.4_24878.20171031_BTCOEX20170728-6b4e
[ 10.315782] RTW: rtl8723bs BT-Coex version = BTCOEX20170728-6b4e
# lsusb
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 004: ID 413c:2113 Dell Computer Corp.
Bus 001 Device 003: ID 1bcf:0007 Sunplus Innovation Technology Inc. Optical Mouse
Bus 001 Device 002: ID 05e3:0610 Genesys Logic, Inc. 4-port hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 002: ID 0bda:481a Realtek Semiconductor Corp.
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
# lshw
tinkerboard
description: ARMv7 Processor rev 1 (v7l)
product: Tinker Board
vendor: ASUS
serial: 170604358400383
width: 32 bits
capabilities: smp
*-core
description: Motherboard
physical id: 0
*-cpu:0
description: CPU
product: cpu
physical id: 0
bus info: cpu@0
size: 1800MHz
capacity: 1800MHz
capabilities: half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm cpufreq
*-cpu:1
description: CPU
product: cpu
physical id: 1
bus info: cpu@1
size: 1800MHz
capacity: 1800MHz
capabilities: half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm cpufreq
*-cpu:2
description: CPU
product: cpu
physical id: 2
bus info: cpu@2
size: 1800MHz
capacity: 1800MHz
capabilities: half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm cpufreq
*-cpu:3
description: CPU
product: cpu
physical id: 3
bus info: cpu@3
size: 1800MHz
capacity: 1800MHz
capabilities: half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm cpufreq
*-memory
description: System memory
physical id: 4
size: 2012MiB
*-usbhost:0
product: EHCI Host Controller
vendor: Linux 4.4.132+ ehci_hcd
physical id: 2
bus info: usb@3
logical name: usb3
version: 4.04
capabilities: usb-2.00
configuration: driver=hub slots=1 speed=480Mbit/s
*-usb
description: Audio device
product: USB Audio
vendor: Generic
physical id: 1
bus info: usb@3:1
version: 0.00
serial: 201405280001
capabilities: usb-2.00 audio-control
configuration: driver=usbhid maxpower=100mA speed=480Mbit/s
*-usbhost:1
product: DWC OTG Controller
vendor: Linux 4.4.132+ dwc2_hsotg
physical id: 3
bus info: usb@2
logical name: usb2
version: 4.04
capabilities: usb-2.00
configuration: driver=hub slots=1 speed=480Mbit/s
*-usbhost:2
product: DWC OTG Controller
vendor: Linux 4.4.132+ dwc2_hsotg
physical id: 1
bus info: usb@1
logical name: usb1
version: 4.04
capabilities: usb-2.00
configuration: driver=hub slots=1 speed=480Mbit/s
*-usb
description: USB hub
product: USB2.0 Hub
vendor: Genesys Logic, Inc.
physical id: 1
bus info: usb@1:1
version: 32.98
capabilities: usb-2.00
configuration: driver=hub maxpower=100mA slots=4 speed=480Mbit/s
*-usb:0
description: Mouse
product: USB Optical Mouse
vendor: Sunplus Innovation Technology Inc.
physical id: 3
bus info: usb@1:1.3
version: 0.14
capabilities: usb-2.00
configuration: driver=usbhid maxpower=98mA speed=2Mbit/s
*-usb:1
description: Keyboard
product: Dell KB216 Wired Keyboard
vendor: Dell Computer Corp.
physical id: 4
bus info: usb@1:1.4
version: 1.08
capabilities: usb-1.10
configuration: driver=usbhid maxpower=100mA speed=2Mbit/s
*-network:0
description: Wireless interface
physical id: 4
logical name: wlan0
serial: f0:03:8c:xx:xx:xx
capabilities: ethernet physical wireless
configuration: broadcast=yes driver=rtl8723bs multicast=yes wireless=unassociated
*-network:1
description: Ethernet interface
physical id: 5
logical name: eth0
serial: 2c:4d:54:xx:xx:xx
size: 100Mbit/s
capacity: 1Gbit/s
capabilities: ethernet physical tp aui bnc mii fibre 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
configuration: autonegotiation=on broadcast=yes driver=st_gmac driverversion=March_2013 duplex=full ip=192.168.0.136 link=yes multicast=yes port=MII speed=100Mbit/s
Может быть связано с:
Адаптер Bluetooth не обнаружен в Linux - https://unix.stackexchange.com/questions/674562/how-to-use-rtl8723bs-bluetooth-in-linux-5-10