This repository has been archived on 2025-09-15. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
alsa-scarlett-gui/INSTALL.md
2024-03-24 22:40:11 +10:30

4.4 KiB
Raw Blame History

ALSA Scarlett2 Control Panel Installation

Prerequisites

Linux Kernel

You need to be running a Linux Kernel that has the ALSA Scarlett2 Protocol Driver. Use uname -r to check what kernel version you are running.

  • Use at least version 5.14 for Scarlett Gen 3 support and bug fixes for the Gen 2 support.
  • For Clarett+ 8Pre support, you need 6.1.
  • For the other Clarett USB and Clarett+ models, you need 6.7.
  • For the level meters to work, you need 6.7.

If you don't have 6.7, you can get the driver from here and build it for your current kernel:

https://github.com/geoffreybennett/scarlett-gen2/releases/tag/v6.5.11c1

Gtk4

You need a Linux distribution with Gtk4 development libraries. If it doesn't have them natively, try the Flatpak instructions below.

Enabling the Driver

As of Linux 6.7 the driver is enabled by default and you can skip this section.

If you're running a kernel before 6.7, the driver 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:

Scarlett 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

Scarlett 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

Clarett+:

  • 8Pre: options snd_usb_audio vid=0x1235 pid=0x820c 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 focusrite 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 youll 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

Firmware

As of Linux 6.8, firmware updates of all the supported interfaces can be done through Linux. This is mandatory for Scarlett 4th Gen and Vocaster interfaces (unless you've already updated it using the manufacturer's software), and optional for Scarlett 2nd and 3rd Gen, Clarett USB, and Clarett+ interfaces.

Download the firmware from https://github.com/geoffreybennett/scarlett2-firmware and place in /usr/lib/firmware/scarlett2 or use the RPM/deb package.

Building and Running

On Fedora, these packages need to be installed:

sudo dnf -y install alsa-lib-devel gtk4-devel openssl-devel

On OpenSUSE:

sudo zypper in git alsa-devel gtk4-devel libopenssl-devel

On Ubuntu:

sudo apt -y install git make gcc libgtk-4-dev libasound2-dev libssl-dev

To download from github:

git clone https://github.com/geoffreybennett/alsa-scarlett-gui
cd alsa-scarlett-gui

To build:

cd src
make -j4

To run:

./alsa-scarlett-gui

You can install it into /usr/local (binary, desktop file, and icon) with:

sudo make install

And uninstall with:

sudo make uninstall

Continue on to reading USAGE.md for usage information and known issues.

Flatpak

With Flatpak, in any distro:

flatpak-builder --user --install --force-clean flatpak-build \
    vu.b4.alsa-scarlett-gui.yml

Be sure to use flatpak-build as the directory where the flatpak is built or hence you risk bundling the artifacts when committing!

If you get messages like these:

Failed to init: Unable to find sdk org.gnome.Sdk version 45
Failed to init: Unable to find runtime org.gnome.Platform version 45

Then install them:

flatpak install org.gnome.Sdk
flatpak install org.gnome.Platform

If you get:

Looking for matches…
error: No remote refs found for org.gnome.Sdk

Then:

flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo