Page 1 of 1
Testing is Focusrite Scarlet 18i20 ok?
Posted: Wed Aug 02, 2023 6:16 am
by tavasti
I have potential Focusrite Scarlet 18i20 gen 1 interface in sight for good price. However, I would need to test it at sellers home, so I would need to know what tricks I need to know when going there. I can't go there and spend 4 hours on searching help.
So what are steps to verify it works? I have laptop with Devuan Chimaera (same as Debian 11.1).
Re: Testing is Focusrite Scarlet 18i20 ok?
Posted: Wed Aug 02, 2023 11:52 am
by merlyn
Do all the lights come on?
Are all the knobs good?
Are all the sockets good?
$ lsusb
$ aplay -l
$ speaker-test -D plughw:<device name>
A first generation Scarlett seems quite good for Linux as there are a lot of controls implemented as switches on the interface itself. With the second generation, these went to software controls, so @geoffrey wrote a driver for the Focusrite mixer. @x42 wrote a mixer for gen 1 Scarletts. You could install that before you go to try out the interface.
Re: Testing is Focusrite Scarlet 18i20 ok?
Posted: Wed Aug 02, 2023 12:04 pm
by tavasti
But just a GUI, all doable with alsamixer?
But ok, I don't understand what those knobs are in x42 mixer 
Re: Testing is Focusrite Scarlet 18i20 ok?
Posted: Wed Aug 02, 2023 12:07 pm
by merlyn
No, it's controlling the DSP mixer built into the Scarlett. It's really for setting up monitor mixes, so it's a nice extra, but not essential.
Re: Testing is Focusrite Scarlet 18i20 ok?
Posted: Thu Aug 03, 2023 11:16 am
by Linuxmusician01
merlyn wrote: ↑Wed Aug 02, 2023 12:07 pm
No, it's controlling the DSP mixer built into the Scarlett. It's really for setting up monitor mixes, so it's a nice extra, but not essential.
With all due respect, but isn't that a reason to advice against buying it? For Linux and for Windows? Software like that might need some sort of driver to access the innards of the hardware and that might not work in the next version of Windows. Maybe not even in Linux if you have to compile from source code (my experience). I know might be stepping on toes here because there are a lot of Focusrite enthusiasts, for which I apologize on beforehand. 
Re: Testing is Focusrite Scarlet 18i20 ok?
Posted: Thu Aug 03, 2023 11:38 am
by merlyn
No, not really. It's a reason not to use Windows.
Linuxmusician01 wrote: ↑Thu Aug 03, 2023 11:16 am
... Software like that might need some sort of driver to access the innards of the hardware and that might not work in the next version of Windows. Maybe not even in Linux if you have to compile from source code (my experience). ...
It's not about what might be, is it? Focusrite don't support Linux, but Linux 'supports' Focusrite in that Scarlett interfaces do work. This has nothing to do with Focusrite and everything to do with Linux developers.
I'm still using soundcards from 2003. Once the driver is in the kernel it tends to stay in.
Re: Testing is Focusrite Scarlet 18i20 ok?
Posted: Thu Aug 03, 2023 4:11 pm
by Michael Willis
I'm using a second-gen Scarlett 18i20 without much trouble. As of the last few years @geoffrey's drivers have been included in the Linux kernel, and his alsa-scarlett-gui gives me access to the internal mixer features.
My interface has a few hardware defects - the 7th input channel is completely dead, and the main monitor dim/mute controls will sometimes randomly turn on and off. I just don't use input 7 and I was able to bypass the faulty dim/mute by using alsa-scarlett-gui.
Re: Testing is Focusrite Scarlet 18i20 ok?
Posted: Thu Aug 03, 2023 7:33 pm
by tavasti
Michael Willis wrote: ↑Thu Aug 03, 2023 4:11 pm
I'm using a second-gen Scarlett 18i20 without much trouble. As of the last few years @geoffrey's drivers have been included in the Linux kernel, and his alsa-scarlett-gui gives me access to the internal mixer features.
My interface has a few hardware defects - the 7th input channel is completely dead, and the main monitor dim/mute controls will sometimes randomly turn on and off. I just don't use input 7 and I was able to bypass the faulty dim/mute by using alsa-scarlett-gui.
I now have that interface but haven't had time to set it up. I tested it briefly, can record something and can get some audio out.
Now all that routing stuff, do I need it if I simply want to record audio, and output from computer? If I don't need any inside interface monitoring?
Re: Testing is Focusrite Scarlet 18i20 ok?
Posted: Thu Aug 03, 2023 10:28 pm
by Michael Willis
tavasti wrote: ↑Thu Aug 03, 2023 7:33 pm
Now all that routing stuff, do I need it if I simply want to record audio, and output from computer? If I don't need any inside interface monitoring?
Try using it without doing the routing, it might work just fine. I had to customize mine because I wanted only some of the inputs audible through the headphones as a monitor, specific inputs routed to the DAW, etc.
Re: Testing is Focusrite Scarlet 18i20 ok?
Posted: Fri Aug 04, 2023 10:13 am
by Linuxmusician01
merlyn wrote: ↑Thu Aug 03, 2023 11:38 am
No, not really. It's a reason not to use Windows.
Linuxmusician01 wrote: ↑Thu Aug 03, 2023 11:16 am
... Software like that might need some sort of driver to access the innards of the hardware and that might not work in the next version of Windows. Maybe not even in Linux if you have to compile from source code (my experience). ...
It's not about what might be, is it? Focusrite don't support Linux, but Linux 'supports' Focusrite in that Scarlett interfaces do work. This has nothing to do with Focusrite and everything to do with Linux developers.
I'm still using soundcards from 2003. Once the driver is in the kernel it tends to stay in.
I agree about the driver support. What I meant though is the closed-source software that one needs to configure it.
Re: Testing is Focusrite Scarlet 18i20 ok?
Posted: Fri Aug 04, 2023 12:18 pm
by merlyn
It's the driver that's the difficult bit. Linux developers seem pretty good at reverse engineering control panels that run in user space.
Control panel for any ICE_1712 soundcard.

