AMB-1

Manual

AMB-1 turns the M-VAVE FM-1 into a generative ambient machine, inspired by Brian Eno's Music for Airports. It plays itself from the moment it's switched on: breathing voices, soft bells on tape loops of unequal length, a gliding bass and quiet Euclidean percussion, all through a short echo, a long tape loop and a plate reverb. You don't perform it, you tend it: pick a piece and a scale, take notes out, put them back, and let it grow.

The FM-1 (a drawing), running AMB-1, each control labelled
The FM-1 (a drawing), running AMB-1, each control labelled


1Install

Try it first: the AMB-1 emulator runs the same code in the browser, with sound, played with the mouse, a touch screen or the keyboard.

Install: open the web installer in Chrome or Edge, connect the FM-1 with a USB data cable and press Install. Don't unplug it while it's writing; when it finishes, the FM-1 restarts into AMB-1.

Go back: "Back to the stock firmware", at the bottom of the same page, puts M-VAVE's firmware back (download the FM-1 V15 file from the link there, choose it, press the button). M-VAVE's own updater, M-UPGRADE, works too.

Installing other firmware is at your own risk. If the FM-1 ever won't start, see Recovering an FM-1 that won't start.

Install from the command line

Download the firmware file (for example amb-0.9.fwsc) from the releases page, get the AMB-1 source from GitHub, install Python 3 with pip3 install mido python-rtmidi, and run:

python3 tools/fm1_install.py amb-0.9.fwsc

2Getting started

AMB-1 starts playing as soon as it's on. A few minutes with it:

  1. Listen. The first piece, Garden, is playing: D Dorian, pad, bells, bass and a soft pulse. Turn MASTER for the volume.
  2. Try another piece. Turn PRESETS. Each of the eight pieces has its own key, tempo, sounds and amount of movement.
  3. Change the scale. Press a key whose note is lit: it leaves the scale, and nothing plays it any more. Press it again to bring it back. Any key that isn't lit adds its note.
  4. Move on. Press EDIT: the pad moves to the next chord at the start of the next bar.
  5. Freeze. Press REC: the chord holds and the reverb rings on forever, while the bells and pulse go on above it. Press REC again to let it go.
  6. Shape a layer. Each layer has a button: ENV the pad, ARP the bells, LFO the bass, SEQ the pulse, FX the space, HOME the garden as a whole, GLO the setup. KNOB 1–4 set the four values at the bottom of the screen, a layer's level always on KNOB 1. SELECT steps through the pages.
  7. Rest. Press PLAY: the garden stops growing and its sounds fade out slowly. PLAY again and it grows back.

What you change is kept with the piece. AMB-1 saves it by itself while resting, or press SAVE.

Not sure what a button does? Hold it for a second: a card says. Let go and nothing happens.


3Controls

The drawing at the top shows them all; here they are in more detail.

ControlWhat it does
KeysThe scale. Each key adds its note to the scale or takes it out; the keys light up for the notes in it. Every octave of a note is the same key. The root stays, and the scale keeps at least three notes.
PLAYGrow / rest. AMB-1 starts growing by itself when it's switched on. At rest, the sounds fade out slowly and the reverb rings away. Lit green while growing.
RECFreeze: the chord holds and the reverb rings on forever, while the bells and pulse go on dry above it. Press again to thaw. Lit while frozen.
EDITThe next chord, at the start of the next bar (at once while resting).
HOMEThe Garden page: the whole garden.
ENV · ARP · LFO · SEQThe layers' pages: Pad, Bells, Bass, Pulse.
FX · GLOThe Space and Setup pages. The lit button shows the page.
SELECTThe previous or next page. Hold HOME and turn it for the tempo, from any page.
ALGORITHMMode: Ionian, Dorian, Phrygian, Lydian, Mixolydian, Aeolian, pentatonic major and minor. Loads the mode's scale; editing it with the keys makes it Custom.
PRESETSThe piece (see The pieces).
KNOB 1–4The four values on the screen. A few clicks are always single steps; a quick turn speeds up, so half a turn sweeps the range.
OCT− / OCT+The bells' octave, two down to two up, from any page.
MASTERVolume.
SAVESaves all eight pieces. Held for 1.5 s: puts the piece back to its recipe.

Help: hold any button but PLAY for a second and a card says what it does. A key, a knob or another button puts the card away; letting go after it does nothing else.

SAVE's card
SAVE's card

4The screen

The Garden page (HOME)
The Garden page (HOME)
Voices, a piece with only the sung pad and a bass
Voices, a piece with only the sung pad and a bass
Turning Echo time on the Space page
Turning Echo time on the Space page

5The garden

AMB-1 grows four layers from one scale and one chord.

Then the space, after Eno's chain for Discreet Music: a short tape echo, a long tape loop (up to 5.6 seconds, with two heads, each repeat coming back darker and thinner) and a plate reverb. They're most of what you hear. The echo is stereo, and it evolves: with Motion up, its two heads wander across the field, the repeats fall in changing patterns, and now and then the second head slides to another part of the loop, bending the repeats a little as it goes.

Over it all:


6The pieces

PRESETS chooses one of eight pieces. Each is a recipe for the whole garden: the layers, the sounds, tempo, key and mode, how busy it is and how far it moves. Each remembers how you left it. Hold SAVE for 1.5 s to put the piece you're on back to its recipe. Tune, MIDI out and Lights are the same for all.

