Version log
Header dates are last-updated: site is this website, Host is the native zip. Newest first.
.nih2 is one board format. Save in the live chain, open in Host, or the other way. It is
not a .nih music library. Host uses the same board UI as this site, so the file is not converted.
Live chain
- Static page header badges now show site 13 Sep / Host 13 Sep, matching the live chain (v220 / nihilus-chain-v220). Same .nih2. Host zip stamp stays 0.1.0.
- Jam mutes sit on the You and Them tiles, with a Music only preset that kills feedback. Control Settings gear shows or hides tabs. More is gone; MIDI and Presets are their own tabs. Jam picks its talk input and voice output; Play locks a device jam is using. Jam video popout keeps the opener so tiles appear. Host uses the floating window instead. Same .nih2. Host zip stamp stays 0.1.0.
- Phone remote pairing keeps the computer link through an ICE hiccup. A brief disconnect no longer drops the phone while it is still waiting. Same .nih2. Host zip stamp stays 0.1.0.
- Host board Pop out docks like the site, even when the popout window is late to announce. Copy link still leaves the origin painted. Same .nih2. Host zip stamp stays 0.1.0.
- Control and Pedal side cards keep minimize only. Pop out is gone from that menu. Same .nih2. Host zip stamp stays 0.1.0.
- Board Pop out hides the lane behind a small dragged dock. Copy link clones it and leaves the board painted. Same .nih2. Host zip stamp stays 0.1.0.
- Host boost heat stays tanh, not a rail. Heat 0 is identity. Same .nih2. Host zip stamp stays 0.1.0.
- Host phaser feedback saturates so high regen sings. Mix 0 is dry. Same .nih2. Host zip stamp stays 0.1.0.
- Host crush Rate 1 holds ~96 samples and grabs the pick edge. Mix 0 is dry. Same .nih2. Host zip stamp stays 0.1.0.
- Host ring multiply goes through a 6.3 kHz lid. Mix 0 is dry. Same .nih2. Host zip stamp stays 0.1.0.
- Host sub’s divider takes a soft analog clip. Amount 0 is dry. Same .nih2. Host zip stamp stays 0.1.0.
- Host tremolo’s lamp lags like a photocell. Depth 0 is unity. Same .nih2. Host zip stamp stays 0.1.0.
- Host wah is a saturating bandpass. Auto-wah high Q saturates instead of whistling. Mix 0 is dry. Same .nih2. Host zip stamp stays 0.1.0.
- Host graphic EQ soft-clips a slammed curve. Tone clips a slammed stack. Mix 0 / flat stay guitar. Same .nih2. Host zip stamp stays 0.1.0.
- Host slap reads cubic. Analog delay stays linear. Cab honk is Extreme’s 800 Hz hole plus a Padé speaker. Same .nih2. Host zip stamp stays 0.1.0.
- Host fuzz is Extreme’s rail-plus-splat so noon squares instead of rounding. Mix 0 is dry. Same .nih2. Host zip stamp stays 0.1.0.
- Host delay repeats take a tape clip in the loop. Mix 0 is dry. Same .nih2. Host zip stamp stays 0.1.0.
- Host reverb Size 1 is Extreme’s hall tank: third diffuser, second early tap, Padé on the wet. Mix 0 is dry. Same .nih2. Host zip stamp stays 0.1.0.
- Control and Pedal popouts remount the rack. They no longer move the live sidebar into an empty window or show a stub. Play, Board, Pedal, Tuner, and More stay live on the host tab. Same .nih2. Host zip stamp stays 0.1.0.
- Popouts and the visual board stay in one graph. A leftover lane window no longer hides pedals behind an empty dock. Add on the main board or from a copied surface link shows on the board, not only in Control. Same .nih2. Host zip stamp stays 0.1.0.
- Host flanger is Extreme’s through-zero comb: 9.2 kHz BBD on feedback, tape clip so high regen sings. Mix 0 is dry. Same .nih2. Host zip stamp stays 0.1.0.
- Host chorus is Extreme’s three-tap swirl: bass cut on the wash, Padé on the wet. Mix 0 is dry. Same .nih2. Host zip stamp stays 0.1.0.
- Phone remote expression rides a live overlay. CC 11 and learned maps sweep Host audio. The pedal does not overwrite the board. Same .nih2. Host zip stamp stays 0.1.0.
- Host interface gain takes the analog I/O lid. Gain 1 stays identity. A slammed CPAL tap is not a raw multiply. Same .nih2. Host zip stamp stays 0.1.0.
- Host limiter looks ahead 1.6 ms. Glue’s detector ignores rumble. Ratio 1 stays unity. Same .nih2. Host zip stamp stays 0.1.0.
- Host exciter is Extreme’s one-stage cascade on the pick. 7.8 kHz air lid. Amount 0 is dry. Same .nih2. Host zip stamp stays 0.1.0.
- Host vibrato is Extreme pitch: 6 ms base, Depth swings the tap, Mix 0 is dry. Not a chorus wash. Same .nih2. Host zip stamp stays 0.1.0.
- Host DSP: gate ignores rumble, Input/Output take the analog I/O lid, Gain is the analog trim, filters lid high Q, pan shadows the quiet side. Same .nih2. Host zip stamp stays 0.1.0.
- I/O: Input and Output take a Padé lid when slammed. Guitar and Line under 0 dBFS stay dry. The rewire tap and Guitar/Line/Pad math are unchanged.
- MIDI: CC 11 is expression. It sweeps the selected pedal with no Learn, Extreme heels (wah 300 Hz, delay 20 ms). Learned maps still ride. The pedal does not overwrite the board. Amp and Boost stay off it.
- MIDI: a learned CC or pitch-bend sweeps the saved knob heel-to-toe, like Extreme. Heel is rest. The pedal does not overwrite the board.
- Effects pass: Exciter uses Extreme’s one-stage cascade on the pick, still dry at Amount 0. Gain 1 stays identity; boosts take a Padé lid instead of a raw fader. Drive / Boost tanh / amp IR stay locked.
- Effects pass: Low-pass, high-pass, and scoop are saturating analog filters, not raw browser biquads. Pan 0 stays identity; the quiet side gets a console shadow. The gate’s detector ignores rumble. 12 kHz / 20 Hz / flat scoop still speak.
- Effects pass: Vibrato is Extreme pitch, not a chorus wash. Wah is a saturating bandpass. Comp’s detector ignores rumble. The limiter looks ahead 1.6 ms. Tone clips a slammed stack. Mix 0 / Ratio 1 stay dry / unity.
- Effects pass: Tremolo’s lamp lags like a photocell. Auto-wah high Q saturates instead of whistling. Slap reads cubic. Graphic EQ soft-clips a slammed curve. The cab pedal honk is Extreme’s 800 Hz hole plus a Padé speaker. Mix 0 / Depth 0 stay dry.
- Effects pass: Reverb Size 1 is an Extreme-hall tank with a third diffuser and a second early tap. Flanger feedback is a 9 kHz BBD plus tape clip. Crush Rate 1 holds ~96 samples. Ring multiply goes through a 6.3 kHz lid. Sub’s divider takes a soft analog clip. Mix 0 / Amount 0 stay dry.
- Effects pass: Fuzz uses Extreme’s rail-plus-splat so noon squares instead of rounding. Delay repeats take a tape clip in the loop. Chorus gets a third tap, a bass cut on the swirl, and a little wet saturation. Phaser feedback saturates so high regen sings.
- Phone pedals have their enamel, gloss, and screws back. The flat lite chassis was a wrong guess at the lag and is gone.
- Control tabs fire on pointerdown. Phone no longer calls scrollIntoView (that was ~1s on Board/Pedal/Record). Inactive pages stay stacked with visibility, not a display:none teardown. Stage zoom grabs the finger with touch-action: none.
- Phone Control tabs and sliders follow the finger again. Inactive pages stay mounted with content-visibility instead of a display:none teardown, and a knob tick only repaints that pedal.
- Host that includes this board, when online, reads the zip stamp on nihilus.app and asks you to unzip a newer one. It does not replace itself. Older zips cannot grow that reminder.
- Host, Terms, Guide, Features, and the version log no longer inherit the live-chain 1280 desktop lock. Phones stay at device width on those sheets and when you come back to the board.
- Phone taps and tab switches stay on the UI thread: inactive Control pages are not laid out, pedals keep a normal tap until you actually drag, and Stage zoom no longer reflows the board on every mutation.
- Phone pedals drop enamel / gloss / mix-blend layers. Drive, amp, and worklets are unchanged.
- Drive, amp, and Extreme hard-clip the gained sample, not a soft Padé knee. Noon already squares. Fuzz has a 1 kHz grind and more pre-gain. Boost heat and exciter edge slam harder. Gate, crush, and sub recover faster so chugs stay tight.
- Live Core and Guitar grind ship tighter: faster gate, hotter drive/amp, less sag.
- A live add/remove no longer JSON-clones the board just to validate and compile it. Ready boards stay the same object.
- Host popout knobs hot-patch the detached graph. Topology changes still push the full detached chain; IR writes only when an amp IR changed.
- Board layout, remote canvas positions, and player I/O equality no longer stringify the whole object on every tick.
- Extra-player device assign attaches that pair live. Channel taps reuse the same splitter and gains. p1 on a multi-player board follows the live tap, not a stale patch.
- Build drops leftover stamped worklets so the upload pack stays one version, not every old v176+ file.
- Host knobs send dirty keys in one set_params IPC. Older Host builds fall back to set_param.
- Amp knobs no longer tear down the stereo delay path. Host knobs send only the keys that changed. A live add/remove no longer JSON-clones a single-amp board just to compile it.
- Companion sync skips unchanged ticks and no longer clones the board on every publish. Tuner mute and extra-player taps stay the 177 rules.
- Logic pass: a knob or bypass only hot-patches that pedal. Player rename and I/O device assignment no longer look like a graph rebuild. Extra-player channel changes rewire the tap instead of restarting the engine.
- Duplicate wires are dropped on import so the same edge cannot mix twice. Tuner mute is one store tick, not one per tuner.
- Drop in / take out while live: the graph crossfades instead of a hard cut. No Stop, no Apply, no confirm. Channel taps no longer rebuild DSP.
- If a live swap fails, the old chain keeps playing and the footer says live swap failed.
- PWA: HTML and unhashed JS/CSS are network-first so a new pack is not stuck behind an old shell. Stamped worklets stay cache-first.
- Hidden tab pauses tuner, peak, and meter RAF.
- Phone header hides date chips. Stage/Control are 16px. Live chain HTML starts at device-width.
- Jam fail copy says same Wi-Fi. Extra public STUN. No NIHILUS relay.
- Remote Control header: yellow Remote mode sits on its own row, not on the join text or the Control chip.
- Phone Guide → Back no longer leaves the page pinch-zoomed.
- Host page posts the Windows zip only. macOS and Linux are build from source.
- Start no longer fires a live impulse probe. Footer keeps device output latency only.
- Graph rebuild is transactional: a failed preset no longer leaves a silent chain.
- Jam Host→browser resample keeps phase. Compact WAV downsample is filtered. Stems wait for accept and match take id.
- Header dates say Updated, then site vs Host. Click opens this log. Tagline is live chain · public beta.
- Windows Host download page is a product card, not a legal dump.
- Stage Add menu on phone is a compact chip pop, not full-width slabs.
- Desktop tuner matches Host: chain source, one tap fans to every tuner panel.
- Same
.nih2as Host. Open and save from Board.
Host
- When the board is online, Host reads the zip stamp on nihilus.app. If yours is older it asks you to unzip the new one. It does not replace itself. Unsigned zip: no silent auto-update.
- Same 181 metal pass as the site: harder drive/amp/fuzz rails, hotter boost and exciter, faster gate and sub.
- Popout knobs write into the detached graph. set_param / set_enabled / IR load fan out so a popout does not recompile on every RAF.
- set_params batches a knob write into one IPC. Extra-player device assign does not restart the engine.
- Same 178 pass as the site: Host knobs send only dirty keys. Amp gain no longer rewires delay. Single-amp compile does not clone the board.
- Same logic pass as the site: knobs hot-patch one block, extra-player channels do not restart the engine, cabinet IRs are not re-pushed on every live add/remove.
- Drop in / take out while live: the native graph crossfades for ~18 ms, same as the browser. No Stop, no Apply, no silent hop.
- Channel taps stay a tap change. Knobs still hot-patch. A failed compile keeps the old chain.
- Same NIHILUS board and knobs as the website. Native live engine: Windows ASIO, macOS Core Audio, Linux ALSA.
- FIR oversampling stays on at 48 / 96 / 192 kHz. Padé clipper. Independent convolution hop.
- Delay and slap cubic reads. Crush oversampled quantize. Ring, sub, tremolo, flanger polish.
- Tuner after the input, same guitar as Play. Website Capture stays on nihilus.app.
- Same
.nih2as the live chain. Unsigned public beta. Not touring spec. - macOS: build from source on Apple Silicon. Pack writes Nihilus Host.app. Unsigned. Gatekeeper: right-click Open. Intel Macs are not in that pack path.
- Linux: build from source on x64 ALSA. chmod if needed, keep dist next to the binary. Tray needs GTK at runtime.