Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| sounds:zoia [2022-12-23 19:58] – ↷ Links adapted because of a move operation asdf | sounds:zoia [2024-02-13 23:40] (current) – [Bluebox MIDI sync] remove section, as it is not feasible asdf | ||
|---|---|---|---|
| Line 8: | Line 8: | ||
| * [[https:// | * [[https:// | ||
| * [[https:// | * [[https:// | ||
| + | |||
| + | ===== Patch notes ===== | ||
| + | |||
| + | ==== Turing Machine ==== | ||
| + | To imitate the Music Thing Turing Machine, we use a ring of sample and hold modules as our shift register. The output of the last is fed into both the output and an input switch. The switch is controlled by a comparator whose inputs are the write probability (positive) and a triggered random value (negative). When the latter exceeds the former, the ring continues to loop unchanged; otherwise, a new note is inserted into the start of the loop. Thanks to the module' | ||
| + | |||
| + | Unlike the Turing Machine, the number of steps is hardcoded into the patch and cannot be adjusted on the fly (yet). The user can adjust the write probability, | ||
| + | |||
| + | < | ||
| + | digraph G { | ||
| + | rankdir=LR; | ||
| + | | ||
| + | sh1 [label=" | ||
| + | sh2 [label=" | ||
| + | shk [label=" | ||
| + | shn [label=" | ||
| + | mux [label=" | ||
| + | comp [label=" | ||
| + | quant [label=" | ||
| + | rand_newnote [label=" | ||
| + | param_pwrite [label=" | ||
| + | out; | ||
| + | rand_roll [label=" | ||
| + | | ||
| + | sh1 -> sh2 -> shk -> shn; | ||
| + | shn -> mux [headlabel=" | ||
| + | rand_newnote -> mux [headlabel=" | ||
| + | mux -> sh1; | ||
| + | shn -> quant -> out; | ||
| + | | ||
| + | param_pwrite -> comp [headlabel=" | ||
| + | rand_roll -> comp [headlabel=" | ||
| + | comp -> mux; | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | An alternative idea would be to use a sequencer as the shift register. This arrangement requires a connection to each step of the sequence, but it allows us to dynamically adjust the number of steps (and program an initial sequence). | ||
| + | |||
| + | < | ||
| + | digraph G { | ||
| + | rankdir=LR; | ||
| + | | ||
| + | seq; | ||
| + | lfo_ramp [shape=" | ||
| + | rand1 [shape=" | ||
| + | rand2 [shape=" | ||
| + | quant; | ||
| + | dmux; | ||
| + | mux; | ||
| + | comp1 [shape=" | ||
| + | comp2 [shape=" | ||
| + | var_steps [shape=" | ||
| + | var_pwrite [shape=" | ||
| + | out; | ||
| + | | ||
| + | var_pwrite -> comp1; | ||
| + | rand1 -> comp1; | ||
| + | rand2 -> quant -> mux; | ||
| + | comp1 -> mux [headlabel=" | ||
| + | | ||
| + | mux -> dmux; | ||
| + | dmux -> seq [penwidth=2, | ||
| + | | ||
| + | lfo_ramp -> dmux [headlabel=" | ||
| + | var_steps -> comp2 [headlabel=" | ||
| + | lfo_ramp -> comp2 [headlabel=" | ||
| + | comp2 -> lfo_ramp [headlabel=" | ||
| + | comp2 -> seq [headlabel=" | ||
| + | | ||
| + | seq -> mux; | ||
| + | seq -> out; | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | ===== Module reference ===== | ||
| + | ==== Interface modules ==== | ||
| + | Physical I/O for audio, MIDI, UI, and CV. | ||
| + | |||
| + | === Audio input === | ||
| + | === Audio output === | ||
| + | === MIDI notes in === | ||
| + | === MIDI pitch bend === | ||
| + | === MIDI CC in === | ||
| + | === MIDI pressure === | ||
| + | === MIDI clock in === | ||
| + | === MIDI CC out === | ||
| + | === MIDI PC out === | ||
| + | === MIDI note out === | ||
| + | === MIDI clock out === | ||
| + | === Stompswitch === | ||
| + | === Pixel === | ||
| + | === UI button === | ||
| + | === Pushbutton === | ||
| + | === Device control === | ||
| + | Controls the pedal' | ||
| + | |||
| + | === Keyboard === | ||
| + | Turns grid buttons into a playable keyboard. Each button can be tuned to any note. | ||
| + | |||
| + | === Cport exp/CV in === | ||
| + | Accepts input from an expression pedal or external CV source. The CPort setting must be set according to the input. | ||
| + | |||
| + | === Cport CV out === | ||
| + | Sends 0--5 V on the ring of the control port depending on the input value. CPort must be set to CV mode in the config menu. | ||
| + | |||
| + | ==== Audio modules ==== | ||
| + | These modules generate or modify audio signals. Unlike typical hardware modular, audio modules cannot operate on CV signals (and vice versa). | ||
| + | |||
| + | === Oscillator === | ||
| + | === VCA === | ||
| + | === SV filter === | ||
| + | === Multi-filter === | ||
| + | === Delay line === | ||
| + | === Audio panner === | ||
| + | === Pitch shifter === | ||
| + | === Audio balance === | ||
| + | === Audio mixer === | ||
| + | === Inverter === | ||
| + | === Audio in switch === | ||
| + | === Audio out switch === | ||
| + | === All pass filter === | ||
| + | === Noise === | ||
| + | === Audio multiply === | ||
| + | === Bit crusher === | ||
| + | === Aliaser === | ||
| + | === 1 buffer delay === | ||
| + | === Looper === | ||
| + | === Granular === | ||
| + | === Stereo spread === | ||
| + | === Bit modulator === | ||
| + | === Diffuser === | ||
| + | |||
| + | ==== Control modules ==== | ||
| + | CV generation and operation modules. | ||
| + | |||
| + | === LFO === | ||
| + | === Sequencer === | ||
| + | === ADSR === | ||
| + | === Sample and hold === | ||
| + | === CV invert === | ||
| + | === CV rectify === | ||
| + | === Value === | ||
| + | === Trigger === | ||
| + | === CV flip flop === | ||
| + | === CV delay === | ||
| + | === CV loop === | ||
| + | === CV filter === | ||
| + | === Clock divider === | ||
| + | === Comparator === | ||
| + | === In switch === | ||
| + | === Out switch === | ||
| + | === Slew limiter === | ||
| + | === Quantizer === | ||
| + | === Steps === | ||
| + | === Multiplier === | ||
| + | Like a VCA for CV signals. | ||
| + | |||
| + | === Random === | ||
| + | === Rhythm === | ||
| + | === Tap to CV === | ||
| + | === CV mixer === | ||
| + | |||
| + | ==== Analysis modules ==== | ||
| + | These modules create CV signals from audio. | ||
| + | |||
| + | === Onset detector === | ||
| + | === Env follower === | ||
| + | === Pitch detector === | ||
| + | |||
| + | ==== Effect modules ==== | ||
| + | Standard guitar-type effects. It should be possible to assemble most, if not all, of these from the above components. | ||
| + | |||
| + | === Tone control === | ||
| + | === Delay w/ mod === | ||
| + | === Ping pong delay === | ||
| + | === OD & distortion === | ||
| + | === Fuzz === | ||
| + | === Compressor === | ||
| + | === Gate === | ||
| + | === Plate reverb === | ||
| + | === Hall reverb === | ||
| + | === Room reverb === | ||
| + | === Ghostverb === | ||
| + | === Reverb lite === | ||
| + | === Phaser === | ||
| + | === Chorus === | ||
| + | === Vibrato === | ||
| + | === Flanger === | ||
| + | === Tremolo === | ||
| + | === Env filter === | ||
| + | === Ring modulator === | ||
| + | === Cabinet sim === | ||
| + | |||
| + | {{tag> | ||