Initial revision
This commit is contained in:
444
USAGE.md
Normal file
444
USAGE.md
Normal file
@@ -0,0 +1,444 @@
|
||||
# ALSA Scarlett Gen 2/3 Control Panel Usage
|
||||
|
||||
## Prerequisites
|
||||
|
||||
Linux Kernel with the ALSA Scarlett Gen 2/3 mixer driver. Use at least
|
||||
version 5.14 for Scarlett Gen 3 support and bug fixes for the Gen 2
|
||||
support.
|
||||
|
||||
As of Linux 5.17, the driver is still disabled by default and needs to
|
||||
be enabled at module load time with the `device_setup=1` option to
|
||||
insmod/modprobe. Create a file /etc/modprobe.d/scarlett.conf
|
||||
containing the appropriate line for your device:
|
||||
|
||||
Gen 2:
|
||||
|
||||
- 6i6: `options snd_usb_audio vid=0x1235 pid=0x8203 device_setup=1`
|
||||
- 18i8: `options snd_usb_audio vid=0x1235 pid=0x8204 device_setup=1`
|
||||
- 18i20: `options snd_usb_audio vid=0x1235 pid=0x8201 device_setup=1`
|
||||
|
||||
Gen 3:
|
||||
|
||||
- Solo: `options snd_usb_audio vid=0x1235 pid=0x8211 device_setup=1`
|
||||
- 2i2: `options snd_usb_audio vid=0x1235 pid=0x8210 device_setup=1`
|
||||
- 4i4: `options snd_usb_audio vid=0x1235 pid=0x8212 device_setup=1`
|
||||
- 8i6: `options snd_usb_audio vid=0x1235 pid=0x8213 device_setup=1`
|
||||
- 18i8: `options snd_usb_audio vid=0x1235 pid=0x8214 device_setup=1`
|
||||
- 18i20: `options snd_usb_audio vid=0x1235 pid=0x8215 device_setup=1`
|
||||
|
||||
Or you can use a sledgehammer:
|
||||
```
|
||||
options snd_usb_audio device_setup=1,1,1,1
|
||||
```
|
||||
to pass that option to the first 4 USB audio devices.
|
||||
|
||||
To see if the driver is present and enabled: `dmesg | grep -i -A 5 -B
|
||||
5 scarlett` should display information like:
|
||||
|
||||
```
|
||||
New USB device found, idVendor=1235, idProduct=8215, bcdDevice= 6.0b
|
||||
Product: Scarlett 18i20 USB
|
||||
Focusrite Scarlett Gen 2/3 Mixer Driver enabled pid=0x8215
|
||||
```
|
||||
|
||||
If the driver is disabled you’ll see a message like:
|
||||
|
||||
```
|
||||
Focusrite Scarlett Gen 2/3 Mixer Driver disabled; use options
|
||||
snd_usb_audio vid=0x1235 pid=0x8215 device_setup=1 to enable and
|
||||
report any issues to g@b4.vu",
|
||||
```
|
||||
|
||||
## Building and Running
|
||||
|
||||
On Fedora, the packages `alsa-lib-devel` and `gtk4-devel` need to be
|
||||
installed:
|
||||
|
||||
```
|
||||
sudo dnf -y install alsa-lib-devel gtk4-devel
|
||||
```
|
||||
|
||||
To build:
|
||||
|
||||
```
|
||||
cd src
|
||||
make -j4
|
||||
```
|
||||
|
||||
To run:
|
||||
|
||||
```
|
||||
./alsa-scarlett-gui
|
||||
```
|
||||
|
||||
## No interface connected
|
||||
|
||||
If no interface is detected (usually because there isn’t one
|
||||
connected!) you’ll see this window:
|
||||
|
||||

|
||||
|
||||
Plug in an interface or select the menu option File → Interface
|
||||
Simulation and load a demo file to make more interesting things
|
||||
happen.
|
||||
|
||||
## MSD (Mass Storage Device) Mode
|
||||
|
||||
If MSD Mode is enabled (as it is from the factory), you need to
|
||||
disable it and restart your interface to get access to its full
|
||||
functionality.
|
||||
|
||||

