Focusrite Scarlett 18i20 Gen 3

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

Moderators: khz, MattKingUSA

User avatar
sadko4u
Established Member
Posts: 824
Joined: Mon Sep 28, 2015 9:03 pm

Re: Focusrite Scarlett 18i20 Gen 3

Post by sadko4u »

I have an issue with faders. They work very slow or block the client application. I'm trying to figure out what's happening but probably I need help.
LSP (Linux Studio Plugins) Developer and Maintainer.

User avatar
sadko4u
Established Member
Posts: 824
Joined: Mon Sep 28, 2015 9:03 pm

Re: Focusrite Scarlett 18i20 Gen 3

Post by sadko4u »

I'm getting the infinite loop of the following messages:
[ 2802.720004] usb 3-2: mixer_interrupt: ustatus=0, actual_length=8
[ 2802.720005] usb 3-2: mixer_interrupt: data=1
[ 2802.720006] usb 3-2: snd_ctl_notify: mask=1, idx=0
[ 2802.720007] usb 3-2: snd_ctl_notify: mask=1, idx=1
[ 2802.720136] usb 3-2: mutex_unlock(usb_mutex)
[ 2802.720156] usb 3-2: mutex_lock(usb_mutex)
[ 2802.720157] usb 3-2: scarlett2_fill_request_header
[ 2802.720158] usb 3-2: scarlett2_usb_tx
[ 2802.720509] usb 3-2: scarlett2_usb_rx
[ 2802.720880] usb 3-2: mixer_interrupt: ustatus=0, actual_length=8
[ 2802.720882] usb 3-2: mixer_interrupt: data=1
[ 2802.720882] usb 3-2: snd_ctl_notify: mask=1, idx=0
[ 2802.720884] usb 3-2: snd_ctl_notify: mask=1, idx=1
[ 2802.721013] usb 3-2: mutex_unlock(usb_mutex)
[ 2802.721034] usb 3-2: mutex_lock(usb_mutex)
[ 2802.721035] usb 3-2: scarlett2_fill_request_header
[ 2802.721036] usb 3-2: scarlett2_usb_tx
[ 2802.721384] usb 3-2: scarlett2_usb_rx
[ 2802.721753] usb 3-2: mixer_interrupt: ustatus=0, actual_length=8
[ 2802.721754] usb 3-2: mixer_interrupt: data=1
[ 2802.721754] usb 3-2: snd_ctl_notify: mask=1, idx=0
[ 2802.721755] usb 3-2: snd_ctl_notify: mask=1, idx=1
[ 2802.721887] usb 3-2: mutex_unlock(usb_mutex)
[ 2802.721894] usb 3-2: mutex_lock(usb_mutex)
[ 2802.721895] usb 3-2: scarlett2_fill_request_header
[ 2802.721896] usb 3-2: scarlett2_usb_tx
[ 2802.722261] usb 3-2: scarlett2_usb_rx
LSP (Linux Studio Plugins) Developer and Maintainer.

User avatar
sadko4u
Established Member
Posts: 824
Joined: Mon Sep 28, 2015 9:03 pm

Re: Focusrite Scarlett 18i20 Gen 3

Post by sadko4u »

Found the case of the problem.
Working on additional patches and improvments for the mixer.
LSP (Linux Studio Plugins) Developer and Maintainer.

User avatar
sadko4u
Established Member
Posts: 824
Joined: Mon Sep 28, 2015 9:03 pm

Re: Focusrite Scarlett 18i20 Gen 3

Post by sadko4u »

I've done set of changes to the Gen3 driver which significantly improves the work of the driver. Here's pull request to @geoffrey's repository:
https://github.com/geoffreybennett/scarlett-gen2/pull/1

Here's the full description:
This set of patches enhances support of Focusrite Scarlett 18i20 Gen3 and other Gen3 devices.

The list of changes:
* Fixed bug that moved clients (like alsamixer) into infinite loop when changing any control in the UI.
* Added proper INST button controlling and synchronization with audio device.
* Added proper PAD button controlling and synchronization with audio device.
* Added software 48V phantom power switching support.
* Implemented proper ALT button synchronization with audio device.
* Implemented TALKBACK button support and synchronization with device.
* Added myself to the list of authors.

So there are no buttons left on the 18i20 device (except power button) that can not be enabled by software. Also software now properly handles all manual button presses and triggers client mixer software to update.
LSP (Linux Studio Plugins) Developer and Maintainer.

tkcomposer
Established Member
Posts: 12
Joined: Wed Feb 05, 2020 4:44 am

Re: Focusrite Scarlett 18i20 Gen 3

Post by tkcomposer »

clovis wrote:
Wed Sep 09, 2020 4:03 pm
Hi tkcomposer!

Sorry I'm really late in my reply. On my side I'm able to change volumes, mixes, pads...
Would you like to share your patched code so that I compare with mine?
Sorry for the very late reply. Somehow I missed your message.

I have since used the improvement by @sadko4u (see his pull request) and it's been working very well.

I'm attaching the patch I created by diff'ing the final target (patched onto geoffrey) against vanilla 5.9.6.
You do not have the required permissions to view the files attached to this post.

Ika
Established Member
Posts: 4
Joined: Fri Apr 17, 2020 5:59 pm

Re: Focusrite Scarlett 18i20 Gen 3

Post by Ika »

I managed to compile kernel 5.9.8 with this merged patch and I'm happy to say my 18i20 works flawlessly running on it. The volume knobs are finally working, the alt/dim/mute buttons work too, the audio stutter is gone and I can control the device using alsamixer (including all the buttons and the "air" function).

Thank you so much for your amazing work. Please let me know if there's any way I can assist in testing your patch further. I hope we can get this patch into mainline soon!

User avatar
sadko4u
Established Member
Posts: 824
Joined: Mon Sep 28, 2015 9:03 pm

Re: Focusrite Scarlett 18i20 Gen 3

Post by sadko4u »

I still need to do some job. Sadly but this weekend I had no time.
Anyway, there are still not implemented things:
- mute support for each output
- saving routing to the software configuration space
- changing colors of leds for 8i6 device
- and some other tunings.

So you can observe changes by subscribing comments to my pull request to geoffrey's repository.
LSP (Linux Studio Plugins) Developer and Maintainer.

Post Reply