Controller works when connected with USB C to USB C, but not USB 2/3.0

Hello, thank you in advance for any help. I have a strange issue and I dont really understand whats happening.

I have a fightstick that uses a board from Brooke (Snackbox Micro) that connects through USB C > USB. When connected normally through USB, it will not show up in controllers or in game. I have a USB C - USB C port on my motherboard, and when i connect using that port alone the stick appears as normal and works perfectly. I am at a total loss.

The stick appears under lsusb when connected from USBC to USBC, when connected normally, the stick glows showing it is connected but nothing appears. I am seriously stumped on this one and any help would be appreciated. I can use this stick on my machine, but its no fun if i cant take it anywhere haha.

INXI:

garuda-inxi
System:
  Kernel: 6.0.6-zen1-1-zen arch: x86_64 bits: 64
    compiler: gcc v: 12.2.0
    parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
    root=UUID=855a40ff-2fe4-4d97-a9f3-4e5d5c058c2c rw
    [email protected] intel_iommu=on iommu=pt quiet
    quiet splash rd.udev.log_priority=3
    vt.global_cursor_default=0 loglevel=3
  Desktop: KDE Plasma v: 5.26.2 tk: Qt v: 5.15.7
    info: latte-dock wm: kwin_x11 vt: 1 dm: SDDM
    Distro: Garuda Linux base: Arch Linux
Machine:
  Type: Desktop Mobo: ASUSTeK model: STRIX Z270E GAMING
    v: Rev 1.xx serial: <superuser required>
    UEFI: American Megatrends v: 1302 date: 03/15/2018
CPU:
  Info: model: Intel Core i7-7700K bits: 64 type: MT MCP
    arch: Kaby Lake gen: core 7 level: v3 note: check
    built: 2018 process: Intel 14nm family: 6
    model-id: 0x9E (158) stepping: 9 microcode: 0xF0
  Topology: cpus: 1x cores: 4 tpc: 2 threads: 8
    smt: enabled cache: L1: 256 KiB desc: d-4x32 KiB;
    i-4x32 KiB L2: 1024 KiB desc: 4x256 KiB L3: 8 MiB
    desc: 1x8 MiB
  Speed (MHz): avg: 4600 high: 4601 min/max: 800/4600
    scaling: driver: intel_pstate governor: performance
    cores: 1: 4600 2: 4601 3: 4600 4: 4600 5: 4600
    6: 4600 7: 4600 8: 4600 bogomips: 67200
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1
    sse4_2 ssse3
  Vulnerabilities:
  Type: itlb_multihit status: KVM: VMX unsupported
  Type: l1tf mitigation: PTE Inversion
  Type: mds mitigation: Clear CPU buffers; SMT
    vulnerable
  Type: meltdown mitigation: PTI
  Type: mmio_stale_data mitigation: Clear CPU buffers;
    SMT vulnerable
  Type: retbleed mitigation: IBRS
  Type: spec_store_bypass mitigation: Speculative Store
    Bypass disabled via prctl
  Type: spectre_v1 mitigation: usercopy/swapgs barriers
    and __user pointer sanitization
  Type: spectre_v2 mitigation: IBRS, IBPB: conditional,
    RSB filling, PBRSB-eIBRS: Not affected
  Type: srbds mitigation: Microcode
  Type: tsx_async_abort mitigation: TSX disabled