|
||||
|
||||
## Using on Small Interfaces
|
||||
|
||||
For the small Gen 3 interfaces (Solo and 2i2), there’s just a few
|
||||
buttons to control the Air, Line, Phantom Power, and Direct Monitor
|
||||
settings. Mostly nothing that you can’t access from the front panel
|
||||
anyway.
|
||||
|
||||

|
||||
|
||||
The Line/Inst (Level), Air, and 48V controls are described below in
|
||||
the Analogue Input Controls section.
|
||||
|
||||
Direct Monitor sends the analogue input signals to the analogue
|
||||
outputs for zero-latency monitoring. On the 2i2, you have the choice
|
||||
of Mono or Stereo monitoring. Mono sends both inputs to the left and
|
||||
right outputs. Stereo sends input 1 to the left, and input 2 to the
|
||||
right output.
|
||||
|
||||
The one control not accessible from the front panel is “Phantom Power
|
||||
Persistence” (menu option View → Startup) which controls the Phantom
|
||||
Power state when the interface is powered on.
|
||||
|
||||
## Gen 2 6i6+ and Gen 3 4i4+ Interfaces
|
||||
|
||||
The Gen 2 6i6+ and Gen 3 4i4+ interfaces have many controls available.
|
||||
The controls are split between 4 windows, 3 of which are by default
|
||||
hidden.
|
||||
|
||||
The main window has:
|
||||
- Global Controls
|
||||
- Analogue Input Controls
|
||||
- Analogue Output Controls
|
||||
|
||||

