Penumbra
Loud93/100Drone Synth Firmware for M-Vave FM-1
Penumbra is custom firmware for the M-VAVE FM-1, by @MadMooneyham. Open source under GPL-3.0, latest release v1.2.1 (November 2026), 1 star on GitHub.
forM-VAVE FM-1·by@MadMooneyham
Unclaimed. Is this yours? Sign in with GitHub as @MadMooneyham to claim it.
penumbra-1.2.1.fwsc· 595 KB
GPL-3.0· MadMooneyham/Penumbra·downloads come from the creator’s GitHub releases
v1.2.1Penumbra 1.2.1Latest1 file
Fixed the newer CPU bug.
v1.2Penumbra 1.21 file
Penumbra 1.2
A space-drone instrument for the M-VAVE FM-1, by Lunar Eclipse Forge. 1.2 opens the stereo field: every part has a place in it and can sway across it, on the tide or at a rate of its own. Penumbra now plays well with a DAW, and each journey has a sound of its own.
Package:
penumbra-1.2.fwsc, identityFM-1_73010200. It carries the update loader: you can always leave Penumbra again, for another firmware or M-VAVE's own. Coming from 1.1 or 1.0: your journey, its loop, your user slots, your sounds and your settings come over, and sound as they did (nothing sways until you ask it to).Play it in the browser first: https://madmooneyham.github.io/Penumbra/emu/ · cheat sheet: https://madmooneyham.github.io/Penumbra/cheatsheet/
New
PAN (SHAPE, after TIDES)
- PAN: K1-K4 put DRONE, VOX, PULSE (with BLOOM) and TEXTURE anywhere from left to right. They glide there, so you can move them while you play. ALGO is RATE: how fast the parts sway, with the tide or on a steady cycle of their own, from 60 seconds down to half a second.
- PAN 2: how far each part sways, from still to all the way out (VOX's echoes follow it half as far). ALGO is OFFSET: every part in sync, or each one following the last, up to mirrored.
- The screen shows each part in its lane, moving as it sways.
With a DAW (USB MIDI; the TRS jack takes MIDI in too)
- A tight clock. Each tick is timed as it arrives, so Penumbra holds the DAW's tempo to about a tenth of a BPM, and the delay's echoes stay put.
- Song position. When the DAW locates or loops, the clock and a playing loop carry on from there.
- CCs both ways. 44 controls: HOME's knobs, the throws, TIDES, DRONE 2, the levels, PAN and the whole FX page. Automate them from the DAW, or record your moves: changing one on the FM-1 sends its CC.
- Notes both ways. The white keys go out as VOX's notes. The black keys go out on the next channel, one note each, and those notes coming in press the keys, so the DAW can play the drone, the kick, BLOOM and VOX's sounds back as you did.
- Program changes both ways: the journey's scenes, the presets, the user journeys.
- SYSTEM: MIDI CHANNEL, MIDI NOTES OUT, MIDI CC OUT. The CC table is in the manual.
Journeys
- Each preset journey has a sound of its own now, as a place to start from: its drone, its tide, its stereo field and how it sways, the drone voices that come and go, and the VOX sound it starts on. ECLIPSE keeps Penumbra's sound as made.
Fixed
- Turning the tempo made a noise. The delay's echo time follows the tempo, and each detent of ALGO bent every echo in it by a few semitones. A new tempo (or delay time) is now taken once you stop turning, the echoes crossfading to it, on pitch. WARP still bends them, as it should.
- Following an external clock, the echoes no longer warble with its small wanderings.
GPL-3.0-only. Built on Felucca (Leo Kuroshita, Hügelton Instruments) and X0X (Charles Vestal); see LICENSING.md.
v1.1Penumbra 1.11 file
Penumbra 1.1 A space-drone instrument for the M-VAVE FM-1, by Lunar Eclipse Forge. 1.1 makes it move: the drone and the space breathe on their own, each scene has a room of its own, the effects have more to play, and the sound itself can be kept, blended and brought back.
Package: penumbra-1.1.fwsc, identity FM-1_73010100. It carries the update loader: you can always leave Penumbra again, for another firmware or M-VAVE's own. Coming from 1.0: your journey, its loop, your user slots and your settings come over (the new settings start as made).
Play it in the browser first: https://madmooneyham.github.io/Penumbra/emu/ · cheat sheet: https://madmooneyham.github.io/Penumbra/cheatsheet/
New Movement
TIDES (the last SHAPE page): one slow swell under everything, 8 seconds to 4 minutes a tide. It opens and closes the drone's filter, breathes the space in and out and brightens VOX, each as far as you set. ALGO sets its shape, from an even sine to a wandering, uneven tide. As made it moves gently, about once every 50 seconds. DRONE 2 (SHAPE): the drone's own movement on the panel at last: RATE, SWEEP, WIDTH and DRIFT. ROOM and HALO (SCENE): each scene's own reverb size and decay, and its shimmer. They glide with PRESET and MORPH, so a journey travels from a small room to a vast hall. Every preset has its own spaces. Effects
FX has four rows. REVERB 2: MOTION, LOW CUT, INTERVAL (the shimmer an octave, a fifth or a twelfth up), LEVEL. DELAY 2: LEVEL, LOW CUT, PING-PONG, and WARP's range. DIP goes both ways (FX held, KNOB 4): left closes a low-pass, right opens a high-pass. WARP (FX held, turn ALGO): the tape delay's time bends, the echoes diving or rising, and springs back. A change of the reverb's size now glides: the room breathes, it never clicks. The sound
A/B (hold ENV): OCT- keeps the sound as A, OCT+ as B, SELECT walks between them, every value gliding. Saved with the journey playing. SOUNDS (LFO, then LFO again): a library of eight sounds apart from the journeys. SAVE stores the sound playing, SEL brings one into any journey, gliding in over two seconds. Playing it
ENV opens the page of what a hold last shaped: hold a drone key and turn, let go, ENV, and you are on DRONE. Every value reads as a percentage (an offset from as made as -/+%), times in seconds. SHAPE has tabs across its top; SEL twice resets each page, the new ones too. The screen reader says the scene line as "scene 1 of 4", and its words are published with the site. Changed under the hood About 2,000 lines X0X and Felucca left behind and Penumbra never used are gone (a compressor, a kick pump, a distortion, a plain delay, two fonts, a site builder, debug tools): the sound was checked sample for sample against 1.0 at every step. The web installer only calls a beta a beta. GPL-3.0-only. Built on Felucca (Leo Kuroshita, Hügelton Instruments) and X0X (Charles Vestal); see LICENSING.md.
v1.0Penumbra 1.01 file
Penumbra 1.0 A space-drone instrument for the M-VAVE FM-1, by Lunar Eclipse Forge. Switch it on and the drone swells in; you play over it, loop it, shape it and move it from place to place.
Package: penumbra-1.0.fwsc, identity FM-1_73010000. It carries the update loader: you can always leave Penumbra again, for another firmware or M-VAVE's own.
What is in it DRONE: five voices on the black keys, held on the scene's pedal. A new scene moves only the notes it must, one voice at a time, sliding slowly. Each voice HELD or SWELL (it comes and goes). VOX: the white keys, a four-voice synth far back in the shimmer. Four sounds on black keys 8-11 (GLASS, REED, HALO, LOW): wave from saw to a narrow pulse, low-pass to band-pass, glide. PULSE: a deep kick tuned to the key (black 6) and BLOOM, a slow swell in the key (black 7). TEXTURE: a bed of space wind. The looper: REC records VOX and PULSE on the clock, in layers; PLAY stops or plays (held: undo, with ALGO: half or double speed). It follows the scene's key and is saved with the journey. Holds: hold a drone key, a VOX sound key, BLOOM's key, FX or a white key and the knobs play that: a voice's sound, throws (shimmer, feedback, freeze, dip), bends and pitch. SAVE in a hold keeps it. FREEZE (ARP): the notes held keep sounding. MORPH (SELECT on HOME): walk to the next scene by hand. SHAPE (ENV): four knobs a page for every voice; SEL twice resets a page, SYSTEM > RESET SOUND all of it. Journeys: six presets of scenes and eight user slots; the one playing, and its loop, survive a power cut. SLEEP: in 20 to 90 minutes it lets everything go, gently. MIDI clock in and out, VOX on a MIDI channel (pitch bend too), USB audio, a screen reader. The whole map of the controls is in the README.
From the betas Journeys, user slots and settings from 0.13 to 0.17 are carried over. The betas' identity was X0X's scheme (FM-1_9...); from 1.0 Penumbra has its own (FM-1_73...).
GPL-3.0-only. Built on Felucca (Leo Kuroshita, Hügelton Instruments) and X0X (Charles Vestal); see LICENSING.md.
