
Pure Data to KORG NTS-1 mkII Converter
This web application allows you to convert Pure Data patches into custom user units (oscillators and effects) for the KORG NTS-1 mkII. (NTS-1 version is here.)
It’s a powerful and accessible way to build new sounds for your NTS-1 mkII — without writing a single line of C code.
Under the hood, it uses hvcc_nts1mkii, an external generator for HVCC, adapted to produce user unit code for the logue SDK for NTS-1 mkII.
🛠️ Features
* Convert .pd patches into ready-to-use KORG NTS-1 mkII user units
* Supports not only oscillators but also modulation, delay, and reverb effects
* No need to install any software — runs entirely in your browser
* Supports key parameters such as pitch, shape, and effect controls
🚀 Try It Now
➡️ Launch the converter
📂 Upload your .pd patch
📦 Receive a .zip containing ready-to-load user unit files for your NTS-1 mkII
🎁 Sample Patches
Explore example patches and prebuilt binaries:
➡️ User Units and Pure Data Patches for NTS-1 mkII
🔍 Supported Pure Data Objects
HVCC does not support every object from Pure Data.
Refer to this official list:
➡️ Supported Vanilla Objects (hvcc documentation)
If you use unsupported objects, the conversion will fail. Stick to this reference during development.
Some objects, like [noise~], may produce code that is too large to fit in an NTS-1 mkII user unit.
If you need a noise source, see this workaround for how to generate white noise using a table object.
🧰 heavylib: A Patch-Compatible Utility Library
A Pure Data library called heavylib offers prebuilt audio utilities compatible with HVCC. While originally designed for DAW plugins, some parts (especially oscillator patches) work well with this web app.
🎚️ Receiving Parameters in Your Patch
Your Pure Data patch can receive input from NTS-1 mkII using reserved parameter names. These are accessed via [r param_name @hv_param] where param_name can be pitch, shape, time, depth, etc.
* Differences between unit types *
| unit type | max size | max SDRAM | knob A | knob B | mix | num. of params | predefined | DAC |
| osc | 48KB | 0 | shape, shape_f | alt, alt_f | – | 8 | pitch, pitch_note, slfo, noteon_trig, noteoff_trig | 1ch |
| modfx | 16KB | 256KB | time, time_f | depth, depth_f | – | 8 | – | 2ch |
| delfx | 24KB | 3MB | time, time_f | depth, depth_f | mix, mix_f | 7 | – | 2ch |
| revfx | 24KB | 3MB | time, time_f | depth, depth_f | mix, mix_f | 7 | – | 2ch |
The details of these parameters are documented here:
➡️ Receiving Parameters (hvcc_nts1mkii)
⚠️ Restrictions and Limitations
This environment comes with several limitations. Be sure to review the current constraints: