Repository navigation
Opus 2.0 beta 3 (build 3)
Pre-releaseOpus 2 is a firmware mod for the original Teenage Engineering OP-1 on firmware #246 (not the OP-1 field). Its
small core loads plugins: .opmod files you copy into a mods folder on the OP-1's USB disk. Every feature is a
plugin, so you pick the mods and swap them as files, with no reflashing.
Beta 3: plugin engines that sample, no more plugin limits, the OP-1 telling you when a plugin wasn't installed, a
trigger guard for worn keys, and fixes from your reports. Still a beta: it has run in an emulator with the OP-1's
own firmware and on my own OP-1. Back up your tape, synth and drum folders first.
Get it
- The core. Make the update on https://opus-op1.pages.dev/patcher/ from your own copy of TE's
op1_246.op1. It runs in your browser and nothing is uploaded. Install it through the OP-1's update mode: switch
it off, hold COM while switching it on, press 1, copy the file onto the "OP-1" disk and eject it. Never choose 7
or 8 there, they erase your sounds and tape. - The plugins. Download
opus2-starter-pack.zipbelow, put the OP-1 in disk mode (shift + COM, then T3) and
drag the zip'smodsfolder onto the disk. It merges with the one there and replaces the plugins that changed. Or
take only the.opmodfiles you want. Then eject the disk on your computer (the OP-1 leaves disk mode): they load
at the next start. - Coming from op1r or Hundekraft? Add
bridge.opmodtoo (below).
From beta 1 or 2: the same steps. Make the new file (the old one is the older beta's), install it, then drag the
new pack's mods folder onto the disk, and the new bridge.opmod if you use it. Your sounds, presets and tape stay.
| Target | the original OP-1, firmware #246 only |
| The update | op1_246_opus2.op1, 13,161,789 bytes |
| Its SHA-256 | 3c624cf6c49c3548dc5bbc113cad3a66fec6784dcd5d643133de70ea20bab951 |
| Made from | TE's op1_246.op1, SHA-256 c5315218f825f143b415ca554516541898abee843d3a236df0b54c04e1fb13a9 |
| The starter pack | opus2-starter-pack.zip, 21 plugins, SHA-256 957d0972b9b5492c0b70bf79b630d82685daa89f2140bce8aaeecdf1f0ca358e |
| The bridge | bridge.opmod 0.9.0, SHA-256 155bb7c50cbc38bb97ef14eb9869a5664117c50f615c73c73c0959ff2e1d8afd |
Every file's SHA-256 is in SHA256SUMS.txt.
What's new
- Trigger guard, a new plugin: a worn key that fires twice plays once. A second press on the same note key
inside the window is dropped. Its settings (blue push on its row in the mods list): on or off, the window (50 ms
to start, 10 to 300), one window per note or one for all keys, and "false releases held", which keeps a note
sounding through a bounce. The synth, the drums, the sequencers and USB MIDI out all get the cleaned keys. Thanks
to u/Andromax_sussybaka for the idea. - The OP-1 tells you when a plugin wasn't installed, and why. Right after disk mode for a file it didn't take
(not a plugin file, an op1r or Hundekraft file that belongs inmods/bridge, too large, no room on the flash), at
the next start for a plugin that didn't load (damaged, needs a newer Opus or another plugin), and once after a
crash for the plugin left out. The mods list keeps each one in red with the reason. - Switched off in disk mode: plugin files copied or deleted then are now taken in at the next start.
- No fixed limits on plugins: any number of engines, effects and sequencers, memory the only limit. Until now a
ninth engine with its own audio routine or a ninth plugin effect type failed. - Sampling for plugin engines (core 2.10): an engine built for it samples like the stock sampler. mic or
shift + mic opens the input menu with sampling on, a held note records into the slot, and the sound stays the
plugin's. The sample is saved with presets and on the disk, and in the engine list such an engine has the
sampler's samples as a column of its own. - A progress bar across the top of the start-up picture, on all three OP-1 screen types. "start bar" in the
system menu switches it off. - Outatime 1.3: the overdrive type is on shift + orange on its page, and saved with each sound and preset.
- Overwrite save 1.1: its popup says OVERWRITING again, as in Opus 1.
- Diagnostics: the performance tab shows the audio's worst block and the blocks that came late (the crackles).
- The bridge 0.9.0: no fixed number of files.
- For plugin authors: core 2.9 to 2.13 add the sampler service,
opus_called,opus_replace(draw over an OS
screen, its file untouched),opus_key_postandopus_on_key_filter(every key event first). The
plugin kit's api.md has them.
Fixed
- Another firmware's drum kits stopped the start at the logo (Hundekraft 3's gin and drum+ kits). Such a kit now
plays as the OP-1's own drum kit, and the OP-1 says which engine it needs. - Hundekraft's effects crashed through the bridge with the starter pack installed: beta 2 had room for too few
effect types. - Peal and other sequencers through the bridge froze the OP-1 at their first saved change.
- Tape undo failed to load once more plugins were added. Plugins that patch the OS now get the memory they need
first. - A crash during the start shows Opus's crash page instead of a stuck logo, and the crash page says to read the
crash record after the restart. - Plugin engines were silent after a restart when they played the slot's sample: fixed for engines built for
the sampler service. - Delay as Fx overdrive's second effect didn't show its orange value while turned.
New plugin versions: outatime 1.3.0, overwrite save 1.1.0, trigger guard 1.0.2 (new), the bridge 0.9.0. The others
are as in beta 2. Every plugin with its keys, CPU and memory: https://opus-op1.pages.dev, and every release's changes:
https://opus-op1.pages.dev/changes/
Known issues
- With a colour theme, the dim edges of text in a colour other than green can look green on the OP-1's screen. TE's
own screens show it too: it's the panel, not Opus. - With USB plugged in, holding Stop at power-on makes the logo take longer.
- In the bridge: swapping effects between bridged plugins can stop the OP-1 as you leave the effect list, and a
colour theme misses some shades on bridged plugins' pages. - A downloaded engine that plays the slot's sample stays silent after a restart until it's rebuilt for the core's
sampler service.
The bridge (alpha)
bridge.opmod is a download of its own, not part of the starter pack. It runs op1r's synth engines, effects and
sequencers (.op1p) and Hundekraft's (.knl) on Opus as they are, with their own screens and pages, and sounds saved
with them play. Put new plugin files in the disk's mods/bridge folder. The bridge's settings list every file it
found, what loaded and why a file didn't. Where both firmwares have a sequencer of the same name, the first file
loads. A drum kit made with Hundekraft's own drum engines (gin, drum+) plays as the OP-1's own drum kit.
It's an unstable alpha, expect bugs. Opus's own plugins run much better on Opus 2, since they're made for its
core, while a bridged plugin runs through a layer that stands in for its own firmware. Porting a plugin to Opus 2's
format is the way to go. Not bridged yet: LFOs (Hundekraft's quad) and other features, drum and sampler engines, and
engines that play samples.
op1r is by popcorp and Hundekraft's firmware by Hundekraft. Every bridged plugin stays its author's work.
Going back
te-boot, the OP-1's own updater and recovery, is never touched, so the way back is always there.
- To stock or another firmware: Opus's menu, T1 (system), the cleaner: turn green to "at restart", then
switch the OP-1 off and on. Then install the other firmware through update mode as above (stock is TE's
op1_246.op1). The cleaner keeps a copy of everything it changes, so installing Opus again brings it all back. - To Opus 1: no cleaner needed, just install it.
- If the OP-1 stops at a black screen with white text: your data is fine. Hold COM while switching on and install
Opus or your old firmware again. If a plugin is the cause, hold Stop while switching on and delete it from the
mods folder.
Make your own
The plugin kit is in this repo, in plugin-kit/: guides,
the API reference, the SDK headers, the build tool, four example plugins (bitcrush, zoom, halloween and outatime)
and instructions an AI agent can follow, all GPL-3.0. Plugin ideas are welcome in
Discussions.
Licence
The plugins are © LizardMan, free to use and share. Their source is not published yet, apart from the plugin kit's
four examples (GPL-3.0). dx contains code derived from Google's Music Synthesizer for Android (Apache License 2.0):
its LICENSE and NOTICE are in the zip's licenses/opus.dx/ folder. The core's update file and the patcher's data
are all rights reserved: please don't share them, link to the site instead.
Opus is an independent project and is not affiliated with, endorsed by or supported by Teenage Engineering. OP-1 is
a trademark of Teenage Engineering AB. Modifying firmware is at your own risk.
Found a bug? Report it here, with your build
(hold help on Opus's menu) and the plugins in your mods folder.