u/Affectionate_Joke_44

I built a free generative sequencer for the M-VAVE FM-1 (Baud Girl / FM-1+VA firmware) it generates 16 patterns and freezes them straight into the synth's own sequencer

​

Link: https://mene311.github.io/fm1-pulses/ runs in Chrome, phone or desktop, no install, no accounts.

Repo: https://github.com/mene311/fm1-pulses

Firmware heads-up: the freeze path targets the Baud Girl / FM-1+VA firmware — the 0x20 pattern write exists only there; stock firmware has no pattern-write SysEx at all. On other firmware the app still works as a live MIDI broadcaster (play and morph in real time), just not the freeze.

The FM-1 and its pattern format is undocumented. I reverse-engineered the SysEx write against the Virtual-FM-1 emulator's source and built a generative sequencer on top of it. It works like a small Eurorack chain: clock, gate, LFO, quantizer, buffer.

What it does:

A handful of knobs generates a bank of 16 patterns from one seed. Same seed, same bank, every time.

Rhythm: Gate density plus a Euclidean gradient — 0% is a coin flip per step, 100% is even spacing (tresillo at 3 hits over 8 steps, cinquillo, son clave), everything between mixes the two. A rotate knob shifts the pattern.

Pitch: 9 LFO shapes including a Perlin contour, plus a Shape knob that morphs each wave — folds the sine, bends the ramps, narrows the square into a pulse.

Quantizer with 19 scales, a loop region you can see highlighted in the grid, and Deja Vu (how often the loop repeats itself instead of generating new notes).

Press Freeze and the pattern lands in the FM-1's sequencer over Web MIDI.

Every write is confirmed with a read-back, so the app tells you what the device actually stored — including the "sequencer is playing" refusal instead of failing silently.

Stuff I found while reverse-engineering, for the other FM-1 owners:

BPM is device-global. The firmware acknowledges the tempo bytes in a pattern write and then ignores them. The app reads the unit's real BPM and syncs to it, so the knob always shows what the box will play.

Bluetooth MIDI is notes-only on this firmware. SysEx reads get no reply and writes don't land over BLE. The app plays over Bluetooth and freezes over USB.

Also: banks export/import as JSON, the whole bank downloads as .syx for other tools, five browser preview timbres, and the UI themes are sampled from the hardware's actual case colors.

u/Affectionate_Joke_44 — 8 days ago

26 themed DX7 banks for the FM-1, free

I built 26 banks. The FM-1 splits its 128 presets into four banks of 32, so 832 patches total, each file a standard 32-voice DX7 dump.

(You can also mix and match and create your own bank.)

What's in them: synthwave bass and pads, acid, drums, piano and e-piano, organs, clav, strings, brass, woodwinds, bells, choir, guitar, funk bass, chiptune, sci-fi, industrial, orchestral hits.

Repo: https://github.com/mene311/fm1-banks

Gallery (with audio previews in progress): https://mene311.github.io/fm1-banks/

Free, nothing to buy, I'm not selling anything. I bought the synth, wanted the presets sorted, so here's this.

The patches came out of public DX7 collections, so other people wrote them decades ago and I only sorted and reformatted them.

If a bank sounds wrong for what it claims to be, tell me and I'll fix the file.

u/Affectionate_Joke_44 — 16 days ago

Yet Another Memory System for Pi Agent

I built a two-part memory system for pi agent. It's called `dreaming` (write side) and `recalling` (read side).

`dreaming` scans pi agent sessions from both my phone and laptop, extracts meaningful topics, and indexes everything into a shared SQLite database (`memory.db`). It runs incrementally by default or does a full rebuild when needed. It also generates Gemini embeddings for semantic search so queries match even without the exact keywords.

`recalling` is the query side. Before any task, pi runs `recalling "<query>"`. It searches three sources in order:

  1. Local `memory.db` with FTS5 full-text search and a LIKE fallback

  2. Laptop's sessions.db over SSH (9,700+ sessions)

  3. Legacy OpenCode memory on the laptop

`recalling inject <query>` formats results as clean XML blocks ready for injection into agent context without parsing. Blocks: `<related_sessions>`, `<memory_notes>`, `<laptop_sessions>`.

The schema supports persistent memory notes for facts, config, and workarounds. It uses vector embeddings for semantic similarity, deduplication to avoid re-ingesting synced sessions, and degrades gracefully when the laptop is offline.

Stats from my setup:

- ~950 topics indexed across phone, laptop, and legacy sessions

- ~34 pi sessions processed, ~9,400 opencode sessions

- Handles SSH being down gracefully (searches local sources only)

What it solved for me: the agent no longer asks "what was that thing we did with X" every single time. It checks memory first, finds the relevant session or note, and acts on it. The `recalling inject` command runs automatically before task execution so context is populated without manual effort.

Happy to answer questions about the schema or pipeline.

reddit.com
u/Affectionate_Joke_44 — 3 months ago
▲ 62 r/renoise

Building a web app for Renoise theme browsing &amp; creation - Coming soon to renoisethemes.com

Hey Renoise community!

I've been working on a passion project for the last few months: **Renoise Theme Share** - a web app that will let you:

Browse community themes with instant previews

Search & filter by tags (dark/light, neon/pastel, etc.)

See accurate previews of Pattern Editor, Mixer & Waveform

Create your own themes with an interactive palette generator

One-click download of .xrnc files ready to use in Renoise

Like, comment & follow other theme creators

All previews will work in-browser using pixel maps built from the ground up, no Renoise installation needed to see how themes look!

You can check out the **coming soon page now** at: **renoisethemes.com**

The full launch with theme browsing and creation features is coming soon!

Would love your feedback and ideas as we prepare for launch! Drop a comment here or DM me.

P.S. Shoutout to the Renoise tracker - still the best way to make music after all these years.

u/Affectionate_Joke_44 — 5 months ago