|
||||
|
||||
The View menu option on the main window lets you open three other
|
||||
windows which contain the other controls:
|
||||
- Routing
|
||||
- Mixer
|
||||
- Startup
|
||||
|
||||
### Global Controls
|
||||
|
||||
Global controls affect the operation of the interface as a whole.
|
||||
|
||||
#### Clock Source
|
||||
|
||||
Clock Source selects where the interface receives its digital clock
|
||||
from. If you aren’t using S/PDIF or ADAT inputs, set this to Internal.
|
||||
|
||||
#### Sync Status
|
||||
|
||||
Sync Status indicates if the interface is locked to a valid digital
|
||||
clock. If you aren’t using S/PDIF or ADAT inputs and the Sync Status
|
||||
is Unlocked, change the Clock Source to Internal.
|
||||
|
||||
#### Speaker Switching (18i8 Gen 3 and 18i20 Gen 3 only)
|
||||
|
||||
Speaker Switching lets you swap between two pairs of monitoring
|
||||
speakers very easily.
|
||||
|
||||
When enabled (Main or Alt):
|
||||
|
||||
- Line Out 1–4 Volume Control Switches are locked to HW
|
||||
- Line Out 3/4 routing is saved
|
||||
- Line Out 3/4 routing is set to the Line Out 1/2 routing
|
||||
|
||||
When set to Main, Line outputs 3 and 4 are muted.
|
||||
|
||||
When set to Alt, Line outputs 1 and 2 are muted.
|
||||
|
||||
When disabled (Off):
|
||||
- Global mute is activated
|
||||
- Line Out 1–4 Volume Control Switches are unlocked
|
||||
- Line Out 3/4 routing is restored to the saved values
|
||||
|
||||
#### Talkback (18i20 Gen 3 only)
|
||||
|
||||
Talkback lets you add another channel (usually the talkback mic) to a
|
||||
mix with a button push, usually to talk to musicians, and without
|
||||
using an additional mic channel.
|
||||
|
||||
The Talkback feature has a few parts:
|
||||
|
||||
- Talkback Microphone connected to Analogue Input 9
|
||||
- Talkback Disable/Enable internal switch
|
||||
- Talkback Off/On physical switch
|
||||
- Talkback Mix (one switch per mix)
|
||||
- Mix Input 25
|
||||
|
||||
To set up the talkback feature, set Mix Input 25 to the talkback
|
||||
source (usually Analogue Input 9), enable the Talkback Mix switches
|
||||
for the mixes you want the talkback input to be heard on, and change
|
||||
the Talkback control from Disabled to Off. Leave the Mix Input 25 gain
|
||||
controls at zero (−127dB), otherwise the talkback inputs will be heard
|
||||
even when talkback is disabled/off.
|
||||
|
||||
Pressing the Talkback switch on the device will then lower the volume
|
||||
of the other inputs on the mixes for which talkback is enabled and
|
||||
unmute Mix Input 25 on those mixes.
|
||||
|
||||
Talkback can also be activated by changing the Talkback control from
|
||||
Off to On.
|
||||
|
||||
The talkback microphone can also be used just the same as any of the
|
||||
other analogue inputs and routed to a physical output, PCM input, or
|
||||
mixer input.
|
||||
|
||||
### Analogue Input Controls
|
||||
|
||||
This is applicable to all interfaces except the Gen 2 18i20 which has
|
||||
hardware-only buttons for these features.
|
||||
|
||||
#### Level
|
||||
|
||||
The Level buttons are used to select between Mic/Line and Instrument
|
||||
level/impedance. When plugging in microphones or line-level equipment
|
||||
to the input, set it to “Line”. The “Inst” setting is for instrument
|
||||
with pickups such as guitars.
|
||||
|
||||
#### Air (Gen 3 only)
|
||||
|
||||
Enabling Air will transform your recordings and inspire you while
|
||||
making music.
|
||||
|
||||
#### Pad
|
||||
|
||||
Enabling Pad engages an attenuator in the channel, giving you more
|
||||
headroom for very hot signals.
|
||||
|
||||
#### Phantom Power (48V)
|
||||
|
||||
Gen 2 devices have a hardware button for controlling phantom power.
|
||||
|
||||
Gen 3 devices have hardware and software control of phantom power.
|
||||
Turning the “48V” switch on sends “Phantom Power” to the XLR
|
||||
microphone input. This is required for some microphones (such as
|
||||
condensor microphones), and damaging to some microphones (particularly
|
||||
vintage ribbon microphones).
|
||||
|
||||
On Gen 3 device, phantom power is turned off by default when the
|
||||
interface is turned on. This can be changed in the startup
|
||||
configuration (menu option View → Startup).
|
||||
|
||||
### Analogue Output Controls
|
||||
|
||||
The analogue output controls let you set the output volume (gain) on
|
||||
the analogue line out and headphones outputs. All interfaces support
|
||||
setting the gain and muting individual channels.
|
||||
|
||||
Click and drag up/down to change the volume, or use your mouse scroll
|
||||
wheel. You can also double-click on the volume dial to quickly toggle
|
||||
the volume between the minimum value and 0dB.
|
||||
|
||||
The bigger interfaces: Gen 2 18i20, Gen 3 18i8, and Gen 3 18i20 have a
|
||||
switchable hardware/software volume control. The position of the big
|
||||
volume knob on the front of the interface is indicated by the “HW”
|
||||
dial in the GUI. The analogue outputs can have their volume set either
|
||||
by the knob (“HW” setting of of the HW/SW button) or by the dials on
|
||||
each output (“SW” setting of the HW/SW button).
|
||||
|
||||
When set to HW, the mute/volume status for those channels is
|
||||
controlled by the hardware volume knob and the global dim/mute
|
||||
controls and the software volume dial and mute button for those
|
||||
channels are disabled.
|
||||
|
||||
There are “mute” and “dim” (reduce volume) buttons below the “HW” dial
|
||||
which affect only the outputs with “HW” control enabled. The Gen 3
|
||||
18i8 doesn’t have physical buttons or indicator lights for these
|
||||
control, but the 18i20 devices do.
|
||||
|
||||
On the other (smaller) interfaces, the big volume knob on the front of
|
||||
the interface controls the volume of the Line 1 and 2 outputs. This is
|
||||
in addition to the software volume control, therefore both must be
|
||||
turned up in order to hear anything. The other (line 3+) analogue
|
||||
outputs are only controlled by the software controls.
|
||||
|
||||
The volume controls for the headphone outputs on each interface
|
||||
operate in addition to any other hardware or software volume controls
|
||||
for those channels. When using headphones, the volumes for those
|
||||
channels would usually be set to 0dB and the actual volume controlled
|
||||
with the physical headphone volume control(s).
|
||||
|
||||
### Routing
|
||||
|
||||
The routing window allows complete control of signal routing between
|
||||
the hardware inputs/outputs, internal mixer, and PCM (USB)
|
||||
inputs/outputs.
|
||||
|
||||

