Mod

AE-analog-rytm-mods

Rising53/100

Mods for the elektron analog rytm mk1 under OS-1.74.

AE-analog-rytm-mods is a mod for the Elektron Analog Rytm, by @hugz202. Open source under MIT, 4 stars on GitHub.

forElektron Analog Rytm·by@hugz202

Unclaimed. Is this yours? Sign in with GitHub as @hugz202 to claim it.

Downloads
0
Stars
4
Fork
1
Commits
2
Last commit
Get the source

No release files yet. Build from source.

MIT· hugz202/AE-analog-rytm-mods·downloads come from the creator’s GitHub releases

2
Commits
0
Releases
2 commits and 0 releases in the last year
Activity · last 12 months

Analog Rytm MK1 - OS 1.74 mods

Build pipeline that patches the official Analog Rytm MK1 OS 1.74 firmware with extra features:

modwhat it does
0009 TX machinesseven Machinedrum TX-8 / TX-9 ports as new machines: BD TX-9 and a fully digital BD TX-9 DIGI on the BD track, SD TX-9 / SD TX-8, XT TX-9 / XT TX-8 toms on LT and MT/HT, and an 808 kick (BT TX-8) on the BT track's resonator - calibrated against recordings of a Machinedrum
0010 FX SENDSa chorus as a third send effect, with the Analog Four chorus's controls (PRE SPD DEP WID FDB HPF VOL), on a second AMP page; each track's send is saved with its sound
0011 CPU probea measuring build: live processor-load readouts in GLOBAL > MIDI CONFIG > CHANNELS
0012 DUCKsidechain-style pumping: pick a track on a page behind COMP and its hits pull every other voice down, at the voices' own analog VCAs (depth, attack, hold, release)
0000 sharedsmall helpers the other mods call into (no controls)

How to use them on the instrument: docs/MANUAL.md. How to build a firmware: BUILD.md. How to flash and get back to stock: docs/FLASHING.md. Read docs/HAZARDS.md before flashing.

Builds

makemods
full (default)TX machines, FX SENDS, DUCK
fxTX machines, FX SENDS
txTX machines only
probeTX machines, FX SENDS, CPU probe

What you need

  • An Analog Rytm MK1 (not the MKII), and the official OS 1.74 .syx from Elektron's website. It is not included here: download it and put it in stock/ (stock/SHA256SUMS lists the exact file the mods are built against).
  • A machine that can run the build: Linux, macOS, or Windows with WSL (Ubuntu).
  • Transfer (Elektron's app) or any SysEx tool to send the firmware.

How it works

The stock firmware is unpacked, and each mod adds small ColdFire assembly routines in unused space of the image (padding, and the routines of machines the firmware carries but never offers) plus a few "detours" - jumps from stock code into those routines. Every patched location is listed in registry/allocations.toml with the exact stock bytes it expects, and the build refuses to touch anything that does not match. make then reads the finished .syx back and checks every changed byte, the untouched embedded bootstrap (the recovery menu), and each detour's return path. The firmware stays version 1.74, so going back to stock is a normal reinstall.

Where this comes from

This repository is based on rytm1_mods, an Analog Rytm MK1 port (OS 1.73) of the MKII rytm-mods project, and keeps its pipeline and conventions. Added here:

  • the TX machines (0009), FX SENDS (0010), the CPU probe (0011) and DUCK (0012);
  • OS 1.74: every address moved from 1.73 to 1.74 with tools/port_os.py, and the 1.74 builds checked to be byte-equivalent to the 1.73 ones apart from the moved addresses (see docs/PORT-1.74.md);
  • detour chains in tools/build.py, so two mods can share a stock hook (DUCK and FX SENDS both add a page through the same four).

The other rytm1_mods mods (euclidean accents, velocity humanise, LFO RND, SMP CUT) are not part of this repository.

Layout

mods/<id>/         one folder per mod: mod.toml (what it is, what it needs),
                   stub.s (its code), design.md (how it was worked out, if any)
registry/          allocations.toml: every patched address, its expected bytes, owner
re/                symbols.toml: the firmware addresses the mods use, with evidence;
                   notes on the analog voices, the FX engine, the hidden machines
tools/             build.py, verify.py, layout.py, symbols.py, mkreg_*.py (generate
                   registry blocks), gen_tx_tables.py, port_os.py, tx_measure/
docs/              MANUAL, FLASHING, HAZARDS, PORT-1.74
stock/             put the official OS 1.74 .syx here

Status

The make full image has been flashed on an Analog Rytm MK1 and played: TX machines, the chorus send and the DUCK page all work. The CPU probe ran on the instrument on OS 1.73; its 1.74 build passes every build check but has not been flashed yet.

Thanks

  • elektron-firmware-tool by mischa85, which packs and unpacks the .syx (fetched by make setup).
  • The rytm1_mods / rytm-mods projects this builds on.

License

MIT - see LICENSE. This covers the mods, tools and documentation here. It does not cover Elektron's firmware, which you supply yourself, or the elektron-firmware-tool that make setup downloads (MIT, its own licence). tools/tx_atk_data.py holds attack and click waveforms measured from the Machinedrum TX plugins, for calibration.

Disclaimer

This is unofficial, modified firmware. It is not made, endorsed or supported by Elektron. You use it at your own risk; read HAZARDS.md first. The OS can always be reinstalled from the stock .syx, including from the STARTUP menu if a build ever fails to boot.