Octatrick

by timhastie·Mod

Octatrick: firmware modules for the Elektron Octatrack (OS 1.40C) built with octabam -- a paraphonic FM synth machine, scale quantizer with glide, direct jump. No firmware included: build from your own OS. Unofficial.

Updated 3 days ago
Octatrick
Picture from the README

About

Four additions to the Octatrack OS 1.40C, built into one image with octabam: an FM synth machine, a scale quantizer with glide, direct pattern jumps and a tuner.

Highlights
  • SYNTH MACHINE: a FLEX track becomes a two-operator FM synth, mono or paraphonic with up to four voices and 32 chord shapes
  • SCALE QUANTIZER: pitch, locks and the chromatic keys snap to one of 24 scales, with legato glide
  • DIRECT JUMP: a new pattern starts on the next step, at the position the old one had reached
  • TUNER window for the current audio track
  • Optional remix with USB MIDI and 20-channel USB audio

What you need
Your own OS 1.40C, the octabam toolchain and a clone that includes the git submodules.

Good to know
Runs on the author's Octatrack MKI since 26 Sep 2026, not yet tried on an MKII. Not every module combination fits; the build checks tell you which ones do. The virtual panel for these modules is octa-panel.

README

Octatrick

Four additions to the Elektron Octatrack's OS 1.40C, built into one firmware image with octabam.

Octatrick on a real Octatrack MKI

The modules

  • SYNTH MACHINE -- a FLEX track whose sample is named FMSYNTH*.wav becomes a two-operator FM synth. Its PLAYBACK page reads PTCH RATO INDX FINE FDBK DEC under the title FM SYNTH; the LFO page gains VOIC (1 = mono, 2..4 = paraphonic) and CHRD (32 chord shapes, each in four inversions). Keys, MIDI IN and the sequencer play it; fingered chords are recorded as locks; LEG on the AMP SETUP page is a legato switch (MONO / POLY) and GLIDE the slide time, on sample tracks too.
  • SCALE QUANTIZER -- SCALE, ROOT and GLIDE rows in PROJECT > CONTROL > SEQUENCER: the PTCH knob, parameter locks and the CHROMATIC keys snap to one of 24 scales built on the root. They survive a power cycle.
  • DIRECT JUMP -- CHAIN AFTER gains DIRECT: a pattern chosen while the sequencer runs starts at the next step, at the step the old one had reached.
  • TUNER -- hold UP and press TEMPO: a tuner window for the current audio track (note, octave, a +-50 cent needle, Hz). TEMPO, YES or NO closes it.

The octatrick remix adds USB MIDI and 20-channel USB audio out (tracks, MAIN, CUE), USB audio in onto inputs A-D with the USB CROSSBAR, and keeps the stock effects less SPATIALIZER. On the unit the OS version reads OCTATRK<x.y>.

Runs on Tim's Octatrack MKI (every build since 26 Sep 2026); not yet tried on an MKII.

Build it

One command builds the image on your own machine from your own copy of OS 1.40C:

git clone https://github.com/timhastie/octatrick
cd octatrick
./build.sh

It clones Sam's octabam at main, points the four module wrappers at the newest tag of octatrick-modules (so the image carries Tim's current modules even before octabam re-pins them), runs octabam's own make setup, downloads OS 1.40C from Elektron's site (--os <path> to use your own copy of OCTATRACK_OS1.40C_dist.zip), and leaves two files in out/:

out/OCTATRACK_OCTATRICK<x.y>.bin             the card image
out/OCTATRACK_OS1.40C_OCTATRICK<x.y>.syx     the MIDI image

Options: --as-merged builds exactly Sam's main; --pinned builds the known-good octabam commit in octabam.pin; --build N sets the build number the unit shows (bump it each flash); --version OCTATRKx.y the version string. Everything the script makes lives under work/ and out/.

Prerequisites (the script checks them): on macOS the Xcode Command Line Tools, Homebrew, Python 3.10+ and brew install cmake; octabam's make setup brew-installs the rest (binwalk, radare2, m68k-elf-gcc). Linux and WSL2: octabam's BUILDING.md section 1a. Expect the first run to take a few minutes (the toolchain is built from source); later runs take a minute.

Flash it

Follow octabam's guide: BUILDING.md, section 5, Flash from the card (and section 7 for recovery). Back up your card first, power-cycle once more after the upgrade, and SAVE the project after changing SCALE, ROOT or GLIDE.

Where things live

  • The modules' sources: timhastie/octatrick-modules (each module's README says what was measured and what was inferred).
  • The build system and the octatrick remix: sambanks/octabam (modules/synth, modules/quantizer, modules/direct-jump, modules/tuner, remixes/octatrick).
  • An emulator with a virtual front panel: timhastie/octa-panel.

Credits

  • Sam Banks -- octabam: the build system, the ledger, the DRAM platform, the emulators and the gates.
  • markandrus/octemu -- USB MIDI and USB audio out, ported into octabam by Sam.
  • Bryan T (bryantysinger) -- USB audio in, the USB CROSSBAR, MAIN/CUE alignment and the latency servo, and the reverse engineering notes the synth's EMAC arithmetic was written against.
  • Maxolydian -- octamax, the reverse engineering of the OS format, memory map and parameter tables.

Unofficial

Not affiliated with, endorsed by or supported by Elektron. No firmware is in this repository or in a build's git history: every image is built on your machine from your own copy of OS 1.40C, and a built image contains Elektron's OS, so never share one. Modifying your unit's firmware is outside Elektron's licence terms and warranty.

License

MIT, Tim Hastie 2026, for this repository. octabam is Sam Banks's under its own MIT licence; Elektron's firmware is Elektron's.

Pictures in the README load from GitHub.

Language
Shell
License
MIT License
Stars
16
Forks
1
Created
09-25-2026
Last commit
3 days ago

Added by Neutron on Yesterday · History (1 version)




User Profile Send Private Message E-mail Find all posts Find all threads Mod Tools Admin Tools