|
||||
|
||||
To manage the routing connections:
|
||||
|
||||
- Click and drag from a source to a destination or a destination to a
|
||||
source to connect them. Audio from the source will then be sent to
|
||||
that destination.
|
||||
|
||||
- Click on a source or a destination to clear the links connected to
|
||||
that source/destination.
|
||||
|
||||
Note that a destination can only be connected to one source, but one
|
||||
source can be connected to many destinations. If you want a
|
||||
destination to receive input from more than one source, use the mixer
|
||||
inputs and outputs.
|
||||
|
||||
The Presets menu can be used to clear all connections, or to set up
|
||||
common configurations:
|
||||
|
||||
- The “Direct” preset sets up the usual configuration using the
|
||||
interface as an audio interface by connecting:
|
||||
|
||||
- all Hardware Inputs to PCM Inputs
|
||||
- all PCM Outputs to Hardware Outputs
|
||||
|
||||
- The “Preamp” preset connects all Hardware Inputs to Hardware Outputs.
|
||||
|
||||
- The “Stereo Out” preset connects PCM 1 and 2 Outputs to pairs of
|
||||
Hardware Outputs.
|
||||
|
||||
The Direct routing configuration is the simplest most-generally-useful
|
||||
configuration:
|
||||
|
||||

|
||||
|
||||
#### Loopback
|
||||
|
||||
Gen 2 interfaces have as many PCM Inputs as Hardware Inputs. Gen 3
|
||||
interfaces have two more PCM Inputs which the proprietary driver
|
||||
restricts to being “Loopback” inputs.
|
||||
|
||||
The “Loopback” feature advertised for Gen 3 devices is actually a
|
||||
limitation of the propretary Focusrite Control software. Both Gen 2
|
||||
and Gen 3 devices support full reassignment of the PCM Inputs, so you
|
||||
can have any PCM Input as a “Loopback” or assigned to any other
|
||||
source.
|
||||
|
||||
#### Talkback
|
||||
|
||||
The Gen 3 18i20 talkback microphone is Analogue Input 9 and can be
|
||||
routed like any other source. If you want to record using it, there is
|
||||
no need for the loopback hack suggested by the vendor. Just route it
|
||||
to a PCM Input.
|
||||
|
||||
### Mixer
|
||||
|
||||
If you use the Routing window to connect Sources to Mixer Inputs and
|
||||
Mixer Outputs to Destinations, then you can use the Mixer window to
|
||||
set the amount of each Mixer Input that is sent to each Mixer Output
|
||||
using a matrix of controls.
|
||||
|
||||

|
||||
|
||||
Click and drag up/down on the gain controls to adjust, or use your
|
||||
mouse scroll wheel. You can also double-click on the dial to quickly
|
||||
toggle between the minimum value and 0dB.
|
||||
|
||||
### Startup
|
||||
|
||||
The Startup window is used to configure settings that only take effect
|
||||
when the interface is powered on.
|
||||
|
||||

