First attempt at patching a useful instrument - Moog Minitaur


#13

Yep, the patch is already included in the above posts, but I'll attach the latest copy here. I guess I should figure out how to share it through the official community patches as well.

minataur.axp (7.7 KB)

Other quick update to this, it looks like the Moog Sirin synth is actually very similar to the Minitaur but also provides for some additional features, I'm going to take a look through that schematic and manual too and see if there's anything else missing.


#14

Thank you nive patch:)


#15

Very nice patch, this .. destined for the jam selection ..


#16

Ok so I have been learning a LOT about synthesis and actually modelling real synths and while my first patch was a valiant attempt at learning the axoloti platform, it wasn't very good at all. I'm going to try to remodel it starting with the basics, and I hope some help from others way more experienced than me along the way.

I'm hoping that this might help others with similar ambitions along the way. What follows is going to be a step by step of my exploration with the modelling effort using the same Moog Minataur synth.

Part 1 - Inputs and Outputs.

Hardware wise, I'm a bit more limited in what I can do with the axoloti hardware, and make it generic enough to be useful for others as well. Thankfully we do have some of the basics that the minataur has:

  • Input, we have a stereo input pair, which is one better than the minataur (mono input only)
  • Output, we have a stereo output pair, again one better than the minataur (mono output only), and the same 1/8" headphone output.
  • In addition the minataur has 4 control inputs which are used for pitch, filter and volume CV and a gate.
  • The minataur only has a midi-in while we have a midi-out/thru port as well, but really usable for inputs.
  • The biggest difference is on the front panel where the minataur has a mixture of 4 buttons, and 17 potentiometers for controlling all of the parameters, and we have none. So we can use midi CC's to control these, and some combination of hardware / software to trigger the midi CC's. I'm going to be using the Axocontrol, and a 16n fader that I recently built (with a non-functioning 9th fader due to very poor soldering skills).

For the patch I'm going to initially build this as a mono in/out synth, but using both channels in and out

In the patch attached I have mapped the controls using object I thing will be best suited for the job, if anyone has input on them please let me know.

  • audio/in stereo for the input
  • midi/in/keyb for the mini input
  • midi/in/cc for the midi cc inputs (probably need 17 of these eventually to match the hardware inputs)
  • audio/out stereo for the output
  • disp/scope (x2) as a utility for the patch


minataur-step1-hardware.axp (2.8 KB)

Part 2 will be focused on sound generation.


#17

Im confused by some of your use of ‘mini’. I think you mean MIDI?

The MIDI out/through port cannot be used for input.


#18

Part 2 - Sound Generation

With the basics of input and output setup, I've added four oscillators, a saw and a square wave for both OSC1 and 2.
I also connected the midi note to both oscillators, but I added a tuning mixer (mix/mix 1) to use knob 6 to effectively detune the second oscillator.

I then provided a dual VCA to allow for control of each oscillator which then gets fed into another mixer. This could probably be simplified with a 3 input mixer to include the external input. I then routed the signal to the left and right out to test the functions.

The main issue I haven't solved yet is to find away to use the toggle buttons (momentary switches) to switch between the saw and square oscillators. The drj/switch/par_swap_1 controls don't seem to work that way. Looking for someone with the suggestion for this.


Next up, hopefully fixes to the toggles, addition of the VCF and glide control for the notes.
minataur-step2-sound.axp (9.1 KB)


#19

I noticed, your connections from the axocontrol to the LEDs are crossed.

I think this is what you're trying to do with toggles, simplified, to verify par_swap_1 operation. I'm using two sine oscillators, tuned to different frequencies. The pushbutton switches them, as expected.


#20

Hey all,

Also new to this...!

What are the PB0, PB1, etc. for (yellow round ports on the axocontrol object)?

Thanks!


#21

Those are inputs which control the 4 LEDs.


#22

Ah, I see. thank you!


#23

Part 3 - Filters, Glide, ADSR, tweaks

Thanks for the feedback, I've rerouted the cables and connected the toggles to properly switch the oscillators.

Now it's time to add the filter. The classic Moog filter can be a hard thing to try to emulate especially digitally, in this case I have added the jaffa/filt/mm24db filter, this is connected to the main mixer combining the two oscillators and the input. The output of the filter is connected directly to the outputs. I have added an ADSR for the filter which is connected through a gain control to adjust the amount of envelope applied to the filter. This is controlled using ADS/R using knobs 1-3 on the axocontrol.

Next up is a bit of a tweak, the tuning control of OSC1 on the Minitaur provides full +1/-1 octave control, so I needed to set the mix gain to 24.00 on the dial and set the midpoint tuning of the knob to 164.8 or C4. This now give a full octave range up and down on the Oscillator - cool!

