This is an A4 rework of my earlier uFSK module.
Frequency shift keying is a method of digital data transmission by frequency modulation of a carrier to represent ones and zeros. Here we are switching between two different oscillators using a third signal. Typically the modulator is some sort of square wave but I extended the concept to allow for any type audio modulation. The modulator crossfades between oscillator A and B over the range -1 to 1. In essence it’s a type of frequency modulation. Depending on the oscillator waveforms, their relative frequency and the waveform and frequency of the modulator you can generate some very harmonically rich outputs. It uses the built-in oscillator node so the fundamental waveforms are de-aliased. The waveform type and shape can be selected. There are two 1 per octave inputs which can be linked using the toggle. The input below the toggle changes the toggle’s state. There are coarse and fine frequency controls, and an output level control for each oscillator. The fsk audio modulator can be either external, or a square wave derived from oscillator A, controlled by the int/ext toggle of modulation input. There is also a sync input for the two oscillators. There is the FSK output and ring modulation of each oscillator with the fsk signal and with each other. The fsk output is low-pass filtered at 10kHz to reduce aliasing.
I/O
Input
Signal Range
Notes
osc A and B
1 per octave
two inputs - can be linked
link
gate
sums the two oscillator inputs when active
sync
gate
sync input for the two oscillators
int ext
gate
when high uses the external fsk input
ext
0-1 modulation
external fsk modulation (signal is typically at audio frequencies)
Output
Signal Range
Notes
fsk
-1 - 1 audio
primary mixed signal output
As
-1 - 1 audio
A * fsk ring mod
AB
-1 - 1 audio
A *B * ring mod
Bs
-1 - 1 audio
B * tsk ring mod
Controls
Control
Function
Notes
link
link toggle
when active links the 1 per octave inputs together