In the first instalment of this series we looked at creating a monosynth in Reaktor, from the absolute basics through to creating oscillators, MIDI inputs, a basic ADSR envelope and filter before finishing with an introduction to macros.
If you’ve not read it, I’d recommend familiarising yourself with what we talked about:
Today we’re going to expand our synth by looking at developing our oscillators and noise sources a bit more and we’ll also get onto introducing some modulation. In future articles we’ll improve the MIDI capabilities, look at the master section, expand our filters and more.
Everything but the Kitchen Sync
Let’s start by building on our oscillator section. Start off by deleting Osc 2 and Osc 3 macros (we’ll work on Osc 1 and duplicate it to save repeating the same process over and over). Double click on Osc 1 macro to look inside.
There are numerous oscillators available to us in the Built-In Modules > Oscillator section, however we’re going to add the Sync ones in place of our current oscillators. Delete them and add Sine Sync, Tri Sync, Pulse Sync and Saw Sync.
You can begin by connecting the outputs to our switch and the P and A input terminals to our new oscillators, leaving our PW knob for now. If you’ve done everything correctly it should look something like this:
We can see some new inputs here: F, Snc and Ph. If ‘show info/hints’ is enabled you can read about what they do by hovering over them with the cursor. F is for linear frequency control, which can be used for frequency modulation. Create an In Port (Built-In Modules > Terminal) and name it F.
We will want to be able to control how much frequency modulation we have so take the newly-created F terminal and connect it to a multiply module (Built-In Modules > Math), create a knob and name it ‘FM depth’ and connect that to the multiplier. Set the range from 0 to 5000 in the side pane Function tab. Finally, connect this multiplier to our F inputs on each oscillator. We should have something like this:
Next we have Snc and Ph. Snc is an audio input for controlling the synchronisation of our oscillator’s phase, which we can snap with a gate on signal (which is useful for phatter basslines and such). Ph determines where the oscillators phase would start on that gate on signal, ranging from -1 to 1 (-180 degrees to 180 degrees). Create a constant of 0 and wire this to all of the Ph inputs. Next create an In Port, name it G and connect it to the Snc inputs.
N.B If you wanted more control over the phase of each oscillator you could create a control ranging from -1 to 1, but I can’t see a reason you’d want out of phase oscillators for a monosynth. Just bear in mind it’s possible. In later articles we’ll remove the constant and replace it with a button in our master section to enable/disable phase restart with a gate on signal.
Finally delete our PW knob and create an In Port named PW. As before, create a multiply module and connect PW to it. Cntrl + click on the remaining port and create a control. We can leave the range from 0 to 1. Name this new control PWM (pulse-width modulation) and connect that to the W input for the Pulse Sync oscillator.
This isn’t perfect because we can’t have individual control over PW and PWM (say if the PWM is disengaged) but we’ll fix that in later weeks.
With a bit of tidying our front panel should look something like this:
Our Oscillators are in pretty good shape now so let’s move back a level and connect our G output from the MIDI macro to the G input on our Osc 1 macro. Now, duplicate the Osc macro twice and rename our two new ones Osc 2 and Osc 3. Connect these to the relevant inputs on our Osc mix macro: