Firmware

patricktronics

Hype21/100

Generative Patricktronics layer on the Felucca FM-1 firmware (GPL-3.0 fork)

patricktronics is custom firmware for the M-VAVE FM-1, by @gaumondp. Open source under GPL-3.0, 1 star on GitHub.

forM-VAVE FM-1·by@gaumondp

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

Downloads
0
Star
1
Forks
0
Commits
38
Last commit
Get the source

No release files yet. Build from source.

GPL-3.0· gaumondp/patricktronics·downloads come from the creator’s GitHub releases

37
Commits
0
Releases
37 commits and 0 releases in the last year
Activity · last 12 months

Patricktronics

A generative sound-bed firmware for the M-VAVE FM-1. Patricktronics turns a small, fixed set of notes and one FM timbre into an endless, self-evolving ambient loop — the same sounds, never arranged the same way twice. It is a thin layer built on top of Felucca, reusing its FM engine, sequencer and effects, and adding only what a living Frippertronics loop needs.

Features

  • Locked note palette. Enter up to 5 notes and one FM patch. These never change: the sound stays exactly what you chose.
  • Generative evolution. The arrangement — which note plays, when, at what octave, with what accent, which steps fall silent — mutates on its own over time, driven by a pseudo-random generator. You set how often and how much; the loop does the rest.
  • Non-deterministic by design. The generator is seeded from hardware entropy at every launch, so starting the same configuration twice gives two different renders. A re-seed re-rolls the performance without touching your palette or rules.
  • Ambient effects. Felucca's delay and reverb (HALL / ROOM / SPRING) are at the core of the drone and ambient textures — high delay feedback into HALL is the signature Patricktronics wash.
  • 16 configurations. Store 16 compact rule-sets {palette, rules, effects} and recall them. The seed is never stored, so a recalled configuration is always a fresh performance.
  • Non-destructive install. Patricktronics never writes over your existing Felucca projects, samples or presets. Switch to it today, switch back to stock Felucca tomorrow — your data is untouched.

Why

I am a guitar player. I built Patricktronics to have a generative sound bed to improvise over: a texture that keeps moving on its own, out of a small set of notes I choose, so I can pick up the guitar and play against something alive rather than a static backing track. The FM-1 is cheap, pocket-sized and battery-powered, which makes it the right box for that — a self-playing ambient machine you can take anywhere.

What Frippertronics was

Frippertronics is a tape-loop technique developed by guitarist Robert Fripp with Brian Eno in the 1970s. Two reel-to-reel tape machines were set up side by side: a phrase played into the first was carried on the tape to the second and fed back into the first, so each new phrase layered onto the slowly decaying echo of everything played before. The result was a dense, evolving ambient texture that the guitarist improvised over, live — the record (No Pussyfooting) and Fripp's Let the Power Fall (its piece 1987) are the touchstones.

Patricktronics is that idea rebuilt without tape: a short musical material that loops, layers and decays, mutating as it goes, for a guitarist to play over.

Install

In Chrome or Edge, connect the FM-1 by USB and install Patricktronics from the FM-1 Firmware Hub, or run python3 tools/fm1_install.py build/patricktronics.fwsc from a terminal.

Back to stock any time. Install the official M-VAVE FM-1 V15 from the hub, or hold OCT− while powering on for USB rescue. If the device will not start, FM-1 Transporter recovers it. Installing firmware is at your own risk; your Felucca data is preserved either way.

Build from source

Development environment

NeedHow
JieLi toolchaintools/get_toolchain.sh (clang for pi32v2 → ~/.jieli/toolchain)
JieLi AC79 SDKgit clone --depth 1 --branch AC79NN_SDK_V1.2.1_2023-12-13 https://gitee.com/Jieli-Tech/fw-AC79_AIoT_SDK.git ~/fw-AC79_AIoT_SDK
macOS buildDocker Desktop — the Linux x86-64 toolchain runs in a linux/amd64 container (Rosetta). Linux x86-64 runs it natively.
PythonPython 3 with Pillow and fonttools (UI assets are rasterised at build)
Host testsa C compiler on the dev machine; Node.js and Emscripten optional for the browser emulator

Commands

./build.sh                 # -> build/patricktronics.fwsc
tests/run_tests.sh         # host tests (no FM-1 needed)

The Patricktronics host tests (tests/ptrx_*) cover the PRNG stream, the palette-bounded mutation, the mutation timer, the non-destructive config store and the mutation cost guard — all runnable without a device.

License

GPL-3.0-only, as Felucca and the FM-1 firmware family. Patricktronics is a fork of Felucca by Leo Kuroshita (Hügelton Instruments); its platform descends from Felucca and SLOOP. M-VAVE and FM-1 are trademarks of their respective owners; this project is not affiliated with or endorsed by them.