1.1.0: Wavetables and sequencer modulation (+ new presets/samples/wavetables)

Hey all :yellow_heart:

I’m very excited to share this new update with you. The big news is that wavetable synthesis has been added to subtractive and quad engine and that you can now assign modulators to sequencer parameters!

To celebrate this big update I’ve asked sounddesign wizard Koarse to spend some time with the PolyPulse. She created 42 hard-hitting samples, 35 haunted presets and 30 crunchy wavetables! In addition, I’ve also tossed in some presets and wavetables of my own. See the instructions below on how to add the new sounds to your PolyPulse!

The first few updates after the PolyPulse started shipping in 2024 were mostly about fixing bugs. Gradually the updates were more focused on adding and enhancing functionality, and in total 12 updates have been released since 2024. New updates have brought features many of you will now consider essential, but I think the core concept and essential functionality of the PolyPulse have been present in the firmware for quite a while now. I’ve decided to call this update 1.1.0 as I feel that calling it 1.0.0 would give the impression that the PolyPulse firmware was ‘in beta’ or ‘unstable’ in the past years.

Now onto something else: I found out that the note loudness calculation was incorrect and was off by a factor of 4. This caused notes with a loudness of -6 to actually play at -24 (because -6 * 4 = -24). When adjusting the note loudness in the note list editor with steps of 1 dB, in reality the note loudness would actually be changed with 4 dB. I’ve fixed that in this update: the note loudness in the note list editor is now the actual loudness at which it plays. When loading projects created with older firmware the note loudness is automatically adjusted so that it matches the actual loudness the notes played at. You’ll see different loudness numbers in the note list editor, but your project should sound the same as in older firmware.

Anyway, there’s a big list of changes/improvements!

Highlights

  • Added wavetable playback:
    • Added wavetable mode to subtractive:
      • Two wavetable oscillators with variable position (WT pos) and pitch (ratio).
      • 1>2 FM sets the frequency modulation amount from wavetable oscillator 1 on wavetable oscillator 2.
      • 1/2 mix sets the balance between the two wavetable oscillators
    • Added wavetable mini engine to quad engine:
      • Wavetable oscillator with variable position (WT pos) and pitch (ratio).
    • Supported wavetable format:
      • Any audio file type supported by the PolyPulse (such as *.wav).
      • Cycle length specified at end of filename: cool-wavetable-WT2048.wav
    • Wavetables are configured from the track settings ([edit]+[track]):
      • wavetable mode sets the interpolation of the wavetable position: switch (no interpolation) or interpolate (uses more CPU).
  • The following sequencer parameters can now be modulated:
    • start
    • length
    • chance
    • seq reset
    • per pulse:
      • start
      • length
      • chance
      • interval
      • offset
      • octave
      • reset
      • note sel
      • time
      • rand time
    • Modulators assigned to sequencer parameters can’t be triggered by all trigger sources. Depending on what parameter is modulated some triggers are locked and set to false in the trigger settings menu.
  • Sequencer parameter start, length and chance can now be set for each pulse individually by enabling start/len per pulse and/or chance per pulse in track settings.
  • Improved audio recording workflow:
    • Added start (track/out) to settings:
      • directly: recording starts directly.
      • after trigger: recording starts at the first trigger of the track(s) that are to be recorded.
    • Added stop (track/out) to settings:
      • manually: recording is not automatically stopped.
      • no signal: recording is stopped when no more audio is present.
      • no signal + no clock: recording is stopped when no more audio is present and the clock is not running.
    • Added start (input): set a threshold the input signal needs to exceed to start recording.
    • Added file rename after recording is stopped. Press [yes] to keep the randomly generated name.
  • Added support for display output to the file manager (requires updating the file manager).
  • New presets, samples and wavetables created by Koarse and Ward Slager (requires uploading separate .zip).

Other changes and bugfixes:

  • Improvements to the note list editor:
    • Adding notes using MIDI, the internal keyboard and note preview can now quickly be enabled/disabled with the numpad.
    • Added visualization of the internal keyboard octave.
    • Added visualization of the black/white keys to the 12 edo tuning.
  • The file browser, note list editor, sample list editor, cue editor and (track) settings can now all be closed by pressing [shift]+[yes].
  • Added 1+2, 3+4, 5+6 and 7+8 to the in x to out chan and in x to chan parameters. Allows mono input signals to be routed to a stereo
  • FX edit menu can now also be opened directly from the sequencer, synthesis or modulator view.
  • Added file manager version selection to [edit]+[settings].
  • When opening a ‘drop down’ selection for a parameter (such as by pressing [edit] on a parameter with text values or when changing the mini engine on quad engine), the current value is pre-selected.
  • When navigating one folder up, the cursor is placed at the folder that was just left.
  • Improvements to file saving
    • When saving projects for all tracks a *.seq and *.inst is now created regardless whether the track is considered ‘empty’ or not.
    • JSON inside project files and presets is now minified to save space.
  • Removed detune parameter from the metal mini engine as it does not have any effect on the sound.
  • Fixed the note loudness (dBFS) being off by a factor of 4.
    • When loading projects created with older firmware the note loudness is automatically adjusted so that it matches the actual loudness the notes play at.
  • Reduced clicks in subtractive when filt freq is very low and filt reso is very high.
  • Fixed a bug where sometimes in granular a grain gets stuck and does not match the loudness and brightness parameter anymore.
  • Fixed inactive channels in stutter being triggered when using triggers from other tracks.
  • Fixed a crash when switching to the envelope/modulator view when no sound engine or modulators are present.
  • Fixed a bug where the cursor would not correctly be moved to the .proj file when opening a project folder.
  • Fixed FM envelope slot names all being “env op 1”.
  • Fixed a bug where after slicing samples or adding samples to a sample list the cursor could not fully scroll down to the end of the list.

Changes and bugfixes to the file manager:

  • Added external display page that mirrors the internal PolyPulse display.
  • Added renaming of files and folders.
  • Added unzipping of *.zip archives.
  • Added file size next to files.
  • Added selection of multiple files/folder at once by holding down shift.

Here is the new firmware (including updated file manager): polypulse-firmware-1.1.0.zip (2.7 MB)

See here how to update your PolyPulse. Note that the file manager only recognizes *.zip files whose name starts with polypulse-firmware- as firmware updates.

After you’ve update the PolyPulse firmware some additional steps need to be taken to update the file manager and add the new content:

  • Updating the new file manager:
    • after restarting the firmware on the PolyPulse it asks to select the new file manager version. Press [yes] to select the new version.
    • reload the file manager in the browser
  • Adding the new presets/samples/wavetables:
    • in the file manager in your browser, press [:house: home]
    • upload this zip with the new samples/sounds/wavetables to your PolyPulse: PolyPulse-wavetable-update-sounds-samples-tables.zip
    • select the zip you just uploaded with the checkbox
    • press unzip to add the samples/sounds/wavetables to the PolyPulse
5 Likes

Wow and I say wow!

Great one.

Thx a lot the update. :+1::+1::+1:

1 Like