[cheat codes 2] (rev 220524: LTS6.2)

daaaaang, this is great!! thank you for sharing, @SMesquida. it sounds like you got to a nice zone with the stutter :slight_smile:

ah, the rad sauce :pizza:
somehow didn’t make it into the PDF docs, but it’s under PARAMS > patterns + arps > grid pat style. rad sauce records zilchmo 4’s into the pattern, but it remembers the before and after states, so it’s not like a continuous randomization, but it’s more like a repeat of the random events that occurred.


Well, I guess I should try this… in a new sketch :stuck_out_tongue: Thanks, Dan!

1 Like

hello beautiful people,

I was wondering if I can use cheat codes on my norns without a midi controller

thank you for the help!

hey hey! :slight_smile:

you totally can, there just aren’t many video examples of this workflow. the manual in the top post will show you how to load samples, record live audio, loop, change pitch and loop points, add envelopes, filters, and randomization all without any external controllers.

once your pads are set up, you can either let some loop with envelopes for nice ambient washes or you can control + trigger them via random patterns on the [timing] screen or euclidean generators on the [euclid] screen.

i’ll be doing a workshop soon that runs through only-norns cheat codes play, so please lmk what questions you run into which aren’t clarified in the docs :sparkles:


oh awesome! thank you friend!

1 Like

rev. 201222


  • MIDI note output!
  • Just Friends voice output!
  • a TON of mappable MIDI triggers + mods in params!
  • random recording probability per live segment
  • feedback % per live segment


  • control pads from either a single external MIDI channel or multiple external MIDI channels (previously was only multiple) – this fixes issues related to Launchpad + Midi Fighter button-boxes. thank you for debugging help @leolodreamland + @Philternaut (and thanks to @fourhoarder for the credit correction :wink: )
  • arps other than fwd now restart correctly after being paused! thank you for the report, @sno!
  • live segment recording behaves more predictably when using random triggering (oxymoron, I know, but previous behavior was buggy)

current-gen Launchpad template

nothing fancy, no bi-directional communication, but here’s a current-gen Launchpad template to load using Novation Components: cc-2_launchpad-template.syx (549 Bytes)

3 banks are solid colors, rainbow section is for the following MIDI-mappable triggers + mods…

MIDI-mappable triggers + mods

common functions / gestures are now MIDI-mappable, under the mappable control parameter set.

save mappings

until the next norns release, you can’t save a map without saving a PSET. this save mappings function works around this by allowing you to trigger a mapping save whenever you want.

ALT key

configured as a momentary hold, which passes special functions to the other MIDI triggers + mods

pattern trigs

  • midi pattern recording: trigger MIDI pattern recording on/off
    • +alt key: erase MIDI pattern
  • random pattern: trigger a random MIDI pattern
  • shuffle pattern: trigger a MIDI pattern shuffle

live recording trigs

  • rec live: trigger on/off
    • +alt key: erase audio between segment’s loop points

zilchmos global + local mods

the most common zilchmos, available for MIDI mapping!

a held zilchmo mod affects the next-played pad. works nicely with a 16n, where a flip of the fader will modify any next-played pad via the corresponding change. eg. keep the fader for random window up while an arp is running and every step will result in a unique slice.

the difference between global and local is that global will affect any played pad and local will affect only pads within a specific bank.

  • 0.5x rate
  • 2x rate
  • reverse rate
  • reverse pan
  • random pan
  • pause
  • random start
  • random end
  • random window

bank values

same as they ever were, but touched up a bit to work more smoothly. also included a MIDI mappable toggle loop function.

MIDI notes + Just Friends voices

the idea of coupling pads with note output has been batted around for a few months between me, @mlogger, and @MatthewAshmore. i put together a quick implementation a few weeks ago and totally fell in love with this style of play.

it’s really neat to route a synth into a cheat codes live segment and play it with the same pads that control the slices of the recording live segment. this creates a doubling that gives new pockets to explore – when playing pads, you end up simultaneously recalling the past while creating new voicing.

in the video above, Just Friends is being sequenced by the same arps that are also playing back recorded audio of Just Friends.

more output destinations to come, but MIDI and JF should get things rolling :slight_smile:

PARAMS > pad to note setup

here’s where you can specify whether, where, and how notes are sent from each banks’ pads.

there’s a global section for quick changes across all banks (eg. I know I want all banks to send notes to a connected USB MIDI synth on channel 2). there’s also sections for each bank where things can be fine-tuned.


  • MIDI output?: yes or no (nb. note duration defaults to the pad’s [arp] length)
  • MIDI dest: if a MIDI device was plugged in before cheat codes was loaded, you’ll see a name. otherwise, you’ll see [device]. either way, this is where pad-to-note data will be sent if the above is yes.
  • MIDI channel: specify channel of destination to send on

note settings

  • scale: choose any scale within the MusicUtil library
  • root note: specify the note that equals pad 1, from which the remaining 15 notes of the scale are built
  • octave: specify the root’s octave

Just Friends

  • (global) Just Friends output?: yes or no (nb. currently, for best results, use transient mode on JF)
  • (global) toggle JF synth mode: hit K3 to toggle synth mode for a crow-connected Just Friends on or off
  • (local) Just Friends channel: specify a channel destination (none, individual outs, all outs, or allocated to available)
  • (local) Just Friends velocity: specify the level at which notes from the bank should play

it’s been a bonkers-ass year and i am deeply grateful for the positivity this community has brought to my life. thank you for sharing your work, your energy, and your kindness with me and each other. stoked for what’s to come.


it’s really neat to route a synth into a cheat codes live segment and play it with the same pads that control the slices of the recording live segment. this creates a doubling that gives new pockets to explore – when playing pads, you end up simultaneously recalling the past while creating new voicing.


wow. exactly the kind of meta/ecosystem ideas i’ve been looking to explore lately. thank you!


this is so exciting! picked the right week to grab a crow, can’t wait to mess with it.


Woah pattern recording is MIDI addressable :partying_face:
The mvp that was missing for gridless ops is here!

Now that I’m working with a friend to make his 128 pad sequencer Norns compatible…

I’ll try to update the TouchOSC layouts soon, with the new MIDI functions it’ll be closer to Grid than ever.
Is there a list for all the params open to MIDI and how to address them?


when I was msging you it hadn’t even set in how rad this update is. thank you dan and thank you everybody who pushed for the midi, super useful to me.


i love you dan 20202020


Just Friends being sequenced by Cheat Codes that is also playing back recorded audio of Just Friends is mind blowing. I don’t have words for it. Is it a meta delay? A sequenced delay? Anyway, it doesn’t matters. The most important thing is that it sounds amazing!


Hello guys, just a question, is it possibile to use cheat codes 2 with Crow connected via i2c with Disting ex?

1 Like

Woooooooo. It’s a great implementation, we can totally say CC it’s an instrument in itself.
Congrats @dan_derks, greatly impressive!


thank you for the positive vibes and warm messages, all :slight_smile:
i’m glad to have a concrete version of this thing which has been lurking in a few folks’ imaginations, so truly thank you to everybody who brought it up over the past months :hugs:

nothing formal – the OSC addresses for everything will surface when you enter midi mapping mode on norns. in case it helps, here’s the bulk of the parameters in the code. the trigger-style ones perform their action when called + the momentary-style ones (eg. all the zilchmos) modify pads when the “gate” is “high” (1). please lmk if you run into any weirdness and i’ll be happy to address! stoked for new touchOSC layout, thank you thank you thank you!

ooo a cool idea! that would require crow to support Disting EX, which has not yet been implemented. when it does, though, it should be straightforward to add some basic commands :slight_smile:


Blockquote ooo a cool idea! that would require crow to support Disting EX, which has not yet been implemented 4. when it does, though, it should be straightforward to add some basic commands :slight_smile:

Thank you Dan! Hope it will implemented as soon as possible :blush:

quick patch-up: 201224


  • outgoing midi notes can now go down to 0 – for the Analog Rytm folks :slight_smile:
  • rnd rates now take pad pitch offset into account

can’t imagine someone hasn’t mentioned this already but I love the big load screen, reminds me of something I can’t quite put my finger on… :thinking:


Sorry for the late response, I’ve been super busy with the holidays! The main screen would be ideal, and I was thinking it could be possible to add through a combination of alt patterns similar to how it would be done gridless by holding down alt and then tapping the tempo, but also having it to be able to be done single handedly with grid would also be cool. Would combination of Alt + any alt (tapped) or having the alt for each bank also having the capability of being a tap tempo be more easily implemented?

1 Like

thanks for the amazing work.
I have tried to make it work with my 64 clone but I do not have the correct leds feedback and also I cannot get the 3 top left buttons to work as they should.
The monome I use for norns (I have also a 128 but it is with modular duties) works with some scripts (loom for example) but not all, so it is unfortunate that CC2 is not on the list.
I was just wondering what is the difference in code with something like loom in the grid management.

1 Like