Skip to content

Instantly share code, notes, and snippets.

@timnugent
Last active August 26, 2024 20:17
Show Gist options
  • Save timnugent/ed65a79b2bd6c63788bfada3624756a4 to your computer and use it in GitHub Desktop.
Save timnugent/ed65a79b2bd6c63788bfada3624756a4 to your computer and use it in GitHub Desktop.
udev rule for the Xone 23C; sets configuration to state "2" so this shows up as a 4 input/4 output soundcard - otherwise shows up as only 2 input/2 output. Only tested with the Xone 32C configured for DVS. Put this file in /etc/udev/rules.d/
ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="22f0", ATTR{idProduct}=="0008", ATTR{bConfigurationValue}="2"
@molli1312
Copy link

@pierregermain I'm curious and can't wait for Friday. runs with the command the mixer on the rpi4 with mixxx-pi-gen?

@pierregermain
Copy link

Just to let you know @molli1312 : I have tested this on a Dell Laptop.

@TiBeN
Copy link

TiBeN commented May 11, 2023

Hi, i just acquired this great mixer and i have this exact same issue. But the trick to change "old_scheme_first" does not works for me.
I'm on ArchLinux with kernel 6.3.1. Despite "cat [...]/old_scheme_first" reports now correctly 'Y', bNumConfigurations for the Xone reports 1 in lsusb -v, even after unplug/plug again the usb cable.

If i "echo 2 > /sys/bus/usb/devices/3-8/bConfigurationValue" its returns "bash: echo: write error: Invalid argument". In journalctl i can see the udev rule from mixxx applied when plugin the mixer but it fails the same way.

According to the bug report on the kernel bugzilla it seems Ubuntu could have been "patched" its kernel in some way to workaround this.

Any idea ?

@molli1312
Copy link

molli1312 commented May 11, 2023

turn the power of mixer off and on again

@fhchl
Copy link

fhchl commented May 11, 2023

Changing the scheme worked like a charm for me. I made the change permanent by following this StackExchange answer. Thanks @pierregermain !

@TiBeN
Copy link

TiBeN commented May 12, 2023

@molli1312 All right, after a "reboot" of the mixer it now works as expected, i see correctly 4 channels in Mixxx.

Thank you man!

As a side note, in my setup at least, it is important to unplug the USB cable as well then reconnect only after the mixer is on. If the USB cable stay connected, the device is not recognized at all:

May 12 11:19:58 dellxps13 kernel: usb 3-8: new high-speed USB device number 6 using xhci_hcd
May 12 11:19:58 dellxps13 kernel: usb 3-8: New USB device found, idVendor=22f0, idProduct=0008, bcdDevice= 2.00
May 12 11:19:58 dellxps13 kernel: usb 3-8: New USB device strings: Mfr=1, Product=2, SerialNumber=3
May 12 11:19:58 dellxps13 kernel: usb 3-8: Product: Xone:23C
May 12 11:19:58 dellxps13 kernel: usb 3-8: Manufacturer: Allen&Heath
May 12 11:19:58 dellxps13 kernel: usb 3-8: SerialNumber: no serial number
May 12 11:19:58 dellxps13 kernel: usb 3-8: 1:2 : UAC_AS_GENERAL descriptor not found
May 12 11:19:58 dellxps13 kernel: usb 3-8: 2:2 : UAC_AS_GENERAL descriptor not found
May 12 11:19:58 dellxps13 mtp-probe[3020]: checking bus 3, device 6: "/sys/devices/pci0000:00/0000:00:14.0/usb3/3-8"
May 12 11:19:58 dellxps13 mtp-probe[3020]: bus: 3, device: 6 was not an MTP device
May 12 11:19:58 dellxps13 (udev-worker)[3040]: controlC1: /usr/lib/udev/rules.d/78-sound-card.rules:5 Failed to write ATTR{/sys/devices/pci0000:00/0000:00:14.0/usb3/3-8/3-8:1.0/sound/card1/controlC1/../uevent}, ignoring: No such file or directory
May 12 11:19:58 dellxps13 mtp-probe[3042]: checking bus 3, device 6: "/sys/devices/pci0000:00/0000:00:14.0/usb3/3-8"
May 12 11:19:58 dellxps13 mtp-probe[3042]: bus: 3, device: 6 was not an MTP device
May 12 11:20:02 dellxps13 kernel: usb 3-8: USB disconnect, device number 6