The glide control is easy, the sss/math/glideMultiExt provides for glide, with the on/off connected to a click of the axocontrol's joystick running through a logic/toggle to track the change (I'm quickly running out of physical controls).

I also added some midi/in/cc in advance of needing to control additional values using a midi controller or software. For now I'll likely just move the axo control's hardware around to test different functions.

I also added another Amp envelope which is connected to the master output VCA. No controls yet for the AMP VCA.

minataur-step3-VCF.axp (11.6 KB)

Next part will be the LFO and modulations for the filter and the VCOs.


#24

I'm hoping to have the next part up soon, I have been messing with my axoloti hardware to get one of the axoctrl from hohum working so that I have additional hardware inputs.


#25

I really like this patch!
...actually added (soldered) some pods to my axo to play along!
Yeah I am waiting :slight_smile:


#26

Thanks for making this patch. I made a polyphonic subpatch that I use routinely. It sounds sooo good.


#27

Well a bit of a set-back, I decided that late-night soldering is a good idea and soldered the row of 40 headers to the wrong side of the axoctrl, doh! I managed to get it off, but I need to now try to clean the holes to get a new header attached. Glad you guys are liking it. @hitachii maybe share the subpatch you got, I'd like to try it out.


#28

Part 4 - Axoctrl

Ok, problems solved. I got the soldering issues figured out and while I'm waiting for the OLED 3306 screen to arrive (didn't know they made ones with the VCC and ground pins swapped?!?), I put the unit together and did some basic coding on the patch.


Replacing the inputs with those from the Axoctrl is pretty straightforward, but I have a couple of questions below that maybe someone can help me figure out what the best approach is.

First things first, I'm struggling with how to control the filter. The easy way which is in the patch is to simply control the cut-off with one of the pots, which sounds great. The harder way is somehow figuring out how to combine the ADSR with the EG amount. I think what I'm trying to do is to set the cut-off frequency and then use the ADSR to modulate the amount of filter applied based on the gate? Does this sound right?

The other thing is that the pots that I bought are 0-64 range and for most things I need -64-+64 range, I solved this with the TSG/math/map b and setting the two points. Is there an easier way to do this?

Another idea which I'm not sure how to do is to take one of the pots and have it do the mixing between the two OSCs, -64=100% OSC1, 0=50/50 mix of both +64=100% OSC2. I was thinking there should be an object that does this already but I couldn't find one. This would move the mix to one of the potentiometer instead of two.

The other problem I'd like to solve is that I have four buttons on the axoctrl and I'd like to use one as a "shift" function and be able to hold it and change a value of a pot to affect a different parameter, are there any good examples of this out there?

Thanks again, I'm hoping that I'll have the screen and the modulation inputs to test out as part of the next couple of updates.

Cheers.
minataur-step4-axoctrl.axp (13.5 KB)


Modular style patch
#29

Pots themselves don't have range. "TSG/math/map b" looks like a simple solution to me.


#30

Or use conv/unipolar2bipolar with pots if you don't need to set the upper & lower value.


#31

That's a good one @janvantomme! thanks!


#32

First things first, I'm struggling with how to control the filter. The easy way which is in the patch is to simply control the cut-off with one of the pots, which sounds great. The harder way is somehow figuring out how to combine the ADSR with the EG amount.

Basically you need one pot for filter frequency, and another pot for the envelope amount.
Let's say Pot#10 is filter frequency, Pot#11 is envelope amount.
You can
1. patch the ADSR envelope and Pot#11 to the multiply object's inlets (math/*)
2. patch Pot#10 and the output of the multiply object to the add object inlets (math/+)
3. patch the output of the add object to the filter frequency

The other thing is that the pots that I bought are 0-64 range and for most things I need -64-+64 range, I solved this with the TSG/math/map b and setting the two points. Is there an easier way to do this?

Use the conv/unipolar2bipolar object

Another idea which I'm not sure how to do is to take one of the pots and have it do the mixing between the two OSCs, -64=100% OSC1, 0=50/50 mix of both +64=100% OSC2. I was thinking there should be an object that does this already but I couldn't find one. This would move the mix to one of the potentiometer instead of two.

Try searching 'fade' or 'xfade' when you're searching for an object. It will definitely blend between two inputs, but there's a chance you might need to adjust the volume when you turn the potentiometer to the middle position.

The other problem I'd like to solve is that I have four buttons on the axoctrl and I'd like to use one as a "shift" function and be able to hold it and change a value of a pot to affect a different parameter, are there any good examples of this out there?

What I'd suggest you use is the MultiPot object. (TSG/ctrl/MultiPot 3) This object allows you to change parameter by switching the layer.
Let's say you want to use Button#6 as the shift function, and you want to switch to a different parameter by holding down the button.
It'd look a little something like this

I'm excited to see your finished patch!