Velocity Humanise for Elektron Analog Rytm
Per track, every trig's velocity gets a random offset of up to ±N, set with FUNC + VEL on the TRIG page.
Module version 1.2.0. Base firmware: 1.74.
About this module
Velocity Humanise gives each track a random velocity offset: every trig's velocity moves by a random amount up to ±N, clamped to 1..127. N is one of sixteen steps from 0 to 64, set by holding FUNC and turning VEL on the TRIG page, where the label reads RND and the knob becomes a sixteen-position selector. N is per pattern track, kept in core-ar2's mod storage and saved with the pattern. It is an elemod port of MrScruff's rytm-mods 0003-velocity-humanise, with his code unchanged apart from the storage port and FUNC + VEL's turn and text, which now go through core-ar2's parameter table (core_params) instead of two detours of his own.
- FUNC + VEL sets a per-track random velocity range.
- Sixteen steps from 0 to 64; 0 is stock behaviour.
- Kept in core-ar2 mod storage and saved with the pattern.
- No longer needs Euclid Accents in the same build.
How to use it
- Use a build containing Velocity Humanise. On the TRIG page, hold FUNC and turn VEL: the label reads RND and the popup shows N.
- Set N to 32 and play a track of equal-velocity trigs: the hits vary in level. Set N to 0: they are equal again.
- Release FUNC: VEL is the trig velocity again, unchanged.
Controls
- FUNC + VEL (TRIG page)
- Sets the track's random velocity range N: sixteen steps from 0 to 64. Each trig's velocity moves by a random amount up to ±N, clamped to 1..127.
Compatibility notes
- Built for OS 1.74 only. 1.2.0 reaches its parameter through core-ar2's parameter table (core_params, core-ar2 0.4 and later; Modwerk's base is core-ar2 0.7). 1.1.0 detoured the entries of param_apply_delta and param_value_text itself, which core-ar2 0.4 and later own, so it does not link with them.
- Needs core-ar2's mod storage: four bits per pattern track (vel_rnd).
- On stock firmware, or a build without this module, the track plays its plain velocities: N is in mod storage, which stock ignores.
- Not beside Sample RATE: both patch the start of param_short_name (0x400a9000), the knob label routine, for different parameters (VEL here, FIN there). Modwerk's base (core-ar2 0.7) has no shared hook for labels; core-ar2 0.10's knob-name service would let them share.
Test evidence
Hardware on Modwerk's base (MW12, 2026-11-07): N 64 spread 3.7 dB std, kept across a power cycle. Hardware: velocity-humanise 1.2 on an Analog Rytm MKII, OS 1.74, with core-ar2 0.4 and the other rytm2_mods ports (P4A4, 2026-10-21): FUNC + VEL reads RND and steps through N's sixteen values, VEL alone is stock, and N survives a power-cycle without a project save. Modwerk's package linked with core-ar2 0.7 gives a main OS byte-identical to the rytm2_mods v1.3 release object linked with it. In the emulator on the Modwerk base (VH12), FUNC relabels VEL as RND and turning it shows N.
Module source and documentation