It seems an udev rule related to sound card initialization fails.
Once the system fall into this issue, whatever i do (unplug, replug, reboot the mixer) the device is not recognized. The only solution i found is to reboot the kernel. I'll look more further at this issue then report here if i find something interresting.

@fhchl
Copy link

fhchl commented Aug 26, 2024

I am having the problem again on newer kernels (6.9). The udev rule seems to have a wrong parameter according to journalctl -xe after restarting the device:

Aug 26 22:07:21 fhchl-macbookpro55 kernel: usb 4-2: new high-speed USB device number 10 using ehci-pci
Aug 26 22:07:21 fhchl-macbookpro55 kernel: usb 4-2: device descriptor read/8, error -71
Aug 26 22:07:21 fhchl-macbookpro55 kernel: usb 4-2: device descriptor read/8, error -71
Aug 26 22:07:21 fhchl-macbookpro55 kernel: usb 4-2: new high-speed USB device number 11 using ehci-pci
Aug 26 22:07:21 fhchl-macbookpro55 kernel: usb 4-2: device descriptor read/8, error -71
Aug 26 22:07:22 fhchl-macbookpro55 kernel: usb 4-2: device descriptor read/8, error -71
Aug 26 22:07:22 fhchl-macbookpro55 kernel: usb usb4-port2: attempt power cycle
Aug 26 22:07:22 fhchl-macbookpro55 kernel: usb 4-2: new high-speed USB device number 12 using ehci-pci
Aug 26 22:07:22 fhchl-macbookpro55 kernel: usb 4-2: New USB device found, idVendor=22f0, idProduct=0008, bcdDevice= 2.00
Aug 26 22:07:22 fhchl-macbookpro55 kernel: usb 4-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Aug 26 22:07:22 fhchl-macbookpro55 kernel: usb 4-2: Product: Xone:23C
Aug 26 22:07:22 fhchl-macbookpro55 kernel: usb 4-2: Manufacturer: Allen&Heath
Aug 26 22:07:22 fhchl-macbookpro55 kernel: usb 4-2: SerialNumber: no serial number
Aug 26 22:07:22 fhchl-macbookpro55 kernel: usb 4-2: 1:2 : UAC_AS_GENERAL descriptor not found
Aug 26 22:07:22 fhchl-macbookpro55 kernel: usb 4-2: 2:2 : UAC_AS_GENERAL descriptor not found
Aug 26 22:07:22 fhchl-macbookpro55 kernel: usb 4-2: Quirk or no altset; falling back to MIDI 1.0
Aug 26 22:07:22 fhchl-macbookpro55 mtp-probe[3207]: checking bus 4, device 12: "/sys/devices/pci0000:00/0000:00:06.1/usb4/4-2"
Aug 26 22:07:22 fhchl-macbookpro55 mtp-probe[3207]: bus: 4, device: 12 was not an MTP device
Aug 26 22:07:22 fhchl-macbookpro55 (udev-worker)[3206]: 4-2: /etc/udev/rules.d/99-xone.rules:1 Failed to write ATTR{/sys/devices/pci0000:00/0000:00:06.1/usb4/4-2/bConfigurationValue}="2", ignoring: Invalid argument
Aug 26 22:07:22 fhchl-macbookpro55 mtp-probe[3219]: checking bus 4, device 12: "/sys/devices/pci0000:00/0000:00:06.1/usb4/4-2"
Aug 26 22:07:22 fhchl-macbookpro55 mtp-probe[3219]: bus: 4, device: 12 was not an MTP device

I coudn't get channels 3 and 4 visible.

Any ideas?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment