Skip to content

Bluetooth dongle compatibility

Serrano Pereira edited this page Feb 25, 2022 · 15 revisions

The DualShock 4 controller may not work with all bluetooth dongles out there. 2.0 devices especially seems to have problems. This is a list of dongles and their compatibility.

Manufacturer Model Type Bluetooth Compatibility Notes
Asus P8Z68-V motherboard 2.1 + EDR πŸ‘
Asus USB-BT400 usb 4.0 LE πŸ‘
Atheros AR3011 usb 2.1 + EDR πŸ‘
Azio BTD-V201 usb 2.1 + EDR πŸ‘
TP-Link UB400 usb 4.0 LE πŸ‘ Works great when connected to always on USB port
Generic CSR8510 chipset 4.0 LE + EDR 4.0 LE + EDR πŸ‘Ž
IOgear GBU421 usb 2.1 + EDR πŸ‘ * 2 Controller Max
Intel 7260 AC PCIe 4.0 LE + EDR πŸ‘Ž Connects but lags with low signal warning
Kinivo BTD- 300 usb 3.0 + EDR πŸ‘Ž Connects but lags with low signal warning
Kinivo BTD- 400 usb 4.0 LE + EDR πŸ‘Ž Connects but lags with low signal warning
Plugable USB-BT4LE usb 4.0 + EDR πŸ‘ Broadcom BCM20702, works with Rpi-3B+
StarTech USBBT1EDR4 usb 4.0 LE + EDR πŸ‘Ž Connects but lags with low signal warning

Possible workarounds for dongles that may not want to cooperate immediately

Pairing a 2.0 dongle in Bluez 5.14+ by mtorromeo (source)

I managed to pair it using bluetoothctl after enabling the agent:

[bluetooth]# scan on
[bluetooth]# trust MAC
[bluetooth]# agent on
[bluetooth]# pair MAC
Request PIN code
[agent] Enter PIN code: 0000

And then "ds4drv --hidraw" worked fine.

Recap:

  • Without the "agent on" command, pair fails with "Failed to pair: org.bluez.Error.AuthenticationRejected" with the bluetooth 2 dongle.
  • The agent/pin steps are not necessary with the bluetooth 4 dongle.

Workaround suggested by Polymetric (source)

I had to restart the bluetooth service, then go into bluetoothctl and power on the device. Commands are below.

$ systemctl restart bluetooth
$ systemctl enable bluetooth
$ bluetoothctl
[bluetooth]# power on
[bluetooth]# exit