Firmware

octodrone

Rising55/100

OCTODRONE - synthé drone organique 8 voix pour M-VAVE FM-1 (firmware foma)

octodrone is custom firmware for the M-VAVE FM-1, by @pjac1810. Open source under GPL-3.0.

forM-VAVE FM-1·by@pjac1810

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

Downloads
0
Stars
0
Fork
1
Commit
1
Last commit
Get the source

No release files yet. Build from source.

GPL-3.0· pjac1810/octodrone·downloads come from the creator’s GitHub releases

1
Commits
0
Releases
1 commit and 0 releases in the last year
Activity · last 12 months

OCTODRONE — synthé drone « organique » pour M-VAVE FM-1

Firmware alternatif qui transforme le FM-1 en synthé drone à 8 voix sur le modèle de la SOMA Laboratory Lyra-8. On y retrouve :

  • 8 voix groupées en 4 paires et 2 quatuors ;
  • des formes d'onde du triangle au carré (SHARP) ;
  • la modulation de fréquence croisée entre paires, avec le commutateur 34>56 qui referme les quatre paires en une seule boucle ;
  • l'HYPER LFO (deux carrés, OR/AND, LINK) ;
  • le TOTAL FEEDBACK ;
  • les enveloppes SLOW/FAST, HOLD et VIBRATO ;
  • le double MOD DELAY à feedback croisé, modulé par lui-même ou par le LFO ;
  • la DISTORTION.

C'est un projet indépendant, sans lien avec SOMA Laboratory ni M-VAVE. Le son est entièrement calculé en entiers.

Il est bâti sur foma (plateforme Felucca), avec installeur web, mode secours et retour au firmware d'origine.

Jouer

Les touches blanches sont les 8 capteurs :

TouchesVoix
F3 G3 A3 B3 C4 D4 E4 F41 à 8
G4 A4 B4 C5 D5 E5 F5 G51 à 8 (une seconde fois)

Une touche noire touche à la fois ses deux voisines blanches. Les touches donnent la hauteur de chaque voix, mais pas la mélodie : chaque voix a son propre réglage TUNE, comme sur l'original. Les touches allumées montrent les voix qui sonnent.

Commande FM-1Fonction
SELECTpaire courante : 1-2, 3-4, 5-6, 7-8
ALGORITHMmodulation de la paire : OFF, FM (par la paire voisine), LFO (ou la sortie, si TOTAL FB est actif)
PRESETSpanneau P1 à P8
HOMEPAIR : TUNE (1re voix), TUNE (2e voix), MOD (profondeur), SHARP (triangle → carré)
ENVQUADS : HOLD 1-4, HOLD 5-8, PITCH 1-4, PITCH 5-8 (transposition du quatuor)
LFOHYPER LFO : FREQ A, FREQ B (0,05 Hz à 400 Hz), MODE OR/AND, LINK (A module B)
FXMOD DELAY : TIME 1, TIME 2 (2 ms à 0,9 s), FB, MIX ; re-presser : DELAY MOD : MOD 1, MOD 2, SOURCE SELF/LFO, SHAPE TRI/SQR
EDITDISTORTION : DRIVE, MIX, SPREAD (lignes de délai à gauche et à droite), TOUCH (vitesse d'ouverture des capteurs)
SELFAST / SLOW pour la paire courante
GLOTOTAL FB : la sortie remplace le LFO comme source de modulation
ARPVIBRATO (chaque voix a le sien)
SEQ34>56 : les quatre paires en une seule boucle FM (1-2 → 3-4 → 5-6 → 7-8 → 1-2)
PLAYLATCH : une touche allume ou éteint son capteur, comme une main posée
RECrelâche tout ce qui est verrouillé
SAVEgarde les 8 panneaux en mémoire flash ; maintenu 2 s, remet le panneau d'usine dans l'emplacement courant
OCT− / OCT+octave de toutes les voix (les deux ensemble : 0)
MASTERvolume
MIDIles notes jouent les capteurs comme le clavier ; CC 123 coupe tout
Audio USBun ordinateur peut jouer dans l'entrée, comme la prise EXT IN, avant le délai et la distorsion

Écran :

  • en haut, l'oscilloscope de la sortie ;
  • au milieu, les 4 paires, avec leur source de modulation (« FM 34 » veut dire modulée par la paire 3-4), S ou F, et la jauge MOD ;
  • en dessous, les 8 capteurs, qui s'illuminent avec le niveau de chaque voix ; le trait orange signale un capteur verrouillé ;
  • puis les 4 boutons rotatifs de la page ;
  • en bas, les commutateurs actifs.

Le TUNE se règle par pas de 5 cents, plus vite si on tourne vite. Les plages sont :

  • voix 1-2 : graves, de C1 à C5 ;
  • voix 3 à 6 : médiums, de C2 à C6 ;
  • voix 7-8 : une octave au-dessus, de C3 à C7.

HOLD maintient le quatuor comme un bourdon à partir d’un tiers de course environ. Les paires en FAST demandent de le pousser plus haut, comme sur l'original.

Panneaux d'usine

N°NomCaractère
1DRONEla mineur ouvert, délai doux
2CATHEDRALré grave tenu par HOLD 1-4, longs délais, vibrato
3SWARMtoutes les paires en FM, boucle 34>56, clusters désaccordés
4APOCALYPSETOTAL FB, LFO en AND, distorsion à fond
5HYPER PULSELFO audio en AND + LINK, ondes carrées
6TAPE BENDSdélais modulés par eux-mêmes (SELF), effets de bande
7BELLSpaires FAST, FM légère, notes aiguës
8INITpoint de départ neutre

Obtenir et installer le firmware

  • GitHub : pousse ce dossier sur la branche main d'un dépôt. Le workflow compile tout.
    • Le .fwsc est dans l'artefact octodrone-fwsc et sur la branche firmware.
    • Avec Settings → Pages → Source : GitHub Actions, l'émulateur et l'installeur sont publiés sur GitHub Pages.
  • Docker Desktop : ./fm1 build ou ./fm1 dev (http://localhost:8000).

L'installation se fait depuis la page Install (Chrome ou Edge, FM-1 branché en USB).

Secours : maintiens OCT− à l'allumage ; l'onglet Rescue remet le firmware M-VAVE V15. Installer un firmware non officiel se fait à tes risques.

Développement

  • src/dsp.c : voix, FM croisée, HYPER LFO, MOD DELAY, distorsion (entiers uniquement)
  • src/main.c : capteurs, pages, écran, LEDs, MIDI, sauvegarde
  • src/presets.c : les 8 panneaux d'usine
  • tests/run.sh : rend les 8 panneaux en WAV, vérifie l'absence d'écrêtage et de composante continue, puis fait un fuzz de tous les réglages (UBSan)
  • Identité du paquet : FM-1_64 (dans firmware.json)

Licence

GPL-3.0-only. Crédits : LICENSING.md.