Control panel for RME HDSP series

Control panel for gen 1 Scarletts

Control panel for gen 2/3 Scarletts

Re: Testing is Focusrite Scarlet 18i20 ok?
Posted: Sat Aug 05, 2023 11:36 am
by tavasti
Trying to compile this I get error:
Code: Select all
tavasti@hermo:~/git/scarlett-mixer$ make
cc \
-o scarlett-mixer \
-DVERSION=\"0.1.0-30\" \
-g -Wall -Wno-unused-function -I. -Irobtk/ `pkg-config --cflags cairo pango lv2 glu alsa` -pthread -DDEFAULT_NOT_ONTOP -std=c99 \
-DXTERNAL_UI -DHAVE_IDLE_IFACE -DRTK_DESCRIPTOR=lv2ui_descriptor \
-DPLUGIN_SOURCE=\"src/scarlett_mixer.c\" \
-DAPPTITLE="\"Scarlett Mixer\"" \
robtk/robtkapp.c robtk/ui_gl.c robtk/pugl/pugl_x11.c \
`pkg-config --libs cairo pangocairo pango glu gl alsa` -lX11 -lm
robtk/robtkapp.c:36:10: fatal error: lv2/lv2plug.in/ns/lv2core/lv2.h: No such file or directory
36 | #include "lv2/lv2plug.in/ns/lv2core/lv2.h"
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
In file included from robtk/ui_gl.c:101:
robtk/robtk.h:34:10: fatal error: lv2/lv2plug.in/ns/extensions/ui/ui.h: No such file or directory
34 | #include "lv2/lv2plug.in/ns/extensions/ui/ui.h"
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make: *** [Makefile:33: scarlett-mixer] Error 1
I have lv2-dev installed, and anyway that include looks like something that might not be system include?
Re: Testing is Focusrite Scarlet 18i20 ok?
Posted: Sat Aug 05, 2023 12:12 pm
by tavasti
tavasti wrote: ↑Sat Aug 05, 2023 11:36 am
Trying to compile this I get error:
Code: Select all
tavasti@hermo:~/git/scarlett-mixer$ make
...
robtk/robtkapp.c:36:10: fatal error: lv2/lv2plug.in/ns/lv2core/lv2.h: No such file or directory
36 | #include "lv2/lv2plug.in/ns/lv2core/lv2.h"
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
In file included from robtk/ui_gl.c:101:
robtk/robtk.h:34:10: fatal error: lv2/lv2plug.in/ns/extensions/ui/ui.h: No such file or directory
34 | #include "lv2/lv2plug.in/ns/extensions/ui/ui.h"
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make: *** [Makefile:33: scarlett-mixer] Error 1
With this edit I get it compiling:
Code: Select all
diff --git a/robtk.h b/robtk.h
index 012d259..e8beda7 100644
--- a/robtk.h
+++ b/robtk.h
@@ -31,7 +31,7 @@
#include <pango/pango.h>
#include <pango/pangocairo.h>
-#include "lv2/lv2plug.in/ns/extensions/ui/ui.h"
+#include "lv2/ui/ui.h"
#ifdef __APPLE__
#include <mach/clock.h>
diff --git a/robtkapp.c b/robtkapp.c
index b6c232d..96532fc 100644
--- a/robtkapp.c
+++ b/robtkapp.c
@@ -33,8 +33,8 @@
#define pthread_t //< override jack.h def
#endif
-#include "lv2/lv2plug.in/ns/lv2core/lv2.h"
-#include "lv2/lv2plug.in/ns/extensions/ui/ui.h"
+#include "lv2/core/lv2.h"
+#include "lv2/ui/ui.h"
#ifdef __APPLE__
#include <CoreFoundation/CoreFoundation.h>
Now next step is understand what there should be, now everything routes to everywhere:

- scarlet.jpg (113.37 KiB) Viewed 4347 times
So close all;
Code: Select all
for src in {01..18}; do for mix in A B C D E F G H; do amixer -c USB set "Matrix $src Mix $mix" "0%"; done ; done