Arp Key Locks for Elektron Octatrack
Lock the arpeggiator's KEY on single steps of a MIDI track, in seven modes and twelve roots, and move one arp note on a trig by steps of the key.
Module version 0.1.0-experimental. Base firmware: 1.40C.
About this module
Hold a trig in MIDI ARP SETUP and turn KEY: that step keeps its own key, for example F DORIAN, until the next locked step, wrapping at the end of the pattern. The arpeggio keeps running while its notes move into the new scale. Seven modes in all twelve roots: Major, Dorian, Phrygian, Lydian, Mixolydian, Minor and Locrian. With a trig held, D picks one note of that trig's arpeggio and E moves it up or down by steps of the key. A pattern without locks plays the track's KEY as on stock, and the locks are saved with the project.
- Seven modes in all twelve roots as step locks; the track's own KEY stays stock's OFF, MAJOR or MINOR.
- A lock holds until the next one, so a lock on step 1 sets the whole pattern's key.
- Move one note of a trig's arpeggio by -7 to +7 steps of the key; the next trig plays its arpeggio as it is.
- While a trig is held, the KEY box shows its lock or its arp note shift.
- Over USB it uses the Modwerk base's shared events and patches no stock code.
How to use it
- On a MIDI track that plays an arpeggio, press [REC] for grid recording. Hold the trig of a step, then press [FUNC] + [AMP] (or [AMP] twice) to open MIDI ARP SETUP for it.
- Still holding the trig, turn F (KEY) to lock that step's key, for example F DOR; the key holds until the next locked step. Turn below OFF to remove the lock.
- Still holding it, pick an arp note with D (N1-N16) and shift it with E (-7 to +7 steps of the key). Turn D below N1 to remove it.
- Let go of the trig: ARP SETUP closes and the pattern's trigs show again, ready for the next step (a card build stays in ARP SETUP). Press [PLAY] to hear the keys change while the arpeggio keeps running.
Controls
- KEY LOCK
- Per step: hold a trig in MIDI ARP SETUP and turn F. -- is no lock (the lock before holds); OFF plays the step uncorrected; the others move each note the track sends into that key, one semitone down when out of key.
- ARP NOTE
- Per trig: hold it and turn D to pick which note of its arpeggio moves. -- removes the setting.
- ARP NOTE SHIFT
- Per trig: hold it and turn E to move the picked arp note by steps of the key (semitones with KEY OFF).
Compatibility notes
- OS 1.40C. Ran on the author's MKII over USB on the Modwerk base; card builds and the MKI are not tested.
- The extra modes exist only as step locks: the track's own KEY stays OFF, MAJOR or MINOR. To give a whole pattern another mode, lock it on step 1.
- An out-of-key note moves one semitone down, as stock's KEY does. Notes played in from a MIDI keyboard and TRAN other than 0 are not tested.
- Copying, clearing or placing trigs carries or removes the locks as it does stock's locks (by octabam's firmware notes); not tested.
- A trig with negative micro-timing on the first step of a new lock sends its first note before that step begins, so that one note takes the previous step's key; the rest of its arpeggio takes the new one (measured on the MKII).
- KEY moves one key per detent with a trig held, which can feel sensitive.
- Upstream octabam's MIDI Scales patches the same places; the two are not built together.
Test evidence
On the author's MKII over USB (24 Oct 2026), on the base with the three events from #857, as trials: per-step keys recorded over USB MIDI with clock (477 notes, every note in its step's key), arp note shifts on the right trig only, and the gestures as described; package 1d086d7b ran in the third session; on 26 Oct the published package 7962c35a was kept beside nine other modules, played the tester's locks and stayed kept through a power cycle. Host tests of the C core for every key and note (verify.py); in ot_emu a card build played the same notes on the same frames as the original OS with each moved into its step's key, and a 62 s MIDI flood showed no stuck note or hang. On 27 Oct package 907a03cf (N16 fix) was kept on base c1ae2ee9: locks played in their keys after saving and reloading and after a power cycle, were ignored with the module removed, and a micro-timed trig's early first note took the previous key.
Module source and documentation