
open-xy
Peaking98/100Open-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.
No release files yet. Build from source.
MIT· etcetc000/open-xy·downloads come from the creator’s GitHub releases
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 --repositorywrites a device checklist, QA.md (#359).
What's Changed
- Release 0.0.3: 256 engine and screen slots, breadboard by @etcetc000 in https://github.com/etcetc000/open-xy/pull/237
- Serve kits that name their linked machines by @etcetc000 in https://github.com/etcetc000/open-xy/pull/240
- Catalog: capture v1.6.1 by @etcetc000 in https://github.com/etcetc000/open-xy/pull/243
- Profile synths with a control sweep; warn above 3.5% by @etcetc000 in https://github.com/etcetc000/open-xy/pull/242
- One hardware capture is enough for a CPU record by @etcetc000 in https://github.com/etcetc000/open-xy/pull/246
- Hide factory presets whose engine the build does not install by @etcetc000 in https://github.com/etcetc000/open-xy/pull/89
- Merge release 0.0.3 and main into staging by @etcetc000 in https://github.com/etcetc000/open-xy/pull/257
- Hotfix: take firmware limits from the table declarations by @etcetc000 in https://github.com/etcetc000/open-xy/pull/264
- Take firmware limits from the table declarations by @etcetc000 in https://github.com/etcetc000/open-xy/pull/263
- Catalog: publish Daath (daath) 1.0 by @etcetc000 in https://github.com/etcetc000/open-xy/pull/255
- Catalog: publish Tattva 1.02 and Ohmonk v1.0.0; reserve grainfield by @etcetc000 in https://github.com/etcetc000/open-xy/pull/262
- Merge main into staging: Tattva, Ohmonk, grainfield by @etcetc000 in https://github.com/etcetc000/open-xy/pull/265
- Hotfix: accept synth sweep CPU records on main; publish Daath by @etcetc000 in https://github.com/etcetc000/open-xy/pull/266
- Merge main into staging after the Daath hotfix by @etcetc000 in https://github.com/etcetc000/open-xy/pull/267
- Add one device transfer command so agents stop writing their own by @etcetc000 in https://github.com/etcetc000/open-xy/pull/268
- Publish mmnois from OP-XY MNMD v1.1.4 by @mmockett in https://github.com/etcetc000/open-xy/pull/273
- Catalog: ship named presets with 20 published synths by @mmockett in https://github.com/etcetc000/open-xy/pull/272
- Pin Lint to OP-XY ModFX v1.3.0 (draft) by @mmockett in https://github.com/etcetc000/open-xy/pull/269
- Drum kind: fixes from running four per-key kits on an OP-XY by @mmockett in https://github.com/etcetc000/open-xy/pull/143
- Let a synth leave a parameter slot absent by @mmockett in https://github.com/etcetc000/open-xy/pull/218
- Add Chroma from OP-XY ModFX v1.4.1 (draft) by @mmockett in https://github.com/etcetc000/open-xy/pull/274
- Publish mmsaw and mmsin from OP-XY MNMD v1.1.6 by @mmockett in https://github.com/etcetc000/open-xy/pull/276
- Catalog: publish Chimes, reserve Cirrus and Stratus by @carlosedp in https://github.com/etcetc000/open-xy/pull/175
- Send effect alternates: reach the effect and draw their bars by @colorsinspace1 in https://github.com/etcetc000/open-xy/pull/270
- Catalog: publish Grainfield 1.2 by @colorsinspace1 in https://github.com/etcetc000/open-xy/pull/271
- Speeds up the Catalog workflow and fixes a false failure on re-runs by @carlosedp in https://github.com/etcetc000/open-xy/pull/282
- Catalog: screen fixes for Nonagon, Lint and Chroma by @mmockett in https://github.com/etcetc000/open-xy/pull/281
- Catalog: screen fixes for Hexagon v1.2.0 by @mmockett in https://github.com/etcetc000/open-xy/pull/289
- Catalog: screen fixes for ten Monomachine synths, OP-XY MNMD v1.1.7 by @mmockett in https://github.com/etcetc000/open-xy/pull/290
- Hotfix 0.0.4: synchronize sample slicing and preserve presets by @etcetc000 in https://github.com/etcetc000/open-xy/pull/284
- Release 0.0.4 hotfix: sample slicing and preset persistence by @etcetc000 in https://github.com/etcetc000/open-xy/pull/285
- Catalog staging: prepare Timestretch slicing hotfix by @etcetc000 in https://github.com/etcetc000/open-xy/pull/286
- Catalog main: prepare Timestretch slicing hotfix by @etcetc000 in https://github.com/etcetc000/open-xy/pull/287
- Hotfix: scramble an owned synth's alternates by @etcetc000 in https://github.com/etcetc000/open-xy/pull/293
- Scramble an owned synth's alternates by @etcetc000 in https://github.com/etcetc000/open-xy/pull/292
- Update Macro Osc to optimized core v1.8.0 by @etcetc000 in https://github.com/etcetc000/open-xy/pull/296
- Update staging Macro Osc to optimized core v1.8.0 by @etcetc000 in https://github.com/etcetc000/open-xy/pull/297
- Catalog: outline fixes for ten Monomachine synths, OP-XY MNMD v1.1.8 by @mmockett in https://github.com/etcetc000/open-xy/pull/294
- Catalog: lighter mmsaw, mmvo6 and mmpar, and a screen fix, OP-XY MNMD v1.1.9 by @mmockett in https://github.com/etcetc000/open-xy/pull/305
- Catalog: lighter Moth, Sand and Cocoa, and Coin's screen fix by @mmockett in https://github.com/etcetc000/open-xy/pull/306
- Catalog: lighter Bloom, Hollow and Mach, with sweep records by @mmockett in https://github.com/etcetc000/open-xy/pull/304
- Pin Lint to OP-XY ModFX v1.6.0 (draft), lighter audio by @mmockett in https://github.com/etcetc000/open-xy/pull/303
- Catalog: publish Halcyon 1.0 by @colorsinspace1 in https://github.com/etcetc000/open-xy/pull/295
- Pin Chroma to OP-XY ModFX v1.7.0 (draft) by @mmockett in https://github.com/etcetc000/open-xy/pull/313
- Let a send effect page its controls, add a shift row and draw its own page (SDK 1.7) by @mmockett in https://github.com/etcetc000/open-xy/pull/230
- Publish Lint at OP-XY ModFX v1.8.0, and Chroma by @mmockett in https://github.com/etcetc000/open-xy/pull/318
- Add OS 1.2.1 note players and emitted-note keyboard display by @etcetc000 in https://github.com/etcetc000/open-xy/pull/62
- Update Troupe to v1.0.1 numbered voices by @Hecedu in https://github.com/etcetc000/open-xy/pull/288
- Give a sample engine's own screen its sample's overview by @mmockett in https://github.com/etcetc000/open-xy/pull/182
- Let a page-2 sample engine draw its own screen and page its controls by @mmockett in https://github.com/etcetc000/open-xy/pull/181
- Publish Grains at OP-XY Grains v1.1.0 by @mmockett in https://github.com/etcetc000/open-xy/pull/323
- Add per-key synthesis drum kits to SDK 1.3 by @etcetc000 in https://github.com/etcetc000/open-xy/pull/121
- Drum benchmark: the ceiling's voices each get their own key by @mmockett in https://github.com/etcetc000/open-xy/pull/326
- Drum kits: reading a key's controls no longer divides; the benchmark plays saved keys by @mmockett in https://github.com/etcetc000/open-xy/pull/329
- Add MD KIT at OP-XY MNMD v1.2.1 by @mmockett in https://github.com/etcetc000/open-xy/pull/327
- MD KIT: TRX-SD's pitch reaches further, OP-XY MNMD v1.2.2 by @mmockett in https://github.com/etcetc000/open-xy/pull/330
- Add presets to native builds, matching the browser kit by @sebastienbarre in https://github.com/etcetc000/open-xy/pull/254
- Add --overwrite to commands that take --out by @sebastienbarre in https://github.com/etcetc000/open-xy/pull/333
- device push: support macOS and Linux by @sebastienbarre in https://github.com/etcetc000/open-xy/pull/338
- Catalog: lighter mmvo6, mmstat, mmdyn, mmpar and mmnois, OP-XY MNMD v1.2.3 by @mmockett in https://github.com/etcetc000/open-xy/pull/331
- Catalog: lighter Drop, Coin, Fermi, Butterfly, Cocoa and Bloom by @mmockett in https://github.com/etcetc000/open-xy/pull/340
- Add optional grayscale machine graphics to Extensions by @Hecedu in https://github.com/etcetc000/open-xy/pull/206
- Catalog: publish Grainfield 1.2, Wander, Halcyon Keys, Halcyon Wander by @colorsinspace1 in https://github.com/etcetc000/open-xy/pull/322
- Aux track machines and track control (core split of #343) by @etcetc000 in https://github.com/etcetc000/open-xy/pull/360
- Snapshots with an SDK menu, and track control without capture or marks (alternative to #198) by @etcetc000 in https://github.com/etcetc000/open-xy/pull/343
- Publish Ghost and Recur at OP-XY Nonagon v0.7.0 by @mmockett in https://github.com/etcetc000/open-xy/pull/362
- Catalog: Mach's new screen at OP-XY Nonagon v0.7.2, cpu-carried by @mmockett in https://github.com/etcetc000/open-xy/pull/363
- Catalog: Omnifilter at OP-XY ModFX v1.9.0, as a draft by @mmockett in https://github.com/etcetc000/open-xy/pull/366
- Catalog: Acid Rain (acidrain) v1.0.0, draft by @frankoooooooo in https://github.com/etcetc000/open-xy/pull/368
- Release check: number the native selection with its layout; zero every absent number by @etcetc000 in https://github.com/etcetc000/open-xy/pull/364
- Aux LFO telemetry: a 32-bit product, so aux machines build on macOS and Linux by @mmockett in https://github.com/etcetc000/open-xy/pull/365
- Catalog: publish Chords at open-xy-core-machines v1.9.0 by @etcetc000 in https://github.com/etcetc000/open-xy/pull/372
- Catalog: Moth at OP-XY Hexagon v1.6.0, its init sound Porchlight by @mmockett in https://github.com/etcetc000/open-xy/pull/373
- Let the dev server serve the init preset template by @carlosedp in https://github.com/etcetc000/open-xy/pull/374
- Find machines in the builder by search, sort, keyword and favorite by @carlosedp in https://github.com/etcetc000/open-xy/pull/375
- sdk: track control notes and encoder ownership by @mmockett in https://github.com/etcetc000/open-xy/pull/346
- Revert "sdk: track control notes and encoder ownership" by @carlosedp in https://github.com/etcetc000/open-xy/pull/377
- Save machine selections as named presets in the builder by @carlosedp in https://github.com/etcetc000/open-xy/pull/376
- Fit the builder's keyword filters to three lines by @carlosedp in https://github.com/etcetc000/open-xy/pull/381
- Make Chords an Open-XY machine by @etcetc000 in https://github.com/etcetc000/open-xy/pull/382
- Catalog: Acid Rain (acidrain) v1.0.1, published by @frankoooooooo in https://github.com/etcetc000/open-xy/pull/370
- Version 0.0.5 by @etcetc000 in https://github.com/etcetc000/open-xy/pull/383
- Merge main into staging: Acid Rain 1.0.1, Halcyon, Wander, Halcyon Keys, Halcyon Wander by @etcetc000 in https://github.com/etcetc000/open-xy/pull/384
- A device checklist for every machine:
sdk.py new --repositorywrites QA.md by @blen2r in https://github.com/etcetc000/open-xy/pull/359 - SDK/master processor interface by @V714 in https://github.com/etcetc000/open-xy/pull/233
- Catalog: Chords v1.9.1 (releases never restrum) by @etcetc000 in https://github.com/etcetc000/open-xy/pull/390
- Release 0.0.5 by @etcetc000 in https://github.com/etcetc000/open-xy/pull/386
New Contributors
- @colorsinspace1 made their first contribution in https://github.com/etcetc000/open-xy/pull/270
- @sebastienbarre made their first contribution in https://github.com/etcetc000/open-xy/pull/254
Full Changelog: https://github.com/etcetc000/open-xy/compare/v0.0.3...v0.0.5
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.1at boot. It targets OP-XY OS 1.2.1, as 0.0.2 did. Keep yourlayout.jsonand 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
.oxyfile 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.hppgives 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
inlinefunctions (COMDAT sections) now link, natively and on open-xy.com. - Extensions live in their own repositories, pinned by
catalog/extensions.jsonlike machines;--extension <folder>adds one tocompile,build,kitandtest. - 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 tomain. - 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
.oxyfile. - 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.
v0.0.2Open-XY 0.0.20 files
What's Changed
- Add sdk.py toolchain fetch and default to the fetched toolchain by @etcetc000 in https://github.com/etcetc000/open-xy/pull/30
- Publish and pin the macOS toolchain download by @etcetc000 in https://github.com/etcetc000/open-xy/pull/31
- Build your own firmware guide by @etcetc000 in https://github.com/etcetc000/open-xy/pull/32
- Fix what blocked fresh-clone firmware builds by @etcetc000 in https://github.com/etcetc000/open-xy/pull/33
- Polish the build-your-own path after the second fresh-clone trials by @etcetc000 in https://github.com/etcetc000/open-xy/pull/34
- Replace Decimate with Ring Mod and correct stock Dry routing by @etcetc000 in https://github.com/etcetc000/open-xy/pull/28
- Rename the Python package opxy_sdk to tooling by @etcetc000 in https://github.com/etcetc000/open-xy/pull/35
- Personal browser kits for your own collection by @etcetc000 in https://github.com/etcetc000/open-xy/pull/36
- Read original OS over WebUSB on Mac by @etcetc000 in https://github.com/etcetc000/open-xy/pull/37
- Use consistent dev menu wording in the patcher by @etcetc000 in https://github.com/etcetc000/open-xy/pull/38
- Presentability pass before going public by @etcetc000 in https://github.com/etcetc000/open-xy/pull/39
- Fix the freeze after reading the OS; give step 1 the guide's layout by @etcetc000 in https://github.com/etcetc000/open-xy/pull/40
- Drum panel reports direction and level; SDK keeps no machine policy by @etcetc000 in https://github.com/etcetc000/open-xy/pull/41
- Move the note-region page decision from assembly into C++ by @etcetc000 in https://github.com/etcetc000/open-xy/pull/42
- Patch and link sample services only when a sample engine is selected by @etcetc000 in https://github.com/etcetc000/open-xy/pull/43
- Simplify patcher setup and recovery and clarify OS loading by @etcetc000 in https://github.com/etcetc000/open-xy/pull/44
- Recognize Windows OP-XY MIDI IN and OUT ports by @etcetc000 in https://github.com/etcetc000/open-xy/pull/45
- Clarify root-folder copying and keep installation reminders yellow by @etcetc000 in https://github.com/etcetc000/open-xy/pull/46
- Make installation reminders more compact by @etcetc000 in https://github.com/etcetc000/open-xy/pull/47
- Grow the module reservation from 512 KiB to 2 MiB by @etcetc000 in https://github.com/etcetc000/open-xy/pull/58
- Give every stock voice index a voice object, whatever the capacity by @etcetc000 in https://github.com/etcetc000/open-xy/pull/69
- Unify displays into one drawing contract by @etcetc000 in https://github.com/etcetc000/open-xy/pull/63
- Build machines from any folder and version the machine contract by @etcetc000 in https://github.com/etcetc000/open-xy/pull/64
- Start machines of each kind and check machine folders anywhere by @etcetc000 in https://github.com/etcetc000/open-xy/pull/65
- Add the catalog: published machines pinned by commit, and reserved identities by @etcetc000 in https://github.com/etcetc000/open-xy/pull/66
- Release the catalog: kit export from pinned machines, then the site by @etcetc000 in https://github.com/etcetc000/open-xy/pull/67
- Show catalog machines' makers and sources in the builder by @etcetc000 in https://github.com/etcetc000/open-xy/pull/68
- Pin Pluck v1.2.0 by @etcetc000 in https://github.com/etcetc000/open-xy/pull/70
- SDK 1.0: per-firmware machine numbers, update safety and display guards by @etcetc000 in https://github.com/etcetc000/open-xy/pull/72
- Fit the machines page to the window; serve kits with fixed numbers by @etcetc000 in https://github.com/etcetc000/open-xy/pull/73
- Condense the machines page by @etcetc000 in https://github.com/etcetc000/open-xy/pull/74
- Keep the screen preview's shape on short windows by @etcetc000 in https://github.com/etcetc000/open-xy/pull/75
- Pin Pluck v1.2.1 by @etcetc000 in https://github.com/etcetc000/open-xy/pull/77
- Estimate each machine's CPU cost in sdk.py test by @etcetc000 in https://github.com/etcetc000/open-xy/pull/76
- Keep the machine preview on one track by @etcetc000 in https://github.com/etcetc000/open-xy/pull/78
- Pin Pluck v1.2.2 by @etcetc000 in https://github.com/etcetc000/open-xy/pull/79
- Play machine previews from a small keyboard by @etcetc000 in https://github.com/etcetc000/open-xy/pull/80
- Keep the stock instrument catalog in the repository by @etcetc000 in https://github.com/etcetc000/open-xy/pull/81
- Publish Karplus and retire Pluck by @etcetc000 in https://github.com/etcetc000/open-xy/pull/82
- Version releases: 0.0.2 in the builder and on the boot screen by @etcetc000 in https://github.com/etcetc000/open-xy/pull/84
- Fix review findings for 0.0.2 by @etcetc000 in https://github.com/etcetc000/open-xy/pull/85
- Fix the release check's boot label comparison by @etcetc000 in https://github.com/etcetc000/open-xy/pull/86
- Open-XY's own catalog machines, and community machines unselected by default by @etcetc000 in https://github.com/etcetc000/open-xy/pull/96
- Add issue templates and describe release tracking by @etcetc000 in https://github.com/etcetc000/open-xy/pull/48
- Publish Drone, Solar and Papa Srapa v1.0.0 by @Gokux in https://github.com/etcetc000/open-xy/pull/94
- Publish Hurdy Gurdy v1.0.0 by SammiBabe666 by @etcetc000 in https://github.com/etcetc000/open-xy/pull/97
- Show community attribution in a compact machine picker by @etcetc000 in https://github.com/etcetc000/open-xy/pull/95
- Make core machine rows brighter than community rows by @etcetc000 in https://github.com/etcetc000/open-xy/pull/99
- Expose held-note and release events to display callbacks by @Hecedu in https://github.com/etcetc000/open-xy/pull/98
- Make the staging contribution workflow prominent by @etcetc000 in https://github.com/etcetc000/open-xy/pull/101
- Release 0.0.2 from staging by @etcetc000 in https://github.com/etcetc000/open-xy/pull/102
- Show whole-number amounts on Karplus, Braids and 2op FM by @etcetc000 in https://github.com/etcetc000/open-xy/pull/104
- Route agents to the right task before SDK instructions by @etcetc000 in https://github.com/etcetc000/open-xy/pull/105
- Refuse fork submissions that change more than the catalog by @etcetc000 in https://github.com/etcetc000/open-xy/pull/106
- Hold Hurdy Gurdy, Drone, Solar and Papa Srapa as drafts by @etcetc000 in https://github.com/etcetc000/open-xy/pull/103
- Show core machines first with badges and direct previews by @etcetc000 in https://github.com/etcetc000/open-xy/pull/100
- SDK 1.1: effects can declare a delay buffer by @etcetc000 in https://github.com/etcetc000/open-xy/pull/90
- Relocate the effect table: 39 effects, none numbered like a stock engine by @etcetc000 in https://github.com/etcetc000/open-xy/pull/108
- Give effects the tempo and stock delay's note-length captions by @etcetc000 in https://github.com/etcetc000/open-xy/pull/109
- Publish Ping Pong v1.1.0, a ping-pong delay with stock delay's controls by @etcetc000 in https://github.com/etcetc000/open-xy/pull/91
- Move Open-XY's machines out of the SDK into open-xy-core-machines by @etcetc000 in https://github.com/etcetc000/open-xy/pull/107
- Publish Karplus and Ping Pong from the core machines repository by @etcetc000 in https://github.com/etcetc000/open-xy/pull/113
- Make per-voice profiling a build option; disable it for site firmware by @etcetc000 in https://github.com/etcetc000/open-xy/pull/117
- Expose all custom instrument parameters as LFO destinations by @etcetc000 in https://github.com/etcetc000/open-xy/pull/116
- Project companions: write song.oxy beside each saved project by @etcetc000 in https://github.com/etcetc000/open-xy/pull/111
- Build firmware on Linux x86_64 by @blen2r in https://github.com/etcetc000/open-xy/pull/115
- Add complete machine onboarding and mandatory hardware CPU reports by @etcetc000 in https://github.com/etcetc000/open-xy/pull/122
- Let a machine ship its own presets by @etcetc000 in https://github.com/etcetc000/open-xy/pull/123
- Let a press switch a synth's whole page, and allow 16 text slots by @etcetc000 in https://github.com/etcetc000/open-xy/pull/125
- Add machine UX conventions by @etcetc000 in https://github.com/etcetc000/open-xy/pull/126
- Make the CPU measurement's report link optional by @etcetc000 in https://github.com/etcetc000/open-xy/pull/128
- Pin Macro Osc v1.2.0 by @etcetc000 in https://github.com/etcetc000/open-xy/pull/127
- Recover stock OS 1.2.0 from an earlier release's open-xy OS by @etcetc000 in https://github.com/etcetc000/open-xy/pull/130
- Align the private browser firmware check with earlier-build recovery by @etcetc000 in https://github.com/etcetc000/open-xy/pull/131
- Check a release's catalog against staging by @etcetc000 in https://github.com/etcetc000/open-xy/pull/135
- Move the SDK to OP-XY OS 1.2.1 by @etcetc000 in https://github.com/etcetc000/open-xy/pull/133
- Pin Karplus v1.3.0 by @etcetc000 in https://github.com/etcetc000/open-xy/pull/136
- Builder: ask for OS 1.2.1 first by @etcetc000 in https://github.com/etcetc000/open-xy/pull/137
- Add Nightdrive 1.0.1 for review by @V714 in https://github.com/etcetc000/open-xy/pull/112
- Keep two tests' paths comparable on Windows runners by @etcetc000 in https://github.com/etcetc000/open-xy/pull/148
- Release 0.0.2 by @etcetc000 in https://github.com/etcetc000/open-xy/pull/134
- Publish oldsun v0.20.0 by @etcetc000 in https://github.com/etcetc000/open-xy/pull/149
- Publish oldsun v0.20.0 on main by @etcetc000 in https://github.com/etcetc000/open-xy/pull/150
- Publish metal v1.0.0 to the catalog by @etcetc000 in https://github.com/etcetc000/open-xy/pull/151
- Publish metal v1.0.0 to the catalog by @etcetc000 in https://github.com/etcetc000/open-xy/pull/154
- Let catalog updates carry their previous CPU measurement by @etcetc000 in https://github.com/etcetc000/open-xy/pull/152
- Pin Old Sun v0.20.1: open-xy.com can build it by @etcetc000 in https://github.com/etcetc000/open-xy/pull/155
- Release: Old Sun v0.20.1 and catalog CPU carry-over by @etcetc000 in https://github.com/etcetc000/open-xy/pull/156
- Require new CPU measurements again, unless a maintainer labels cpu-carried by @etcetc000 in https://github.com/etcetc000/open-xy/pull/157
- Build machines with COMDAT sections on open-xy.com, and bound the release checks by @etcetc000 in https://github.com/etcetc000/open-xy/pull/158
- Release: Old Sun and Metal on open-xy.com by @etcetc000 in https://github.com/etcetc000/open-xy/pull/159
- Let a machine draw over the stock header; previews draw it beneath by @etcetc000 in https://github.com/etcetc000/open-xy/pull/160
- Catalog: Macro Osc v1.4.0 by @etcetc000 in https://github.com/etcetc000/open-xy/pull/161
- Promote staging: machine-drawn header and Macro Osc v1.4.0 by @etcetc000 in https://github.com/etcetc000/open-xy/pull/162
- Publish Hurdy Gurdy v1.3.0 with optimized audio, two-page UI and default preset by @SammiBabe666 in https://github.com/etcetc000/open-xy/pull/147
- Fix native linking of objects with multiple COMDAT groups by @etcetc000 in https://github.com/etcetc000/open-xy/pull/165
- Pin Old Sun v0.20.2: the other page under the header, the tape as a ribbon by @etcetc000 in https://github.com/etcetc000/open-xy/pull/166
- Publish matriXY v1.0.1 in the Community catalog by @frankoooooooo in https://github.com/etcetc000/open-xy/pull/146
- Verify releases once, not again under python -O by @etcetc000 in https://github.com/etcetc000/open-xy/pull/163
- Release: Old Sun v0.20.2, Hurdy Gurdy v1.3.0, matriXY v1.0.1; one-pass verification by @etcetc000 in https://github.com/etcetc000/open-xy/pull/170
- Recover a firmware's machines in one rebuild, at any kit size by @etcetc000 in https://github.com/etcetc000/open-xy/pull/172
- Release: recover firmware machines at any kit size by @etcetc000 in https://github.com/etcetc000/open-xy/pull/173
- Add reusable two-page headers with starters matching the control count by @etcetc000 in https://github.com/etcetc000/open-xy/pull/174
- Warn when a display draws outlines the OP-XY renders as streaks by @etcetc000 in https://github.com/etcetc000/open-xy/pull/167
- Step SDK enums one choice per detent, and show their labels by @blen2r in https://github.com/etcetc000/open-xy/pull/124
- Support fixed 2 MiB browser previews for larger synth banks by @Hecedu in https://github.com/etcetc000/open-xy/pull/138
- Release 0.0.2 by @etcetc000 in https://github.com/etcetc000/open-xy/pull/177
New Contributors
- @Gokux made their first contribution in https://github.com/etcetc000/open-xy/pull/94
- @Hecedu made their first contribution in https://github.com/etcetc000/open-xy/pull/98
- @blen2r made their first contribution in https://github.com/etcetc000/open-xy/pull/115
- @V714 made their first contribution in https://github.com/etcetc000/open-xy/pull/112
- @SammiBabe666 made their first contribution in https://github.com/etcetc000/open-xy/pull/147
- @frankoooooooo made their first contribution in https://github.com/etcetc000/open-xy/pull/146
Full Changelog: https://github.com/etcetc000/open-xy/compare/toolchain-1...v0.0.2
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--compilerand itsbinas--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.