Quadrax 1.2.0

I agree, will add this for something to look at for the next update.

2 Likes

I was reading the updated manual and saw this added paragraph:
However, if you patch a trigger signal into one of the linked LFO’s unused TRIG inputs, it will act as a RESET for the entire chain, which will force all the LFOs to reset to their ‘ starting’ phase on the next clock pulse. This is particularly useful if your chained LFOs have different clock divisions/multiplications, and you want to resync them all to their beginning phase (such as after a certain number of bars or beats)

I tried this out with Channels 1-4 chained in LFO mode (magenta) and having Channel 1 trigger as the clock input (unlit) with Channels 2-4 set to Trigger Link (red). I then placed a reset trigger signal into Channel 2 Trig input, and this only resets the phase for Channels 3 and 4. If I place the reset trigger signal into Channel 3 Trig it only resets Channel 4, and input into Channel 4 Trig there is no reset on any channel.

I understood the added paragraph to mean that if a reset trigger was input into any Channels 2-4 (in this previous example), then all 4 channels would have their phase reset. Was the added paragraph not implemented correctly, or am I misunderstanding what it is saying?

Testing out LFO alternate mode, I tried out the same setup as in my last example [Channels 1-4 chained in LFO mode (flashing magenta) and having Channel 1 trigger as the clock input (unlit) with Channels 2-4 set to Trigger Link (red)]. For this I also have the SHAPE (SLEW) turned fully counterclockwise for all channels.

With Channels 1-4 RISE knob set to noon position Channels 2-4 respond to the incoming clock coming from the Channel 1 Trig input, but the Channel 1 rate of change does not respond at all to changes in the incoming clock. (as shown in screenshot below).

Also, the turning RISE knob counterclockwise for any channels does not have any response to clock division, but does appear to work for clock multiplication on channels 2-4.

Quadrax can be set to ±10v or ±5v. Assuming that’s a software and not a hardware limitation, is there a possibility of a 0-1v setting for use with LZX video modules?

Yes that should be possible, I will add that to our wishlist.

1 Like

May as well add a 0-8V option too (to match some of the other “popular” function generators out there :wink:

2 Likes

You can also assign a Single CV input to level on each channel and put a steady 1V signal there. Set the module to 5v envelopes for it to work across all modes

1 Like

Would just like to add my support for linking the gate rather than trigger when in AHR mode.

Just spent a few minutes looking very confused trying to work out why I couldn’t get the 1st channel to be a held volume envelope with a 2nd channel being a held filter envelope.

Look forward to an update!

1 Like

Yes this is already implemented for a future firmware.

4 Likes

I was scratching my head over the same thing this past weekend.
Couldn’t find anything that showed we had the ability to linking gates in previous firmware versions, but I could of swore we could do that before…
Thanks @kamil for the update… that’s good news.

Thanks for the firmware updates! I was surprised to see that Quadrax was getting more features, this is exciting!

Just to confirm an earlier report: I had the same issue as Minatorymodular and channel 2 wasn’t outputting voltage, the light wasn’t coming on either. I wonder why channel 2 is the one that freaks out? I tried to see if clearing just the CV assignments would fix it, but no luck, however the full system reset did the trick and everything seems fine now.

Is there going to be a way to chain Quadrax in the future and really use that spare I2C port?

Hm that’s an interesting idea, how would they be chained? Just with the link switches? One problem I can immediately think of is the timing would not be tight. The sync within the Quadrax is sample-accurate and there would be no way to preserve that across I2C.

Using the links seems like the most straightforward way to do it.

The biggest win I think would be letting us really quickly set up 8±step modulation sequences, but a smaller win would be syncing up 8+ LFOs with a single cable.

For the use cases above I think it might be possible to keep things in tight sync.


If I may engage in a little bit of idle implementation speculation? While I’m a software developer I fully recognize that I don’t know the limitations of the DSP hardware or I2C implementation, so please ignore if this is not helpful or you’ve already thought of it. I’m not at all trying to pretend like this is simple work! <3

  • When the Quadrax starts, do a latency check with its neighbors. (I assume this already happens for the Qx.)

LFOs

  • I assume the LFOs track the BPM internally and store the BPM and phase? If so, then it can broadcast it as it changes. (With a limit on number of updates per tick. Uhg, congestion/backoff algos.)
  • The listening Quadrax(es) can essentially subtract the latency from their phase and then “should” sync up.

EOR/EOF

  • One possibility would be to send a trigger to the other units as soon as the trigger is received, along with the current duration to EOF/EOF.
  • The listeners then wait for duration minus latency and then trigger themselves. (This is probably how the Qx works?)

Sample-accurate ganged starts is obviously impossible. Even splitting an external clock to two Quadrax’s trigger inputs won’t guarantee sample accuracy since likely their clocks will be slightly out of phase, though this is inaudible.

I do wonder what the real-world latency would be like over I2C though?

I did some really rudimentary googling to see what some worst case latency across I2C might be like. If my math is right, we’re looking at 2.5ish samples of latency at 48khz (not including processing on either end). I couldn’t find the samplerate of the Quadrax so I guessed. 3 samples is probably not ideal for a paired amp/pitch envelope for making the perfect snappy kick, but shouldn’t be the end of the world for other use cases. This is like the Drake equation though, if plug in different values you’ll get a completely different result.


Whew, idle speculation over! I definitely haven’t spent the last 2 hours researching or anything.

1 Like

One thing to keep in mind is that the I2C bus runs at 100 kbit/sec so we’ve got a max update speed of 12.5 kbyte / sec. and each communication is a minimum of 1 byte. So definitely would not be able to have anything sample-accurate (the internal sample rate is indeed 48 kHz in this particular module) especially if we had to send tempo information (32-bit number).

But anyway, I’m not saying no, I think it’s a cool idea to be able to link two units. I’ll think about it for a future update and see what we can do… in the mean time we have some other stuff cooking for another update

3 Likes

I2C bus runs at 100 kbit/sec

Interesting, thanks for the info on the I2C implementation. Sounds like it can be useful but also very limiting.

I think it’s a cool idea to be able to link two units.

For sure! I just thought it was a shame to have so much connectivity go to waste!

Hi all,

Just got a quadrax and was under the impression that the outputs amplitude could be attenuated but can’t see such a thing in the manual, I think I got confused with the amount of CV in which can be attenuverted. :frowning:

unless I’m missing something? Do I need another vca to attenuate the amplitude of the quadrax lfos? or can it be added to a firmware update?

Thanks!

EDIT: just found out about CV over level :man_facepalming:

Only quadrax CV assignable inputs have attenuation and it is limited to 4 levels of attenuation. So yes, you’ll need an attenuator or VCA to reduce the amplitude of the outputs.

1 Like

Any updates on bug fixes for Quadrax? I haven’t seen any updates for the several bugs I reported since back in November.

That’s not completely true. If you assign a CV input to LEVEL you can control the output level of a channel with that CV input. You could either control the level of a channel with another Quadrax channel or some other CV source.

1 Like

Interesting :thinking:
I wasn’t aware of that. I need to re-read the manual.