Piece
GardenD Dorian, 72: everything, gently. Rhodes.
DeparturesC# Ionian, 60: soft, slowed-piano bells an octave down over a quiet Rhodes, as "1/1".
VoicesF Aeolian, 56: only the sung voices on unequal loops and a low bass, as "2/1".
AfternoonG Lydian, 84: a bright Rhodes, busier bells, a light pulse.
Night BusA Aeolian, 96: the pulse forward, metallic bells, short echoes.
ShorelineE pentatonic major, 64: dark, round bells lost in long echoes, as "2/2".
GlassEb pentatonic minor, 76: clangy bells an octave up, dense.
TidesBb Mixolydian, 70: sung voices, the most changeable (Evolve and Motion high).

7The pages

One page a layer, each on its own button, with four values on KNOB 1–4. A layer's level is always KNOB 1. SELECT steps through them in this order.

HOME: Garden

The Garden page
The Garden page

ENV: Pad

The Pad page
The Pad page

ARP: Bells

The Bells page
The Bells page

LFO: Bass

The Bass page
The Bass page

SEQ: Pulse

The Pulse page
The Pulse page

FX: Space

The Space page
The Space page

GLO: Setup

The Setup page
The Setup page

The top right of this page shows how much of the FM-1's time the sound takes (CPU).


8MIDI

MIDI comes in over USB and the TRS jack, and goes out over USB.


9Saving

AMB-1 keeps all eight pieces in the FM-1's memory, each as you left it: the knobs, the scale, the tempo, the pad's colour and the bells' octave, plus Tune, MIDI out and Lights.


10Troubleshooting

Update mode: hold OCT- and OCT+ together for five seconds. A countdown appears; let go before it ends to cancel.

Calibration: if a button or knob does the wrong thing, hold OCT- and OCT+ while you switch the FM-1 on. The screen then asks you to press each button and turn each knob in turn.

After a crash: AMB-1 shows a red CRASH screen and restarts by itself a few seconds later. The next start shows RESTARTED AFTER A CRASH and an address (PC ...) for a moment. If you report the problem, include that address and what you were doing.

Safe mode: if AMB-1 crashes twice in a row while starting, it starts in SAFE MODE instead. There's no sound, but USB works, so the web installer can reach it: reinstall AMB-1, or put the stock firmware back from the same page. Press PLAY to try starting AMB-1 normally again. If even safe mode fails twice, the FM-1 drops into the chip's own update mode, and only the rescue below can reach it.

Recovering an FM-1 that won't start

An FM-1 in the chip's own update mode shows a blank screen, and neither the web installer nor M-VAVE's updater can see it. A script can put M-VAVE's firmware back, on a Mac, with the USB cable you already have.

Open Terminal, paste this line and press Return:

bash -c "$(curl -fsSL https://raw.githubusercontent.com/charlesvestal/fm1-amb/main/tools/fm1_rescue.sh)"
  1. If a window asks to install the command line developer tools, click Install. When it has finished, paste the line again.
  2. If it asks for a password, type your Mac password (nothing shows as you type) and press Return.
  3. When it says it's waiting, plug the FM-1 in and switch it on. The script catches it, checks the chip, saves a backup of the FM-1's memory in the fm1-rescue folder in your home folder, and asks before it writes anything.
  4. Type yes and press Return. Don't unplug anything until it says it's restarting the FM-1. The FM-1 then starts into its original firmware, and you can install AMB-1 again from there.

The script downloads M-VAVE's FM-1 V15 firmware and JieLi's flash loader, and checks both against known fingerprints. It writes only the firmware area of the memory, never the bootloader or the FM-1's own settings, and checks everything it writes. Running it again is always safe. If it fails, copy everything in the Terminal window and open an issue. If the FM-1 never shows up at all, Felucca's FM-1-transporter (a small RP2040 board wired to the USB lines) can still reach it.


11Parameters

The defaults are Garden's; each piece has its own.

PageValueRangeGarden
GardenTempo30–12072
GardenEvolve0–10035
GardenMotion0–10050
GardenDrift20 s – 5:0025 (about 40 s)
PadLevel0–10060
PadSwell0–10060
PadBright0–10040
PadColourRhodes, VoicesRhodes
BellsLevel0–10065
BellsDensity0–100 (0 to 5 notes a loop)40
BellsTone0–10050
BellsOctave−2 – +20
BassLevel0–10045
BassOctave−1 – +10
BassGlide0–100 (20 ms – 1.2 s)20
BassFifth0–10035
PulseLevel0–10040
PulseHits0–10035
PulseSwing50%–75%50%
PulseHats0–10050
SpaceEcho0–10045
SpaceEcho time1/4., 1/2, 1/2., 1 bar, 2 bars, 4 bars1 bar
SpaceReverb0–10065
SpaceSize0–10080
SetupRootC – BD
SetupTune−50 – +50 cents0
SetupMIDI outOff, OnOn
SetupLightsOff, On, KeysOn
ALGORITHMMode8 modes, or CustomDorian

12Credits

AMB-1 is free software under the GNU General Public License, version 3. If you share the firmware, you must also share its source code.

M-VAVE and FM-1 are trademarks of their owners. AMB-1 is not connected with M-VAVE, Brian Eno or Hügelton Instruments.