← Instrument

Source & credits

An independent browser instrument inspired by the layout and workflow of the original Teenage Engineering OP-1. No manufacturer logo, firmware, factory samples or original display artwork is included. This project is not affiliated with Teenage Engineering.

What is emulated?

The six-voice FM bell and detuned saw adapt the DSP algorithms of op1r, custom firmware by pcppcp that runs on the original hardware. They are custom engines, not reproductions of the stock engines. The browser port retains their phase arithmetic, parameter ranges, FM feedback and saw morph/drive structure, while providing its own envelope and output path. It is not bit-exact hardware emulation.

Pure tone, synthesized percussion, sample playback, Delay, Punch-style resonant filtering, Spring-style reverb, CWO frequency-shifting delay, Grid feedback network, Nitro dual filter, Phone band-limiting/quantization, Tremolo/Value/Random modulation, Pattern/Endless sequencers and four-track tape are new browser implementations. Tape provides six minutes of mono audio per track, with overdubbing, take editing, loop markers, speed changes and reverse. The mixer exports stereo WAV audio with level, pan, EQ and master processing. Synth samples are limited to six seconds. Tape stays in the page session; export a tape project before reloading. Explicitly saved sound snapshots and both Album sides persist in local browser storage. Album captures live stereo master output and exports WAV.

This is a workflow recreation, not the original firmware. Factory sound engines/kits, exact effects, drum sample slicing, FM radio, hardware USB modes, all sequencer types and some secondary performance functions are not reproduced. Sequencer ties currently follow forward playback. The on-device geometry follows the original instrument, while supplementary controls remain outside it.

Module controls follow the original parameter reference and LFO guide. The two sound-design studies adapt the manufacturer’s helicopter and bird exercises, substituting a noise source/custom FM engine and omitting Tombola. Effect algorithms, LFO curves and ranges are approximations; Element/MIDI/Crank/Bend LFOs are not implemented. All seven original effect names are available, but their DSP is independently implemented rather than firmware-exact. CWO uses a windowed Hilbert transform for sideband shifting; its animated cow is newly drawn canvas artwork.

The control pass also uses Red Means Recording’s Tape and Album and Sequencers tutorials. Hold/release recording, memo keys, tempo, alternate play modes, preset browsing and Album gestures have regression checks. Complete hardware control parity has not been established. Browser audio input and output resampling are available; microphone permission is requested only when an input is enabled.

Projects used

License & editable source

This instrument and its browser DSP are distributed under GPL-3.0-or-later. The instrument’s HTML, CSS and JavaScript are the complete editable source; no build or downloaded firmware is required. Serve the website from localhost or HTTPS to enable AudioWorklet. The rest of the portfolio is not relicensed.