Skip to main content
Topic solved
This topic has been marked as solved and requires no further attention.
Topic: [SOLVED] Bluetooth: bluetoothctl can't see my adapters (Read 3802 times) previous topic - next topic
0 Members and 2 Guests are viewing this topic.

[SOLVED] Bluetooth: bluetoothctl can't see my adapters

Hello Artix-Community,

I know there are a lot of topics about Bluetooth not working, but unfortunately those could not help me. My situation is a little bit weird. I am currently setting up an Artix install with dinit and Hyprland. The weird thing is that on my Garuda system which I still have installed on my SSD (Artix is installed on an USB Flash Drive while I am configuring) Bluetooth is working completely fine, but here on Artix even though I tried multiple things it just does not want to work.
Another weird thing is that Bluetooth did already work yesterday when I booted my PC. Everything worked as expected and I could even connect my Dualsense controller and play with it. But all the other times when I booted it wouldn't work at all.

Here is what I have already done:
  • Installed: bluez, bluez-dinit, blueman-manager, bluez-utils
  • Setup the btusb kernel module
  • Enabled the bluetoothd service

Some system information:
Kernel: linux-lts 6.1.39-3
init system: dinit 0.16-1-1

rfkill:
Code: [Select]
ID TYPE      DEVICE      SOFT      HARD
 0 bluetooth hci0   unblocked unblocked
 1 wlan      phy0     blocked unblocked

lsmod | grep bluetooth
Code: [Select]
bluetooth             937984  15 btrtl,btmtk,btintel,btbcm,bnep,btusb
ecdh_generic           16384  1 bluetooth
rfkill                 36864  10 iwlmvm,bluetooth,cfg80211
crc16                  16384  2 bluetooth,ext4

lsusb | grep -i bluetooth
Code: [Select]
Bus 003 Device 003: ID 8087:0029 Intel Corp. AX200 Bluetooth

bluetoothctl power on
Code: [Select]
No default controller available

Re: Bluetooth: bluetoothctl can't see my adapters