Graphics:
  Device-1: NVIDIA GA106 [GeForce RTX 3060]
    vendor: Micro-Star MSI driver: nvidia v: 520.56.06
    alternate: nouveau,nvidia_drm non-free: 515.xx+
    status: current (as of 2022-10) arch: Ampere
    code: GAxxx process: TSMC n7 (7nm) built: 2020-22
    pcie: gen: 3 speed: 8 GT/s lanes: 16 link-max: gen: 4
    speed: 16 GT/s bus-ID: 01:00.0 chip-ID: 10de:2503
    class-ID: 0300
  Display: x11 server: X.Org v: 21.1.4 with: Xwayland
    v: 22.1.5 compositor: kwin_x11 driver: X:
    loaded: nvidia unloaded: modesetting
    alternate: fbdev,nouveau,nv,vesa gpu: nvidia
    display-ID: :0 screens: 1
  Screen-1: 0 s-res: 4080x1920 s-dpi: 91
    s-size: 1139x536mm (44.84x21.10")
    s-diag: 1259mm (49.56")
  Monitor-1: DP-0 pos: primary,bottom-c res: 1920x1080
    dpi: 82 size: 598x336mm (23.54x13.23")
    diag: 686mm (27.01") modes: N/A
  Monitor-2: DP-3 pos: top-right res: 1080x1920 dpi: 82
    size: 336x598mm (13.23x23.54") diag: 686mm (27.01")
    modes: N/A
  Monitor-3: DP-4 pos: primary,top-left res: 1080x1920
    hz: 60 dpi: 93 size: 296x527mm (11.65x20.75")
    diag: 604mm (23.8") modes: N/A
  OpenGL: renderer: NVIDIA GeForce RTX 3060/PCIe/SSE2
    v: 4.6.0 NVIDIA 520.56.06 direct render: Yes
Audio:
  Device-1: Intel 200 Series PCH HD Audio vendor: ASUSTeK
    driver: snd_hda_intel v: kernel bus-ID: 1-5:4
    chip-ID: 041e:3264 bus-ID: 00:1f.3 class-ID: 0102
    chip-ID: 8086:a2f0 serial: <filter> class-ID: 0403
  Device-2: NVIDIA GA106 High Definition Audio
    vendor: Micro-Star MSI driver: snd_hda_intel v: kernel
    pcie: gen: 3 speed: 8 GT/s lanes: 16 link-max: gen: 4
    speed: 16 GT/s bus-ID: 01:00.1 chip-ID: 10de:228e
    class-ID: 0403
  Device-3: Creative Sound Blaster X3 type: USB
    driver: cdc_acm,hid-generic,snd-usb-audio,usbhid
  Device-4: Blue Microphones Yeti Stereo Microphone
    type: USB driver: hid-generic,snd-usb-audio,usbhid
    bus-ID: 1-6:5 chip-ID: b58e:9e84 class-ID: 0300
    serial: <filter>
  Sound API: ALSA v: k6.0.6-zen1-1-zen running: yes
  Sound Server-1: PulseAudio v: 16.1 running: no
  Sound Server-2: PipeWire v: 0.3.59 running: yes
Network:
  Device-1: Intel Ethernet I219-V vendor: ASUSTeK
    driver: e1000e v: kernel port: N/A bus-ID: 00:1f.6
    chip-ID: 8086:15b8 class-ID: 0200
  IF: enp0s31f6 state: up speed: 1000 Mbps duplex: full
    mac: <filter>
  Device-2: Qualcomm Atheros QCA6174 802.11ac Wireless
    Network Adapter vendor: ASUSTeK driver: ath10k_pci
    v: kernel pcie: gen: 1 speed: 2.5 GT/s lanes: 1
    bus-ID: 04:00.0 chip-ID: 168c:003e class-ID: 0280
  IF: wlp4s0 state: down mac: <filter>
  IF-ID-1: tun0 state: unknown speed: 10 Mbps
    duplex: full mac: N/A
  IF-ID-2: virbr0 state: down mac: <filter>
Bluetooth:
  Device-1: ASUSTek Qualcomm Bluetooth 4.1 type: USB
    driver: btusb v: 0.8 bus-ID: 1-7:6 chip-ID: 0b05:1825
    class-ID: e001
  Report: bt-adapter ID: hci0 rfk-id: 0 state: up
    address: <filter>
RAID:
  Hardware-1: Intel SATA Controller [RAID mode]
    driver: ahci v: 3.0 port: f020 bus-ID: 00:17.0
    chip-ID: 8086:2822 rev: class-ID: 0104
Drives:
  Local Storage: total: 2.05 TiB used: 1.3 TiB (63.3%)
  SMART Message: Unable to run smartctl. Root
    privileges required.
  ID-1: /dev/sda maj-min: 8:0 vendor: Seagate
    model: ST2000DM001-1ER164 size: 1.82 TiB block-size:
    physical: 4096 B logical: 512 B speed: 6.0 Gb/s
    type: HDD rpm: 7200 serial: <filter> rev: CC26
    scheme: GPT
  ID-2: /dev/sdb maj-min: 8:16 vendor: Samsung model: SSD
    850 EVO 250GB size: 232.89 GiB block-size:
    physical: 512 B logical: 512 B speed: 6.0 Gb/s
    type: SSD serial: <filter> rev: 2B6Q scheme: GPT
Partition:
  ID-1: / raw-size: 232.59 GiB size: 232.59 GiB (100.00%)
    used: 35.99 GiB (15.5%) fs: btrfs dev: /dev/sdb2
    maj-min: 8:18
  ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB
    (99.80%) used: 608 KiB (0.2%) fs: vfat dev: /dev/sdb1
    maj-min: 8:17
  ID-3: /home raw-size: 232.59 GiB size: 232.59 GiB
    (100.00%) used: 35.99 GiB (15.5%) fs: btrfs
    dev: /dev/sdb2 maj-min: 8:18
  ID-4: /var/log raw-size: 232.59 GiB size: 232.59 GiB
    (100.00%) used: 35.99 GiB (15.5%) fs: btrfs
    dev: /dev/sdb2 maj-min: 8:18
  ID-5: /var/tmp raw-size: 232.59 GiB size: 232.59 GiB
    (100.00%) used: 35.99 GiB (15.5%) fs: btrfs
    dev: /dev/sdb2 maj-min: 8:18
Swap:
  Kernel: swappiness: 133 (default 60)
    cache-pressure: 100 (default)
  ID-1: swap-1 type: zram size: 31.28 GiB used: 0 KiB
    (0.0%) priority: 100 dev: /dev/zram0
Sensors:
  System Temperatures: cpu: 60.0 C mobo: N/A gpu: nvidia
    temp: 45 C
  Fan Speeds (RPM): N/A gpu: nvidia fan: 33%
Info:
  Processes: 327 Uptime: 53m wakeups: 0 Memory: 31.28 GiB
  used: 8.62 GiB (27.6%) Init: systemd v: 251
  default: graphical tool: systemctl Compilers:
  gcc: 12.2.0 clang: 14.0.6 Packages: pm: pacman
  pkgs: 2029 libs: 630 tools: octopi,pamac,paru
  pm: flatpak pkgs: 0 Shell: fish v: 3.5.1 default: Bash
  v: 5.1.16 running-in: alacritty inxi: 3.3.22
Garuda (2.6.9-1):
  System install date:     2022-10-23
  Last full system update: 2022-11-03
  Is partially upgraded:   No
  Relevant software:       NetworkManager
  Windows dual boot:       No/Undetected
  Snapshots:               Snapper
  Failed units:            shadow.service

I have also tested this stick with a known good working cable and tested on 2 machines in the house running garuda. Only my main PC with the USBC to USBC will work.

I know its a weird issue, but I appreciate any help, and i hope this is the right place to ask. Thank you again.

It may be good to try another cable anyway, just in case. :wink:

If the controller needs 3.0+ bus speed to work, check that the cable is 3.0+ spec as well--not just the port. Some visual clues are the blue circuit board inside the plug, or the SS symbol.

s-l500

Thank you for the reply. I am aware of what to look for as far as cables go. I bought a new cable from microcenter just to be sure. 6ft USB 3.0 Cable "high speed data transfer", blue inside usb. Also used a official nintendo switch USB C cable which is known to work on this controller and does work with my switch controller, no change on either.

USB-C in the back, still works however.

EDIT: Used a friends laptop which has windows on it to see if the cables worked there. All cables i tried worked. From the original cable i tested all the way to the new cable i just purchased.

Hi @MANTISxB, I'm wondering if you have had a chance to test any other kernels to see if it might be a kernel bug that has come down from upstream? The LTS, mainline, or vanilla Linux kernels would be good ones to test.

So i have tested both Zen and LTS. neither have changed.

For now the issue is "solved". The windows machines I have tested it on all work with any cable. The VM (passthrough) im working on saw the device without any issue after install.

Since this works on any/all USB-C ports ive tested it on. Im going to considered this Solved, as other things are much more pressing.

I have also tested the cables on a PS4, PS5, and Switch and they all work. Since its working ill just call it good for now. Thank you all for the help. Im going to reinstall Garuda anyway and go for a GPU passthrough so this will be a moot point in a minute regardless.

Love this distro, love the team and the awesome people here. Thank you all for your help with these weird issues ive had over the past few weeks. Yall are amazing.