Repository navigation
Releases: heavylight-industries/capicola
Release list
Capicola 1.1.0
Three CV inputs instead of one
Trig 1 and Env 1 are now CV inputs out of the box: CV 2 and CV 3, alongside CV In. Every routing knob has two more segments for them. Nothing is lost: Trig 2 and Env 2 now carry the input follower's triggers and envelope by default. Each can be set to any of the four follower signals (input or output triggers, input or output envelope) in the web programmer's Options. Prefer the original layout? Set Trig 1 / Env 1 Jacks to Outputs. The setting is saved with each preset.
Save, load and factory reset from the panel
- B1+B2: save. Saves are now a history. Slot 1 is always your latest save and what the module boots into, and slots 2–16 keep the fifteen before it. Panel saves name themselves Save 1, Save 2, …, so the web programmer shows their order. Saving is just as quick on your 100th save as on your first.
- B2+B3: load. Back to your latest save, without power-cycling.
- B1+B3: factory reset, now for every page at once: one move back to a known starting point. Your saves are never touched, so B2+B3 undoes it.
- All three confirm with three bright white flashes on the buttons.
SHIFT snap
Hold B3 (printed SHIFT) and nudge any knob, on any page, and it snaps to its factory value. Depths go to exactly zero. Nudge back and it returns to where it was. In the programmer, the snap target can instead be your latest save, so every knob toggles between where you are and where you saved: a performance move in its own right.
The routing page shows what's arriving
The selected segment on each routing knob now glows with its source's live level, so you can see at a glance whether an envelope is moving or a CV is patched. The colors have also changed, CCW → CW: orange (input follower), blue (output follower), white (CV In), purple (CV 2), green (CV 3).
Polarity flips that don't retrigger
B2 now slices when you release it. Hold B2 and nudge Pitch or Stretch to flip its direction: the flip no longer snaps the playhead to "now", only modulation from the pot itself counts (CV can't flip it), and the flipped direction is now saved with your preset.
A real manual
The new interactive manual draws the actual faceplate. Pick a page and the knob labels and colors change to match. Click any knob, button or jack for its details, with links between related settings. A Gestures page covers every button move. The web programmer now shows the same text, word for word.
Sound
- Quality reaches further into crunch at its CCW end (ε 0.08, up from 0.03).
- New factory defaults: Stretch 0.9 (about 1.75× slower) and Grain Size 642 keyframes.
Fixes
- A polarity flip wasn't saved: flip Pitch to reverse, save, and it came back forward.
- Loading from the web programmer could be partly undone, or overwritten by the knobs, depending on the page you were on.
Before you update
- Presets from 1.0.0 won't load. The preset format changed, so the module starts at factory settings, and B2+B3 does nothing until you save once. Dial your sound back in and save with B1+B2, or migrate your slots with the programmer's Back up all.
- Trig 1 and Env 1 are now inputs. If you patch them as outputs, set Trig 1 / Env 1 Jacks to Outputs in the programmer first.
- CV In's routing color is now white (it was purple).
- B3 holds: a quick B3 tap still changes pages. Held, it's now SHIFT.
- Save from the panel to keep your history. The programmer's own Save to slot overwrites a slot directly, without moving your previous save into the history.
Full details in CHANGELOG.md.
Capicola 1.0.0
First public release. Earlier version strings (0.3.0 and below) were never
tagged or published.
Added
- Bidirectional stretch. P2 is bipolar: a true freeze at noon, realtime
forward at the CW stop, realtime reverse at CCW. The keyframe grid can now
walk backward through the buffer. - Bidirectional pitch. P1 is grain playback speed, bipolar and linear:
forward above noon, reversed below, up to 2× either way, and a true stop at
noon. Unity sits at ¼ and ¾ with a detent holding each. The programmer shows
the speed directly (e.g.1.25x). - Ping-pong gesture. Hold B2 and P1 or P2 becomes a direction control: the
rate pins where it is and a nudge of the knob flips polarity at that same
rate, instead of dragging it down through the centre and back. A pitch flip
hands off between the two grains over one crossfade, so it never clicks.
Release and
the knob waits behind a catch pip, exactly like a knob after a page switch. A
CV riding the knob nudges it too, so an LFO into P1 ping-pongs on its own. - Buffer-exhaustion handling. Freezing or reversing long enough that the
grid runs out of room behind the writer now re-anchors to the delayed tap over
a full fixed fade. Works on a partially filled ring as well as a lapped one.
Changed
- The save gesture moved to B1+B2 (held 0.33 s), mirroring B1+B3 = reset. B2
alone is the ping-pong gesture, so the two cannot collide — and while B1 is
down, a knob nudge cannot flip a polarity. - Quality (P5) range narrowed to ε 0.03–0.001, from 0.1–0.001. The old CCW
end measured around 2.5 dB reconstruction SNR on speech — past crunchy into
broken — and because the map is linear in ε it consumed half the sweep. The
whole travel is now usable.
Fixed
- Windows only stepped forward. A cursor leaving its keyframe bracket
backward was never noticed, so the window went stale for the rest of the
pass and the read stuck at a clamped endpoint — silently, with no click and no
NaN. Unreachable before bidirectional playback existed; a prerequisite for it. - Crossfades never finished at negative pitch. The splice phase advanced by
increment × pitch, which runs backward when the head does. It now advances
by|pitch|; at exactly zero a fade simply holds until the head moves again.
Notes
- Saved presets from pre-release firmware will not read correctly: P1, P2 and P5
all changed meaning. Hold B1+B3 to reset a page to factory defaults, then
B1+B2 to save.
Install: download capicola.bin, hold B3 through the boot window to enter update mode, then:
dfu-util -a 0 -s 0x90040000:leave -D capicola.bin -d ,0483:df11