Third-party DS4 controller connects and instantly disconnects from bluetooth

Hey everyone! ^^ I’ve just installed Manjaro (XFCE, switched to Cinnamon) and, while trying to play games, am noticing that I can’t use my third-party PS4 controller. It’s not an official controller, and I figure that’s the cause.
When using PS+Share to enable pairing mode, and then pressing pair in the bluetooth manager, the controller will connect for a few seconds. The light will keep flashing as if it’s in pairing mode, and then it’ll disconnect the controller. If I try to connect again after this, it doesn’t even connect, with the error Connection Failed: br-connection-create-socket.

Output from trying with bluetoothctl:

[bluetooth]# pair 98:B6:E9:BE:15:21 
Attempting to pair with 98:B6:E9:BE:15:21
[CHG] Device 98:B6:E9:BE:15:21 Connected: yes
[CHG] Device 98:B6:E9:BE:15:21 Bonded: yes
[CHG] Device 98:B6:E9:BE:15:21 WakeAllowed: yes
[CHG] Device 98:B6:E9:BE:15:21 ServicesResolved: yes
[CHG] Device 98:B6:E9:BE:15:21 Paired: yes
Pairing successful
[CHG] Device 98:B6:E9:BE:15:21 ServicesResolved: no
[CHG] Device 98:B6:E9:BE:15:21 Connected: no