|
||||
|
||||
#### Standalone
|
||||
|
||||
When Standalone mode is enabled, the interface will continue to route
|
||||
audio as per the previous routing and mixer settings after it has been
|
||||
disconnected from a computer. By configuring the routing between the
|
||||
hardware and mixer inputs and outputs appropriately, the interface can
|
||||
act as a standalone preamp or mixer.
|
||||
|
||||
Standalone mode is supported on all devices supported by the kernel
|
||||
driver. Even the 4i4 Gen 3 (which is bus-powered) will operate in
|
||||
standalone mode.
|
||||
|
||||
#### Phantom Power Persistence (Gen 3 only)
|
||||
|
||||
When Phantom Power Persistence is enabled, the interface will restore
|
||||
the previous Phantom Power/48V setting when the interface is turned
|
||||
on. For the safety of microphones which can be damaged by phantom
|
||||
power, the interface defaults to having phantom power disabled when it
|
||||
is turned on.
|
||||
|
||||
#### MSD (Mass Storage Device) Mode (Gen 3 only)
|
||||
|
||||
When MSD Mode is enabled (as it is from the factory), the interface
|
||||
has reduced functionality. You’ll want to have this disabled. On the
|
||||
other hand, when MSD Mode is enabled, the interface presents itself as
|
||||
a Mass Storage Device (like a USB stick), containing a link to the
|
||||
Focusrite web site encouraging you to register your product and
|
||||
download the proprietary drivers which can’t be used on Linux.
|
||||
|
||||
By default, once MSD Mode is disabled, the control for it is hidden.
|
||||
If for some reason you want to re-enable MSD Mode, you can set the
|
||||
`device_setup` option to 3 to get the control back.
|
||||
|
||||
## Load/Save Configuration
|
||||
|
||||
The entire state of the interface can be loaded and saved using the
|
||||
File → Load Configuration and File → Save Configuration menu options.
|
||||
|
||||
Internally, this uses `alsactl`:
|
||||
|
||||
- Load: `alsactl restore USB -f <fn>`
|
||||
- Save: `alsactl store USB -f <fn>`
|
||||
|
||||
The saved state files can be used to simulate an interface if you
|
||||
don’t have one attached. The `demo` directory in the distribution
|
||||
contains a sample file for every supported model.
|
||||
|
||||
## Interface Simulation Mode
|
||||
|
||||
The GUI can load an `alsactl` state file saved from a real interface
|
||||
and display a GUI as if the corresponding interface was connected.
|
||||
|
||||
This is useful if you don’t have an interface connected and want to
|
||||
try, develop, or debug the GUI.
|
||||
|
||||
Either specify the `.state` filename on the command line or select the
|
||||
menu option File → Interface Simulation to load.
|
||||
|
||||
## Known Bugs/Issues
|
||||
|
||||
- The linear-dB scale of the volume controls doesn’t work well. Lower
|
||||
volumes (e.g. below −30dB) don’t need as much fine control as higher
|
||||
volumes.
|
||||
|
||||
- Can’t select (focus) the gain/volume controls or use a keyboard to
|
||||
adjust them.
|
||||
|
||||
- Level (monitoring) doesn’t work yet and is disabled (needs kernel
|
||||
driver update).
|
||||
|
||||
- Load/Save uses `alsactl` which will be confused if the ALSA
|
||||
interface name (e.g. `USB`) changes.
|
||||
|
||||
- Load/Save is not implemented for simulated interfaces.
|
||||
|
||||
- Lots of “couldn't find weak ref” warnings are emitted when loading a
|
||||
state file for simulation.
|
||||
|
||||
- The read-only status of controls in interface simulation mode does
|
||||
not change when the HW/SW button is clicked.
|
||||
|
||||
- When there’s more than one main window open, closing one of them
|
||||
doesn’t free and close everything related to that card.
|
||||
|
||||
- There is no facility to group channels into stereo pairs (needs
|
||||
kernel support to save this information in the interface).
|
||||
|
||||
- There is no facility to give channels custom names (needs kernel
|
||||
support to save this information in the interface).
|
||||
Reference in New Issue
Block a user