This page is read from MIDI Instrument Definitions, a Python library used in the author's other projects, in which every number is traced to a document its maker published. Its source is on GitHub.
Novation Circuit MIDI implementation
The MIDI implementation of the Novation Circuit: what it answers to, and the 299 controls it offers, on firmware 1.8.
At a glance
- Firmware
- This page describes firmware 1.8.
- MIDI channel
- Any one of 1 to 15.
- Parts
- Synth, 2 of them: each on a MIDI channel of its own, taking notes, controls, and program changes, with 6 voices each.
Drums: on a MIDI channel of its own, taking notes and controls.
Session: on MIDI channel 16, taking controls and program changes. - Voices
- Each part's own, under Parts.
- Note range
- Not recorded.
- Velocity
- Not recorded.
- Aftertouch
- Not recorded.
- Pitch bend
- Not recorded.
- Program change
- Received and sent, with 64 presets.
- MIDI clock
- Sent and received.
- Start and stop
- Sent and received.
- Control change
- 95 controls, in the tables below.
- NRPN
- Supported. 204 of the controls below have one.
- System exclusive
- Supported.
Controls
In the order the definition gives them, by part and group. Under each control is the name a program calls it by, once pymidiinstrumentdefs.load("novation/circuit") has loaded them.
Synth
Voice
| Control | CC | NRPN | Values |
|---|---|---|---|
Polyphony Modepolyphony_mode |
3 | 0 mono, 1 mono_ag, 2 poly; default 2 |
|
Portamento Rateportamento_rate |
5 | 0-127; default 0 | |
Pre-Glidepre_glide |
9 | 52-76; default 64 | |
Keyboard Octavekeyboard_octave |
13 | 58-69; default 64 |
Oscillator
| Control | CC | NRPN | Values |
|---|---|---|---|
osc 1 waveosc_1_wave |
19 | 0 sine, 1 triangle, 2 sawtooth, 3 saw_9_1_pw, 4 saw_8_2_pw, 5 saw_7_3_pw, 6 saw_6_4_pw, 7 saw_5_5_pw, 8 saw_4_6_pw, 9 saw_3_7_pw, 10 saw_2_8_pw, 11 saw_1_9_pw, 12 pulse_width, 13 square_wavetables, 14 sine_table, 15 analogue_pulse, 16 analogue_sync, 17 triangle_saw_blend, 18 digital_nasty_1, 19 digital_nasty_2, 20 digital_saw_square, 21 digital_vocal_1, 22 digital_vocal_2, 23 digital_vocal_3, 24 digital_vocal_4, 25 digital_vocal_5, 26 digital_vocal_6, 27 random_collection_1, 28 random_collection_2, 29 random_collection_3; default 2 |
|
osc 1 wave interpolateosc_1_wave_interpolate |
20 | 0-127; default 0 | |
osc 1 pulse width indexosc_1_pulse_width_index |
21 | 0-127; default 127 | |
osc 1 virtual sync depthosc_1_virtual_sync_depth |
22 | 0-127; default 0 | |
osc 1 densityosc_1_density |
24 | 0-127; default 0 | |
osc 1 density detuneosc_1_density_detune |
25 | 0-127; default 0 | |
osc 1 semitonesosc_1_semitones |
26 | 0-127; default 64 | |
osc 1 centsosc_1_cents |
27 | 0-127; default 64 | |
osc 1 pitchbendosc_1_pitchbend |
28 | 52-76; default 76 | |
osc 2 waveosc_2_wave |
29 | 0 sine, 1 triangle, 2 sawtooth, 3 saw_9_1_pw, 4 saw_8_2_pw, 5 saw_7_3_pw, 6 saw_6_4_pw, 7 saw_5_5_pw, 8 saw_4_6_pw, 9 saw_3_7_pw, 10 saw_2_8_pw, 11 saw_1_9_pw, 12 pulse_width, 13 square_wavetables, 14 sine_table, 15 analogue_pulse, 16 analogue_sync, 17 triangle_saw_blend, 18 digital_nasty_1, 19 digital_nasty_2, 20 digital_saw_square, 21 digital_vocal_1, 22 digital_vocal_2, 23 digital_vocal_3, 24 digital_vocal_4, 25 digital_vocal_5, 26 digital_vocal_6, 27 random_collection_1, 28 random_collection_2, 29 random_collection_3; default 2 |
|
osc 2 wave interpolateosc_2_wave_interpolate |
30 | 0-127; default 0 | |
osc 2 pulse width indexosc_2_pulse_width_index |
31 | 0-127; default 127 | |
osc 2 virtual sync depthosc_2_virtual_sync_depth |
33 | 0-127; default 0 | |
osc 2 densityosc_2_density |
35 | 0-127; default 0 | |
osc 2 density detuneosc_2_density_detune |
36 | 0-127; default 0 | |
osc 2 semitonesosc_2_semitones |
37 | 0-127; default 64 | |
osc 2 centsosc_2_cents |
39 | 0-127; default 64 | |
osc 2 pitchbendosc_2_pitchbend |
40 | 52-76; default 76 |
Mixer
| Control | CC | NRPN | Values |
|---|---|---|---|
osc 1 levelosc_1_level |
51 | 0-127; default 127 | |
osc 2 levelosc_2_level |
52 | 0-127; default 0 | |
ring mod levelring_mod_level |
54 | 0-127; default 0 | |
noise levelnoise_level |
56 | 0-127; default 0 | |
pre FX levelpre_fx_level |
58 | 52-82; default 64 | |
post FX levelpost_fx_level |
59 | 52-82; default 64 |
Filter
| Control | CC | NRPN | Values |
|---|---|---|---|
routingrouting |
60 | 0-2; default 0 | |
drivedrive |
63 | 0-127; default 0 | |
drive typedrive_type |
65 | 0 diode, 1 valve, 2 clipper, 3 cross_over, 4 rectifier, 5 bit_reducer, 6 rate_reducer; default 0 |
|
typetype |
68 | 0-5; default 1 | |
frequencyfrequency |
74 | 0-127; default 127 | |
trackingtracking |
69 | 0-127; default 127 | |
resonanceresonance |
71 | 0-127; default 0 | |
Q normalizeq_normalize |
78 | 0-127; default 64 | |
env 2 to frequencyenv_2_to_frequency |
79 | 0-127; default 64 |
Envelope
| Control | CC | NRPN | Values |
|---|---|---|---|
env 1 velocityenv_1_velocity |
108 | 0-127; default 64 | |
env 1 attackenv_1_attack |
73 | 0-127; default 2 | |
env 1 decayenv_1_decay |
75 | 0-127; default 90 | |
env 1 sustainenv_1_sustain |
70 | 0-127; default 127 | |
env 1 releaseenv_1_release |
72 | 0-127; default 40 | |
env 2 velocityenv_2_velocity |
0 MSB 0, LSB 0 |
0-127; default 64 | |
env 2 attackenv_2_attack |
1 MSB 0, LSB 1 |
0-127; default 2 | |
env 2 decayenv_2_decay |
2 MSB 0, LSB 2 |
0-127; default 75 | |
env 2 sustainenv_2_sustain |
3 MSB 0, LSB 3 |
0-127; default 35 | |
env 2 releaseenv_2_release |
4 MSB 0, LSB 4 |
0-127; default 45 | |
env 3 delayenv_3_delay |
14 MSB 0, LSB 14 |
0-127; default 0 | |
env 3 attackenv_3_attack |
15 MSB 0, LSB 15 |
0-127; default 10 | |
env 3 decayenv_3_decay |
16 MSB 0, LSB 16 |
0-127; default 70 | |
env 3 sustainenv_3_sustain |
17 MSB 0, LSB 17 |
0-127; default 64 | |
env 3 releaseenv_3_release |
18 MSB 0, LSB 18 |
0-127; default 40 |
LFO
| Control | CC | NRPN | Values |
|---|---|---|---|
lfo 1 waveformlfo_1_waveform |
70 MSB 0, LSB 70 |
0-37; default 0 | |
lfo 1 phase offsetlfo_1_phase_offset |
71 MSB 0, LSB 71 |
0-119; default 0 | |
lfo 1 slew ratelfo_1_slew_rate |
72 MSB 0, LSB 72 |
0-127; default 0 | |
lfo 1 delaylfo_1_delay |
74 MSB 0, LSB 74 |
0-127; default 0 | |
lfo 1 delay synclfo_1_delay_sync |
75 MSB 0, LSB 75 |
0-35; default 0 | |
lfo 1 ratelfo_1_rate |
76 MSB 0, LSB 76 |
0-127; default 68 | |
lfo 1 rate synclfo_1_rate_sync |
77 MSB 0, LSB 77 |
0-35; default 0 | |
lfo 1 one shotlfo_1_one_shot |
122 MSB 0, LSB 122 |
12 off, 13 on; default 12 |
|
lfo 1 key synclfo_1_key_sync |
122 MSB 0, LSB 122 |
14 off, 15 on; default 14 |
|
Lfo 1 common synclfo_1_common_sync |
122 MSB 0, LSB 122 |
16 off, 17 on; default 16 |
|
Lfo 1 delay triggerlfo_1_delay_trigger |
122 MSB 0, LSB 122 |
18 off, 19 on; default 18 |
|
Lfo 1 fade modelfo_1_fade_mode |
123 MSB 0, LSB 123 |
0 fade_in, 1 fade_out, 2 gate_in, 3 gate_out; default 0 |
|
Lfo 2 waveformlfo_2_waveform |
79 MSB 0, LSB 79 |
0 sine, 1 triangle, 2 sawtooth, 3 square, 4 random_s_h, 5 time_s_h, 6 piano_envelope, 7 sequence_1, 8 sequence_2, 9 sequence_3, 10 sequence_4, 11 sequence_5, 12 sequence_6, 13 sequence_7, 14 alternative_1, 15 alternative_2, 16 alternative_3, 17 alternative_4, 18 alternative_5, 19 alternative_6, 20 alternative_7, 21 alternative_8, 22 chromatic, 23 chromatic_16, 24 major, 25 major_7, 26 minor_7, 27 min_arp_1, 28 min_arp_2, 29 diminished, 30 dec_minor, 31 minor_3rd, 32 pedal, 33 n4ths, 34 n4ths_x12, 35 n1625_maj, 36 n1625_min, 37 n2511; default 0 |
|
Lfo 2 phase offsetlfo_2_phase_offset |
80 MSB 0, LSB 80 |
0-119; default 0 | |
Lfo 2 slew ratelfo_2_slew_rate |
81 MSB 0, LSB 81 |
0-127; default 0 | |
Lfo 2 delaylfo_2_delay |
83 MSB 0, LSB 83 |
0-127; default 0 | |
Lfo 2 delay synclfo_2_delay_sync |
84 MSB 0, LSB 84 |
0-35; default 0 | |
Lfo 2 ratelfo_2_rate |
85 MSB 0, LSB 85 |
0-127; default 68 | |
Lfo 2 rate synclfo_2_rate_sync |
86 MSB 0, LSB 86 |
0-35; default 0 | |
lfo 2 one shotlfo_2_one_shot |
122 MSB 0, LSB 122 |
22 off, 23 on; default 22 |
|
lfo 2 key synclfo_2_key_sync |
122 MSB 0, LSB 122 |
24 off, 25 on; default 24 |
|
lfo 2 common synclfo_2_common_sync |
122 MSB 0, LSB 122 |
26 off, 27 on; default 26 |
|
lfo 2 delay triggerlfo_2_delay_trigger |
122 MSB 0, LSB 122 |
28 off, 29 on; default 28 |
|
lfo 2 fade modelfo_2_fade_mode |
123 MSB 0, LSB 123 |
4 fade_in, 5 fade_out, 6 gate_in, 7 gate_out; default 4 |
Effects and EQ
| Control | CC | NRPN | Values |
|---|---|---|---|
distortion leveldistortion_level |
91 | 0-127; default 0 | |
chorus levelchorus_level |
93 | 0-127; default 0 | |
EQ bass frequencyeq_bass_frequency |
104 MSB 0, LSB 104 |
0-127; default 64 | |
EQ bass leveleq_bass_level |
105 MSB 0, LSB 105 |
0-127; default 64 | |
EQ mid frequencyeq_mid_frequency |
106 MSB 0, LSB 106 |
0-127; default 64 | |
EQ mid leveleq_mid_level |
107 MSB 0, LSB 107 |
0-127; default 64 | |
EQ treble frequencyeq_treble_frequency |
108 MSB 0, LSB 108 |
0-127; default 125 | |
EQ treble leveleq_treble_level |
109 MSB 0, LSB 109 |
0-127; default 64 | |
distortion typedistortion_type |
128 MSB 1, LSB 0 |
0 diode, 1 valve, 2 clipper, 3 cross_over, 4 rectify, 5 bit_reducer, 6 rate_reducer; default 0 |
|
distortion compensationdistortion_compensation |
129 MSB 1, LSB 1 |
0-127; default 100 | |
chorus typechorus_type |
152 MSB 1, LSB 24 |
0 phaser, 1 chorus; default 1 |
|
chorus ratechorus_rate |
153 MSB 1, LSB 25 |
0-127; default 84 | |
chorus rate syncchorus_rate_sync |
154 MSB 1, LSB 26 |
0-35; default 0 | |
chorus feedbackchorus_feedback |
155 MSB 1, LSB 27 |
0-127; default 74 | |
chorus mod depthchorus_mod_depth |
156 MSB 1, LSB 28 |
0-127; default 64 | |
chorus delaychorus_delay |
157 MSB 1, LSB 29 |
0-127; default 64 |
Mod matrix
| Control | CC | NRPN | Values |
|---|---|---|---|
Mod matrix 1 source 1mod_matrix_1_source_1 |
211 MSB 1, LSB 83 |
0-12; default 0 | |
Mod matrix 1 source 2mod_matrix_1_source_2 |
212 MSB 1, LSB 84 |
0-12; default 0 | |
mod matrix 1 depthmod_matrix_1_depth |
214 MSB 1, LSB 86 |
0-127; default 64 | |
mod matrix 1 destinationmod_matrix_1_destination |
215 MSB 1, LSB 87 |
0 osc_1_2_pitch, 1 osc_1_pitch, 2 osc_2_pitch, 3 osc_1_v_sync, 4 osc_2_v_sync, 5 osc_1_pulse_width_index, 6 osc_2_pulse_width_index, 7 osc_1_level, 8 osc_2_level, 9 noise_level, 10 ring_modulation_1_2_level, 11 filter_drive_amount, 12 filter_frequency, 13 filter_resonance, 14 lfo_1_rate, 15 lfo_2_rate, 16 amp_envelope_decay, 17 filter_envelope_decay; default 0 |
|
mod matrix 2 source 1mod_matrix_2_source_1 |
216 MSB 1, LSB 88 |
0-12; default 0 | |
mod matrix 2 source 2mod_matrix_2_source_2 |
217 MSB 1, LSB 89 |
0-12; default 0 | |
mod matrix 2 depthmod_matrix_2_depth |
219 MSB 1, LSB 91 |
0-127; default 64 | |
mod matrix 2 destinationmod_matrix_2_destination |
220 MSB 1, LSB 92 |
0 osc_1_2_pitch, 1 osc_1_pitch, 2 osc_2_pitch, 3 osc_1_v_sync, 4 osc_2_v_sync, 5 osc_1_pulse_width_index, 6 osc_2_pulse_width_index, 7 osc_1_level, 8 osc_2_level, 9 noise_level, 10 ring_modulation_1_2_level, 11 filter_drive_amount, 12 filter_frequency, 13 filter_resonance, 14 lfo_1_rate, 15 lfo_2_rate, 16 amp_envelope_decay, 17 filter_envelope_decay; default 0 |
|
mod matrix 3 source 1mod_matrix_3_source_1 |
221 MSB 1, LSB 93 |
0-12; default 0 | |
mod matrix 3 source 2mod_matrix_3_source_2 |
222 MSB 1, LSB 94 |
0-12; default 0 | |
mod matrix 3 depthmod_matrix_3_depth |
224 MSB 1, LSB 96 |
0-127; default 64 | |
mod matrix 3 destinationmod_matrix_3_destination |
225 MSB 1, LSB 97 |
0 osc_1_2_pitch, 1 osc_1_pitch, 2 osc_2_pitch, 3 osc_1_v_sync, 4 osc_2_v_sync, 5 osc_1_pulse_width_index, 6 osc_2_pulse_width_index, 7 osc_1_level, 8 osc_2_level, 9 noise_level, 10 ring_modulation_1_2_level, 11 filter_drive_amount, 12 filter_frequency, 13 filter_resonance, 14 lfo_1_rate, 15 lfo_2_rate, 16 amp_envelope_decay, 17 filter_envelope_decay; default 0 |
|
mod matrix 4 source 1mod_matrix_4_source_1 |
226 MSB 1, LSB 98 |
0-12; default 0 | |
mod matrix 4 source 2mod_matrix_4_source_2 |
227 MSB 1, LSB 99 |
0-12; default 0 | |
mod matrix 4 depthmod_matrix_4_depth |
229 MSB 1, LSB 101 |
0-127; default 64 | |
mod matrix 4 destinationmod_matrix_4_destination |
230 MSB 1, LSB 102 |
0 osc_1_2_pitch, 1 osc_1_pitch, 2 osc_2_pitch, 3 osc_1_v_sync, 4 osc_2_v_sync, 5 osc_1_pulse_width_index, 6 osc_2_pulse_width_index, 7 osc_1_level, 8 osc_2_level, 9 noise_level, 10 ring_modulation_1_2_level, 11 filter_drive_amount, 12 filter_frequency, 13 filter_resonance, 14 lfo_1_rate, 15 lfo_2_rate, 16 amp_envelope_decay, 17 filter_envelope_decay; default 0 |
|
mod matrix 5 source 1mod_matrix_5_source_1 |
231 MSB 1, LSB 103 |
0-12; default 0 | |
mod matrix 5 source 2mod_matrix_5_source_2 |
232 MSB 1, LSB 104 |
0-12; default 0 | |
mod matrix 5 depthmod_matrix_5_depth |
234 MSB 1, LSB 106 |
0-127; default 64 | |
mod matrix 5 destinationmod_matrix_5_destination |
235 MSB 1, LSB 107 |
0 osc_1_2_pitch, 1 osc_1_pitch, 2 osc_2_pitch, 3 osc_1_v_sync, 4 osc_2_v_sync, 5 osc_1_pulse_width_index, 6 osc_2_pulse_width_index, 7 osc_1_level, 8 osc_2_level, 9 noise_level, 10 ring_modulation_1_2_level, 11 filter_drive_amount, 12 filter_frequency, 13 filter_resonance, 14 lfo_1_rate, 15 lfo_2_rate, 16 amp_envelope_decay, 17 filter_envelope_decay; default 0 |
|
mod matrix 6 source 1mod_matrix_6_source_1 |
236 MSB 1, LSB 108 |
0-12; default 0 | |
mod matrix 6 source 2mod_matrix_6_source_2 |
237 MSB 1, LSB 109 |
0-12; default 0 | |
mod matrix 6 depthmod_matrix_6_depth |
239 MSB 1, LSB 111 |
0-127; default 64 | |
mod matrix 6 destinationmod_matrix_6_destination |
240 MSB 1, LSB 112 |
0 osc_1_2_pitch, 1 osc_1_pitch, 2 osc_2_pitch, 3 osc_1_v_sync, 4 osc_2_v_sync, 5 osc_1_pulse_width_index, 6 osc_2_pulse_width_index, 7 osc_1_level, 8 osc_2_level, 9 noise_level, 10 ring_modulation_1_2_level, 11 filter_drive_amount, 12 filter_frequency, 13 filter_resonance, 14 lfo_1_rate, 15 lfo_2_rate, 16 amp_envelope_decay, 17 filter_envelope_decay; default 0 |
|
mod matrix 7 source 1mod_matrix_7_source_1 |
241 MSB 1, LSB 113 |
0-12; default 0 | |
mod matrix 7 source 2mod_matrix_7_source_2 |
242 MSB 1, LSB 114 |
0-12; default 0 | |
mod matrix 7 depthmod_matrix_7_depth |
244 MSB 1, LSB 116 |
0-127; default 64 | |
mod matrix 7 destinationmod_matrix_7_destination |
245 MSB 1, LSB 117 |
0 osc_1_2_pitch, 1 osc_1_pitch, 2 osc_2_pitch, 3 osc_1_v_sync, 4 osc_2_v_sync, 5 osc_1_pulse_width_index, 6 osc_2_pulse_width_index, 7 osc_1_level, 8 osc_2_level, 9 noise_level, 10 ring_modulation_1_2_level, 11 filter_drive_amount, 12 filter_frequency, 13 filter_resonance, 14 lfo_1_rate, 15 lfo_2_rate, 16 amp_envelope_decay, 17 filter_envelope_decay; default 0 |
|
mod matrix 8 source 1mod_matrix_8_source_1 |
246 MSB 1, LSB 118 |
0-12; default 0 | |
mod matrix 8 source 2mod_matrix_8_source_2 |
247 MSB 1, LSB 119 |
0-12; default 0 | |
mod matrix 8 depthmod_matrix_8_depth |
249 MSB 1, LSB 121 |
0-127; default 64 | |
mod matrix 8 destinationmod_matrix_8_destination |
250 MSB 1, LSB 122 |
0 osc_1_2_pitch, 1 osc_1_pitch, 2 osc_2_pitch, 3 osc_1_v_sync, 4 osc_2_v_sync, 5 osc_1_pulse_width_index, 6 osc_2_pulse_width_index, 7 osc_1_level, 8 osc_2_level, 9 noise_level, 10 ring_modulation_1_2_level, 11 filter_drive_amount, 12 filter_frequency, 13 filter_resonance, 14 lfo_1_rate, 15 lfo_2_rate, 16 amp_envelope_decay, 17 filter_envelope_decay; default 0 |
|
mod matrix 9 source 1mod_matrix_9_source_1 |
251 MSB 1, LSB 123 |
0-12; default 0 | |
mod matrix 9 source 2mod_matrix_9_source_2 |
252 MSB 1, LSB 124 |
0-12; default 0 | |
mod matrix 9 depthmod_matrix_9_depth |
254 MSB 1, LSB 126 |
0-127; default 64 | |
mod matrix 9 destinationmod_matrix_9_destination |
255 MSB 1, LSB 127 |
0 osc_1_2_pitch, 1 osc_1_pitch, 2 osc_2_pitch, 3 osc_1_v_sync, 4 osc_2_v_sync, 5 osc_1_pulse_width_index, 6 osc_2_pulse_width_index, 7 osc_1_level, 8 osc_2_level, 9 noise_level, 10 ring_modulation_1_2_level, 11 filter_drive_amount, 12 filter_frequency, 13 filter_resonance, 14 lfo_1_rate, 15 lfo_2_rate, 16 amp_envelope_decay, 17 filter_envelope_decay; default 0 |
|
mod matrix 10 source 1mod_matrix_10_source_1 |
256 MSB 2, LSB 0 |
0-12; default 0 | |
mod matrix 10 source 2mod_matrix_10_source_2 |
257 MSB 2, LSB 1 |
0-12; default 0 | |
mod matrix 10 depthmod_matrix_10_depth |
259 MSB 2, LSB 3 |
0-127; default 64 | |
mod matrix 10 destinationmod_matrix_10_destination |
260 MSB 2, LSB 4 |
0 osc_1_2_pitch, 1 osc_1_pitch, 2 osc_2_pitch, 3 osc_1_v_sync, 4 osc_2_v_sync, 5 osc_1_pulse_width_index, 6 osc_2_pulse_width_index, 7 osc_1_level, 8 osc_2_level, 9 noise_level, 10 ring_modulation_1_2_level, 11 filter_drive_amount, 12 filter_frequency, 13 filter_resonance, 14 lfo_1_rate, 15 lfo_2_rate, 16 amp_envelope_decay, 17 filter_envelope_decay; default 0 |
|
mod matrix 11 source 1mod_matrix_11_source_1 |
261 MSB 2, LSB 5 |
0-12; default 0 | |
mod matrix 11 source 2mod_matrix_11_source_2 |
262 MSB 2, LSB 6 |
0-12; default 0 | |
mod matrix 11 depthmod_matrix_11_depth |
264 MSB 2, LSB 8 |
0-127; default 64 | |
macro knob 3 depth Amacro_knob_3_depth_a |
419 MSB 3, LSB 35 |
0-127; default 64 | |
macro knob 3 destination Bmacro_knob_3_destination_b |
420 MSB 3, LSB 36 |
0-70; default 0 | |
macro knob 3 start position Bmacro_knob_3_start_position_b |
421 MSB 3, LSB 37 |
0-127; default 0 | |
macro knob 3 end position Bmacro_knob_3_end_position_b |
422 MSB 3, LSB 38 |
0-127; default 127 | |
macro knob 3 depth Bmacro_knob_3_depth_b |
423 MSB 3, LSB 39 |
0-127; default 64 | |
macro knob 3 destination Cmacro_knob_3_destination_c |
424 MSB 3, LSB 40 |
0-70; default 0 | |
macro knob 3 start position Cmacro_knob_3_start_position_c |
425 MSB 3, LSB 41 |
0-127; default 0 | |
macro knob 3 end position Cmacro_knob_3_end_position_c |
426 MSB 3, LSB 42 |
0-127; default 127 | |
macro knob 3 depth Cmacro_knob_3_depth_c |
427 MSB 3, LSB 43 |
0-127; default 64 | |
macro knob 3 destination Dmacro_knob_3_destination_d |
428 MSB 3, LSB 44 |
0-70; default 0 | |
macro knob 3 start position Dmacro_knob_3_start_position_d |
429 MSB 3, LSB 45 |
0-127; default 0 | |
macro knob 3 end position Dmacro_knob_3_end_position_d |
430 MSB 3, LSB 46 |
0-127; default 127 | |
macro knob 3 depth Dmacro_knob_3_depth_d |
431 MSB 3, LSB 47 |
0-127; default 64 | |
macro knob 4 positionmacro_knob_4_position |
83 | 0-127; default 0 | |
macro knob 4 destination Amacro_knob_4_destination_a |
432 MSB 3, LSB 48 |
0-70; default 0 | |
macro knob 4 start position Amacro_knob_4_start_position_a |
433 MSB 3, LSB 49 |
0-127; default 0 | |
macro knob 4 end position Amacro_knob_4_end_position_a |
434 MSB 3, LSB 50 |
0-127; default 127 | |
macro knob 4 depth Amacro_knob_4_depth_a |
435 MSB 3, LSB 51 |
0-127; default 64 | |
macro knob 4 destination Bmacro_knob_4_destination_b |
436 MSB 3, LSB 52 |
0-70; default 0 | |
macro knob 4 start position Bmacro_knob_4_start_position_b |
437 MSB 3, LSB 53 |
0-127; default 0 | |
macro knob 4 end position Bmacro_knob_4_end_position_b |
438 MSB 3, LSB 54 |
0-127; default 127 | |
macro knob 4 depth Bmacro_knob_4_depth_b |
439 MSB 3, LSB 55 |
0-127; default 64 | |
macro knob 4 destination Cmacro_knob_4_destination_c |
440 MSB 3, LSB 56 |
0-70; default 0 | |
macro knob 4 start position Cmacro_knob_4_start_position_c |
441 MSB 3, LSB 57 |
0-127; default 0 | |
macro knob 4 end position Cmacro_knob_4_end_position_c |
442 MSB 3, LSB 58 |
0-127; default 127 | |
macro knob 4 depth Cmacro_knob_4_depth_c |
443 MSB 3, LSB 59 |
0-127; default 64 | |
macro knob 4 destination Dmacro_knob_4_destination_d |
444 MSB 3, LSB 60 |
0-70; default 0 | |
macro knob 4 start position Dmacro_knob_4_start_position_d |
445 MSB 3, LSB 61 |
0-127; default 0 | |
macro knob 4 end position Dmacro_knob_4_end_position_d |
446 MSB 3, LSB 62 |
0-127; default 127 | |
macro knob 4 depth Dmacro_knob_4_depth_d |
447 MSB 3, LSB 63 |
0-127; default 64 | |
macro knob 5 positionmacro_knob_5_position |
84 | 0-127; default 0 | |
macro knob 5 destination Amacro_knob_5_destination_a |
448 MSB 3, LSB 64 |
0-70; default 0 | |
macro knob 5 start position Amacro_knob_5_start_position_a |
449 MSB 3, LSB 65 |
0-127; default 0 | |
macro knob 5 end position Amacro_knob_5_end_position_a |
450 MSB 3, LSB 66 |
0-127; default 127 | |
macro knob 5 depth Amacro_knob_5_depth_a |
451 MSB 3, LSB 67 |
0-127; default 64 | |
macro knob 5 destination Bmacro_knob_5_destination_b |
452 MSB 3, LSB 68 |
0-70; default 0 | |
macro knob 5 start position Bmacro_knob_5_start_position_b |
453 MSB 3, LSB 69 |
0-127; default 0 | |
macro knob 5 end position Bmacro_knob_5_end_position_b |
454 MSB 3, LSB 70 |
0-127; default 127 | |
macro knob 5 depth Bmacro_knob_5_depth_b |
455 MSB 3, LSB 71 |
0-127; default 64 | |
macro knob 5 destination Cmacro_knob_5_destination_c |
456 MSB 3, LSB 72 |
0-70; default 0 | |
macro knob 5 start position Cmacro_knob_5_start_position_c |
457 MSB 3, LSB 73 |
0-127; default 0 | |
macro knob 5 end position Cmacro_knob_5_end_position_c |
458 MSB 3, LSB 74 |
0-127; default 127 | |
macro knob 5 depth Cmacro_knob_5_depth_c |
459 MSB 3, LSB 75 |
0-127; default 64 | |
macro knob 5 destination Dmacro_knob_5_destination_d |
460 MSB 3, LSB 76 |
0-70; default 0 | |
macro knob 5 start position Dmacro_knob_5_start_position_d |
461 MSB 3, LSB 77 |
0-127; default 0 | |
macro knob 5 end position Dmacro_knob_5_end_position_d |
462 MSB 3, LSB 78 |
0-127; default 127 | |
macro knob 5 depth Dmacro_knob_5_depth_d |
463 MSB 3, LSB 79 |
0-127; default 64 | |
macro knob 6 positionmacro_knob_6_position |
85 | 0-127; default 0 | |
macro knob 6 destination Amacro_knob_6_destination_a |
464 MSB 3, LSB 80 |
0-70; default 0 | |
macro knob 6 start position Amacro_knob_6_start_position_a |
465 MSB 3, LSB 81 |
0-127; default 0 | |
macro knob 6 end position Amacro_knob_6_end_position_a |
466 MSB 3, LSB 82 |
0-127; default 127 | |
macro knob 6 depth Amacro_knob_6_depth_a |
467 MSB 3, LSB 83 |
0-127; default 64 | |
macro knob 6 destination Bmacro_knob_6_destination_b |
468 MSB 3, LSB 84 |
0-70; default 0 | |
macro knob 6 start position Bmacro_knob_6_start_position_b |
469 MSB 3, LSB 85 |
0-127; default 0 | |
macro knob 6 end position Bmacro_knob_6_end_position_b |
470 MSB 3, LSB 86 |
0-127; default 127 | |
macro knob 6 depth Bmacro_knob_6_depth_b |
471 MSB 3, LSB 87 |
0-127; default 64 | |
macro knob 6 destination Cmacro_knob_6_destination_c |
472 MSB 3, LSB 88 |
0-70; default 0 | |
macro knob 6 start position Cmacro_knob_6_start_position_c |
473 MSB 3, LSB 89 |
0-127; default 0 | |
macro knob 6 end position Cmacro_knob_6_end_position_c |
474 MSB 3, LSB 90 |
0-127; default 127 | |
macro knob 6 depth Cmacro_knob_6_depth_c |
475 MSB 3, LSB 91 |
0-127; default 64 | |
macro knob 6 destination Dmacro_knob_6_destination_d |
476 MSB 3, LSB 92 |
0-70; default 0 | |
macro knob 6 start position Dmacro_knob_6_start_position_d |
477 MSB 3, LSB 93 |
0-127; default 0 | |
macro knob 6 end position Dmacro_knob_6_end_position_d |
478 MSB 3, LSB 94 |
0-127; default 127 | |
macro knob 6 depth Dmacro_knob_6_depth_d |
479 MSB 3, LSB 95 |
0-127; default 64 | |
macro knob 7 positionmacro_knob_7_position |
86 | 0-127; default 0 | |
macro knob 7 destination Amacro_knob_7_destination_a |
480 MSB 3, LSB 96 |
0-70; default 0 | |
macro knob 7 start position Amacro_knob_7_start_position_a |
481 MSB 3, LSB 97 |
0-127; default 0 | |
macro knob 7 end position Amacro_knob_7_end_position_a |
482 MSB 3, LSB 98 |
0-127; default 127 | |
macro knob 7 depth Amacro_knob_7_depth_a |
483 MSB 3, LSB 99 |
0-127; default 64 | |
macro knob 7 destination Bmacro_knob_7_destination_b |
484 MSB 3, LSB 100 |
0-70; default 0 | |
macro knob 7 start position Bmacro_knob_7_start_position_b |
485 MSB 3, LSB 101 |
0-127; default 0 | |
macro knob 7 end position Bmacro_knob_7_end_position_b |
486 MSB 3, LSB 102 |
0-127; default 127 | |
macro knob 7 depth Bmacro_knob_7_depth_b |
487 MSB 3, LSB 103 |
0-127; default 64 | |
macro knob 7 destination Cmacro_knob_7_destination_c |
488 MSB 3, LSB 104 |
0-70; default 0 | |
macro knob 7 start position Cmacro_knob_7_start_position_c |
489 MSB 3, LSB 105 |
0-127; default 0 | |
macro knob 7 end position Cmacro_knob_7_end_position_c |
490 MSB 3, LSB 106 |
0-127; default 127 | |
macro knob 7 depth Cmacro_knob_7_depth_c |
491 MSB 3, LSB 107 |
0-127; default 64 | |
macro knob 7 destination Dmacro_knob_7_destination_d |
492 MSB 3, LSB 108 |
0-70; default 0 | |
macro knob 7 start position Dmacro_knob_7_start_position_d |
493 MSB 3, LSB 109 |
0-127; default 0 | |
macro knob 7 end position Dmacro_knob_7_end_position_d |
494 MSB 3, LSB 110 |
0-127; default 127 | |
macro knob 7 depth Dmacro_knob_7_depth_d |
495 MSB 3, LSB 111 |
0-127; default 64 | |
macro knob 8 positionmacro_knob_8_position |
87 | 0-127; default 0 | |
macro knob 8 destination Amacro_knob_8_destination_a |
496 MSB 3, LSB 112 |
0-70; default 0 | |
macro knob 8 start position Amacro_knob_8_start_position_a |
497 MSB 3, LSB 113 |
0-127; default 0 | |
macro knob 8 end position Amacro_knob_8_end_position_a |
498 MSB 3, LSB 114 |
0-127; default 127 | |
macro knob 8 depth Amacro_knob_8_depth_a |
499 MSB 3, LSB 115 |
0-127; default 64 | |
macro knob 8 destination Bmacro_knob_8_destination_b |
500 MSB 3, LSB 116 |
0-70; default 0 | |
macro knob 8 start position Bmacro_knob_8_start_position_b |
501 MSB 3, LSB 117 |
0-127; default 0 | |
macro knob 8 end position Bmacro_knob_8_end_position_b |
502 MSB 3, LSB 118 |
0-127; default 127 | |
macro knob 8 depth Bmacro_knob_8_depth_b |
503 MSB 3, LSB 119 |
0-127; default 64 | |
macro knob 8 destination Cmacro_knob_8_destination_c |
504 MSB 3, LSB 120 |
0-70; default 0 | |
macro knob 8 start position Cmacro_knob_8_start_position_c |
505 MSB 3, LSB 121 |
0-127; default 0 | |
macro knob 8 end position Cmacro_knob_8_end_position_c |
506 MSB 3, LSB 122 |
0-127; default 127 | |
macro knob 8 depth Cmacro_knob_8_depth_c |
507 MSB 3, LSB 123 |
0-127; default 64 | |
macro knob 8 destination Dmacro_knob_8_destination_d |
508 MSB 3, LSB 124 |
0-70; default 0 | |
macro knob 8 start position Dmacro_knob_8_start_position_d |
509 MSB 3, LSB 125 |
0-127; default 0 | |
macro knob 8 end position Dmacro_knob_8_end_position_d |
510 MSB 3, LSB 126 |
0-127; default 127 | |
macro knob 8 depth Dmacro_knob_8_depth_d |
511 MSB 3, LSB 127 |
0-127; default 64 |
Drums
Drum control
| Control | CC | NRPN | Values |
|---|---|---|---|
drum 1 patch selectdrum_1_patch_select |
8 | 0-63; default 0 | |
drum 1 leveldrum_1_level |
12 | 0-127; default 0 | |
drum 1 pitchdrum_1_pitch |
14 | 0-127; default 64 | |
drum 1 decaydrum_1_decay |
15 | 0-127; default 0 | |
drum 1 distortiondrum_1_distortion |
16 | 0-127; default 0 | |
drum 1 EQdrum_1_eq |
17 | 0-127; default 64 | |
drum 1 pandrum_1_pan |
77 | 0-127; default 64 | |
drum 2 patch selectdrum_2_patch_select |
18 | 0-63; default 0 | |
drum 2 leveldrum_2_level |
23 | 0-127; default 0 | |
drum 2 pitchdrum_2_pitch |
34 | 0-127; default 64 | |
drum 2 decaydrum_2_decay |
40 | 0-127; default 0 | |
drum 2 distortiondrum_2_distortion |
42 | 0-127; default 0 | |
drum 2 EQdrum_2_eq |
43 | 0-127; default 64 | |
drum 2 pandrum_2_pan |
78 | 0-127; default 64 | |
drum 3 patch selectdrum_3_patch_select |
44 | 0-63; default 0 | |
drum 3 leveldrum_3_level |
45 | 0-127; default 0 | |
drum 3 pitchdrum_3_pitch |
46 | 0-127; default 64 | |
drum 3 decaydrum_3_decay |
47 | 0-127; default 0 | |
drum 3 distortiondrum_3_distortion |
48 | 0-127; default 0 | |
drum 3 EQdrum_3_eq |
49 | 0-127; default 64 | |
drum 3 pandrum_3_pan |
79 | 0-127; default 64 | |
drum 4 patch selectdrum_4_patch_select |
50 | 0-63; default 0 | |
drum 4 leveldrum_4_level |
53 | 0-127; default 0 | |
drum 4 pitchdrum_4_pitch |
55 | 0-127; default 64 | |
drum 4 decaydrum_4_decay |
57 | 0-127; default 0 | |
drum 4 distortiondrum_4_distortion |
61 | 0-127; default 0 | |
drum 4 EQdrum_4_eq |
76 | 0-127; default 64 | |
drum 4 pandrum_4_pan |
80 | 0-127; default 64 |
Session
Reverb
| Control | CC | NRPN | Values |
|---|---|---|---|
synth 1 send levelsynth_1_send_level |
88 | 0-127; default 0 | |
synth 2 send levelsynth_2_send_level |
89 | 0-127; default 0 | |
drum 1 send leveldrum_1_send_level |
90 | 0-127; default 0 | |
drum 2 send leveldrum_2_send_level |
106 | 0-127; default 0 | |
drum 3 send leveldrum_3_send_level |
109 | 0-127; default 0 | |
drum 4 send leveldrum_4_send_level |
110 | 0-127; default 0 | |
typesession_type |
146 MSB 1, LSB 18 |
0-5; default 2 | |
decaydecay |
147 MSB 1, LSB 19 |
0-127; default 64 | |
dampingdamping |
148 MSB 1, LSB 20 |
0-127; default 64 |
Delay
| Control | CC | NRPN | Values |
|---|---|---|---|
synth 1 send levelsession_synth_1_send_level |
111 | 0-127; default 0 | |
synth 2 send levelsession_synth_2_send_level |
112 | 0-127; default 0 | |
drum 1 send levelsession_drum_1_send_level |
113 | 0-127; default 0 | |
drum 2 send levelsession_drum_2_send_level |
114 | 0-127; default 0 | |
drum 3 send levelsession_drum_3_send_level |
115 | 0-127; default 0 | |
drum 4 send levelsession_drum_4_send_level |
116 | 0-127; default 0 | |
timetime |
134 MSB 1, LSB 6 |
0-127; default 64 | |
time synctime_sync |
135 MSB 1, LSB 7 |
0-35; default 20 | |
feedbackfeedback |
136 MSB 1, LSB 8 |
0-127; default 64 | |
widthwidth |
137 MSB 1, LSB 9 |
0-127; default 127 | |
left-right ratioleft_right_ratio |
138 MSB 1, LSB 10 |
0-12; default 4 | |
slew rateslew_rate |
139 MSB 1, LSB 11 |
0-127; default 5 |
Master filter
| Control | CC | NRPN | Values |
|---|---|---|---|
frequencysession_frequency |
74 | 0-127; default 64 | |
resonancesession_resonance |
71 | 0-127; default 30 |
Sidechain
| Control | CC | NRPN | Values |
|---|---|---|---|
synth 1 sourcesynth_1_source |
311 MSB 2, LSB 55 |
0 drum_1, 1 drum_2, 2 drum_3, 3 drum_4, 4 off; default 0 |
|
synth 1 attacksynth_1_attack |
312 MSB 2, LSB 56 |
0-127; default 0 | |
synth 1 holdsynth_1_hold |
313 MSB 2, LSB 57 |
0-127; default 50 | |
synth 1 decaysynth_1_decay |
314 MSB 2, LSB 58 |
0-127; default 70 | |
synth 1 depthsynth_1_depth |
315 MSB 2, LSB 59 |
0-127; default 0 | |
synth 2 sourcesynth_2_source |
321 MSB 2, LSB 65 |
0 drum_1, 1 drum_2, 2 drum_3, 3 drum_4, 4 off; default 0 |
|
synth 2 attacksynth_2_attack |
322 MSB 2, LSB 66 |
0-127; default 0 | |
synth 2 holdsynth_2_hold |
323 MSB 2, LSB 67 |
0-127; default 50 | |
synth 2 decaysynth_2_decay |
324 MSB 2, LSB 68 |
0-127; default 70 | |
synth 2 depthsynth_2_depth |
197 MSB 1, LSB 69 |
0-127; default 0 |
Mixer
| Control | CC | NRPN | Values |
|---|---|---|---|
synth 1 levelsynth_1_level |
12 | 0-127; default 100 | |
synth 2 levelsynth_2_level |
14 | 0-127; default 100 | |
synth 1 pansynth_1_pan |
117 | 0-127; default 64 | |
synth 2 pansynth_2_pan |
118 | 0-127; default 64 |
Additional controls
| Control | CC | NRPN | Values |
|---|---|---|---|
FX Bypassfx_bypass |
149 MSB 1, LSB 21 |
0 off_fx_enabled, 1 on_fx_disabled; default 0 |
Where these facts come from
Source documents
- Programmer's Reference Guide, 1.3, dated 17 February 2022, its MIDI implementation, read on 4 October 2026 (the file read).
- Programmer's Reference Guide, 1.3, dated 17 February 2022, its MIDI implementation, read on 4 October 2026 (the file read).
- Circuit User Guide, 1.6, its user manual, read on 4 October 2026 (the file read).
- Circuit 1.8 User Guide, 1.8, dated 26 February 2019, its release notes, read on 4 October 2026 (the file read).
How they were read
Programmer's Reference Guide 1.3 (20pp), which carries all three control tables: Synths 1 & 2 at pp. 3-7, Drum Control at p. 10, Session Control at p. 11, with the value tables they point at at pp. 8-9 and the patch and session program changes at p. 9. The User Guide (72pp, edition 1.6) for the voices, the channels and the MIDI settings; the v1.7 addendum; and the 1.8 User Guide for the one thing that changed the channels.
THE GUIDE PRINTS SEVENTY-FOUR OF ITS 307 SYNTH ROWS MORE THAN ONCE. Pages 4, 5 and 6 repeat whole blocks - the tail of the LFO section from Lfo 1 common sync to lfo 2 fade mode, and the entire Effects and EQ section from distortion level to chorus delay. Every repeat is identical in every cell, which is asserted by the script that reads them, so this costs nothing but the counting: 307 rows, 233 distinct synth controls.
A repeat does not carry its own section, which is the trap in reducing them. A section name is printed once, on its first row, so a block repeated further down a later page inherits whatever section was open there: Lfo 2 waveform is under LFO where it is first printed and under Mod Matrix where it is repeated. And the section cannot simply be ignored either, because in the Session table the same name under two sections is two different controls - synth 1 send level is CC 88 under Reverb and CC 111 under Delay. A repeat is therefore a row whose every cell but the section matches an earlier one, which tells the two apart.
AND THE REPRINT DID NOT ADD CONTENT, IT REPLACED IT. Thirty-nine rows the instrument plainly has are missing from this guide, and what sits where they should be is the duplicated blocks:
- Macro knobs 1 and 2 are absent altogether - thirty-four rows. Knobs 4 to 8 each have seventeen: a position, and for each of four slots A to D a destination, a start position, an end position and a depth.
- Macro knob 3 begins four rows in, at
macro knob 3 depth A. Its position, destination A, start position A and end position A are not printed. mod matrix 11 destinationis missing, where mod matrix 1 to 10 each have one.
The numbering makes the gap unmistakable: the macro positions run CC 83, 84, 85, 86, 87 for knobs 4 to 8, and mod matrix 11 depth is NRPN 2:8 where 10's destination is 2:4. The missing numbers are predictable and are not recorded, because predicting a controller number is not reading one. What a player cannot reach from this document is two of the eight macro knobs, most of a third, and one modulation destination.
TWO NRPN ADDRESSES CARRY TEN PARAMETERS BETWEEN THEM, told apart by the value sent rather than by the address. NRPN 0:122 is eight switches - lfo 1 one shot at 12-13, lfo 1 key sync at 14-15, Lfo 1 common sync at 16-17 and so on to lfo 2 delay trigger at 28-29 - and NRPN 0:123 is two, Lfo 1 fade mode at 0-3 and lfo 2 fade mode at 4-7. Each is a control of its own below with its own range, which is what a sender needs: the address says nothing and the value says everything.
THE GUIDE IS OUT OF DATE ABOUT ITS OWN CHANNELS, AND IT IS THE NEWER DOCUMENT. It heads the synth table "Send messages on MIDI Channel 1 for Synth 1 and Channel 2 for Synth" (guide p. 3) and the drum table "Messages on MIDI Channel 10" (guide p. 10), with no suggestion that either can move. Firmware 1.8 changed that: "MIDI channels for each track can now be changed from the setup menu. Synth 1, Synth 2 and Drum 1/2/3/4 can now be set to MIDI channels 1-15. Channel 16 is reserved for the session." (update_1_8 p. 7). The 1.8 guide is dated 2019 and this edition of the reference guide was made in 2022, so the newer document describes the older instrument. The channels below follow 1.8.
The guide's own sentence about those channels is cut short: it reads "Channel 2 for Synth" (guide p. 3) where it means Synth 2.
NOVATION SERVES THIS GUIDE TWICE AT ONE NAME, and the second copy is not listed. The download page offers Circuit Programmer's Reference Guide 1.3_2.pdf; _1 is live at the same path and nothing points at it. They are identical in text on all twenty pages and differ only in how their images are compressed - 2.4 MB against 371 KB - and they were exported eighty-three minutes apart on the same afternoon. So trying the numbers found a second file and it says exactly the same thing, which is worth recording as the outcome it is.
AND THIS GUIDE'S CONTENTS PAGE IS RIGHT, for all twenty of its entries. Its successor's is a page out for eighteen of twenty, which cost real time when that one was read. Same maker, same template, four years apart, and this is the one that is correct.
ONE NOTE IS SET IN THE NEXT ROW'S CELL. The Filter routing note wraps over four printed lines and the fourth - the single word filter - is typeset inside the drive row's Notes cell. Read row by row, routing ends mid-sentence at "bypasses the" (guide p. 3) and drive acquires a one-word note that means nothing. They are put back together, by name rather than by position, so that a re-issue which fixes the typesetting simply stops matching.
AND ONE SESSION ROW LOOKS LIKE A TYPO THAT IS NOT CORRECTED HERE. The Sidechain section's synth 2 depth is NRPN 1:69 where its five siblings run 2:65 to 2:68 and synth 1's equivalent is 2:59. Both readings found 1:69 in the file. It is almost certainly meant to be 2:69, and the published number is what is recorded, because correcting a maker's number is not reading it.
NOT RECORDED:
- the range of notes either synth answers to, which no document states;
- what the drums do with a note outside the four in the Drum Notes Table;
- and whether the Circuit answers to aftertouch or pitch bend, neither of which is mentioned in any of these documents.