Couple of basic questions


#1

Hey guys,

Still haven't got the time to dip right into the coding side of Ax, so still using the factory/community objects for now, and I have a few questions. Some are object related, others are hardware related. Any help much appreciate!

Just so you understand my position, I come from a guitar background, and have messed around with basic electronics, but my coding skills are next to none, so Im really struggling to make my ideas for FX work correctly. I mainly want to use the Ax for multi-fx, not for sequencing or anything too fancy code-wise.

On objects:
- Why are some fx (like choruses or phasers) mono ins/outs? Are they designed to be used in pairs and synced somehow? Or are they intended to not be used as traditional fx? Seemed really weird having a phaser running just through my left speaker...
- Related to the topic above, if I have something like a traditional filter (found a great one in community patches, can't remember the name!), how can I use two of them (stereo), and then link them with a single control that DOESN'T have audible stepping? I've noticed the object for linking controls to a single knob moves in increments of 0.10, which is really obvious on a resonant filter. Any way of increasing the resolution?
- I couldn't get lmnts or wrps to compile, it crashed/disconnected my Ax and gave the "patch took too long..." message. I've tried syncing libraries but didn't fix it - any ideas?
- on Clds (which I really like!), there's the prevalent issue of maxing the CPU when density is pushed too far. Is there a way to re-code the density knob to stay within the "optimal" range so it doesn't crap out?

Now, onto hardware: I'm really finding it hard to find a solid guide on where/how potentiometers can be attached to the board. Is there a guide here somewhere? The codes on the board mean nothing to my feeble brain... Also:
- where/how would I add an LDR (light dependent resistor)
- where/how would I add switches (like SPDT's) to switch fx on/off?
- how are these patched within Ax?

Again, sorry for the basic questions, but it's really hard to find specific information on this. Any help appreciated!


#2

i

if they have no 'stereo effect' then having as mono, means you can choose to either use 1, and then split to stereo, or 2 if you have already have a stereo.

this is display resolution only, if you hold shift+ctrl it allows finer control.

you need an sdcard for lmnts... but apart from that works fine for me, id need to see logs
.. make sure you are on the latest version of Axoloti and have sync'd the factory library
wrps, is not particularly useful in this iteration... ive rewritten it for organelle, and will back port this to Axoloti for the next release.

I think it probably 'craps out' (as you kindly put it) only in some modes, and the issue is the UI in Axoloti is not flexible enough to have different ranges based on different inputs..
ok, that's not strictly true, I could reinterpret the range, but with something like clds theres quite a few variables that influence it...
there is a workaround however, clds has inlets for all controls, so just set the dial to 0 , and add your own dial plus rescalling and send that the inlet.


#3

the following post covers these details, it has example circuits, and it also shows the object to use to patch in.
... generally you'll use gpio/in/digital or gpio/in/analog depending on if your using an analog or digital signal, these objects take the 'pin' which is the naming on the underside of the board (and also in the pin out description in the post)


#4

If you are familiar with Eurorack format, most of the stuff is also mono. There are some stereo modules but not as many as mono. And one of the reasons for this could be that most sound sources are actually mono, not stereo, like oscillators, etc.

If you for example want a phaser to not only be in left side, you can simply just connect the output of the phaser to left and right output. It doesnt give you a stereo effect, but a dual mono effect. But in many cases this is good enough imo. I have plans to update a phaser I made for stereo version, but I think it will end up being a mono in > stereo out phaser.

Another reason, building everything in stereo also means you need 2 of every object = double DSP load.

Me personally, I usually never use like 3 stereo effects for a sound. I would probably use a mono drive stage a mono compressor and THEN to a stereo effect. Examples of course, could be any effect. This does save a great deal of DSP resources for other purposes.

So in general it is a good idea to do some testing and think if one actually needs 3-4 stereo effects in an effect chain or you can do with:
Mono Fx1 > mono Fx2 > mono Fx3 > and THEN a stereo effect to add some "stereo space" to the sound.

As technobear wrote using shift+ctrl give you finer resolution when dialing the parameters with the mouse.... But if you for example modulates the filter cut off with an envelope or an lfo the modulation is not steppy. So it also depends on how you do it.

If you for example use a midi controller for controlling the parameters of Axoloti, you aso only have a resolution of 128 steps. Which also cand sound a bit steppy.

About the stepping and suggestions to how to fix it:
A way to remove the steppyness, and this goes to both using mouse and using a midi controller with only 128 steps resolution, you can try to use the math/smooth object:

Connect the dial to the input of the smooth object and then connect it to for example the modulation input of a filter. This will smooth out the steppyness a lot. You can even set the time of how long it will take to get to the next value.

How to use the smoothing object:

If you are familiar with Acess Virus synth, then you will see a good example of what smoothing can do of positive things to a parameter smoothing. When you dial the parameters of the Virus very rapidly, you will see that the the actually movement of the knob you are dialing will be a bit delayed and kind of "glide" between the values. This is smoothing. And imo one of the reasons Virus synth sounds so smooth.

If you want to see opposite example of smoothing take any Waldorf synth. Their encoders are extremely skippy and opposite Virus most waldorf synths will litteraly JUMP from one value to another if you dial it too fast, like go from 10 to 126.. and then skip all the values inbetween, like extreme case of the steppyness you talk about.

TO avoid steppyness in another way, you can add your own potentiometers, which uses CV and will also have a lot higher resolution than just using a midi controller. This also prevent steppyness...

So there are a few things you can do now all ready to make the parameters sound more smooth.

Hope that helps a bit!


#5

Which would also result in the 'inertia' effect to an extent - something I wish all VST/VSTi knobs had.


#6

Yeah, if one keeps it in mind it can be used creatively. Access could add the function so one could calibrate the smoothing time manually for all knobs overall. Maybe set it for 2 seconds and dial away. I think it could be used creatively in many ways :slight_smile:


#7

Hey @thetechnobear and @jaffasplaffa thanks for the awesome replies, really covered a lot of my questions!

Re: Clds - yeah the lofi mode sucks up another 20% of CPU when I switch it on. I like the idea of scaling for controls - how would this work for the density knob though, which works from the middle and has - and + movements? The other thing is that there is a big volume bump when the module is bypassed - I couldn't work out how to adjust this, maybe some kind of internal boost within the module?

Speaking of, is there an easy way to add a "master bypass" of sorts, then map a switch to it so whole modules can be switched out of the circuit? Then I could switch them on/off with a physical switch?

I managed to get Lmnts working once I plugged an Sd card in - I didn't realise it needs to be triggered from a Sine wave (or whatever input) I thought it generated sounds on it's own? Maybe I just don't get the original module?

Re: the mono thing - makes a lot of sense. I'm guessing I was confused just from the fact that I'm running stereo stuff thru it, but yeah not everyone would be doing that. And yeah, building synth voices wouldn't make sense always doing stereo stuff.

Thanks for your help guys, much appreciated!


#8

Maybe try using muxers for this and then use a toggle switch to turn the muxer on/off. The toggle switch can then be assinged to midi cc and controlled from your physical switch:

You can then serial connect the effects and have on/off switch for each of them. It is also easy to add a master on/off switch like this.

Yeah if you need stereo... you need stereo :slight_smile: It will just take some more DSP from Axoloti making stereo effects.


#9

lofi mode, yeah doesn't make much sense really... it consumes more because its downsampling, and its a bit too much for axo to handle.
scaling... lots of ways, but you can just set it to density to zero , and then feed it positive values, in the range you want.

bypass, yeah thats partly the MI code... the bypass simply doesnt execute any code for conversion... whilst if your processing, then depending upon settings, its could be softer or louder. (it'll probably be improved in the next release)
again, you could work around, by controlling the bypass with a toggle, which you then use to also add a gain adjustment to the output.

hmm, i think it rather depends again on whats going on, its got a lot of controls ... sometimes it will just need the gate/trig to be fired, which will create an in impulse for the resonator. generally some exciters (eg. strike) dont need input. so its important to check the levels of the various exciters.

as i mentioned already, I recently moved this modules all over to Organelle, and actually improved all them quite a bit in the process - partly due to going over the MI code a second time, but also by having more a focus on the 'playability', since i focused on creating patches more than giving uses objects to integrate.
I plan to reflect these changes in the Axoloti versions for the next release.

(this is also why I'm being a little vague in my answers, as Im not 100% clear which things made it into axoloti, and which were improved for Organelle... and I don't really have time to start rummaging around in the code at the moment to check)