Output of sudo inxi -v7azy:

  Kernel: 6.6.8-2-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 13.2.1
    clocksource: tsc available: acpi_pm
    parameters: BOOT_IMAGE=/boot/vmlinuz-6.6-x86_64
    root=UUID=9e9979b1-6697-4240-b1e8-dd3a3dc68430 rw intel_iommu=on iommu=pt
    apparmor=1 security=apparmor
    resume=UUID=2d57d1e1-9885-4e65-9aac-d6a536138a6d udev.log_priority=3
  Desktop: Cinnamon v: 6.0.2 tk: GTK v: 3.24.39 dm: LightDM v: 1.32.0
    Distro: Manjaro Linux base: Arch Linux
  Type: Desktop System: Dell product: OptiPlex 3070 v: N/A serial: <filter>
    Chassis: type: 3 serial: <filter>
  Mobo: Dell model: 07WP95 v: A02 serial: <filter> UEFI: Dell v: 1.21.0
    date: 04/07/2023
  Device-1: apple_mfi_fastcharge model: N/A serial: N/A charge: N/A status: N/A
  System RAM: total: 16 GiB available: 15.31 GiB used: 8.26 GiB (53.9%)
    igpu: 32 MiB
  Array-1: capacity: 32 GiB slots: 2 modules: 2 EC: None
    max-module-size: 16 GiB note: est.
  Device-1: DIMM1 type: DDR4 detail: synchronous size: 8 GiB speed: 2133 MT/s
    volts: curr: 1.2 width (bits): data: 64 total: 64 manufacturer: 04CD000080AD
    part-no: F4-3000C16-8GISB serial: N/A
  Device-2: DIMM2 type: DDR4 detail: synchronous size: 8 GiB speed: 2133 MT/s
    volts: curr: 1.2 width (bits): data: 64 total: 64 manufacturer: 04CD000080AD
    part-no: F4-3000C16-8GISB serial: N/A
  Info: model: Intel Core i5-9500 socket: LGA1151 (U3E1) note: check bits: 64
    type: MCP arch: Coffee Lake gen: core 9 level: v3 note: check built: 2018
    process: Intel 14nm family: 6 model-id: 0x9E (158) stepping: 0xA (10)
    microcode: 0xF4
  Topology: cpus: 1x cores: 6 smt: <unsupported> cache: L1: 384 KiB
    desc: d-6x32 KiB; i-6x32 KiB L2: 1.5 MiB desc: 6x256 KiB L3: 9 MiB
    desc: 1x9 MiB
  Speed (MHz): avg: 900 min/max: 800/4400 base/boost: 2970/4200 scaling:
    driver: intel_pstate governor: powersave volts: 0.9 V ext-clock: 100 MHz
    cores: 1: 900 2: 900 3: 900 4: 900 5: 900 6: 900 bogomips: 36012
  Flags: 3dnowprefetch abm acpi adx aes aperfmperf apic arat
    arch_capabilities arch_perfmon art avx avx2 bmi1 bmi2 bts clflush
    clflushopt cmov constant_tsc cpuid cpuid_fault cx16 cx8 de ds_cpl dtes64
    dtherm dts epb ept ept_ad erms est f16c flexpriority flush_l1d fma fpu
    fsgsbase fxsr ht hwp hwp_act_window hwp_epp hwp_notify ibpb ibrs ida
    intel_pt invpcid lahf_lm lm mca mce md_clear mmx monitor movbe mpx msr
    mtrr nonstop_tsc nopl nx pae pat pbe pcid pclmulqdq pdcm pdpe1gb pebs pge
    pln pni popcnt pse pse36 pti pts rdrand rdseed rdtscp rep_good sdbg sep
    sgx sgx_lc smap smep smx ss ssbd sse sse2 sse4_1 sse4_2 ssse3 stibp
    syscall tm tm2 tpr_shadow tsc tsc_adjust tsc_deadline_timer vme vmx vnmi
    vpid x2apic xgetbv1 xsave xsavec xsaveopt xsaves xtopology xtpr
  Type: gather_data_sampling mitigation: Microcode (locked)
  Type: itlb_multihit status: KVM: VMX disabled
  Type: l1tf mitigation: PTE Inversion; VMX: conditional cache flushes, SMT
  Type: mds mitigation: Clear CPU buffers; SMT disabled
  Type: meltdown mitigation: PTI
  Type: mmio_stale_data mitigation: Clear CPU buffers; SMT disabled
  Type: retbleed mitigation: IBRS
  Type: spec_rstack_overflow status: Not affected
  Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via
  Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer
  Type: spectre_v2 mitigation: IBRS, IBPB: conditional, STIBP: disabled, RSB
    filling, PBRSB-eIBRS: Not affected
  Type: srbds mitigation: Microcode
  Type: tsx_async_abort mitigation: TSX disabled
  Device-1: Intel CoffeeLake-S GT2 [UHD Graphics 630] vendor: Dell driver: i915
    v: kernel arch: Gen-9.5 process: Intel 14nm built: 2016-20 ports:
    active: DP-2 empty: DP-1, HDMI-A-1, HDMI-A-2, HDMI-A-3 bus-ID: 00:02.0
    chip-ID: 8086:3e92 class-ID: 0300
  Device-2: NVIDIA GP108 [GeForce GT 1030] vendor: driver: nvidia
    v: 545.29.06 alternate: nouveau,nvidia_drm non-free: 545.xx+ status: current
    (as of 2023-11; EOL~2026-12-xx) arch: Pascal code: GP10x process: TSMC 16nm
    built: 2016-2021 pcie: gen: 3 speed: 8 GT/s lanes: 4 bus-ID: 01:00.0
    chip-ID: 10de:1d01 class-ID: 0300
  Display: x11 server: v: with: Xwayland v: 23.2.3 driver: X:
    loaded: modesetting,nvidia unloaded: nouveau alternate: fbdev,nv,vesa
    dri: iris gpu: i915 display-ID: :0 screens: 1
  Screen-1: 0 s-res: 3280x1050 s-size: <missing: xdpyinfo>
  Monitor-1: DP-2 pos: left res: 1600x900 hz: 60 dpi: 92
    size: 443x249mm (17.44x9.8") diag: 508mm (20.01") modes: N/A
  Monitor-2: HDMI-1-0 pos: primary,right res: 1680x1050 hz: 60 dpi: 89
    size: 480x270mm (18.9x10.63") diag: 551mm (21.68") modes: N/A
  API: EGL v: 1.5 hw: drv: intel iris drv: nvidia platforms: device: 0
    drv: nvidia device: 1 drv: iris device: 3 drv: swrast gbm: drv: kms_swrast
    surfaceless: drv: nvidia x11: drv: iris inactive: wayland,device-2
  API: OpenGL v: 4.6.0 compat-v: 4.5 vendor: intel mesa v: 23.1.9-manjaro1.1
    glx-v: 1.4 direct-render: yes renderer: Mesa Intel UHD Graphics 630 (CFL GT2)
    device-ID: 8086:3e92 memory: 14.95 GiB unified: yes
  Device-1: Intel Cannon Lake PCH cAVS vendor: Dell driver: snd_hda_intel
    v: kernel alternate: snd_soc_skl,snd_sof_pci_intel_cnl bus-ID: 00:1f.3
    chip-ID: 8086:a348 class-ID: 0403
  Device-2: NVIDIA GP108 High Definition Audio vendor:
    driver: snd_hda_intel v: kernel pcie: gen: 3 speed: 8 GT/s lanes: 4
    bus-ID: 01:00.1 chip-ID: 10de:0fb8 class-ID: 0403
  API: ALSA v: k6.6.8-2-MANJARO status: kernel-api with: aoss
    type: oss-emulator tools: alsactl,alsamixer,amixer
  Server-1: JACK v: 1.9.22 status: off tools: N/A
  Server-2: PipeWire v: 1.0.0 status: n/a (root, process) with:
    1: pipewire-pulse status: active 2: wireplumber status: active
    3: pipewire-alsa type: plugin tools: pactl,pw-cat,pw-cli,wpctl
  Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet vendor: Dell
    driver: r8169 v: kernel pcie: gen: 1 speed: 2.5 GT/s lanes: 1 port: 3000
    bus-ID: 02:00.0 chip-ID: 10ec:8168 class-ID: 0200
  IF: enp2s0 state: down mac: <filter>
  Device-2: Realtek 802.11ac NIC driver: rtl8821cu type: USB rev: 2.0
    speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-10:4 chip-ID: 0bda:c811
    class-ID: 0000 serial: <filter>
  IF: wlp0s20f0u10 state: up mac: <filter>
  IP v4: <filter> type: dynamic noprefixroute scope: global
    broadcast: <filter>
  IP v6: <filter> type: dynamic noprefixroute scope: global
  IP v6: <filter> type: dynamic noprefixroute scope: global
  IP v6: <filter> type: noprefixroute scope: link
  IF-ID-1: enp0s20f0u6c4i2 state: down mac: <filter>
  IF-ID-2: tailscale0 state: unknown speed: -1 duplex: full mac: N/A
  IP v4: <filter> scope: global
  IP v6: <filter> scope: global
  IP v6: <filter> virtual: stable-privacy proto kernel_ll scope: link
  WAN IP: <filter>
  Device-1: Cambridge Silicon Radio Bluetooth Dongle (HCI mode) driver: btusb
    v: 0.8 type: USB rev: 2.0 speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 1-1:2
    chip-ID: 0a12:0001 class-ID: e001
  Report: hciconfig ID: hci0 rfk-id: 0 state: up address: <filter> bt-v: 4.0
    lmp-v: 6 sub-v: 22bb hci-v: 6 rev: 22bb class-ID: 7c0104
  Info: acl-mtu: 310:10 sco-mtu: 64:8 link-policy: rswitch hold sniff park
    link-mode: peripheral accept service-classes: rendering, capturing, object
    transfer, audio, telephony
  Message: No logical block device data found.
  Message: No RAID data found.
  Local Storage: total: 2.27 TiB used: 321.2 GiB (13.8%)
  SMART Message: Required tool smartctl not installed. Check --recommends
  ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Crucial model: CT500P2SSD8
    size: 465.76 GiB block-size: physical: 512 B logical: 512 B speed: 31.6 Gb/s
    lanes: 4 tech: SSD serial: <filter> fw-rev: P2CR033 temp: 32.9 C
    scheme: GPT
  ID-2: /dev/sda maj-min: 8:0 vendor: Seagate model: ST1000DM010-2EP102
    size: 931.51 GiB block-size: physical: 4096 B logical: 512 B speed: 6.0 Gb/s
    tech: HDD rpm: 7200 serial: <filter> fw-rev: CC43 scheme: GPT
  ID-3: /dev/sdb maj-min: 8:16 vendor: SanDisk model: SSD PLUS 1000GB
    size: 931.51 GiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s
    tech: SSD serial: <filter> fw-rev: 04RL scheme: GPT
  Message: No optical or floppy data found.
  ID-1: / raw-size: 456.66 GiB size: 448.43 GiB (98.20%)
    used: 68.17 GiB (15.2%) fs: ext4 block-size: 4096 B dev: /dev/nvme0n1p2
    maj-min: 259:2 label: N/A uuid: 9e9979b1-6697-4240-b1e8-dd3a3dc68430
  ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
    used: 300 KiB (0.1%) fs: vfat block-size: 512 B dev: /dev/nvme0n1p1
    maj-min: 259:1 label: N/A uuid: 19D4-13C0
  ID-3: /mnt/sharedssd raw-size: 931.51 GiB size: 931.51 GiB (100.00%)
    used: 207.32 GiB (22.3%) fs: btrfs block-size: 4096 B dev: /dev/sdb1
    maj-min: 8:17 label: N/A uuid: 32f0c3fa-7d09-43a4-8ea8-c762b084669a
  ID-4: /run/media/evelyn/CA0A86BE0A86A6D3 raw-size: 930.88 GiB
    size: 930.88 GiB (100.00%) used: 43.26 GiB (4.6%) fs: ntfs block-size: 4096 B
    dev: /dev/sda3 maj-min: 8:3 label: N/A uuid: CA0A86BE0A86A6D3
  Kernel: swappiness: 60 (default) cache-pressure: 100 (default) zswap: yes
    compressor: zstd max-pool: 20%
  ID-1: swap-1 type: partition size: 8.8 GiB used: 2.45 GiB (27.8%)
    priority: -2 dev: /dev/nvme0n1p3 maj-min: 259:3 label: swap
    uuid: 2d57d1e1-9885-4e65-9aac-d6a536138a6d
  ID-1: /dev/sda1 maj-min: 8:1 size: 100 MiB fs: vfat label: N/A
    uuid: 9485-3073
  ID-2: /dev/sda2 maj-min: 8:2 size: 16 MiB fs: N/A label: N/A uuid: N/A
  ID-3: /dev/sda4 maj-min: 8:4 size: 530 MiB fs: ntfs label: N/A
    uuid: 6224C65124C6283D
  Hub-1: 1-0:1 info: hi-speed hub with single TT ports: 16 rev: 2.0
    speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0 chip-ID: 1d6b:0002
    class-ID: 0900
  Device-1: 1-1:2 info: Cambridge Silicon Radio Bluetooth Dongle (HCI mode)
    type: bluetooth driver: btusb interfaces: 2 rev: 2.0
    speed: 12 Mb/s (1.4 MiB/s) lanes: 1 mode: 1.1 chip-ID: 0a12:0001
    class-ID: e001
  Device-2: 1-6:42 info: Apple iPhone 5/5C/5S/6/SE/7/8/X/XR
    type: still imaging driver: ipheth,usbfs interfaces: 3 rev: 2.0
    speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0 power: 500mA
    chip-ID: 05ac:12a8 class-ID: 0601 serial: <filter>
  Device-3: 1-9:35 info: Dell MS116 Optical Mouse type: mouse
    driver: hid-generic,usbhid interfaces: 1 rev: 2.0 speed: 1.5 Mb/s (183 KiB/s)
    lanes: 1 mode: 1.0 power: 100mA chip-ID: 413c:301a class-ID: 0301
  Device-4: 1-10:4 info: Realtek 802.11ac NIC type: Network driver: rtl8821cu
    interfaces: 1 rev: 2.0 speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0
    power: 500mA chip-ID: 0bda:c811 class-ID: 0000 serial: <filter>
  Device-5: 1-11:33 info: Razer USA Cynosa Chroma type: keyboard,mouse
    driver: hid-generic,usbhid interfaces: 3 rev: 2.0 speed: 12 Mb/s (1.4 MiB/s)
    lanes: 1 mode: 1.1 power: 500mA chip-ID: 1532:022a class-ID: 0300
  Hub-2: 2-0:1 info: super-speed hub ports: 8 rev: 3.1
    speed: 10 Gb/s (1.16 GiB/s) lanes: 1 mode: 3.2 gen-2x1 chip-ID: 1d6b:0003
    class-ID: 0900
  System Temperatures: cpu: 37.0 C pch: 54.0 C mobo: N/A
  Fan Speeds (rpm): N/A
  Processes: 333 Uptime: 2d 5h 30m wakeups: 0 Init: systemd v: 254
  default: graphical tool: systemctl Compilers: gcc: 13.2.1 clang: 16.0.6
  Packages: 1457 pm: pacman pkgs: 1453 libs: 389 tools: pamac,yay pm: flatpak
  pkgs: 0 pm: snap pkgs: 4 Shell: Sudo (sudo) v: 1.9.15p4 default: Bash
  v: 5.2.21 running-in: tilix inxi: 3.3.31

Update: After testing with a first-party PS4 controller, the first-party controller pairs and works with no issue.