Firmware

nts1-mkii-lab

Hype14/100

Nine custom oscillators and effects for the Korg NTS-1 digital kit mkII — including an 8-voice polyphonic synth on a monophonic runtime. logue SDK v2.

nts1-mkii-lab is custom firmware for the Korg Nu:Tekt NTS-1 digital kit mkII, by @iliakole1. Open source under GPL-3.0, latest release v1.3.0 (September 2026), 1 star on GitHub.

forKorg Nu:Tekt NTS-1 digital kit mkII·by@iliakole1

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

Downloads
0
Star
1
Forks
0
Commits
9
Last commit
Download v1.3.0

bbd.nts1mkiiunit· 10 KB· +21 files

GPL-3.0· iliakole1/nts1-mkii-lab·downloads come from the creator’s GitHub releases

9
Commits
4
Releases
9 commits and 4 releases in the last year
Activity · last 12 months
4 releases
  1. v1.3.0v1.3.0 — phase distortion, wavetables, and the delay slotLatest22 files

    Five new units: two oscillators that fill the last free slots, the first two delays, and a mod effect. Twenty-two units total.

    New oscillators

    cz — phase distortion (shows as PD8). A resonant filter sweep on a synth with no filter in it, the way the Casio CZ line did it in 1984. A phase accumulator runs at the note frequency, a distortion function warps it, and the warped phase reads a cosine — sweeping how much warping happens opens and closes the spectrum exactly as a lowpass with an envelope on cutoff would. Eight presets: RESO, BRAS, EPNO, BASS, BELL, STRG, PIPE, VOX. It is the cheapest oscillator here — less work per sample than a single polyBLEP pulse — which is what buys 8 voices of two lines each.

    wt — wavetable scanning (shows as WAVE). 32 single-cycle waves as a progression, with the envelope walking a pointer through them while the note sounds. Sine into sawtooth into square into pulse into a vocal resonance. The bank is generated at load rather than shipped, because oscillators get no SDRAM and a stored bank is the one thing that will not fit. Each wave is built four times at different bandwidths so the top of the keyboard does not tear.

    That fills the oscillator slots — 16 of 16. Pick the ones you want.

    New effects

    bbd — bucket-brigade delay. The DEL FX slot had never been used. On a real bucket-brigade chain delay time is clock rate, and clock rate is the sample rate of the line, so the bandwidth falls as the delay lengthens — a long setting is dark because it cannot be anything else. Plus the compander that makes these breathe, tape-ish wobble, tempo sync, and a runaway that saturates instead of exploding. AGE at 0 turns all of it off and leaves a clean digital delay.

    reso — tuned string resonators. A delay line short enough to be a pitch rather than an echo, excited by whatever you play through it. Four strings tuned to a chord: run a drum loop through a minor seventh and it comes back as a chord voiced by its own transients.

    micro — micro pitch shifting. Two shifters a few cents apart, one per side. A chorus makes width by modulating a delay, which you hear as movement; this makes width by putting different pitches in the two ears, which reads as size. Nothing cycles, so there is nothing to get tired of. SPRD at 0 stays mono-compatible.

    Installing

    1. Connect the NTS-1 mkII over USB, powered on.
    2. Open KORG KONTROL Editor (free, Mac/Windows).
    3. Drag each .nts1mkiiunit onto the matching user-unit list.

    Requires firmware 1.0.0 or later; velocity needs 1.2 or later. There are 16 oscillators here for 16 slots, so choose rather than loading everything.

    If you play chords

    Every instrument here is polyphonic, and the factory defaults will make any polyphonic unit sound broken:

    1. Global EG Legato = 0. Power on holding REVERB, turn TYPE to EG Legato, B to 0, press ARP.
    2. Amp EG type = Open.

    Details in docs/polyphony.md.

    Notes

    396 offline checks pass, covering tuning, voice lifecycle, headroom, preset separation, aliasing, delay timing and stereo behaviour. That verifies the DSP, not the hardware — if something misbehaves on your unit, please open an issue with your firmware version and settings.

    GPLv3. Built on Korg's logue SDK.

  2. v1.2.0v1.2.0 — six-operator FM17 files

    Adds dx — a six-operator FM oscillator with eight presets. Seventeen units total; download the ones you want, no toolchain needed.

    New: FM6

    Every operator is a sine with its own four-stage envelope, and what separates one sound from another is which operators modulate which, and what their envelopes do on the way. A modulator never reaches the output — its envelope decides how far the carrier's spectrum opens. A bell is a carrier whose modulator dies faster than it does; brass is a carrier whose modulator arrives later than it does.

    PresetWhat it is
    BELLTubular bells — ratios off the harmonic series, so the partials never resolve into a pitch you could hum
    MRMBMarimba — a hard 4:1 knock on the attack, over in half a second
    VIBEVibraphone — the same mallet shape, aluminium decay, and the motor
    BASSA 1:1 modulator with feedback, which is how you get a reedy saw out of two sines
    BRASThe swell: the carrier speaks in 60 ms, its modulator arrives at 190
    STRGThin on purpose, with the modulators kept quiet so it never turns brassy
    HPSIHarpsichord — odd ratios, energy up where a quill belongs
    CLAVClavinet — the grit is the feedback operator, not a high ratio

    TONE scales every modulator at once, which is the single most useful control on an FM voice: 512 is the patch as written, 0 collapses the whole thing to plain sines.

    Sidebands are capped. FM harmonics are unbounded, so a bright patch high up the keyboard folds them back at 48 kHz. The 1983 machines did that too and people came to like it — this doesn't. Each modulator's depth is clamped so the topmost sideband stays under Nyquist. It engages only near the top, where the alternative is not period charm but an audibly wrong note.

    FM6 is a six-operator FM oscillator in that tradition, not a clone of any product, and it carries no patch data from one.

    Installing

    1. Connect the NTS-1 mkII over USB, powered on.
    2. Open KORG KONTROL Editor (free, Mac/Windows).
    3. Drag each .nts1mkiiunit onto the matching user-unit list.

    Don't unplug while the editor is transferring. Requires firmware 1.0.0 or later; velocity needs 1.2 or later.

    There are now 14 oscillators here and the mkII has 16 OSC slots, so pick the ones you want rather than loading everything.

    If you play chords

    Every instrument here is polyphonic, and the factory defaults will make any polyphonic unit sound broken:

    1. Global EG Legato = 0. Power on holding REVERB, turn TYPE to EG Legato, B to 0, press ARP.
    2. Amp EG type = Open.

    Details in docs/polyphony.md.

    Notes

    294 offline checks pass, covering tuning, voice lifecycle, headroom, preset separation, aliasing and stereo behaviour. That verifies the DSP, not the hardware — if something misbehaves on your unit, please open an issue with your firmware version and settings.

    GPLv3. Built on Korg's logue SDK.

  3. v1.1.0v1.1.0 — the Casio PT-20 set16 files

    Adds the seven Casio PT-20 tones as their own oscillators. Sixteen units total — download the ones you want, no toolchain needed.

    New: the PT-20 set

    The Casio PT-20 (1983) is a divider synth — square waves mixed at fixed levels, a simple envelope, no filter sweep and no velocity. Its seven presets are here as seven separate oscillators, so each is one turn of the encoder away rather than a menu dive.

    UnitCharacter
    casio-pianoStruck square that dies under a held key
    casio-organ8'/4'/2'/1' octaves off one divider, instant on and off
    casio-violinThe buzziest — narrow pulses and a deep vibrato
    casio-fluteNearly the bare fundamental, rolled off hard
    casio-hornHollow, midrange, brassy
    casio-fantasyThe famous one — partials beating off the harmonic series
    casio-mellowDark and round, gently detuned

    Three things they do that the original cannot: play chords (six voices), stay clean above the top octave (the oscillators are band-limited — LOFI puts the grit back), and move (zero on every knob is the factory voice). VSEN defaults to 0 because the PT-20's keyboard has no touch sensitivity.

    Seven units plus the six other oscillators here is 13 of the mkII's 16 OSC slots, so load the ones you want rather than all of them.

    Also in this release

    • pluck is 59 % smaller — 41,876 → 17,344 bytes. Its delay lines were being emitted as initialised .data, so the unit shipped 24 KB of zeros.
    • drive and shimmer gained the websim wasm.cc shell they were missing, and effects now open the FX sandbox instead of the oscillator one.
    • Unit builds track header dependencies, so editing a dsp.h actually rebuilds instead of leaving you a stale binary.

    Installing

    1. Connect the NTS-1 mkII over USB, powered on.
    2. Open KORG KONTROL Editor (free, Mac/Windows).
    3. Drag each .nts1mkiiunit onto the matching user-unit list.

    Don't unplug while the editor is transferring. Requires firmware 1.0.0 or later; velocity needs 1.2 or later.

    If you play chords

    Every instrument here is polyphonic, and the mkII's factory defaults will make any polyphonic unit sound broken:

    1. Global EG Legato = 0. The default is On, which sends one note-on per phrase. Power on holding REVERB, turn TYPE to EG Legato, B to 0, press ARP.
    2. Amp EG type = Open. The hardware envelope sits after the oscillator slot and is monophonic.

    Details in docs/polyphony.md.

    Notes

    240 offline checks pass, covering tuning, voice lifecycle, headroom, tone separation, aliasing and stereo behaviour. That verifies the DSP, not the hardware — if something misbehaves on your unit, please open an issue with your firmware version and settings.

    GPLv3. Built on Korg's logue SDK.

  4. v1.0.0v1.0.0 — nine units9 files

    Nine units for the Korg NTS-1 digital kit mkII. Download the ones you want below — no toolchain needed.

    Installing

    1. Connect the NTS-1 mkII over USB, powered on.
    2. Open KORG KONTROL Editor (free, Mac/Windows).
    3. Drag each .nts1mkiiunit onto the matching user-unit list.

    Don't unplug while the editor is transferring. Requires firmware 1.0.0 or later; velocity needs 1.2 or later.

    Oscillators

    UnitWhat it is
    poly88-voice polyphonic synth. Two detuned polyBLEP oscillators per voice, per-voice lowpass and ADSR, envelope-to-filter, voice stealing.
    epianoFour electric pianos — ballad Rhodes, Wurlitzer, bright tine, barking reed — from 2-op FM.
    organSix drawbar organs: jazz, rock, Vox, Farfisa, church pipe, theatre tibia. Percussion, key click, tremulant.
    pianoFive struck-string presets. Additive, with stiff-string inharmonicity and unison beating.
    fluteFive breath-blown presets. Chiff, breath noise, vibrato that arrives after the attack.
    pluckSix Karplus-Strong strings: banjo, guitar, ukulele, mandolin, harp, koto.

    Effects

    UnitSlotWhat it is
    ensembleMOD FXStereo chorus. Three modulated delay taps, counter-phase spread.
    driveMOD FXSoft saturation, biased fuzz, wavefolder, bitcrusher. 2× oversampled.
    shimmerREVERBPitch-shifted reverb — the tail climbs an octave away from the source.

    If you play chords

    poly8 needs two device settings, or it will sound broken:

    1. Global EG Legato = 0. The factory default is On, which sends one note-on per phrase. Power on holding REVERB, turn TYPE to EG Legato, B to 0, press ARP.
    2. Amp EG type = Open. The hardware envelope sits after the oscillator slot and is monophonic.

    Details in docs/polyphony.md.

    Notes

    Every unit passes a 186-check offline harness covering tuning, voice lifecycle, headroom, preset separation, aliasing and stereo behaviour. That verifies the DSP, not the hardware — if something misbehaves on your unit, please open an issue with your firmware version and settings.

    GPLv3. Built on Korg's logue SDK.