Focusrite-Scarlett-on-Linux / sound-usb-kernel-module

Latest driver development code for sound/usb on Linux
GNU General Public License v2.0
158 stars 7 forks source link

Add support for Scarlett 4th Gen #20

Closed alisonkit closed 1 year ago

alisonkit commented 1 year ago

The new gen came out and I'm sure other people will start to purchase them more as Gen 3 is phased out, as it seems to be a popular audio interface for Linux. Personally I am looking forward to get a 4th Gen Solo.

If needed I could also try and help out with enabling functionality if I end up purchasing one, in any case that it doesn't work out of the box.

I've been reading the user guide and it seems like it's very similar to the 3rd gen when it comes to deactivating MSD (or as they call, Easy Start). There also seems to be official support for ChromeOS, compared to the 3rd Gen where it says no official support.

I also wonder if the last parameter (options snd_usb_audio device_setup=1,1,1,1) is something that could work with the 4th gen.

Thank you.

sadko4u commented 1 year ago

Maybe @geoffreybennett can help you here. I'm under sanctions now and stopped any development until the peace comes to our doors again.

geoffreybennett commented 1 year ago

Hi @alisonkit,

Thank you for bringing up the 4th Gen. I'm aware of the release, and as you rightly point out, as Gen 3 is phased out we're going to see a lot of people wanting support for the new series. I've created an issue here in my alsa-scarlett-gui repo to track the progress on the Gen 4 support. Historically, due to development being constrained by me actually having one of these devices to work with, the support for Gen 2 and Gen 3 came around 2 years and 1 year after their respective product releases. Gen 2 support was purely about scratching an itch that I had after I happened to purchase an 18i20. For the Gen 4 series, I'm hoping to be more proactive and get the support in sooner.

Regarding the device_setup parameter, that will not help; that's only a way to enable the Gen 2/3 driver, and there is no Gen 4 driver to test for that parameter being set.

@sadko4u, I'm truly sorry to hear about the impact of the ongoing situation on your ability to contribute. Your work and insights on the Gen 3 devices were invaluable, and I hope for a peaceful resolution soon.

To help expedite support for the Gen 4 devices, I've set up a fundraiser. For anyone interested or willing to support, you can find the details here. Contributions of any kind, whether development help or sharing the word, are greatly appreciated.

Best regards, Geoffrey.

sadko4u commented 1 year ago

As I see at this moment, the gen 4 looks like the renewal of minor Scarlett models. I don't see 8i20 and 18i20 gen4 on the Focusrite site at this moment. That probably can mean that just adding corresponding device IDs to the driver can be enough.

sadko4u commented 1 year ago

For me the fundrasing link doesn't work. Maybe because I'm visiting the site from Russia.

geoffreybennett commented 1 year ago

As I see at this moment, the gen 4 looks like the renewal of minor Scarlett models. I don't see 8i20 and 18i20 gen4 on the Focusrite site at this moment. That probably can mean that just adding corresponding device IDs to the driver can be enough.

There's definitely new features. I see at least these things which are relevant to the driver:

alisonkit commented 1 year ago

@geoffreybennett Thank you for updating on the situation. Hope you can get the devices!

And @sadko4u I'm really sorry to hear about your situation, I hope you're able to peacefully get out of it.

Let's see how this develops... Thank you all for your help so far.

(if this issue needs to be opened, I can reopen, I misclicked, but Geoffrey mentioned that he'd track the development on the other repo)

Alison

geoffreybennett commented 10 months ago

First draft of Scarlett Gen 4 support is ready for the brave: Kernel driver: https://github.com/geoffreybennett/scarlett-gen2/releases/tag/v6.5.11-g4.1 Firmware update utility: https://github.com/geoffreybennett/scarlett2 Please email me if you'd like to help test.

FYI, the protocol is the same as Gen2/3/Clarett, but the types of controls are very different and there were a lot of changes:

[g@fedora linux]$ git show upstream:sound/usb/mixer_scarlett2.c | wc -l
4549
[g@fedora linux]$ git show scarlett-gen4:sound/usb/mixer_scarlett2.c | wc -l
7131