This is a simple and lofi drum machine for the M5Cardputer.
Now available on M5Burner as "Bonnethead"
- 16KHz sample rate
- 16 steps per pattern, 8 tracks
- 36 patterns
- Swing/shuffle
- Channel mute/solos
- Per-step velocity and sub-tick timing adjustment
- Pattern sequencer
- Per-channel filters
- Multiple drum kits
- Tuning, looping, envelopes and filters for samples
- Retrigger and reverse step effects
- Live keydrumming mode
- Render to SD card
- Sampled drum kits from SD card
- Pitching and tuning, including portamento
- Auto-pitchstretched loops
- Tap tempo
The dot grid indicates the 16x8 steps for the current pattern.
0Pattern number in green- Next fill pattern appears as a red superscript; as a red number when playing the fill
- If there's a pattern sequence, the patterns appear next to the pattern number at the top line (e.g.
12241223) - Dancing man
- Mod key indicated ("F O A C ^" for fn, opt, alt, ctrl, shift)
- Record symbol in live keydrumming mode
- BPM current BPM (60-320)
- SW current swing (0-99; about 20-30 is useful)
- VOL volume (0-16)
- KT kit selected
- At the right Current note: NNN VV KK FX P
- NNN: note name, like
C#4 - VV: velocity (0-9)
- KK: kick timing (0-11)
- FX: effect name
- P: portamento time (0-9) 0=off, 9=slowest
- NNN: note name, like
-
(space) tap tempo. Press four times to set the tempo. -
a-zenter sounds. See the drum map for details. -
0-9sets the velocity of the current step (0=silent, 9=max. 6=default) -
deldeletes the current step -
["kick left" shift step timing back by 1/12 step -
]"kick right" shift step timing forward by 1/12 step -
fn+shift+←rotate current channel left -
fn+shift+→rotate current channel right -
shift+[kick current channel one 1/12 step left -
shift+]kick current channel one 1/12 step right -
ctrl+keyset note pitch.q=middle C. Piano keyboard layout:q2we4r5ty7u8i9opfor the top octave,zsxdcvgbhnjmfor the bottom octave. -
ctrl+[decrease pitch by 10 cents -
ctrl+]increase pitch by 10 cents -
ctrl+↑increase pitch by 1 octave -
ctrl+↓decrease pitch by 1 octave -
ctrl+shift+<n>set portamento time to 0-9 (0=off, 9=slowest). Default is 0 -
tabcycle through FX
-
fn+↑increase BPM -
fn+↓decrease BPM -
fn+←decrease swing -
fn+→increase swing -
fn+[decrease volume -
fn+]increase volume -
Button Aenter sample edit mode -- press a key to hear the sample preview.Button Aswitches back to pattern mode.
fn+sSave the current pattern in the startup buffer (automatically reloaded on startup)fn+a <x>Save the file as bank (0-9a-z)fn+o <x>Open bank (0-9a-z)fn+nNew file, reset everythingfn+rRender the current pattern/pattern sequence to a WAV file on the SD card. The file will be named/bonnethead/renders/render-<n>.wav
opt+<x>wherenis 0-9a-z selects patternnopt+shift+<x>fill patternnafter this pattern, then resumeopt+ESCtoggle pattern sequence modeopt+←pattern cursor leftopt+→pattern cursor rightopt+ENTERinsert current pattern at cursoropt+DELdelete pattern at cursor
fn+kenter keydrumming mode. Press keys to play the drum sounds. Pressfn+kto exit keydrumming mode. (note: red circle at top indicates live keydrumming mode).Fn-shift-Kenables quantized keydrumming mode.fn+<n>toggle mute channeln(1-8)fn+shift+<n>toggle solo channeln(multiple channels can be solo'd)fn+entertoggle solo the current channel (where the cursor is)fn+-decrease filter cutoff on active channels (16 steps of filter)fn+=increase filter cutoff on active channelsfn+\decrease channel volume on active channelsfn+'inccrease channel volume on active channels
alt+<x>select drum kitx(note: this will cause a delay as the kit is synthesised/loaded)- Only kits 1-4 are available w/o an SD card.
Note: you can create custom sampled kits by placing WAV files in /bonnethead/kits/base-<n>.kit on the SD card. (e.g. /bonnethead/kits/base-9.kit). Each WAV should be named a.wav through y.wav (any can be omitted, and will just be skipped). The kit will be loaded as 9 when you press alt+9 in this example. 5-9a-z are available for custom kits (1-4 are synthesised). WAV files should be 16-bit, 16KHz mono.
fn+ddelete current patternfn+ccopy current pattern to clipboardfn+xcut current pattern to clipboardfn+vpaste current pattern to clipboard- NOTE: all clipboard functions operate only on currently enabled channels. So e.g. solo'ing one channel allows you to selectively delete/copy it (or muting all but three channels, etc.)
a->hbass, major scaleikickjclosed hatksnarelclick/rimshotmtomnsweepobeeppopen hatqclaprlow bassscowbelltdamped bellucrashzNote off (appears as#),Note continue (appears as '). This can be used to slide notes or change velocity without retriggering the sample.
In preview mode, samples can be played with a-z. The current sample is displayed at the top of the screen. Press Button A to return to pattern mode.
Parameters can be edited:
detune(cents)cutoff(0-1000)volume(-5000-5000) centibelsstartstart point in samplesendend point in sampleslp startloop start point in samples (note: enabled if loop start!=loop end)lp endloop end point in samplesattackattack time in msdecaydecay time in mssustainsustain level in centibelsreleaserelease time in ms
fn+ssave kit (i.e. parameters of the current kit)fn+oload kit (i.e. parameters of the current kit)fn+nreset kitfn+renter live sampling/recording mode.opthold for fine adjust (+/- 1)althold for coarse adjust (+/- 100)alt+opthold for very coarse adjust (+/- 1000)↑increase value (+/- 10 by default)↓decrease value (+/- 10 by default)reset parameter to 0←previous parameter→next parametertabcycle loop mode (off, forward, stretch, pingpong)