Reply #1
Here is the output of 'sudo /usr/lib/bluetooth/bluetoothd -n -d'
Code: [Select]
bluetoothd[5468]: Bluetooth daemon 5.68
bluetoothd[5468]: src/main.c:parse_config() parsing /etc/bluetooth/main.conf
bluetoothd[5468]: src/adapter.c:adapter_init() sending read version command
bluetoothd[5468]: Starting SDP server
bluetoothd[5468]: src/sdpd-service.c:register_device_id() Adding device id record for 0002:1d6b:0246:0544
bluetoothd[5468]: src/plugin.c:plugin_init() Loading builtin plugins
bluetoothd[5468]: src/plugin.c:add_plugin() Loading hostname plugin
bluetoothd[5468]: src/plugin.c:add_plugin() Loading wiimote plugin
bluetoothd[5468]: src/plugin.c:add_plugin() Loading autopair plugin
bluetoothd[5468]: src/plugin.c:add_plugin() Loading policy plugin
bluetoothd[5468]: src/plugin.c:add_plugin() Loading a2dp plugin
bluetoothd[5468]: src/plugin.c:add_plugin() Loading avrcp plugin
bluetoothd[5468]: src/plugin.c:add_plugin() Loading network plugin
bluetoothd[5468]: src/plugin.c:add_plugin() Loading input plugin
bluetoothd[5468]: src/plugin.c:add_plugin() Loading hog plugin
bluetoothd[5468]: src/plugin.c:add_plugin() Loading gap plugin
bluetoothd[5468]: src/plugin.c:add_plugin() Loading scanparam plugin
bluetoothd[5468]: src/plugin.c:add_plugin() Loading deviceinfo plugin
bluetoothd[5468]: src/plugin.c:add_plugin() Loading midi plugin
bluetoothd[5468]: src/plugin.c:add_plugin() Loading battery plugin
bluetoothd[5468]: src/plugin.c:add_plugin() Loading bap plugin
bluetoothd[5468]: src/plugin.c:add_plugin() Loading bass plugin
bluetoothd[5468]: src/plugin.c:add_plugin() Loading mcp plugin
bluetoothd[5468]: src/plugin.c:add_plugin() Loading vcp plugin
bluetoothd[5468]: src/plugin.c:add_plugin() Loading csip plugin
bluetoothd[5468]: src/plugin.c:plugin_init() Loading plugins /usr/lib/bluetooth/plugins
bluetoothd[5468]: src/profile.c:btd_profile_register() D-Bus experimental not enabled
bluetoothd[5468]: src/plugin.c:plugin_init() System does not support csip plugin
bluetoothd[5468]: src/profile.c:btd_profile_register() D-Bus experimental not enabled
bluetoothd[5468]: src/plugin.c:plugin_init() System does not support vcp plugin
bluetoothd[5468]: src/profile.c:btd_profile_register() D-Bus experimental not enabled
bluetoothd[5468]: src/plugin.c:plugin_init() System does not support mcp plugin
bluetoothd[5468]: src/profile.c:btd_profile_register() D-Bus experimental not enabled
bluetoothd[5468]: src/plugin.c:plugin_init() System does not support bass plugin
bluetoothd[5468]: src/profile.c:btd_profile_register() D-Bus experimental not enabled
bluetoothd[5468]: src/plugin.c:plugin_init() System does not support bap plugin
bluetoothd[5468]: profiles/input/suspend-none.c:suspend_init()
bluetoothd[5468]: profiles/network/manager.c:read_config() Config options: Security=true
bluetoothd[5468]: plugins/hostname.c:read_dmi_fallback() chassis: desktop
bluetoothd[5468]: plugins/hostname.c:read_dmi_fallback() major: 0x01 minor: 0x01
bluetoothd[5468]: plugins/hostname.c:read_transient_hostname() read transient hostname: 'samurai'
bluetoothd[5468]: src/main.c:main() Entering main loop
bluetoothd[5468]: src/shared/mgmt.c:send_request() [0xffff] command 0x0001
bluetoothd[5468]: src/rfkill.c:rfkill_event() RFKILL event idx 0 type 2 op 0 soft 0 hard 0
bluetoothd[5468]: src/shared/mgmt.c:can_read_data() [0xffff] command 0x0001 complete: 0x00
bluetoothd[5468]: Bluetooth management interface 1.22 initialized
bluetoothd[5468]: src/adapter.c:read_version_complete() sending read supported commands command
bluetoothd[5468]: src/adapter.c:read_version_complete() sending read index list command
bluetoothd[5468]: src/rfkill.c:rfkill_event() RFKILL event idx 1 type 1 op 0 soft 1 hard 0
bluetoothd[5468]: src/shared/mgmt.c:send_request() [0xffff] command 0x0002
bluetoothd[5468]: src/shared/mgmt.c:can_read_data() [0xffff] command 0x0002 complete: 0x00
bluetoothd[5468]: src/adapter.c:read_commands_complete() Number of commands: 88
bluetoothd[5468]: src/adapter.c:read_commands_complete() Number of events: 44
bluetoothd[5468]: src/adapter.c:read_commands_complete() enabling kernel-side connection control
bluetoothd[5468]: src/adapter.c:read_commands_complete() kernel supports the set_blocked_keys op
bluetoothd[5468]: src/adapter.c:read_commands_complete() kernel supports controller cap command
bluetoothd[5468]: src/adapter.c:read_commands_complete() kernel supports exp features
bluetoothd[5468]: src/adapter.c:read_commands_complete() kernel supports set system confic
bluetoothd[5468]: src/adapter.c:read_commands_complete() kernel supports ext adv commands
bluetoothd[5468]: src/adapter.c:read_commands_complete() kernel supports suspend/resume events
bluetoothd[5468]: src/shared/mgmt.c:send_request() [0xffff] command 0x0003
bluetoothd[5468]: src/shared/mgmt.c:can_read_data() [0xffff] command 0x0003 complete: 0x00
bluetoothd[5468]: src/adapter.c:read_index_list_complete() Number of controllers: 0
bluetoothd[5468]: src/profile.c:register_profile() sender :1.30
bluetoothd[5468]: src/profile.c:create_ext() Created "Message Notification"
bluetoothd[5468]: src/profile.c:register_profile() sender :1.30
bluetoothd[5468]: src/profile.c:create_ext() Created "Message Access"
bluetoothd[5468]: src/profile.c:register_profile() sender :1.30
bluetoothd[5468]: src/profile.c:create_ext() Created "Phone Book Access"
bluetoothd[5468]: src/profile.c:register_profile() sender :1.30
bluetoothd[5468]: src/profile.c:create_ext() Created "Synchronization"
bluetoothd[5468]: src/profile.c:register_profile() sender :1.30
bluetoothd[5468]: src/profile.c:create_ext() Created "File Transfer"
bluetoothd[5468]: src/profile.c:register_profile() sender :1.30
bluetoothd[5468]: src/profile.c:create_ext() Created "Object Push"
bluetoothd[5468]: src/profile.c:register_profile() sender :1.30
bluetoothd[5468]: src/profile.c:create_ext() Created ":1.30/org/bluez/obex/00005005_0000_1000_8000_0002ee000001/00005005-0000-1000-8000-0002ee000001"
bluetoothd[5468]: src/profile.c:register_profile() sender :1.16
bluetoothd[5468]: src/profile.c:create_ext() Created "Hands-Free Voice gateway"
bluetoothd[5468]: src/profile.c:register_profile() sender :1.16
bluetoothd[5468]: src/profile.c:create_ext() Created "Hands-Free unit"
bluetoothd[5468]: src/agent.c:add_default_agent() Default agent set to :1.98 /org/bluez/agent/blueman
bluetoothd[5468]: src/agent.c:agent_ref() 0x55981b243450: ref=1
bluetoothd[5468]: src/agent.c:register_agent() agent :1.98

Re: Bluetooth: bluetoothctl can't see my adapters

Reply #2
I did some more research and testing and finally solved the issue. I will document what I found out.
The issue stems from me dual booting my old Garuda install and my new Artix install (I am currently dual booting, because I will switch to Artix when I am done configuring it). My Intel AX200 chip which supports both WiFi and Bluetooth seems to have some kind of mechanism which establishes some kind of association with a certain system. My chip seems to have been associated with my Garuda install and therefore it blocked out my Artix install. But by resetting the chip in "some way" this association can be nullified and a new association can be established.
I found this topic which describes a similar problem. There the problem could be resolved by resetting the CMOS, but another user also posted a reply years later and described a fix which can be done solely by software:
Code: [Select]
hciconfig hci0 down
rmmod btusb
modprobe btusb
hciconfig hci0 up

This also did it for me. But I guess removing and reinserting the chip or resetting the CMOS would have done the same trick. The Intel chip just needs some kind of reset so that a new association can be established.