Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
HID Hercules DJ Air controller
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware
View previous topic :: View next topic  
Author Message
Adrien.D
Tux's lil' helper
Tux's lil' helper


Joined: 18 Jan 2015
Posts: 84

PostPosted: Sat Apr 18, 2020 2:59 pm    Post subject: HID Hercules DJ Air controller Reply with quote

Hello,

I bought a Hercules DJ Control Air.

it'a a DJ Controller plugged in USB.

It works on Fedora but not on Gentoo.

How can i konw which option used by the controller on fedora to enable it on gentoo ?
It's a kernel configuration because if i take the config file of Fedora kernel and compile on my computer, after rebooting, it works. (Not software problem)

lsusb :
Code:
Bus 001 Device 007: ID 06f8:b10f Guillemot Corp.

When i plug :
Code:
[11644.357804] usb 1-11: new full-speed USB device number 9 using xhci_hcd
[11644.647170] usb 1-11: New USB device found, idVendor=06f8, idProduct=b10f, bcdDevice= 1.00
[11644.647172] usb 1-11: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[11644.647173] usb 1-11: Product: DJ Control Air
[11644.647174] usb 1-11: Manufacturer: Hercules
[11644.729175] usb 1-11: Warning! Unlikely big volume range (=12160), cval->res is probably wrong.
[11644.729176] usb 1-11: [3] FU [PCM Playback Volume] ch = 4, val = -9088/3072/1

_________________
MSI Gaming Pro X470 - AMD Ryzen 5 2600X - 16Go RAM - Radeon RX 560 (amdgpu)
default/linux/amd64/17.1/desktop/gnome
gentoo-sources-5.4.x
Back to top
View user's profile Send private message
ipic
Apprentice
Apprentice


Joined: 29 Dec 2003
Posts: 298
Location: UK

PostPosted: Sat Apr 18, 2020 11:06 pm    Post subject: Reply with quote

If you can use lsusb -t on Ferdora, that should tell you which driver the device is using. For example, on my machine:
Code:

an2 ~ # lsusb -t             
/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 480M
    |__ Port 1: Dev 2, If 2, Class=Audio, Driver=snd-usb-audio, 480M
    |__ Port 1: Dev 2, If 0, Class=Video, Driver=uvcvideo, 480M
    |__ Port 1: Dev 2, If 3, Class=Audio, Driver=snd-usb-audio, 480M
    |__ Port 1: Dev 2, If 1, Class=Video, Driver=uvcvideo, 480M
    |__ Port 2: Dev 3, If 0, Class=Vendor Specific Class, Driver=dvb_usb_dib0700, 480M
    |__ Port 3: Dev 4, If 0, Class=Vendor Specific Class, Driver=xpad, 12M
    |__ Port 3: Dev 4, If 1, Class=Vendor Specific Class, Driver=, 12M
    |__ Port 3: Dev 4, If 2, Class=Vendor Specific Class, Driver=, 12M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 10000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/10p, 480M
    |__ Port 1: Dev 2, If 0, Class=Vendor Specific Class, Driver=asix, 480M
    |__ Port 2: Dev 3, If 0, Class=Hub, Driver=hub/7p, 480M
        |__ Port 2: Dev 7, If 0, Class=Vendor Specific Class, Driver=mct_u232, 12M
        |__ Port 5: Dev 8, If 0, Class=Printer, Driver=usblp, 12M
    |__ Port 6: Dev 4, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
    |__ Port 7: Dev 6, If 0, Class=Mass Storage, Driver=usb-storage, 12M
ian2 ~ #


Then you have to use lsusb listing to backtrack the devices to the vendor id's:
Code:

ian2 ~ # lsusb
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 004: ID 24c6:581a 
Bus 003 Device 003: ID 2040:7080 Hauppauge
Bus 003 Device 002: ID 046d:0825 Logitech, Inc. Webcam C270
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 006: ID 048d:1336 Integrated Technology Express, Inc. SD/MMC Cardreader
Bus 001 Device 004: ID 046d:c047 Logitech, Inc. Laser Mouse M-UAL120
Bus 001 Device 008: ID 03f0:3902 HP, Inc PhotoSmart 130
Bus 001 Device 007: ID 0711:0230 Magic Control Technology Corp. MCT-232 Serial Port
Bus 001 Device 003: ID 04cc:1521 ST-Ericsson USB 2.0 Hub
Bus 001 Device 002: ID 0b95:7720 ASIX Electronics Corp. AX88772
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
ian2 ~ #


As an example, from the above, my HP Photosmart printer (Bus 1 Device 8 ) is using Driver=usblp

Alternatively, do a lsmod before plugging the device in, and then after plugging it in (on Fedora again), and see which module it loads.

When you have the driver or module name, Google will usually yield the kernel config setting.
Back to top
View user's profile Send private message
Adrien.D
Tux's lil' helper
Tux's lil' helper


Joined: 18 Jan 2015
Posts: 84

PostPosted: Sun Apr 19, 2020 9:14 am    Post subject: Reply with quote

Hi thanks !

lsusb :
Quote:
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 004: ID 1bcf:2883 Sunplus Innovation Technology Inc.
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 06f8:b10f Guillemot Corp. DJ Control Air
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub


So bus 3 Device 2

lsusb -t
Code:
/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 480M
    |__ Port 4: Dev 2, If 0, Class=Vendor Specific Class, Driver=, 12M
    |__ Port 4: Dev 2, If 1, Class=Vendor Specific Class, Driver=, 12M
    |__ Port 4: Dev 2, If 2, Class=Audio, Driver=snd-usb-audio, 12M
    |__ Port 4: Dev 2, If 3, Class=Audio, Driver=snd-usb-audio, 12M
    |__ Port 4: Dev 2, If 4, Class=Audio, Driver=snd-usb-audio, 12M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M
        |__ Port 3: Dev 4, If 0, Class=Video, Driver=uvcvideo, 480M
        |__ Port 3: Dev 4, If 1, Class=Video, Driver=uvcvideo, 480M


snd-usb-audio used for the integrated sound card : OK
but 2 lines with Driver= :(
I don't have info :(
_________________
MSI Gaming Pro X470 - AMD Ryzen 5 2600X - 16Go RAM - Radeon RX 560 (amdgpu)
default/linux/amd64/17.1/desktop/gnome
gentoo-sources-5.4.x
Back to top
View user's profile Send private message
ipic
Apprentice
Apprentice


Joined: 29 Dec 2003
Posts: 298
Location: UK

PostPosted: Sun Apr 19, 2020 9:30 am    Post subject: Reply with quote

In your first post you said that this device works on Fedora.

So, just to be sure, did you obtain the lsusb output on Fedora or Gentoo?
Back to top
View user's profile Send private message
Adrien.D
Tux's lil' helper
Tux's lil' helper


Joined: 18 Jan 2015
Posts: 84

PostPosted: Sun Apr 19, 2020 9:32 am    Post subject: Reply with quote

It's the output from Fedora
_________________
MSI Gaming Pro X470 - AMD Ryzen 5 2600X - 16Go RAM - Radeon RX 560 (amdgpu)
default/linux/amd64/17.1/desktop/gnome
gentoo-sources-5.4.x
Back to top
View user's profile Send private message
ipic
Apprentice
Apprentice


Joined: 29 Dec 2003
Posts: 298
Location: UK

PostPosted: Sun Apr 19, 2020 9:41 am    Post subject: Reply with quote

Thanks for the clarification.

On your Gentoo system, can you see the following:
Code:
ian2 ~ # zcat /proc/config.gz | grep -i snd_usb
CONFIG_SND_USB=y
CONFIG_SND_USB_AUDIO=m
....


(this will only work if you set CONFIG_IKCONFIG=y and CONFIG_IKCONFIG_PROC=y in kernel configuration.
If you didn't, try grep -i snd_usb /usr/src/linux/.config)
Back to top
View user's profile Send private message
Adrien.D
Tux's lil' helper
Tux's lil' helper


Joined: 18 Jan 2015
Posts: 84

PostPosted: Sun Apr 19, 2020 9:50 am    Post subject: Reply with quote

Yes

Code:
CONFIG_SND_USB=y
CONFIG_SND_USB_AUDIO=m
CONFIG_SND_USB_AUDIO_USE_MEDIA_CONTROLLER=y


Sound card detected. Not the controller to control Mixxx.

I tried to copy the config fedora kernel and compile the gentoo kernel wiith config of fedora (very long because generic kernel and lot of modules).
I works on the same system with fedora kernel config (so it's not a problem with softwares installed, but kernel problem)
_________________
MSI Gaming Pro X470 - AMD Ryzen 5 2600X - 16Go RAM - Radeon RX 560 (amdgpu)
default/linux/amd64/17.1/desktop/gnome
gentoo-sources-5.4.x
Back to top
View user's profile Send private message
ipic
Apprentice
Apprentice


Joined: 29 Dec 2003
Posts: 298
Location: UK

PostPosted: Sun Apr 19, 2020 10:10 am    Post subject: Reply with quote

If it is the kernel, it is puzzling that the mixer device does not claim a driver on fedora (according to your lsusb output).

Based on what I find about this device using Google, it is a MIDI compliant device.
So, here are some MIDI settings that would be worth looking at in your kernel:
Code:

ian2 ~ # zcat /proc/config.gz | grep -i midi
CONFIG_SND_RAWMIDI=m
CONFIG_SND_SEQ_MIDI_EVENT=m
CONFIG_SND_SEQ_MIDI=m
CONFIG_SND_SEQ_MIDI_EMUL=m
CONFIG_SND_SEQ_VIRMIDI=m
CONFIG_SND_VIRMIDI=m
CONFIG_USB_F_MIDI=m
CONFIG_USB_CONFIGFS_F_MIDI=y
CONFIG_USB_MIDI_GADGET=m
ian2 ~ #
Back to top
View user's profile Send private message
Adrien.D
Tux's lil' helper
Tux's lil' helper


Joined: 18 Jan 2015
Posts: 84

PostPosted: Sun Apr 19, 2020 10:27 am    Post subject: Reply with quote

Oh, good idea Midi, but all is same between fedora and gentoo here :(
_________________
MSI Gaming Pro X470 - AMD Ryzen 5 2600X - 16Go RAM - Radeon RX 560 (amdgpu)
default/linux/amd64/17.1/desktop/gnome
gentoo-sources-5.4.x
Back to top
View user's profile Send private message
ipic
Apprentice
Apprentice


Joined: 29 Dec 2003
Posts: 298
Location: UK

PostPosted: Sun Apr 19, 2020 10:54 am    Post subject: Reply with quote

Hmmm.

You say it isn't software on Gentoo, but there are several Gentoo wiki articles about configuring for midi.

This one mentions a midi use flag
This one mentions MIDI controllers

This forum post is about MIDI keyboards

They don't seem to have any special kernel advice beyond activating MIDI support and the MIDI driver.

Try a midi use flag in make.conf maybe?
Back to top
View user's profile Send private message
ipic
Apprentice
Apprentice


Joined: 29 Dec 2003
Posts: 298
Location: UK

PostPosted: Sun Apr 19, 2020 11:56 am    Post subject: Reply with quote

Back to the kernel, if this was me, I'd enable every option to do with sound, midi, and all usb devices for sound or midi as modules.

If that didn't work, I'd take a diff between the Fedora and Gentoo .config files and try and spot differences in the sound/midi settings.

And finally, I'd plug the device in, do a clean boot under Fedora, and then look at all dmesg lines that contain 'usb' to try and work out what is claiming the device.

My previous post is probably not of any use, given you say it works if you use the Fedora config file to make your Gentoo kernel.
Back to top
View user's profile Send private message
ipic
Apprentice
Apprentice


Joined: 29 Dec 2003
Posts: 298
Location: UK

PostPosted: Sun Apr 19, 2020 12:01 pm    Post subject: Reply with quote

There is this article that may be of help.
Back to top
View user's profile Send private message
Adrien.D
Tux's lil' helper
Tux's lil' helper


Joined: 18 Jan 2015
Posts: 84

PostPosted: Sun Apr 19, 2020 12:39 pm    Post subject: Reply with quote

ipic wrote:
There is this article that may be of help.


Yes i see this article. I tried too the udev rule, no success.

I think it's not the software because on the same machine, with the same kernel but 2 configs different, 1 work and 1 doesn't work.

When it works, i'm surprised that there are no tricks to see which module used and not other.

Is it possible an option works only when built-in instead of module ?
_________________
MSI Gaming Pro X470 - AMD Ryzen 5 2600X - 16Go RAM - Radeon RX 560 (amdgpu)
default/linux/amd64/17.1/desktop/gnome
gentoo-sources-5.4.x
Back to top
View user's profile Send private message
ipic
Apprentice
Apprentice


Joined: 29 Dec 2003
Posts: 298
Location: UK

PostPosted: Sun Apr 19, 2020 2:04 pm    Post subject: Reply with quote

Since the Fedora .config works, I'd go with whatever the settings are in there, if there is a difference. I guess if a module is not loaded automatically it can make a difference.

If I had this problem I would solve it with "brute force", which means, start with the .config that works, and steadily remove stuff until it stops working. at that point you have an idea of what is needed in your non working .config. Try it. Rinse and repeat until you have what you want.

Sorry, I don't have anything else :-(

(PS: when i was being paid to be a systems integrator, the brute force approach was often used, especially since work was paid by the hour :-) )
Back to top
View user's profile Send private message
Adrien.D
Tux's lil' helper
Tux's lil' helper


Joined: 18 Jan 2015
Posts: 84

PostPosted: Sun Apr 19, 2020 5:18 pm    Post subject: Reply with quote

Thanks, it's a good idea. Juste a problem, the Hercules DJ Air controller i bought have a problem, after 2 minutes of mix (on fedora), it shut off :(

Now it's impossible to work (the second-hand equipment seems to be defective)

I can't test more now, and i lost money :(

I will buy an other controller and follow your idea, i think it's the best !
_________________
MSI Gaming Pro X470 - AMD Ryzen 5 2600X - 16Go RAM - Radeon RX 560 (amdgpu)
default/linux/amd64/17.1/desktop/gnome
gentoo-sources-5.4.x
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum