Repository navigation
Releases: MarkWestbroek/MusicBrain
Release list
Firmware 0.5.113
Firmware 0.5.113 voor de MusicBrain (Teensy 4.1 met PSRAM).
Flashen: installeer Teensy Loader, open mmb-fw-0.5.113.hex, druk op het knopje op de Teensy.
Of: editor.musicbrain.nl → Teensy → Firmware.
2026-10-14 — HALL: een grote galm in Lexicon-stijl, vier algoritmes en Freeze (fw 0.5.113)
- Plan plans/hall-reverb.md, besluiten van Mark:
alle vier de algoritmes, Freeze erbij, een aparte module naast REVERB
("deze is zwaarder, dus de keuze is belangrijk"), convolutie daarna. - Nieuwe kern
mmb_dsp/hall.h(eigen code, gepubliceerde technieken):
pre-delay met vroege reflecties (8 aftakkingen per kant, schalen met
Size), vier all-passes (Dattorro-coëfficiënten), een FDN van 8 lijnen met
Householder-menging, per lijn demping in drie banden zodat Decay een
echte RT60 is (0,2–30 s) en Lo × / Hi damp de galmtijd van laag
en hoog zetten; gemoduleerde lijnlengten (Random: een willekeurige
dwaling, de 480L-beweging). Freeze via knop of gate. CV op Size, Decay en
Mix telt op bij de knop. - Module
tp_mmb_hall(14 HP), firmwareHallModule.h(KernelStream; de
buffers, ~180 KB, van de heap en terug bij parkeren), wasm
hall_wasm.cc. Seed "🏛️ STK + HALL" (strijkstok in een zaal van 3,2 s). - Gemeten in de simulator (
wasmHall.test.ts): RT60 per band klopt binnen
25 % voor alle algoritmes, staart boven 1 kHz vlak (< 4 dB pieken), dicht
na 100 ms, L/R gedecorreleerd, Freeze 10 s stabiel. Onder 1 kHz kleuren
kleine ruimtes (Room) meer: kamermodi, zoals een echte kamer. - Teensy: 14,4 % cpu (REVERB 14,9 %). Let op het geheugen: na het
opstarten is ~270 KB heap vrij; HALL (~180 KB) en REVERB (~150 KB) samen
in één patch passen niet.
Firmware 0.5.112
Firmware 0.5.112 voor de MusicBrain (Teensy 4.1 met PSRAM).
Flashen: installeer Teensy Loader, open mmb-fw-0.5.112.hex, druk op het knopje op de Teensy.
Of: editor.musicbrain.nl → Teensy → Firmware.
2026-10-13 — Een gestolen stem slaat weer aan: de wah komt terug met sustain (FW-10, fw 0.5.112)
- Mark: "met sustain is er geen wah meer" (4-stemmige Ladder, simulator).
Zijn toetsenbord houdt bij sustain de noten zelf vast (geen CC 64 in de
opname): tot 12 noten tegelijk, 44 aanslagen terwijl alle 4 stemmen bezet
waren. De MIDI-IN steelt dan een stem, en zette diens gate laag en meteen
weer hoog in dezelfde aanroep. De CV-graaf leest één keer per tik (1 ms) en
zag dus geen nieuwe flank: de filter-envelope (Reset aan) sloeg niet opnieuw
aan. Dat stond al als FW-10 in de backlog, ook op de Teensy. - Nu: na een steal blijft de gate van die stem twee tikken laag
(retrigLow_), en in de mono-stand zonder Legato geeft een nieuwe toets
terwijl de vorige ligt ook een nieuwe aanslag (met Legato niet, zoals
bedoeld). In de core, dus Teensy en simulator gelijk. Test
wasmMidiSteal.test.ts.
Firmware 0.5.111
Firmware 0.5.111 voor de MusicBrain (Teensy 4.1 met PSRAM).
Flashen: installeer Teensy Loader, open mmb-fw-0.5.111.hex, druk op het knopje op de Teensy.
Of: editor.musicbrain.nl → Teensy → Firmware.
2026-10-12 — Elements: paneel zoals het origineel, met alle CV-ingangen (fw 0.5.111)
- Mark: "ik heb het gevoel dat ik in Elements via gemapte CC's meer kon doen
dan nu via de knoppen" en "houd zoveel mogelijk de oorspronkelijke layout
aan, mensen kennen dat; ook de stippellijntjes en de scheiding". - Paneel (34 HP, was 20): exciter links, resonator rechts, met de
scheidingslijn; stippellijnen van Contour naar Bow en Blow, en van Flow,
Mallet, Geometry en Brightness naar hun CV-ingang. Onderaan tien
attenuverters (− +) met hun CV-jacks, links de I/O-kolom met V/Oct, FM,
Gate, Strength, twee keer Ext In (eigen geluid als blaas- of
aanslag-exciter; zat al in de firmware, niet op het paneel) en Out L/R.
PLAY slaat aan zonder gate. Level, Signature, ModFrq en ModOff (niet
op het origineel) klein onderaan rechts. Racks schuiven vanzelf op. - Firmware en simulator: de tien CV-ingangen (Bow/Blow/Strike Timbre,
Flow, Mallet, Damping, Geometry, Position, Brightness, Space): knop +
attenuverter × CV, begrensd zoals het origineel (BINDin
cv_scaler.cc); gedeelde tabelmmb_dsp/elements_cv.h. FM is nu de
attenuverter van de FM-ingang (midden = uit, 1 eenheid = een octaaf bij
open), zoals het origineel; tot nu een vaste verschuiving van ±24 halve
tonen. Geen seed zette FM. De oudeexciter-schakelaar is uit de
simulator (stond niet op het paneel; de firmware accepteert hem nog). - Front in de speelmodus: Elements laat 14 knoppen zien in plaats van 8
(exciters, Contour, Flow, Mallet, Geometry, Brightness, de drie Timbres,
Damping, Position, Space); Flow en Mallet groot, de rest klein, zodat het
op een telefoon past (vier kolommen). Nieuw:FRONT_SIZESin
frontControls.ts; alleen types met zo'n regel mogen meer dan 8 knoppen.
Eigen fronts blijven zoals ze zijn. - Paneeltekening: lijnen kunnen gestippeld (
dash), een knop kan een
ander gedrukt label hebben dan zijn naam (panelLabel). - Contract: de handmatige uitzonderingen voor VCA (Gain/Resp) en VCO (FM)
weg, die werken sinds 0.5.108/0.5.109. - Helpregels voor Elements (NL/EN); test
wasmElementsCv.test.ts.
Firmware 0.5.110
Firmware 0.5.110 voor de MusicBrain (Teensy 4.1 met PSRAM).
Flashen: installeer Teensy Loader, open mmb-fw-0.5.110.hex, druk op het knopje op de Teensy.
Of: editor.musicbrain.nl → Teensy → Firmware.
2026-10-12 — "+"-ingangen tellen bij de knop op (fw 0.5.110)
- Laatste punt van FW-MOD-1. Bij BBD chorus, digital echo, shimmer, reverb,
stereo phaser, Clouds, Rings en Plaits verving een kabel op een
"+"-ingang de knop (en las hij de CV in de eenheid van de knop: Hz,
seconden). Nu telt hij op, zoals het "+" en de originelen van Mutable
Instruments zeggen: waarde = knop + CV × het bereik van de knop,
begrensd. Een LFO van ±1 zwaait dus over het hele bereik, een envelope van
0..1 telt erbij op. Clouds Pitch: knop + CV in V/Oct (×12 halve tonen). - Firmware:
KnobCvinAudioModule.h; wasm:mmb_knob_cvin
mmb_abi.h. Zonder kabel geldt de knop (de CV-graaf schrijft 0 bij
loskoppelen). - Bestaande patches: met een kabel op zo'n ingang verandert de klank,
want de knop telt nu mee. De drie seeds met Tides op Clouds Position en
Texture hebben die knoppen op 0 gekregen: precies als voorheen. Eigen
patches met een CV op deze ingangen: de knop terugdraaien naar het
minimum geeft het oude gedrag. - Test
wasmKnobCv.test.ts; sitepagina's en poortuitleg van de acht
modules bij.
Firmware 0.5.109
Firmware 0.5.109 voor de MusicBrain (Teensy 4.1 met PSRAM).
Flashen: installeer Teensy Loader, open mmb-fw-0.5.109.hex, druk op het knopje op de Teensy.
Of: editor.musicbrain.nl → Teensy → Firmware.
2026-10-12 — VCO-FM, LFO-Gate en Stages-Rate werken (fw 0.5.109)
- Vervolg op FW-MOD-1 (knoppen die niet deden wat het paneel zegt).
- VCO: FM × de FM-knop telt octaven bij de toonhoogte op (1 kHz-CV:
vibrato en sweeps; audio-FM blijft de FM-VCO). De Sync-ingang is weg:
AudioSynthWaveformkan zijn fase niet van buiten terugzetten, en een
reset op 1 kHz is geen hard sync. Geen seed gebruikte FM of Sync. - LFO: de Gate-ingang staat op het paneel (firmware had hem al), dus
Run = Gated (loopt alleen zolang hoog) en OneShot (één ronde per flank)
doen nu iets; ook in de simulator. Het recept (addModulation) blijft
een LFO als één globale modulator plaatsen, ondanks de gate-ingang. - Stages: de typeschakelaar heette R/H/S/A, de firmware doet ramp,
step, hold, alt: nu R/S/H/A (geen seed gebruikte H of S). Rate
(0,05–20×) schaalt alle tijden: zoveel generatorstappen per 1 kHz-tik. Bij
Rate 1 precies als voorheen. - Test
wasmModFixes.test.ts; sitepagina's van VCO, LFO en Stages bij.
Firmware 0.5.108
Firmware 0.5.108 voor de MusicBrain (Teensy 4.1 met PSRAM).
Flashen: installeer Teensy Loader, open mmb-fw-0.5.108.hex, druk op het knopje op de Teensy.
Of: editor.musicbrain.nl → Teensy → Firmware.
2026-10-12 — VCA: Gain en Resp werken (fw 0.5.108)
- Gevonden bij het schrijven van de modulepagina's (FW-MOD-1): de VCA sloeg
Gain en Resp op maar gebruikte ze niet, op de Teensy én in de simulator;
alleen de CV zette het niveau. De uitleg in de editor beloofde "een
envelope telt erbij op". Mark: "maak het maar zoals bedoeld". - Nu: niveau = clamp(Gain + CV, 0, 1), daarna de curve. Lin recht
evenredig, Exp exponentieel over 48 dB (halverwege ~−24 dB), zodat een
envelope natuurlijk uitsterft. Bij Gain 0 en Lin (de standaard) precies het
oude gedrag; geen seed zet Gain hoger. - Firmware
VcaModule.h(level()), wasmvca_wasm.cc(zelfde formule,
standaard gain 0), testwasmVca.test.ts; de oude test "dicht wat gain ook
zegt" aangepast. Uitleg inmoduleHelp.ts(ook Resp) en de notes. - Link-commando
{"type":"reboot"}: herstart de Teensy (zoals los en
weer vast, ~4 s). Voortools/teensy-live/module_cpu.py, dat de rekentijd
per module meet: de firmware parkeert modules van een vorige patch
(FW-13), en na twintig modules was het geheugen op (Clouds en de
Elements-reverb kregen hun buffers niet; daarna liep de Teensy vast). Nu
meet elke module op een schone Teensy.
Firmware 0.5.107
Firmware 0.5.107 voor de MusicBrain (Teensy 4.1 met PSRAM).
Flashen: installeer Teensy Loader, open mmb-fw-0.5.107.hex, druk op het knopje op de Teensy.
Of: editor.musicbrain.nl → Teensy → Firmware.
2026-10-11 — Rekentijd: het oversamplingfilter 3,8× sneller; Tube werkt weer op de Teensy (fw 0.5.107)
- Mark: "de ladder ×4 kraakte op de Teensy." Zijn opname had 27 gaten van
8,6 ms: de Teensy kreeg audioblokken niet op tijd af (patch op 61 % cpu). - Het gedeelde 4×-filter (
oversample.h) kostte 1653 klokcycli per sample
(12 % cpu per stuk); nu 435 (3,2 %): vier parallelle sommen en een
verdubbelde buffer, zelfde taps en zelfde klank. Complex, Drive, Folder,
Ladder en Tube worden allemaal lichter. Marks Ladder ×4: 61 → 37 %. - Tube: één Tube kostte sinds de ADAA van vandaag 139 % en liet de Teensy
vastlopen. Nu: de ADAA in de triodes en de eindtrap is eruit (te duur, weinig
winst), en zonder rechteringang rekent hij één kanaal: 26 %. - Nieuw diagnosecommando
bench(klokcycli per sample van een kern), zie
dsp-check-2026-10.md §7. - Bijgewerkt bij het herbouwen:
tp_mmb_midiin.wasmentp_mmb_tapestrip.wasm
liepen achter op hun bron (o.a. de stemtoon-instelling van 5 oktober).
Firmware 0.5.105
Firmware 0.5.105 voor de MusicBrain (Teensy 4.1 met PSRAM).
Flashen: installeer Teensy Loader, open mmb-fw-0.5.105.hex, druk op het knopje op de Teensy.
Of: editor.musicbrain.nl → Teensy → Firmware.
Firmware 0.5.104
Firmware 0.5.104 voor de MusicBrain (Teensy 4.1 met PSRAM).
Flashen: installeer Teensy Loader, open mmb-fw-0.5.104.hex, druk op het knopje op de Teensy.
Of: editor.musicbrain.nl → Teensy → Firmware.
Firmware 0.5.103
Firmware 0.5.103 voor de MusicBrain (Teensy 4.1 met PSRAM).
Flashen: installeer Teensy Loader, open mmb-fw-0.5.103.hex, druk op het knopje op de Teensy.
Of: editor.musicbrain.nl → Teensy → Firmware.