Firmware

open-xy

Peaking98/100

Open-XY: curated machines for the OP-XY, with an SDK and browser builder

open-xy is custom firmware for the Teenage Engineering OP-XY, by @etcetc000. Open source under MIT, latest release v0.0.5 (November 2026), 90 stars on GitHub.

forTeenage Engineering OP-XY·by@etcetc000

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

Downloads
0
Stars
90
Forks
29
Commits
1,052
Last commit
Get the source

No release files yet. Build from source.

MIT· etcetc000/open-xy·downloads come from the creator’s GitHub releases

643
Commits
4
Releases
643 commits and 4 releases in the last year
Activity · last 12 months
4 releases
  1. v0.0.5Open-XY 0.0.5Latest0 files

    Open-XY 0.0.5

    For players

    • Chords note player. Hold a root with your right hand and shape it with left-hand chord types (dim, min, maj, sus4) and extensions (6, m7, M7, 9, 11, 13, b9). It has strum, direction, voicing and spread controls. Releasing a key on either hand never restrums held chords. Chords is now an Open-XY machine (#382, #390).
    • Builder: find machines by search, sort, keyword and favorite (#375). Save machine selections as named presets (#376).
    • Includes the 0.0.4 Timestretch slicing and preset-persistence hotfix (#285, #286). 0.0.4 was never tagged on its own.

    For machine authors

    • A master processor interface (#233). Send-effect alternates (#270).
    • sdk.py new --repository writes a device checklist, QA.md (#359).

    What's Changed

    New Contributors

    Full Changelog: https://github.com/etcetc000/open-xy/compare/v0.0.3...v0.0.5

  2. v0.0.3Open-XY 0.0.30 files

    Open-XY 0.0.3

    Firmware built with this release shows OPEN 0.0.3-1.2.1 at boot. It targets OP-XY OS 1.2.1, as 0.0.2 did. Keep your layout.json and load it into the builder next time, so your machines keep their numbers.

    For players

    • Room for many more machines. A build can hold up to 256 machines, and memory is now the only limit you'll meet: there are free numbers for 222 synths and sample players (up from 29) and 174 synth pages (up from 46).
    • Projects open the right machines. On load, the firmware reads the project's .oxy file and maps each track to the machine it was saved with, even when this firmware numbers its machines differently. A machine the firmware lacks opens as Prism (or no effect on a send) instead of whichever machine now holds its old number.
    • Extensions. The builder has an optional Extensions step after Machines. The first one is Capture: when you aren't recording, play, then double-tap Record to turn what you just played into the selected track's sequence, in one undo step.
    • No more clicks from overlapping notes. Custom synths free a voice as soon as stock stops playing it, and fade any voice they have to take over.
    • Switches step one choice per turn. A machine's switch-like controls move one choice per encoder detent and show the choice's name instead of 0–99, on synth and send-effect pages.
    • Send effects show all their controls. On a send page, press an effect's encoder to reach its controls after the fourth, as on synth pages.
    • Sample machines on the sampler page play like the sampler: one sample across the whole keyboard, at its recorded pitch on the root key.
    • Sample machines on the drum page support stock slicing, copy and paste of single pads, and editing several pads at once.
    • Leftover presets are hidden. When a build leaves out a machine, its factory preset stays on your OP-XY but no longer shows in the preset browser, so it can't open as a sampler. Your own presets are untouched.
    • Synth screens start fresh when you open their page or change track.
    • The builder recognizes your machines in any open-xy OS you load, however many it holds, so you don't have to choose them again.
    • New machines in the catalog: Troupe, Breadboard, seven Monomachine synths from OP-XY MNMD, six synths from OP-XY Hexagon and seven from OP-XY Nonagon. Karplus and Macro Osc are at v1.5.0; Metal, Hurdy Gurdy and matriXY (now with 11 presets) are updated too.

    When you upgrade

    • Engine and page numbers above 63 are new in this release. Layouts from earlier releases keep their numbers; a machine added to such a layout may now get a number above 63.

    For machine authors

    The SDK is now 1.6 and builds machines targeting 1.0 to 1.6.

    • SDK 1.4: a synth's second page can be partial.
    • SDK 1.5: machines name no numbers. Leave out identity; each build gives out engine, effect and page numbers. A sample engine names the stock sampler it builds on with "base": "sampler" or "drumSampler". Machines on 1.4 or older are unchanged.
    • SDK 1.6: sample pad settings have 18 bits, enough to keep both a source BPM and a bar length. Existing 16-bit settings read unchanged.
    • Two-page headers. opxy/page_header.hpp gives you Macro Osc's two-row header; python sdk.py new --repository --controls 5 (up to 8) starts a machine with it.
    • Drawing over the header. A machine may cover the stock header and draw its own; previews now draw the header beneath, as the OP-XY does.
    • Outline warnings. Preview checks warn about outlines with no area, which the OP-XY draws as downward streaks. Draw lines as thin closed ribbons.
    • Bigger browser previews. Previews get 2 MiB of memory, so synths with large waveform banks build on open-xy.com.
    • Large inline functions (COMDAT sections) now link, natively and on open-xy.com.
    • Extensions live in their own repositories, pinned by catalog/extensions.json like machines; --extension <folder> adds one to compile, build, kit and test.
    • Memory is checked per machine. Each catalog machine must fit beside Open-XY's own machines, rather than the whole catalog fitting at once.
    • CPU measurements. Catalog updates need a new hardware measurement again, unless a maintainer approves keeping the previous one (cpu-carried). Catalog-only pull requests go to main.
    • Workbench. The local machine workbench follows the installer's look, with larger knobs and a light theme.

    Known issues

    • Re-saving a project on firmware that lacks one of its machines drops that machine from the project's .oxy file.
    • A track whose machine is missing opens as Prism without saying which machine was missing.
    • The Linux x86_64 toolchain's pinned hashes haven't been confirmed against an independent build yet.
  3. v0.0.2Open-XY 0.0.20 files

    What's Changed

    New Contributors

    Full Changelog: https://github.com/etcetc000/open-xy/compare/toolchain-1...v0.0.2

  4. toolchain-1Blackfin toolchain 15 files

    The pinned Blackfin+ binutils and GCC 8 compiler for building OP-XY firmware with the SDK, so you don't have to build GCC yourself. See docs/toolchain.md.

    • open-xy-toolchain-windows-x86_64.zip: unzip anywhere; pass the folder as --compiler and its bin as --toolchain. No other software needed. The SDK hash-checks every pinned file.
    • open-xy-toolchain-source-windows-x86_64.tar: the corresponding source (GPL/LGPL). This is the Blackfin+ GNU fork at e4408a15, the Open-XY patches and build scripts, and the source package of every bundled runtime library.
    • SHA256SUMS

    macOS (Apple silicon) assets will be added to this release.