Radxa ZERO 3W. Bluetooth not working

I have searched the existing open and closed issues

Required Information

  • DietPi version | cat /boot/dietpi/.version
G_DIETPI_VERSION_CORE=9
G_DIETPI_VERSION_SUB=5
G_DIETPI_VERSION_RC=1
G_GITBRANCH='master'
G_GITOWNER='MichaIng'
G_LIVE_PATCH_STATUS[0]='not applicable'
  • Distro version | echo $G_DISTRO_NAME $G_RASPBIAN
bookworm
  • Kernel version | uname --all
Linux DietPi 5.10.160-legacy-rk35xx #1 SMP Wed May 15 03:04:45 UTC 2024 aarch64 GNU/Linux
  • Architecture | dpkg --print-architecture
arm64
  • SBC model | echo $G_HW_MODEL_NAME or (EG: RPi3)

Radxa ZERO 3 (aarch64) (Radxa ZERO 3W)

RaspPi4 official power supply
  • SD card used | (EG: SanDisk ultra)
Lexar 32GB

Additional Information (if applicable)

  • Happens on a fresh install of DietPi.

Steps to reproduce

  1. Fresh install DietPi
  2. Enabled Bluetooth on dietpi-config
  3. Try using bluetoothctl show

Expected behaviour

Show bluetooth controller info

Actual behaviour

No default controller available

Extra details

I am not able to make the bluetooth work. I have enabled it using dietpi-config but still not working. I have tryed with the Radxa Zero 3W official debian xfce image, and bluetooth is working fine. Here more info:

root@DietPi:~# bluetoothctl show
No default controller available
root@DietPi:~# systemctl status bluetooth.service
ā— bluetooth.service - Bluetooth service
     Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; preset: enabled)
     Active: active (running) since Sun 2024-06-23 19:37:05 CEST; 54s ago
       Docs: man:bluetoothd(8)
   Main PID: 1254 (bluetoothd)
     Status: "Running"
      Tasks: 1 (limit: 4446)
     Memory: 3.4M
        CPU: 796ms
     CGroup: /system.slice/bluetooth.service
             ā””ā”€1254 /usr/libexec/bluetooth/bluetoothd

Jun 23 19:37:05 DietPi bluetoothd[1254]: Bluetooth daemon 5.66
Jun 23 19:37:05 DietPi systemd[1]: Started bluetooth.service - Bluetooth service.
Jun 23 19:37:05 DietPi bluetoothd[1254]: Starting SDP server
Jun 23 19:37:05 DietPi bluetoothd[1254]: profiles/audio/vcp.c:vcp_init() D-Bus experimental not enabled
Jun 23 19:37:05 DietPi bluetoothd[1254]: src/plugin.c:plugin_init() Failed to init vcp plugin
Jun 23 19:37:05 DietPi bluetoothd[1254]: profiles/audio/mcp.c:mcp_init() D-Bus experimental not enabled
Jun 23 19:37:05 DietPi bluetoothd[1254]: src/plugin.c:plugin_init() Failed to init mcp plugin
Jun 23 19:37:05 DietPi bluetoothd[1254]: profiles/audio/bap.c:bap_init() D-Bus experimental not enabled
Jun 23 19:37:05 DietPi bluetoothd[1254]: src/plugin.c:plugin_init() Failed to init bap plugin
Jun 23 19:37:05 DietPi bluetoothd[1254]: Bluetooth management interface 1.18 initialized
root@DietPi:~# rfkill list all
0: bt_default: Bluetooth
        Soft blocked: no
        Hard blocked: no
1: phy0: Wireless LAN
        Soft blocked: no
        Hard blocked: no
root@DietPi:~# dmesg | grep -i bluetooth
[   11.736953] Bluetooth: Core ver 2.22
[   11.737070] Bluetooth: HCI device and connection manager initialized
[   11.737107] Bluetooth: HCI socket layer initialized
[   11.737136] Bluetooth: L2CAP socket layer initialized
[   11.737184] Bluetooth: SCO socket layer initialized
[   14.122992] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: uart_rts_gpios = 77.
[   14.123035] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: BT,reset_gpio = 17.
[   14.123057] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: BT,wake_gpio = 12.
[   14.123079] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: BT,wake_host_irq = 11.
[   14.123098] [BT_RFKILL]: bluetooth_platdata_parse_dt: clk_get failed!!!.
[  230.752666] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[  230.752701] Bluetooth: BNEP filters: protocol multicast
[  230.752988] Bluetooth: BNEP socket layer initialized

I have a similar problem and IMHO itā€™s about missing bluetooth-support for a new Wifi/BT-chip-version in ARMBIAN for Raxda Zero 3W.

Newest Raxda Zero 3W (mine) has Wifi-6/BT 5.4 with SDIO(?) AIC8800D80(?) chip. With this Wifi-6 is working fine with DIETPI (nominal 600 mbit/s), but no bluetooth at all.

May be one of the ā€˜gurusā€™ could upstream this to ARMBIAN with downstream to DIETPIā€¦

hope that helps

Of course tested before with all current (2024/07/08) Raxda Zero 3W ARMBIAN builds. This doesnā€™t work on ARMBIAN and hence doesnā€™t work on DIETPI.

ping @MichaIng

It seems there is a real problem with DietPi for Raxda 3W.
Now I flashed it on eMMC and my kernel errors still persist.
(And the last one is about AIC8800, but this is following a bunch of problems before.)

I guess itā€™s not working with plain Armbian as well, correct?

Yes, also not working in Arnbian. And it is not a BT-Problem: Iā€™ve sent Kernel Logs to MichaIng. They show some trouble before and at the end AIC8800 is going down. Iā€™ve seen those Kernel Messages before in a Raxda Forum (Google!). May be I have to wait until Zero 3W Support is coming with Mainline Kernel 6.11.

11.937857] fiq_debugger fiq_debugger.0: IRQ fiq not found
[ 11.937919] fiq_debugger fiq_debugger.0: IRQ wakeup not found
[ 11.937955] fiq_debugger_probe: could not install nmi irq handler
[ 13.784334] mpp-iep2 fdef0000.iep: allocate roi buffer failed
[ 13.803695] arm-scmi firmware:scmi: Failed. SCMI protocol 22 not active.
[ 13.824564] dwhdmi-rockchip fe0a0000.hdmi: IRQ index 1 not found
[ 14.196576] no ATF memory for init
[ 14.220970] no ATF memory for init
[ 14.232413] rk_gmac-dwmac fe010000.ethernet: no regulator found
[ 15.087320] Error: Driver ā€˜Goodix-TSā€™ is already registered, abortingā€¦
[ 15.375903] rk817-battery rk817-battery: Failed to find matching dt id
[ 15.391051] rk817-charger rk817-charger: Failed to find matching dt id
[ 15.466134] OF: graph: no port node found in /i2c@fe5c0000/fusb302@22
[ 15.639379] arm-scmi firmware:scmi: Failed. SCMI protocol 17 not active.
[ 15.813816] mmc1: tuning execution failed: -5
[ 16.067026] mpp_rkvenc fdf40000.rkvenc: Failed to get leakage
[ 16.084069] mpp_rkvenc fdf40000.rkvenc: failed to find power_model node
[ 16.088127] mpp_rkvenc fdf40000.rkvenc: failed to initialize power model
[ 16.092076] mpp_rkvenc fdf40000.rkvenc: failed to get dynamic-coefficient
[ 16.109008] mpp_rkvdec2 fdf80200.rkvdec: shared_niu_a is not found!
[ 16.112418] rkvdec2_init:1022: No niu aclk reset resource define
[ 16.115807] mpp_rkvdec2 fdf80200.rkvdec: shared_niu_h is not found!
[ 16.119196] rkvdec2_init:1025: No niu hclk reset resource define
[ 16.142487] mpp_rkvdec2 fdf80200.rkvdec: failed to find power_model node
[ 16.145416] mpp_rkvdec2 fdf80200.rkvdec: failed to initialize power model
[ 16.148308] mpp_rkvdec2 fdf80200.rkvdec: failed to get dynamic-coefficient
[ 16.174766] mali fde60000.gpu: IRQ JOB not found
[ 16.177485] mali fde60000.gpu: IRQ MMU not found
[ 16.180197] mali fde60000.gpu: IRQ GPU not found
[ 16.185309] mali fde60000.gpu: Insufficient register space, will override to the required size
[ 16.190414] mali fde60000.gpu: Register window unavailable
[ 16.195462] mali fde60000.gpu: Failed to map registers
[ 16.200511] mali fde60000.gpu: Register map failed error = -5
[ 16.205578] mali fde60000.gpu: Device initialization failed
[ 16.239961] rockchip-dmc dmc: failed to get vop pn to msch rl
[ 16.245877] rockchip-dmc dmc: could not find power_model node
[ 22.501573] aicbsp: sdio_err:<aicwf_sdio_bus_pwrctl,1382>: bus down
[ 23.226322] ieee80211 phy0:
*******************************************************
** CAUTION: USING PERMISSIVE CUSTOM REGULA

I got aic8800 bluetooth working in the latest armbians (Armbian_24.5.3_Radxa-zero3_bookworm_vendor_6.1.43_minimal.img), perhaps this works in dietpi too. For me, after initial boot, the bluetooth was soft blocked, I did:

rfkill unblock bluetooth
hciattach -s 1500000 /dev/ttyS1 any 1500000 flow nosleep
hciconfig hci0 up

after that the interface was operational and also working with their homeassistant flavor (Armbian_24.5.1_Radxa-zero3_bookworm_vendor_6.1.43-homeassistant_minimal.img):

# hciconfig -a
hci0:   Type: Primary  Bus: UART
        BD Address: 98:03:CF:C6:E6:C5  ACL MTU: 1021:9  SCO MTU: 255:4
        UP RUNNING
        RX bytes:157377 acl:0 sco:0 events:6828 errors:0
        TX bytes:16668 acl:0 sco:0 commands:1574 errors:0
        Features: 0xbf 0x2e 0x4d 0xfe 0xd8 0x3f 0x7b 0x87
        Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV3
        Link policy: RSWITCH SNIFF
        Link mode: PERIPHERAL ACCEPT
        Name: 'radxa-zero3'
        Class: 0x6c0000
        Service Classes: Rendering, Capturing, Audio, Telephony
        Device Class: Miscellaneous,
        HCI Version:  (0xd)  Revision: 0xb
        LMP Version:  (0xd)  Subversion: 0xb
        Manufacturer: not assigned (2875)
1 Like

Thanks a lot!

Indeed this works in Armbian (Bookworm IoT and Server) for Kernel 6.1.43 as well as for the older version with Kernel 5.1.

Now Iā€™ll test the desktop-versions of Armbian and then Dietpi again, so weā€™ll see, if this is working up to Dietpiā€¦

1 Like

OK, this also works with DietPiā€¦ :hugs:

1 Like