Ultralite AVB

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

Moderators: MattKingUSA, khz

fsciarra62
Established Member
Posts: 10
Joined: Mon Oct 14, 2019 12:22 am

Re: Ultralite AVB

Post by fsciarra62 »

Ok,
might you suggest how should I file a bug to MOTU?
At this moment, the only thing I can notice on my side, old avb + 1.3.4+558, is that I have xruns on jack without having any activity.
But I don't know how to indicate this without mentioning jack and Linux.
And my friend has the new model with new bios and the beta firmware doesn't even install, while the new doesn't work with the known problem.

If you can provide me a kind of "template", we will file the bug to MOTU, if this can help.

Thank you very much for everything.

Fabrizio

ahellquist
Established Member
Posts: 41
Joined: Mon Jul 01, 2013 12:28 am

Re: Ultralite AVB

Post by ahellquist »

Sorry, I have not enough knowledge to give you a template.

My suggestion was based on reading all discussions pointing to Motu being know for bad usb implementations. I do not know if that is true but you could at least go to the Motu site and register your device if not already done and ask if the know timing issues in Class Compliant mode will ever be addressed as they have said before when users complained.

This is the response I got two years ago when I asked if they could fix the timing bug that causes drifting in samples.. The issue that makes new firmwares unusable..

"Thanks for the info. Regarding the firmware USB fix, I know this was a fix specific for Windows. Why it makes it worse for you in class compliant mode...I'm not sure. But I will pass this information along to our dev team and will get back to you if I have any updates."

It's been two years and my support case is still "Open"

I think is is saft to say that Motu do not care about Class Compliancy unless it is for iPad or something else made by the two large vendors out there.

So, create a ticket where you ask when the USB timing issue will be resolved or wait for others in th thread (that speaks English and understand the root cause to fill in the blanks)

Best regards, Anders

Drumfix
Established Member
Posts: 255
Joined: Mon Jan 26, 2009 5:15 pm

Re: Ultralite AVB

Post by Drumfix »

Now that the clock patch of @puleglot is in kernel 5.7-rc3, the patch for the AVB units reduces to this:

Code: Select all

--- linux-5.7-rc3/sound/usb/pcm.c.orig  2020-05-01 17:52:23.410987252 +0200
+++ linux-5.7-rc3/sound/usb/pcm.c       2020-05-01 17:42:05.458101734 +0200
@@ -366,6 +366,10 @@ static int set_sync_ep_implicit_fb_quirk
                ep = 0x84;
                ifnum = 0;
                goto add_sync_ep_from_ifnum;
+       case USB_ID(0x07fd, 0x0005): /* MOTU AVB Series */
+               ep = 0x87;
+               ifnum = 2;
+               goto add_sync_ep_from_ifnum;
        case USB_ID(0x07fd, 0x0008): /* MOTU M Series */
                ep = 0x81;
                ifnum = 2;
Please Ultralite AVB users, who have problems with channel hopping try it.

puleglot
Established Member
Posts: 104
Joined: Thu Jan 23, 2020 3:14 pm

Re: Ultralite AVB

Post by puleglot »

ahellquist wrote:
Mon Apr 27, 2020 8:53 pm
My suggestion was based on reading all discussions pointing to Motu being know for bad usb implementations. I do not know if that is true but you could at least go to the Motu site and register your device if not already done and ask if the know timing issues in Class Compliant mode will ever be addressed as they have said before when users complained.
Do I understand correctly, that MOTU switched from explicit feedback to implicit feedback with firmware update at some point? If that is the case, then you can't blame MOTU for that. It's a Linux fault for not properly supporting this synchronization model.
Drumfix wrote:
Fri May 01, 2020 4:11 pm
Now that the clock patch of @puleglot is in kernel 5.7-rc3...
My patch is for Microbook IIc only. For AVB Series you also need something like that on top of it:

Code: Select all

diff --git a/sound/usb/clock.c b/sound/usb/clock.c
index b118cf97607f..66388e5d44a9 100644
--- a/sound/usb/clock.c
+++ b/sound/usb/clock.c
@@ -186,10 +186,11 @@ static bool uac_clock_source_is_valid_quirk(struct snd_usb_audio *chip,
 	 * Sample rate changes takes more than 2 seconds for this device. Clock
 	 * validity request returns false during that period.
 	 */
-	if (chip->usb_id == USB_ID(0x07fd, 0x0004)) {
+	if (chip->usb_id == USB_ID(0x07fd, 0x0004) ||
+	    chip->usb_id == USB_ID(0x07fd, 0x0005)) {
 		count = 0;
 
-		while ((!ret) && (count < 50)) {
+		while ((!ret) && (count < 200)) {
 			int err;
 
 			msleep(100);

Update: I see a dedicated explicit feedback endpoint in the lsusb output below:
http://linux-audio.4202.n7.nabble.com/H ... 03126.html
So I guess MOTU is indeed switched to implicit feedback in a newer firmwares. And that explains why older firmwares works, but newer ones have problems.
Last edited by puleglot on Fri May 01, 2020 6:38 pm, edited 1 time in total.

Drumfix
Established Member
Posts: 255
Joined: Mon Jan 26, 2009 5:15 pm

Re: Ultralite AVB

Post by Drumfix »

My bad, i added the proper line in the clock.c file and then forgot about it.
I'd say linux is to blame here because the descriptor for the isoc IN endpoint has the implicit feedback bit set and that's ignored by the driver.

Desposyni
Posts: 1
Joined: Sat May 02, 2020 10:33 am

Re: Ultralite AVB

Post by Desposyni »

Hi musicians,
I'm in the market for my first USB interface and I use the latest Kubuntu. I don't plan to do anything crazy advanced with this; just record 1 or 2 instruments at a time. I'm very interested in the MOTU UltraLite AVB, because of the usability from Linux via Web Interface.
I see issues with newer firmware and such, but is this device still a good buy or is it unusable? Also, should I hold out for a newer MOTU device since the UL AVB is 5 yrs old? (I don't know if 5 yrs is old for an audio interface)

ahellquist
Established Member
Posts: 41
Joined: Mon Jul 01, 2013 12:28 am

Re: Ultralite AVB

Post by ahellquist »

Drumfix wrote:
Fri May 01, 2020 6:21 pm
My bad, i added the proper line in the clock.c file and then forgot about it.
I'd say linux is to blame here because the descriptor for the isoc IN endpoint has the implicit feedback bit set and that's ignored by the driver.
If Linux is to blame. We maybe should not complain to Motu at all. Will this issue be addressed in a while with current kernel developments or what can we expect ?

Regards, Anders

User avatar
bluebell
Established Member
Posts: 1342
Joined: Sat Sep 15, 2012 11:44 am
Location: Saarland & Frankfurt, Germany

Re: Ultralite AVB

Post by bluebell »

ahellquist wrote:
Sat May 02, 2020 2:11 pm
Drumfix wrote:
Fri May 01, 2020 6:21 pm
My bad, i added the proper line in the clock.c file and then forgot about it.
I'd say linux is to blame here because the descriptor for the isoc IN endpoint has the implicit feedback bit set and that's ignored by the driver.
If Linux is to blame. We maybe should not complain to Motu at all. Will this issue be addressed in a while with current kernel developments or what can we expect ?

Regards, Anders
Yeah, maybe a fix in the kernel would make the UltraLite AVB's successor with the "ESS" enhancement usable with Linux.
Linux – MOTU UltraLite AVB – Qtractor – https://soundcloud.com/suedwestlicht

User avatar
bluebell
Established Member
Posts: 1342
Joined: Sat Sep 15, 2012 11:44 am
Location: Saarland & Frankfurt, Germany

Re: Ultralite AVB

Post by bluebell »

Desposyni wrote:
Sat May 02, 2020 10:44 am
Hi musicians,
I'm in the market for my first USB interface and I use the latest Kubuntu. I don't plan to do anything crazy advanced with this; just record 1 or 2 instruments at a time. I'm very interested in the MOTU UltraLite AVB, because of the usability from Linux via Web Interface.
I see issues with newer firmware and such, but is this device still a good buy or is it unusable? Also, should I hold out for a newer MOTU device since the UL AVB is 5 yrs old? (I don't know if 5 yrs is old for an audio interface)
Caution! The new version of the UltraLite AVB with the "ESS"-enhancement is not known to work with Linux. The older model needs an older firmware, then it can be used.
Linux – MOTU UltraLite AVB – Qtractor – https://soundcloud.com/suedwestlicht

Drumfix
Established Member
Posts: 255
Joined: Mon Jan 26, 2009 5:15 pm

Re: Ultralite AVB

Post by Drumfix »

The patches will only go into the kernel after i get verification from users of the Ultralite AVB that they solve the problem. I can only check with my 16A AVB which uses the same vendor/product ID as all the other AVB products. With the patches, everything runs smooth. Without the patches, channel hopping galore.

User avatar
bluebell
Established Member
Posts: 1342
Joined: Sat Sep 15, 2012 11:44 am
Location: Saarland & Frankfurt, Germany

Re: Ultralite AVB

Post by bluebell »

Drumfix wrote:
Sat May 02, 2020 8:10 pm
The patches will only go into the kernel after i get verification from users of the Ultralite AVB that they solve the problem. I can only check with my 16A AVB which uses the same vendor/product ID as all the other AVB products. With the patches, everything runs smooth. Without the patches, channel hopping galore.
Here! Me!

I have an older UltraLite AVB. I use (older) firmware 1.3.4+558. With this firmware the interface is usable.
But when I change the bufsize on the fly with jack_bufsize then I have a one-time input channel hopping modulo 8.

Years ago I compiled my kernels but now I'd need a pointer to the source, to the patch and how I can install the kernel on a Xubuntu 16.04.It would be coolest to create .deb packages but I'd be willing to install the kernel the old way.
Last edited by bluebell on Sun May 03, 2020 11:05 am, edited 1 time in total.
Linux – MOTU UltraLite AVB – Qtractor – https://soundcloud.com/suedwestlicht

puleglot
Established Member
Posts: 104
Joined: Thu Jan 23, 2020 3:14 pm

Re: Ultralite AVB

Post by puleglot »

bluebell wrote:
Sun May 03, 2020 7:00 am
But when I change the bufsize on the fly with jack_bufsize then I have a one-time input channel hopping modulo 8.
Does this happen with any sample rate? Or only with sample rates that are not multiple of 8 kHz (44.1, 88.2 kHz)?

User avatar
bluebell
Established Member
Posts: 1342
Joined: Sat Sep 15, 2012 11:44 am
Location: Saarland & Frankfurt, Germany

Re: Ultralite AVB

Post by bluebell »

puleglot wrote:
Sun May 03, 2020 7:24 am
bluebell wrote:
Sun May 03, 2020 7:00 am
But when I change the bufsize on the fly with jack_bufsize then I have a one-time input channel hopping modulo 8.
Does this happen with any sample rate? Or only with sample rates that are not multiple of 8 kHz (44.1, 88.2 kHz)?
I use 48000Hz only. I "workarounded" this by connection all needed. That works because I need only 2 input channels (1 for mic, 2 for git). mic and git are jack_thru instances. I like it having such fixed "sockets".

So I connect capture_1,9,17 to mic and 2,10,18 to git. Ugly but usable for me.

A fixed kernel would be much better of course.
qjackctl.jpg
You do not have the required permissions to view the files attached to this post.
Linux – MOTU UltraLite AVB – Qtractor – https://soundcloud.com/suedwestlicht

michaelv
Posts: 1
Joined: Wed Apr 29, 2020 3:01 pm

Re: Ultralite AVB

Post by michaelv »

Drumfix wrote:
Sat May 02, 2020 8:10 pm
The patches will only go into the kernel after i get verification from users of the Ultralite AVB that they solve the problem. I can only check with my 16A AVB which uses the same vendor/product ID as all the other AVB products. With the patches, everything runs smooth. Without the patches, channel hopping galore.
Hello,
i got the Ultralite AVB ESS Version with Firmware 1.3.5+637 last Tuesday. Unfortunately i found this Forum too late. Anyway i installed 2 days ago the patches from Drumfix on Kernel 5.6.7 and also on 5.6.7-rt3. I`m̀ using Debian unstable. Til now with the Realtimekernel the patches works perfect. There is no channelhopping at all. With vanilla kernel the sound disappears sometimes. Often a restart from jack helps than. I'm using it with pulseaudio and jack on both kernels.
Michael

Drumfix
Established Member
Posts: 255
Joined: Mon Jan 26, 2009 5:15 pm

Re: Ultralite AVB

Post by Drumfix »

So, the attached patch should fix the following:
- startup problems with pulseaudio or jack in duplex mode
- channel hopping/bit crushing due to x-runs or sync issues
- channel hopping when changing buffersize on the fly with jack_bufsize

Note: It can take up to about 10 seconds for sound to come back when changing the buffersize on the fly.

Caution: For testing purposes only. Use at your own risk:
Do not try this if you are not familiar with kernel compilation and how to get rid of a non-working kernel:

Download linux-5.7-rc4 from www.kernel.org
tar zxf linux-5.7-rc4.tar.gz
cd linux-5.7-rc4
copy motu-avb.patch.txt to this location
patch -p1 < motu-avb.patch.txt
make oldconfig
Just press <return> when asked for new parameters or enter the indicated default were an input is strictly needed
make
sudo make modules_install install

boot into the new kernel
You do not have the required permissions to view the files attached to this post.

Post Reply