Focusrite Scarlett 18i20 2nd Gen mixer driver

Talk about your MIDI interfaces, microphones, keyboards...

Moderators: khz, MattKingUSA

Philotomy
Established Member
Posts: 52
Joined: Sun Apr 02, 2017 9:47 am
Been thanked: 1 time

Re: Focusrite Scarlett 18i20 2nd Gen mixer driver

Post by Philotomy »

Despite everything previously working fine, I ran into some recent trouble starting Jack. Eventually, my troubleshooting led me to the step of disabling the mixer driver (which was working fine while Jack wasn't running). Once I disabled the mixer driver, I could start Jack, again. The error messages that I received when trying to start Jack with the mixer driver enabled are listed in the thread linked, above.

Not sure what changed (I'm running Arch, and I'm sure I've run pacman -Syu and updated the system since the last time I successfully started Jack with the mixer enabled), but thought I'd give a heads-up in this thread. If anyone has any clue as to what the root cause of the problem is/was, I'd be interested.
My recordings on SoundCloud
Distro: Arch, DAW: Bitwig, Interface: Scarlett 18i8 Gen 2
User avatar
sadko4u
Established Member
Posts: 847
Joined: Mon Sep 28, 2015 9:03 pm
Been thanked: 16 times

Re: Focusrite Scarlett 18i20 2nd Gen mixer driver

Post by sadko4u »

Have you tried the driver with latest changes from me?
LSP (Linux Studio Plugins) Developer and Maintainer.
Philotomy
Established Member
Posts: 52
Joined: Sun Apr 02, 2017 9:47 am
Been thanked: 1 time

Re: Focusrite Scarlett 18i20 2nd Gen mixer driver

Post by Philotomy »

sadko4u wrote: Sun Nov 22, 2020 7:57 pm Have you tried the driver with latest changes from me?
No, I haven't. I'm currently using the driver included in the main kernel (currently running 5.9.9-arch1-1). FWIW, to get that to work I needed to plug the 18i8 Gen2 into a USB 3.0 port and make sure it used xhci. Currently, I have the 18i8 Gen2 plugged into a USB 2.0 port with the driver disabled.

I've been catching up on the thread. Thank you for your additional work on this. I'll look into compiling a new kernel with your driver changes and let you know how that works with the 18i8 Gen2. It might be a few weeks, though, with the holidays, and considering that this is my main "daily driver" workstation.
My recordings on SoundCloud
Distro: Arch, DAW: Bitwig, Interface: Scarlett 18i8 Gen 2
Papa Charly
Established Member
Posts: 7
Joined: Tue Jan 07, 2014 10:31 am

Re: Focusrite Scarlett 18i20 2nd Gen mixer driver

Post by Papa Charly »

On different systems I sometimes got my interfaces working with changing the USB- port also while using a USB-3.0-port too. The actual Linux- kernels are usually working out of the box with at least 2.gen.- Scarlett interfaces!! So taking a look into the systems-Bios and also trying different USB- ports should help to use the better USB-driver...
geoffrey
Established Member
Posts: 98
Joined: Mon Jul 30, 2018 2:08 am
Has thanked: 1 time
Been thanked: 7 times

Re: Focusrite Scarlett 18i20 2nd Gen mixer driver

Post by geoffrey »

Hi!

It's been a while, but I finally got time and access to hardware to find and fix the long-outstanding USB 2 (EHCI) bug.

Anyone who has a 6i6, 18i8, or 18i20 2nd Gen device either working or not working, please could you help me test:
https://github.com/geoffreybennett/scar ... /v5.12.5s1 (source, binary RPMs, and debs available there)
  • If it was working before, it should still be working (I changed the initialisation sequence so it should be compatible with Gen 2 and Gen 3).
  • If it failed before with the -110 error and it was using the ehci-pci host driver, then it should now work.
  • If it was failing before with some other problem, please let me know.
If this test succeeds for everyone then I think it would be appropriate to enable the driver by default (no need to hide it beind the device_setup=1 option).

Thanks,
Geoffrey.
User avatar
Michael Willis
Established Member
Posts: 1174
Joined: Mon Oct 03, 2016 3:27 pm
Location: Rocky Mountains, North America
Has thanked: 9 times
Been thanked: 18 times
Contact:

Re: Focusrite Scarlett 18i20 2nd Gen mixer driver

Post by Michael Willis »

Hi @geoffrey! Impeccable timing, I just barely bought a used 2nd-gen 18i20. I haven't ever used this mixer driver before. I downloaded the kernel in your link and gave it a try.

I wrote the following to /etc/modprobe.d/scarlett.conf:

Code: Select all

options snd_usb_audio vid=0x1235 pid=0x8201 device_setup=1
Upon plugging in the interface, jounalctl says:

Code: Select all

May 20 18:07:38 reginald kernel: usb 3-4: new high-speed USB device number 3 using xhci_hcd
May 20 18:07:38 reginald kernel: usb 3-4: New USB device found, idVendor=1235, idProduct=8201, bcdDevice= 6.75
May 20 18:07:38 reginald kernel: usb 3-4: New USB device strings: Mfr=1, Product=3, SerialNumber=2
May 20 18:07:38 reginald kernel: usb 3-4: Product: Scarlett 18i20 USB
May 20 18:07:38 reginald kernel: usb 3-4: Manufacturer: Focusrite
May 20 18:07:38 reginald kernel: usb 3-4: SerialNumber: 00004069
May 20 18:07:42 reginald kernel: usb 3-4: Focusrite Scarlett Gen 2 Mixer Driver enabled pid=0x8201
I did some cursory testing with alsamixer and found that it seemed to work, but honestly I don't have much use for the hardware mixer. I bought the interface primarily to allow me to use more microphones, and only intend to monitor stereo output from the computer.

I found that plugging my monitors into lines 7/8 and 9/10 (the outputs that correspond to the headphone outputs), the volume controls work as expected, but those volume controls didn't change the stereo balance on the headphones. For example, if I turn 7 down all the way, it reduces the stereo volume from the first headphone output, but I heard equal volume from the headphones' left and right channels. If I turn both 7 and 8 down all the way, then I didn't hear anything out of the headphones. I'm guessing that is a hardware design decision though.

Incidentally, I tried using Robin's scarlett-mixer, but it crashed when I tried to run it. I would imagine that this isn't any fault of the driver:

Code: Select all

michael@reginald:~/scarlett-mixer$ ./scarlett-mixer 
*** stack smashing detected ***: <unknown> terminated
Aborted
geoffrey
Established Member
Posts: 98
Joined: Mon Jul 30, 2018 2:08 am
Has thanked: 1 time
Been thanked: 7 times

Re: Focusrite Scarlett 18i20 2nd Gen mixer driver

Post by geoffrey »

Hi @Michael Willis!
Michael Willis wrote: Fri May 21, 2021 12:30 am Hi @geoffrey! Impeccable timing, I just barely bought a used 2nd-gen 18i20. I haven't ever used this mixer driver before. I downloaded the kernel in your link and gave it a try.

I wrote the following to /etc/modprobe.d/scarlett.conf:

Code: Select all

options snd_usb_audio vid=0x1235 pid=0x8201 device_setup=1
Upon plugging in the interface, jounalctl says:

Code: Select all

May 20 18:07:38 reginald kernel: usb 3-4: new high-speed USB device number 3 using xhci_hcd
May 20 18:07:38 reginald kernel: usb 3-4: New USB device found, idVendor=1235, idProduct=8201, bcdDevice= 6.75
May 20 18:07:38 reginald kernel: usb 3-4: New USB device strings: Mfr=1, Product=3, SerialNumber=2
May 20 18:07:38 reginald kernel: usb 3-4: Product: Scarlett 18i20 USB
May 20 18:07:38 reginald kernel: usb 3-4: Manufacturer: Focusrite
May 20 18:07:38 reginald kernel: usb 3-4: SerialNumber: 00004069
May 20 18:07:42 reginald kernel: usb 3-4: Focusrite Scarlett Gen 2 Mixer Driver enabled pid=0x8201
Yep, that's what's meant to happen!
Michael Willis wrote: Fri May 21, 2021 12:30 am I did some cursory testing with alsamixer and found that it seemed to work, but honestly I don't have much use for the hardware mixer. I bought the interface primarily to allow me to use more microphones, and only intend to monitor stereo output from the computer.
Something that may be of use to you is the routing functionality. For example, you can set it up so that stereo audio sent to channels 1+2 goes to the analogue outputs 1+2 and 7+8 and 9+10. Of course if you're using a DAW you probably don't need that functionality, but if you're playing audio from an app that only understands stereo output, this is useful.
Michael Willis wrote: Fri May 21, 2021 12:30 am I found that plugging my monitors into lines 7/8 and 9/10 (the outputs that correspond to the headphone outputs), the volume controls work as expected, but those volume controls didn't change the stereo balance on the headphones. For example, if I turn 7 down all the way, it reduces the stereo volume from the first headphone output, but I heard equal volume from the headphones' left and right channels. If I turn both 7 and 8 down all the way, then I didn't hear anything out of the headphones. I'm guessing that is a hardware design decision though.
Hm, not for me. I tested last night on my 18i20 Gen 2 and all the line output level controls worked independently for the line outputs on the rear and for the headphones outputs on the front.
To narrow this problem down:
  • If you play a stereo track are the outputs separated as they should be? E.g. https://www.youtube.com/watch?v=2ZrWHtvSog4
  • If you are able to test using the official Focusrite Control software, what happens when you try the same thing?
Michael Willis wrote: Fri May 21, 2021 12:30 am Incidentally, I tried using Robin's scarlett-mixer, but it crashed when I tried to run it. I would imagine that this isn't any fault of the driver:

Code: Select all

michael@reginald:~/scarlett-mixer$ ./scarlett-mixer 
*** stack smashing detected ***: <unknown> terminated
Aborted
Correct. Robin's scarlett-mixer only works with Gen 1 interfaces.
DrMeatball
Established Member
Posts: 13
Joined: Tue Feb 19, 2019 5:58 am
Has thanked: 2 times
Been thanked: 2 times

Re: Focusrite Scarlett 18i20 2nd Gen mixer driver

Post by DrMeatball »

Pre-apologies, I am a complete dumbass trying to get my 18i20 working with Jack :)

journalctl -f

gave me

Jun 05 17:30:20 patrick-i9 kernel: usb 1-2.2.2: new high-speed USB device number 17 using xhci_hcd
Jun 05 17:30:20 patrick-i9 kernel: usb 1-2.2.2: New USB device found, idVendor=1235, idProduct=8201, bcdDevice= 6.75
Jun 05 17:30:20 patrick-i9 kernel: usb 1-2.2.2: New USB device strings: Mfr=1, Product=3, SerialNumber=2
Jun 05 17:30:20 patrick-i9 kernel: usb 1-2.2.2: Product: Scarlett 18i20 USB
Jun 05 17:30:20 patrick-i9 kernel: usb 1-2.2.2: Manufacturer: Focusrite
Jun 05 17:30:20 patrick-i9 kernel: usb 1-2.2.2: SerialNumber: 03019063
Jun 05 17:30:20 patrick-i9 kernel: usb 1-2.2.2: Focusrite Scarlett Gen 2 Mixer Driver disabled; use options snd_usb_audio device_setup=1 to enable and report any issues to g@b4.vu

so I

sudo pico /etc/modprobe.d/scarlett.conf

added

options snd_usb_audio device_setup=1

saved, etc, reboot


Am I missing anything? I'm still getting

[ 822.946610] usb 1-2.2.2: USB disconnect, device number 17
[ 829.799899] usb 1-2.2.2: new high-speed USB device number 19 using xhci_hcd
[ 829.888621] usb 1-2.2.2: New USB device found, idVendor=1235, idProduct=8201, bcdDevice= 6.75
[ 829.888626] usb 1-2.2.2: New USB device strings: Mfr=1, Product=3, SerialNumber=2
[ 829.888629] usb 1-2.2.2: Product: Scarlett 18i20 USB
[ 829.888632] usb 1-2.2.2: Manufacturer: Focusrite
[ 829.888635] usb 1-2.2.2: SerialNumber: 03019063
[ 830.107717] usb 1-2.2.2: Focusrite Scarlett Gen 2 Mixer Driver disabled; use options snd_usb_audio device_setup=1 to enable and report any issues to g@b4.vu

in dmesg

What am I doing wrong? TY!
User avatar
Michael Willis
Established Member
Posts: 1174
Joined: Mon Oct 03, 2016 3:27 pm
Location: Rocky Mountains, North America
Has thanked: 9 times
Been thanked: 18 times
Contact:

Re: Focusrite Scarlett 18i20 2nd Gen mixer driver

Post by Michael Willis »

@DrMeatball, try modifying the line in your scarlett.conf to specify the vendor id and product id:

Code: Select all

options snd_usb_audio vid=0x1235 pid=0x8201 device_setup
Post Reply