Page 16 of 25

Re: Ultralite AVB

Posted: Thu Jun 13, 2019 4:40 pm
by stanlea
@supereb : some questions about this AVB driver :
- settings (frequency, frames,...)
- latency ?
- did you try some recording ?
- do you use midi ?

Re: Ultralite AVB

Posted: Thu Jun 13, 2019 4:42 pm
by stanlea
Drumfix wrote:You find the code here https://github.com/Drumfix/avb4linux - at present only 1 8-in and 1 8-out stream is supported (rhe dirst of the interface


What do you mean by "rhe dirst" ? the first ?

Re: Ultralite AVB

Posted: Thu Jun 13, 2019 5:44 pm
by Drumfix
i meant the first of the available AVB streams.

Re: Ultralite AVB

Posted: Fri Jun 14, 2019 1:21 pm
by supereb
stanlea wrote:@supereb : some questions about this AVB driver :
- settings (frequency, frames,...)
- latency ?
- did you try some recording ?
- do you use midi ?
I run 44.1kHz, buffer size of 126*, 2 periods, and jack in synchronous mode (jackd -S...), 7.16mS (if I remember correctly). When running AVB, the results would have been exactly the same as Drumfix's results posted on page 10 of this thread, but I had to slightly adjust a setting called "presentation offset" because I was getting some crackling on my system. This resulted in a slightly longer latency. The default presentation offset is -375000uS, I had to change to -250000uS. There is a 26 sample difference between a presentation offset of -375000 and having it set to zero. I don't remember right now what is the exact sample difference at -250000uS.

Examples with a buffer size of 66 at 44.1kHz

Presentation offset -375000uS: (66 * 2) + 60 = 192 samples = 4.35mS

Presentation offset 0uS: (66 * 2) + 86 = 218 = 4.94mS


Examples with a buffer size of 126 at 44.1kHz

Presentation offset -375000uS: (126 * 2) + 60 = 312 samples = 7.07mS

Presentation offset 0uS: (126 * 2) + 86 = 338 = 7.66mS


* Drumfix recommends using buffer sizes in multiples of 6, so I use 66 or 126. If you are using Reaper, it's multiples of 48.

I have not tested at buffer sizes smaller than 66, but I'm sure it could go much lower depending on how much DSP you are using. I am live monitoring and recording using Mixbus 32C and a couple of CPU intensive plugins. 7.2mS in headphones is like hearing my guitar amp at the distance I'm used to and 126 is enough of a buffer to let me live monitor through the DAW without any xruns. I do use MIDI and play Pianoteq live, a2jmidid is set to run after jack starts.

Re: Ultralite AVB

Posted: Fri Jun 14, 2019 6:14 pm
by stanlea
Thanks for these informations. On my side I am stuck with usb at 48khz and 5,3s that is fine enough for my needs, of course dealing with the problems mentionned earlier.

Re: Ultralite AVB

Posted: Sat Jun 29, 2019 3:59 pm
by bluebell
As I posted in another thread:

I bought an Ultralite AVB and was disappointed when I had the "traveling channels"-issue.

I tested the latest firmware versions from http://motu.com/techsupport/technotes/f ... changelog/ and found out that 1.3.2+520 is the latest version that provides error-free operation.

When it's used by jackd I can't use another interface with another jackd on the same USB bus. So I have to use a different bus for my 2nd interface (for Guitarix).

The mixer with its builtin EQ (and other effects) is great. The Ultralite AVB replaces my combo Scarlett 2i4 + Behringer EQ + Behringer Mixer. The Ultralite AVB is even more flexible. I can make several different monitor mixes.

I can use the same buffer sizes as with the Scarlett 2i4 without xruns.

I am using it for half a day in continuous operation now and didn't notice any problems.

Re: Ultralite AVB

Posted: Sun Jun 30, 2019 11:43 am
by bluebell
I created a ticket on the MOTU site regarding the buggy firmware in newer versions.

Since they are so stubborn and insist in naming the operating system but offer only Windows and Mac I had to choose one of them and chose Windows 10 64 Bit. I am afraid they will ask how I made Windows using class compliant mode and finally tell me that they "don't support Linux" although class compliant mode is OS-independent.

I tried at least.

Re: Ultralite AVB

Posted: Sun Jun 30, 2019 6:42 pm
by bluebell
Musinux wrote: - Backup Datastore settings, look for "current_sampling_rate" to get <yourinterfaceid>:

Code: Select all

curl -s 192.168.1.10/datastore -o backup.txt
Unfortunately after starting jackd the Ultralite forgets my enabled EQ in the mixer.

It would be extremely cool if I could load a preset via web interface.

It would be cool, too, if I could load the complete backup into the interface via webinterface.

Sure I can do that manually. But we Linuxers want to automate things.

Any ideas?

EDIT: Of course I can do it in a loop, reading line by line.

EDIT2:
- I can load a preset
- Unfortunately it does not always remember to activate the EQ
- So I do it manually

Code: Select all

  AVBHOST=motu
  curl -s --data 'json={"value":"1000"}' ${AVBHOST}/datastore/ext/presets/load 
  sleep 10

  curl -s --data 'json={"value":"1"}' ${AVBHOST}/datastore/mix/main/0/eq/highshelf/enable

  curl -s --data 'json={"value":"1"}' ${AVBHOST}/datastore/ext/ibank/0/ch/0/pad
  sleep 1
  curl -s --data 'json={"value":"0"}' ${AVBHOST}/datastore/ext/ibank/0/ch/0/pad
The last 3 lines toggle the Pad of Mic1 (visible and audible) and tell me this way that the interface is ready.

Re: Ultralite AVB

Posted: Mon Jul 01, 2019 2:14 pm
by bluebell
bluebell wrote:I created a ticket on the MOTU site regarding the buggy firmware in newer versions.

Since they are so stubborn and insist in naming the operating system but offer only Windows and Mac I had to choose one of them and chose Windows 10 64 Bit. I am afraid they will ask how I made Windows using class compliant mode and finally tell me that they "don't support Linux" although class compliant mode is OS-independent.

I tried at least.
Wow, they replied. They are aware of the bug and will fix it. I am impressed. Their suport is much better than expected.

Re: Ultralite AVB

Posted: Mon Jul 01, 2019 2:46 pm
by ahellquist
bluebell wrote:
bluebell wrote:I created a ticket on the MOTU site regarding the buggy firmware in newer versions.

Since they are so stubborn and insist in naming the operating system but offer only Windows and Mac I had to choose one of them and chose Windows 10 64 Bit. I am afraid they will ask how I made Windows using class compliant mode and finally tell me that they "don't support Linux" although class compliant mode is OS-independent.

I tried at least.
Wow, they replied. They are aware of the bug and will fix it. I am impressed. Their suport is much better than expected.
Awesome. I hope we can soon enjoy a fresh fully working firmware with touch console GUI.

Re: Ultralite AVB

Posted: Tue Jul 02, 2019 6:26 pm
by Musinux
bluebell wrote: Unfortunately after starting jackd the Ultralite forgets my enabled EQ in the mixer.
AFAIR, it's better to set the sample-rate in a script as well, since the interface keeps it's settings/presets somehow sample-rate specific.
For me, the Interface changes samplerate to 192kHz when booting up a USB-connected PC sometimes.
In other words: It doesn't "remember" the eq because the interface has seen a different sample-rate by the time your run the script. This might of course differ with firmware versions.


btw, thanks for bugging motu. We all should ALWAYS bug them EVERY time we find a bug. :wink:

Re: Ultralite AVB

Posted: Tue Jul 02, 2019 6:30 pm
by bluebell
Musinux wrote: AFAIR, it's better to set the sample-rate in a script as well, since the interface keeps it's settings/presets somehow sample-rate specific.
For me, the Interface changes samplerate to 192kHz when booting up a USB-connected PC sometimes.
Yes.
Musinux wrote: In other words: It doesn't "remember" the eq because the interface has seen a different sample-rate by the time your run the script. This might of course differ with firmware versions.

btw, thanks for bugging motu. We all should ALWAYS bug them EVERY time we find a bug. :wink:

Re: Ultralite AVB

Posted: Mon Jul 15, 2019 2:23 pm
by Ulrich
Musinux wrote:
AFAIR, it's better to set the sample-rate in a script as well, since the interface keeps it's settings/presets somehow sample-rate specific.
For me, the Interface changes samplerate to 192kHz when booting up a USB-connected PC sometimes.
In other words: It doesn't "remember" the eq because the interface has seen a different sample-rate by the time your run the script. This might of course differ with firmware versions.
How do you deal with that ? I experience the same behavior since I bought the 828ES. I switch back to my presets manually when it is happening (every reboot of the card, not the computer though which I find it strange), but maybe an automatic way of doing it once the samplerate has changed to 192k is possible ?

Re: Ultralite AVB

Posted: Tue Jul 16, 2019 3:49 pm
by bluebell
Ulrich wrote:
Musinux wrote:
AFAIR, it's better to set the sample-rate in a script as well, since the interface keeps it's settings/presets somehow sample-rate specific.
For me, the Interface changes samplerate to 192kHz when booting up a USB-connected PC sometimes.
In other words: It doesn't "remember" the eq because the interface has seen a different sample-rate by the time your run the script. This might of course differ with firmware versions.
How do you deal with that ? I experience the same behavior since I bought the 828ES. I switch back to my presets manually when it is happening (every reboot of the card, not the computer though which I find it strange), but maybe an automatic way of doing it once the samplerate has changed to 192k is possible ?
I switch on the Ultralite AVB, then I boot Linux.

Before I log in to my graphical session I wait until the Ultralite switches to 192 kHz. Then I know it's fully initialized and I can log in.
My jackd's start script loads my user preset (device) and enables the EQ with curl but you can also do this manually with a graphical web browser before starting jackd.

Re: Ultralite AVB

Posted: Fri Jul 19, 2019 8:45 am
by Musinux
Ulrich wrote: How do you deal with that ?
I put something like this in autostart or run it with qjackctl just before I start jack:

Code: Select all

#!/bin/bash
if [ $(curl -s 192.168.1.xx/datastore/ext/configuredRate| jq '.value') != 44100 ]; then
curl  --data 'json={"value":44100}' 192.168.1.xx/datastore/avb/0001f2fffe011ff4/cfg/0/current_sampling_rate;
FYI, I'm using this to activate my eq-settings _after_ setting the sample-rate:

Code: Select all

curl  --data 'json={"value":1.000000}' 192.168.1.xx/datastore/mix/aux/0/eq/lowshelf/enable;
curl  --data 'json={"value":1.000000}' 192.168.1.xx/datastore/mix/aux/2/eq/highshelf/enable;
curl  --data 'json={"value":1.000000}' 192.168.1.xx/datastore/mix/chan/10/eq/highshelf/enable;
Note that this doesn't create eq-settings, creating those in in the web-interface and saving as a preset was needed before my Interface would toggle them consistently.

You could also have a raspberry pi watchdog your sample-rate over LAN, which should then be set and forget (but still stupid if you think about it).