No description
The three top-level orienting docs are each falsified by several of the eight preceding commits, so they land here as one sync rather than being split across commits that would each leave them half-true. Same phase, same push. MAP.md — removed fixed_buffer.hpp, voice_space.hpp, the src/daisysp entry and its symlink from the sketch-tree list, input_router.hpp/wire_inputs (inputs are wired by bind_peripherals now), test_fixed_buffer.cpp, SplitStage/ReadoutStrip/ InputMini, BackendAdvanced.tsx, and feedback/rng.ts; corrected the primitives count 12 -> 7; replaced the "engine LIFTED from playground/src" provenance; rewrote the perf-attribute convention and deleted the NISPS_AUDIO_FUNC gotcha (both macros and gotcha are gone). docs/AGENT-REFERENCE.md — the memory-section-attribute instruction now names only the macros that exist; input_router.hpp dropped from the firmware tree; symlink list and the submodule-init note no longer mention daisysp. ALIGNMENT.md — defect 5 (dead mass and registry sprawl) rewritten: the deletion half is done, so the entry now scopes to what actually remains, which is the registry/dual-truth half (Phase 3) plus the stale specs (docs pass). Per the ALIGNMENT convention this is a rewrite-to-current, not a checkbox. |
||
|---|---|---|
| .github/workflows | ||
| .vscode | ||
| assets/media | ||
| codegen | ||
| docs | ||
| firmware | ||
| manifold | ||
| nisps | ||
| schemas | ||
| scripts | ||
| src | ||
| tests/cpp | ||
| vcv | ||
| .envrc | ||
| .gitignore | ||
| .gitmodules | ||
| AGENTS.md | ||
| ALIGNMENT.md | ||
| CLAUDE.md | ||
| LICENSE | ||
| MAP.md | ||
| README.md | ||
| synth-midi-cc.json | ||
Neural Interactive Shaping of Parameter Spaces
https://musicallyembodiedml.github.io/memlnaut/approaches/nisps
Firmware
The hardware firmware targets the MEMLNaut RP2350 build and uses repo-local helper scripts for the known-good build configuration:
git submodule update --init --recursive
scripts/build-firmware.sh
scripts/flash-firmware.sh
scripts/build-and-flash-firmware.sh
Notes:
- The scripts build for
rp2040:rp2040:solderparty_rp2350_stamp_xlwithOptimize3. - The build forces C++20 because the firmware uses
std::spanand concepts. build-firmware.shaccepts an optional variant name such asMEMLCeliumorBreakOr. Matching remains case-insensitive, somemlceliumstill works. If you omit it in an interactive shell, the script parsesMEMLNaut-NISPS.ino, prompts for a variant, and rewrites the activeMEMLNAUT_MODE_TYPEbefore building.flash-firmware.shaccepts an optional mountpoint argument, or auto-detects common UF2 bootloader mounts such as/run/media/$USER/RP2350and/run/media/$USER/RPI-RP2.
Manifold (browser app)
Try NISPS in your browser — no hardware required. Manifold is the React front-end running the same C++ engines + ML as the firmware, compiled to WASM:
cd manifold
bun install
bun run dev
Staging deployment: https://meml.lnfinitemonkeys.org/next/
Train a neural network to map input gestures to synth parameters through interactive machine learning: place examples, or use verdict-based feedback (explore-and-place, geometric dislike).
(The former SolidJS playground was retired in July 2026 — archived on branch
archive/playground-solidjs, tag playground-solidjs-final.)