rev 210208: macros, transport, midigrid, midi config, more
this update accidentally became a sort of a massive one.
[details="macros"]
summary: @cosmicsoundexplorer asked a brilliant question a few weeks back about mapping crow inputs to parameters. this sparked some thoughts that were cross-pollinated by how I use smartphones (s/o @rjonline00), which led to macros -- eight banks of eight assignable parameters linked by a single control stream (on-norns, MIDI, and/or crow).
enter: K1+K2 on the main screen
nav:
E1: cycles across the eight macros
K3: cycles between the slots selector and attributes for the selected slot
E2: on slot selector, cycles slots. on attributes, navigates across different values (when param isn't none)
E3: on attributes, changes selected value
K1+K2: toggle all slots active/inactive (K1 + [E2 or E3] to toggle this slot active/inactive)
K1+K3: toggle between program and performance modes
K3: in performance mode, seeds random value to currently selected macro
available parameters | targets:
current pad | current pad in bank a, b or c
rate | current pad in bank a, b or c
filter tilt | filter for entire bank a, b, or c
start point + end point | absolute position for current pad in bank a, b, or c
start (delta) + end (delta) | relative delta change applied to current pad in bank a, b, or c
delay div/mult | delay L or R (requires delay mode == clocked)
delay free time | delay L or R (requires delay mode == free)
delay rate | delay L or R
delay pan | delay L or R
macro | control any other macro from this macro and then all of these are w/synth only:
w/curve
w/ramp
w/fm index
w/fm env
w/fm num
w/fm den
w/lpg time
w/lpg symm
crow control:
crow must be connected before launching cheat codes 2
navigate to PARAMS > CROW INPUTS to map each crow input to either macro 1 or macro 2
if you want to control more attributes, set either macro to control another macro
MIDI control:
navigate to PARAMS > cheat codes external zone > macros to MIDI map each macro
remember, as of norns update 210114, MIDI mappings auto-save!
[/details]
[details="transport"]
summary: previously, cheat codes didn't really have a meaningful way beyond clock ticks to sync with other gear in an "everything should start at the same time" compositional style. with this update, everything can be synced, if you want it. you can press the spacebar on your laptop to play an Ableton Live Set and cheat codes will start arpin' and euclidin' at the same time. you can start your drum machines from norns. you can send a gate through crow to let your modular rig know its time to party.
enter: on the cheat codes main screen, hold K2 to bring up the new transport menu!
nav (all while holding K2):
E1: flip between transport start/stop and tap tempo
K3: if on transport control, will start/stop the transport. if on tap tempo, four taps seed a new BPM.
E2: adjust BPM by 1
E3: adjust BPM by 1/10
some recommended configurations for various use-cases:
clock + sync external MIDI boxes from cheat codes
set clock source to internal, Link or crow
navigate to the new PARAMS > transport settings:
toggle send MIDI transport? to yes for each MIDI device you want to start at the same time as cheat codes
confirm that your MIDI device has TRANSPORT RECEIVE (or similar) enabled
toggle send MIDI clock? to yes for each MIDI device you want to receive MIDI clock from cheat codes
you can also not send MIDI clock, if you simply want the devices to all start at the same time but run on their own metronomes
when you turn on the cheat codes transport, the specified external MIDI boxes will start at the same time and stay in time
clock + sync cheat codes from external MIDI boxes
set clock source to MIDI
navigate to the new PARAMS > transport settings:
toggle receive MIDI transport? to yes for each MIDI device you want to control the cheat codes transport with
confirm that your MIDI device has TRANSPORT SEND (or similar) enabled
confirm that send MIDI clock? for the device that is driving the clock is set to no
clock + sync cheat codes from Ableton Live
set clock source to Link
set link quantum to 4
in Live's Preferences, find Link Tempo MIDI and enable Start Stop Sync (Live 10+ only)
in Live, set global launch quantization to 1 Bar
when you engage Live's transport, cheat codes will start at the same time
cheat codes will also send MIDI transport + clocks to connected external MIDI devices, if they are set up according to the clock + sync external MIDI boxes from cheat codes above
clock + sync cheat codes via crow
set clock source to crow (clock normally via crow input 1)
navigate to the new PARAMS > CROW IN/OUT:
set crow in 2 to either trig: transport or gate: transport
when you send a trig or gate signal into crow input 2, cheat codes will auto-start at the next global "1"
nb. currently, there is no way to force the transport to start directly at the time of the received signal, it must align with the global clock's current 4/4 count
cheat codes will also send MIDI transport + clocks to connected external MIDI devices, if they are set up according to the clock + sync external MIDI boxes from cheat codes above
clock + sync crow via cheat codes
set clock source to internal, Link or MIDI
navigate to the new PARAMS > CROW IN/OUT:
set crow out 4 to either transport pulse or transport gate
when the cheat codes transport starts (from any source), crow will send the specified voltage through crow out 4 to execute events across your modular system
[/details]
[details = "midigrid"]
summary: if you have midigrid installed on your norns, you can use a Launchpad to access the same controls as a monome 64 grid. for more information about the 64 grid controls, see this image.
prerequisite: reference @Helen's excellent guide to get midigrid installed and confirm you can control Awake with your Launchpad.
setup:
plug your Launchpad into your norns and launch cheat codes 2
navigate to PARAMS > GRID > midigrid? and flip to yes
LED style and grid size will auto-switch to 4-step and 64
these settings will autosave, so you won't have to do this again unless you need to change something
if you do not see the cheat codes interface on your Launchpad, re-run the script
[/details]
[details = "midi config"]
summary: @glia inspired a dig into MIDI cc's, so you can now assign MIDI note and velocity + MIDI cc and value to each pad in each bank. this gives cheat codes greater control over external gear. you can choose to send either note or cc or both, depending on your needs.
enter: K1+K3 on the main screen
nav:
K3: cycles between header, notes, and cc's
E1: on header, change banks. on notes or cc's, scrolls down pads.
E2/E3: on notes or cc's, change left / right value (- value means no data will be passed)
K1: on header, +E3 to change scale for selected bank. on notes or cc's, toggles to CHannel.
[/details]
[details = "even more stuff"]
change default state
you can now define the default state that cheat codes loads into -- maybe you want your buffer segments set up a certain way, or want looping on by default, or need all the rnds all the time!
set up your new default and navigate to PARAMS > collections > save default collection to save it
get back to zero by opening maiden and deleting the file under data > cheat_codes_2 > names > DEFAULT.cc2
# tab in [loops]
provides a bird's eye view on how all your banks are interacting
this was the original [loops] view in cheat codes 1
navigation:
K3: switch between header and body
E1: switch between lanes
E2: move start point (hold K1 for fine)
E3: move end point (hold K1 for fine)
K1 + E1: change pad / segment
K2 + E1: move loop window
K2 + K3: auto-chop to evenly distribute audio content across the 16 pads
K2 + K1 (tricky, sorta hold K1 a little): shorten pad loop points to 1/16th at current BPM
visual metronome in [loops]
adds the metronome from timing to the loops page (s/o @Clashley1 for the idea!)
see PARAMS > loops + buffers > global > visual metronome?
[timing] tap tempo
set the BPM based on feel (s/o @climatechanged for the idea!)
on the [timing] menu, hold K2 and tap K3. you'll see the bpm at the top of the screen change in response.
filter tilt now MIDI-mappable
controls bank-wide filter tilt via parameters
see PARAMS > manual control > (x) values
new [delay] parameters (PARAMS > delays)
delay pan: L and R can be anywhere you want 'em!
delay filter curves: change the shape of the filter cutoff's trajectory, especially fun if the two delay cutoffs are linked (s/o to @CarlosUnch for this idea!)
passthrough
if you have passthrough installed, cheat codes will load it
need it? execute ;install https://www.github.com/nattog/passthrough in maiden's REPL
namesizer
if you have namesizer installed, cheat codes will use it for collection naming (super fun!)
need it? execute ;install https://github.com/Quixotic7/namesizer in maiden's REPL
[euclid] fixes
tightened timing mechanism, which fixed phasing issues
K1+K2 to reset all lanes to 1, K1+K3 to reset selected
global pause fixes
previously, ALT + pause would toggle each individual pad's pause state
now, ALT + pause sets all pads' pause states to current pad's pause state
kind of a lot of stuff...
rev 210208: macros, transport, midigrid, midi config, more
this update accidentally became a sort of a massive one.
[details="macros"] summary: @cosmicsoundexplorer asked a brilliant question a few weeks back about mapping crow inputs to parameters. this sparked some thoughts that were cross-pollinated by how I use smartphones (s/o @rjonline00), which led to macros -- eight banks of eight assignable parameters linked by a single control stream (on-norns, MIDI, and/or crow).
enter: K1+K2 on the main screen
nav:
none
)available parameters | targets:
and then all of these are w/synth only:
crow control:
PARAMS > CROW INPUTS
to map each crow input to either macro 1 or macro 2MIDI control:
PARAMS > cheat codes external zone > macros
to MIDI map each macro[/details]
[details="transport"]
summary: previously, cheat codes didn't really have a meaningful way beyond clock ticks to sync with other gear in an "everything should start at the same time" compositional style. with this update, everything can be synced, if you want it. you can press the spacebar on your laptop to play an Ableton Live Set and cheat codes will start arpin' and euclidin' at the same time. you can start your drum machines from norns. you can send a gate through crow to let your modular rig know its time to party.
enter: on the cheat codes main screen, hold K2 to bring up the new transport menu!
nav (all while holding K2):
some recommended configurations for various use-cases:
clock + sync external MIDI boxes from cheat codes
PARAMS > transport settings
:send MIDI transport?
toyes
for each MIDI device you want to start at the same time as cheat codesTRANSPORT RECEIVE
(or similar) enabledsend MIDI clock?
toyes
for each MIDI device you want to receive MIDI clock from cheat codesclock + sync cheat codes from external MIDI boxes
PARAMS > transport settings
:receive MIDI transport?
toyes
for each MIDI device you want to control the cheat codes transport withTRANSPORT SEND
(or similar) enabledsend MIDI clock?
for the device that is driving the clock is set tono
clock + sync cheat codes from Ableton Live
link quantum
to4
Link Tempo MIDI
and enableStart Stop Sync
(Live 10+ only)global launch quantization
to1 Bar
clock + sync cheat codes via crow
PARAMS > CROW IN/OUT
:crow in 2
to eithertrig: transport
orgate: transport
clock + sync crow via cheat codes
PARAMS > CROW IN/OUT
:crow out 4
to eithertransport pulse
ortransport gate
[details = "midigrid"]
summary: if you have
midigrid
installed on your norns, you can use a Launchpad to access the same controls as a monome 64 grid. for more information about the 64 grid controls, see this image.prerequisite: reference @Helen's excellent guide to get
midigrid
installed and confirm you can control Awake with your Launchpad.setup:
PARAMS > GRID > midigrid?
and flip toyes
LED style
andgrid size
will auto-switch to4-step
and64
[/details]
[details = "midi config"]
summary: @glia inspired a dig into MIDI cc's, so you can now assign MIDI note and velocity + MIDI cc and value to each pad in each bank. this gives cheat codes greater control over external gear. you can choose to send either note or cc or both, depending on your needs.
enter: K1+K3 on the main screen
nav:
-
value means no data will be passed)CH
annel.[/details]
[details = "even more stuff"]
rnds
all the time!PARAMS > collections > save default collection
to save itdata > cheat_codes_2 > names > DEFAULT.cc2
#
tab in [loops
]loops
]timing
to theloops
page (s/o @Clashley1 for the idea!)PARAMS > loops + buffers > global > visual metronome?
timing
] tap tempotiming
] menu, hold K2 and tap K3. you'll see the bpm at the top of the screen change in response.filter tilt
now MIDI-mappablePARAMS > manual control > (x) values
delay
] parameters (PARAMS > delays)passthrough
;install https://www.github.com/nattog/passthrough
in maiden's REPLnamesizer
;install https://github.com/Quixotic7/namesizer
in maiden's REPLeuclid
] fixesK1+K2
to reset all lanes to 1,K1+K3
to reset selected[/details]
https://vimeo.com/509308873