Home News

Deluge firmware V4.0.0 informal instructions for beta testers

Euclidean sequence editing

These brief instructions assume the reader is already familiar with Euclidean sequencing. For a more general introduction, many excellent videos can be found online about this very fun and useful sequencing method.

To edit euclidean “parameters” and row length, hold down the audition pad for a row – optionally with shift if you don’t want to sound it live – and then:

  • Number of events – press and turn vertical encoder – (that’s a similar action to note repeat)
  • Length of row – turn <> encoder – (that’s a similar action to clip length edit)
  • Rotate/shift notes on row – press and turn <> encoder – (that’s a similar action to rotate/shift notes in whole clip)

New action for re-ordering rows in a kit clip – the old action for this has been stolen away by “edit number of Euclidean events”, see above, so there’s a new way to do this: hold the audition pad for the row you want to move, additionally hold the audition pad for the row you want to move it to, and then do one push-action on the vertical scroll encoder.

Sequence direction control (reversing etc.)

To edit play-direction, there’s a new shortcut pad to shift+press – the blank one above FM mod 1 destination. Options are FORWard, REVErse, and PINGpong.

This sets the play-direction for the clip, except for kits, where the settings will be for individual rows if “affect entire” is off, or the whole clip if it’s on. If editing for just one row, a fourth option, “NONE” is available, to have the row default to the clip’s setting.

You may also record notes or parameter automation while the play-head is moving in reverse.

Differentiating MIDI input devices

Now, the Deluge will differentiate between MIDI coming from different hosted USB devices, and MIDI into the input DIN port, and from a connected computer which is hosting the Deluge.

Let’s say you have the Deluge hosting say a Keystep via USB (and that’s through a USB hub), and you’ve actually learned all 16 channels from that Keystep to different synths on the Deluge. Well, then you could connect another USB MIDI device to your hub, and learn those 16 MIDI channels to yet another 16 synths on the Deluge. And whatever MIDI device is plugged into the Deluge’s DIN input will have its 16 channels treated as independent yet again.

This applies to MIDI channels controlling synths, and also MIDI notes learned to any other function within the Deluge, including the global MIDI commands like LOOP. It’ll only work with MIDI coming from the same device you learned it from.

If you wish to disable this feature (e.g. if you’re an existing Deluge user and it causes problems in your workflow or setup), there is a setting under MIDI -> DIFF, which you may switch off. MIDI assignments from your existing songs will continue to work with all devices, until you re-learn them, and then it’ll remember that specific device.

There’s a new menu system under (settings menu) -> MIDI -> DEVIces. In here, you’ll see a list of every connected USB MIDI device, by name – e.g. if you’re hosting multiple devices on a USB hub. Or if your Deluge is instead the USB peripheral to a computer, that’ll show up as just “COMPUTER”. And, there’ll also be one more “device” called “DIN”, for the Deluge’s DIN ports.

Navigating into the menu for a specific device allows editing of some device-specific settings relating to new features, described below.

Setting default velocity sensitivity, per MIDI device

The problem which this addresses is that some MPE controllers in particular (I’ve been testing mostly with a Roli Seaboard Blocks) generate a much wider range of velocity values than many other, non-MPE keyboards, leading to needing to turn down the velocity sensitivity (or more specifically, the “depth” by which velocity “modulates” volume) on the Deluge’s synths – otherwise the user will find that a lot of notes played are either much too loud or much too quiet.

However, if the user is playing around and trying different synth presets, they would have to make this change to each preset as they flick through, which is very inconvenient.

So, you can set a default to always be applied here, in the new device-specific menu described above. Go to Settings menu -> MIDI -> DEVIces -> (your device name) -> VELOcity.

MPE and polyphonic aftertouch

These instructions assume you have a basic knowledge of MPE and its “zones” (groups of MIDI channels), and own some sort of MPE controller. If you don’t, this update also introduces support for regular old MIDI polyphonic aftertouch, which you should be able to now just use, record and playback, without having to worry about any of the MPE setup steps below.

Setting up an MPE controller – ideally it’ll send an “MCM”

In the ideal case, your MPE controller/keyboard will send an “MPE configuration message” (MCM) to the Deluge – perhaps when it’s powered on, or when a USB connection is established with the Deluge as the host, e.g. on a USB hub, etc. This message(s), and perhaps even additional pitch bend range messages it might send, would tell the Deluge all about how to interpret the MIDI messages coming in from this controller as MPE. Then you could just “learn” the controller to an instrument on the Deluge as usual.

However, not all devices do send an MCM. E.g. the Roli Seaboard Blocks doesn’t seem to. So, read on.

Setting up an MPE controller – the multi-finger “shortcut” way

Here’s the easiest way to communicate to the Deluge that a number of MIDI channels form an MPE “zone” together, and it’s almost like the normal “learn” action. With one hand, hold down the LEARN button on the Deluge and also hold down an audition pad (for any instrument other than a kit). Now, instead of just pressing one key on your controller like you normally would, press several. Ideally, say, press 5 at the same time with your 5 fingers (you don’t need to press them at the same instant so long as they end up being down simultaneously), then go and press a few more. This should show the Deluge all the MIDI channels which comprise the MPE zone that your controller is sending on. You’re done, and it’s learned. Or if it doesn’t seem to be working right, just try that process again.

Setting up an MPE controller – editing the settings manually

Go into the device-specific menu for your controller. This is described above, but in short, go into (settings menu) -> MIDI -> DEVIces -> (your device name). Then go into MPE -> IN. (Or you’d go OUT to configure an MPE output from the Deluge to that device). And then select whether you want to edit the “LOWEr” or “UPPEr” MPE zone. You can then edit its number of “member channels”, to correspond to how your controller is configured. That’s it, you’re done, and you can “learn” the controller to an instrument on the Deluge as usual.

When device MPE zones have been set up, this data is saved to a new XML file at the root of your SD card – MIDIDevices.xml, so it’ll persist between songs, reboots, etc.

MIDI input device “differentiation” – the “DIFF” menu setting

Most users will probably want this enabled, for the advantages mentioned in previous instructions. However, even with this disabled, you should be able to fairly conveniently make use of MPE without worrying too much about messages arriving in the wrong place, as the Deluge will still differentiate between devices in terms of their set MPE input zones.

An instrument on the Deluge which is “learned” to an MPE zone on a device will (as you’ll probably want) not respond to any MIDI from other devices even when that MIDI’s channel number is within the MPE zone’s member channels. Because the Deluge knows it’s from a different device. And conversely, MPE coming into the Deluge from a “device” for which the Deluge has a correctly configured input MPE zone, will correctly not also arrive at other instruments on the Deluge which are learned to individual MIDI channels whose numbers are within the MPE zone’s member channels.

Using MPE with the Deluge’s synth engine

Those “X” and “Y”, as well as “AFTERTOUCH” modulation sources can now be patched to parameters. A basic patching is set up by default, so you should be able to just start playing. It’s normal for “X” to control pitch bend at the note/finger level, and this is done according to the adjustable bend ranges described elsewhere in these instructions, rather than by X being “patched” to a synth parameter – but you may do that as well or instead if you like, with other parameters.

MPE and kits

You can learn a note/key on an MPE controller (which you’ve already set up) to a row within a kit. The 3 “dimensions” of MPE expression will be recorded to just that row. Rows within kits even have individually settable bend ranges.

Also, now for regular non-MPE MIDI inputs (e.g. a key on your basic MIDI keyboard) learned to a row-within-kit, the pitch bend and aftertouch (either mono or poly) of that controller will get sounded/recorded to that row in the same way.

Rows within kits cannot output MPE – only a MIDI note on a fixed channel, as has long been the case. However, if you’ve recorded any aftertouch/pressure into such a row, this will now be output as polyphonic aftertouch for the row’s output MIDI note.

Editing MPE data on the Deluge

When you drag notes vertically (hold and scroll), the MPE data moves with them. Same for when nudging notes horizontally too.

You can edit the MPE values for an entire note in your sequence by holding that note’s pad on the Deluge, pressing down the same note on your controller, squishing it until you’ve got the MPE “dimensions” where you want them, and then let go – you can in fact release either finger first – the Deluge should make the note in the sequence sound like the one you were just holding down.

This sets the MPE values for the entire duration of that note – they won’t change or modulate during that length. The only way to achieve this is to re-record the part.

Outputting MPE from the Deluge to an MPE-compatible synth

Usage example: you have your MPE controller sending MPE into the Deluge and learned to a MIDI clip, this has its output set to send MPE to your MPE synth, you can hear this MPE passing “thru” as you record a phrase into the MIDI clip from your controller, and then later you can play that MIDI clip back, and it still sends its contents (MPE data) to your MPE synth.

In addition to the 16 MIDI channels being available to send a MIDI clip to, there are now also “LOWEr” and “UPPEr” – referring to MPE zones. So, set your clip to one of these and it will send to any “device” which has an output MPE lower or upper zone configured, respectively.

By default, no such output zones are configured, so the MIDI would go nowhere yet. You need to configure these output zones on whatever device(s) you want to send MPE to. So, similarly to as previously described, select your device in the new (settings menu) -> MIDI -> DEVIces menu, but now select OUT instead of IN, and set up the MPE zone you wish to send on.

Every time you edit such an “output” zone, the Deluge will send an MCM (see above) to that device, describing that zone configuration (for the MPE data that the Deluge will output *to* that device), although probably not all devices will make use of this data. The Deluge will send these MCM message(s) again on each boot-up or when the relevant device is connected.

When the Deluge is set up to output an MPE zone to a “device”, it will no longer send that device any “regular” non-MPE MIDI on channels which overlap that zone, so you don’t need to worry about this.

Improved “mono” expression

This is an improvement in the handling of pitch bend and channel pressure (aka monophonic aftertouch). Now, you can record both of these MIDI features into synth, MIDI and CV clips. And, this data now stays with the clip even when you change presets or switch between clip type (e.g. from MIDI to synth etc.).

Previously, synth clips could only record pitch bend, not channel pressure, and CV clips couldn’t record either.

One note – synth clips which have already had pitch bend recorded with older firmware – this existing data will still work fine, but won’t get the benefit of being able to stay with the clip when the preset / type is changed.

Adjustable bend ranges

The Deluge is no longer stuck with a 1-octave bend range. Now, there’s a global setting under DEFAults -> BEND to set the default bend range. This should default to 12 semitones (1 octave) for all existing users, it will default to the more normal 2 semitones for new users. Anyway, you can go ahead and change it. It shouldn’t affect your existing songs.

That’s just the *default*, though, for new clips and newly plugged in MIDI controllers. Bend range can in fact now be set at the clip level for SYNTH and CV clips. In the clip-level menu, browse to the new BEND submenu, and under that you’ll find options to change the “NORMal” bend range (could also be called “wheel”, or channel-level, or zone-level in MPE terminology), and also to change the “MPE“-level bend range (the one that applies polyphonically to the expression you’re doing separately with each finger in MPE, and this standardly is set to 48).

Your existing songs will still sound exactly the same as they always did – they will load with bend range 12 (and most old songs should have pitch bend data stored an old way that won’t respond to bend range changes anyway).

The Deluge will also now recognize the MIDI RPN message for setting the bend range, per channel or MPE zone, and per MIDI “device” (e.g. if you’re hosting devices via USB). Not sure what controllers actually send this. Where this info does get received by the Deluge, the Deluge will remember it, and will then place that bend range onto any clips which you “learn” to that MIDI controller – so long as that clip didn’t already have any pitch automation (because then if the bend range was changed it’d sound wrong).

Lift, aka note-off velocity

The Deluge will now record, playback, and save and load note-off velocity when it is provided by a MIDI controller. It’s a somewhat rare feature on controllers though.

Improved modulation matrix

This is a bit tricky to explain, but basically the feature where the modulation-depth of a source-param pair (or “patch cable”) can itself be modulated by another modulation source – well previously the Deluge could only handle doing this for *one* such patch-cable per synth. This limitation has now been removed, and you can do it for as many patch-cables as you want, subject to other existing limitations. Another unintended bug/limitation relating to this system, where some obscure modulation combinations which should have been available were not, has also been fixed.

Wavetable synthesis

Wavetables are represented in audio files as a series of single-cycle waveforms, and that series may be interpolated between. On the Deluge, WAVEtable is an oscillator type, and the sounding “position” within that wavetable is a synth parameter which just like the other main synth parameters may be modulated by sources including envelopes and LFOs, and may be “learned” to one of the Deluge’s gold parameter knobs (CUSTOM 2 and 3 by default, see below), or an external MIDI knob.

As of the newest Deluge top panels and shortcut layout (V3.0, early 2019), there are labelled shortcuts for wavetable position of each oscillator. Or if you are using the older layout without these shortcuts labelled, the pads to shift-press are the two above NOISE and OSC SYNC.

You will need to find some of these wavetable files to use – there are various collections available online, for free or to buy. There is also a new section on the Synthstrom forum for users to share wavetables, and some are already there ready to download.

The Deluge supports Wavetables in WAV or AIFF files, with cycle sizes of at least 8 samples, and the cycle size must be a “power of two”, with 2048 being by far the most common. The number of cycles is only limited by the Deluge’s RAM. The files must be mono. Many wavetables found online are identified as “for Serum”, and the Deluge can read these. Such files are in the WAV format, and include a tag named “clm” indicating that the file is a wavetable, and the cycle size.

Creating a wavetable instrument from a file is very similar to creating a sample-based melodic instrument. Press shift+synth to create a new “blank” synth, then use the “browse” shortcut under “SAMPLE 1”. (Though you can also use “SAMPLE 2” – an instrument may have two independent wavetable oscillators, with wave data from two different files, and independent wavetable-position parameters and modulation.)

Select the sole BOT-TOP option, indicating that the loaded file will apply to the entire note range. (Just like with multisamples, you can have separate wavetables for different notes, or ranges of notes. But you can’t mix this and have samples for some ranges and wavetables for others.)

Browse to a wavetable file. Its audible preview will give some hint of wavetable instrument’s sound, though may sound a little strange. For many wavetable files – ones which include the “clm” tag described above – the Deluge will simply recognise that the file is a wavetable, and load it as such, meaning that the wavetable instrument (or rather, its first oscillator) is now all set up. (The Deluge will automatically set the oscillator type to WAVEtable when it imports / sets one up.)

Other audio files might not indicate so clearly that they contain wavetable data. If the oscillator type is already set to WAVEtable, then the Deluge will try to load the file as a wavetable so long as it looks like it “might” be one (e.g. its length if a multiple of 2048 samples), even if it lacks the “clm” tag (cycle size will be guessed as 2048 in all such cases).

Or for even more certainty that the Deluge will load a file as a wavetable (and you may prefer to just adopt this as routine), press and hold the select knob to bring up the context menu, and select WAVE. This will force the Deluge to load the file as a wavetable even if it was not intended as one – unless there is something making it impossible, e.g. if the file is stereo, or its size is out of limits.

But although you can tell the Deluge to load almost any audio file as a wavetable, only audio files which have been specially created to contain evenly spaced single-cycles will in fact sound like a wavetable would be expected to. Loading, say, a recording of a note played on an acoustic instrument or synth will not produce a wavetable with a very similar sound because, among other requirements, the cycles of that original recording’s waveform probably do not align to the default 2048-sample cycle size.

Default gold parameter knob assignments

A wavetable on oscillator 1 will assign its wave-position to CUSTOM 2. And CUSTOM 3 will control the depth with which LFO2 modulates its wave-position.

If you load a wavetable onto oscillator 2, then CUSTOM 3 instead becomes assigned to its wave-position. So if you’ve got wavetables on both oscillators, then CUSTOM 2 and 3 control each of their wave-positions.

Oscillator sync

This creates particularly interesting sounds when used with wavetable. Put your wavetable on oscillator 2, switch osc sync on, and explore the sounds available not only by changing the wavetable-position, but also that oscillator’s pitch (transpose).

Ringmod

Wavetable is fully compatible with ringmod on the Deluge, which multiplies the two oscillators together. You may even put a separate wavetable in each of the two oscillators, with each of their wavetable-positions affecting the resulting sound.

Normally when synth mode is set to ringmod, the file browser can’t be entered (because samples are not supported in ringmod mode) so if you wish to enter the file browser, you must first manually set an oscillator’s type to WAVEtable.

Single-cycle waveforms

The Deluge has always supported the playback of single-cycle waveforms by loading them as samples. But now, a technically superior option is for these to be played as a wavetable, as the wavetable engine is more fit for this purpose: it is more CPU-efficient, and will produce higher quality sound with less aliasing, particularly with high notes. It also allows the use of ringmod and oscillator sync. The wavetable-position parameter is not available when playing single-cycle waveforms, as there are not multiple cycles to interpolate between.

File compatibility note – unlike true multi-cycle wavetables, which are discussed above, the Deluge does not require that single-cycle waveforms have their cycle-size be a power-of-two number. E.g. the Deluge will happily load files which are 600 samples long as a single-cycle waveform, instead of requiring that it be 512, 1024, or 2048, etc.

This new option is now what will be automatically set up anytime you load a sample as a single-cycle waveform – either by the Deluge automatically detecting it as such (by its length being under 20ms), or by the user manually selecting the SINGle-cycle option in the context menu when loading the file. However, if the file can’t be used by the wavetable engine (because it’s stereo or its length is out of bounds), then the older option of the sample engine will be used still.

Existing Deluge songs and instruments will continue to function and sound as they always have, using the sample engine to play single-cycle waveforms.

Preset folder-packaging

If you want to give a preset synth or kit to another Deluge user, and need to give them the audio files as well, it’s easier than before. When importing the preset, you may now simply create a folder “next to” the preset’s XML file, with the same name, and put the audio files in there, unaltered, and the Deluge will find them.

Let’s say you’ve got a kit called BREAKBEAT, contained in a file, breakbeat.xml, and with a number of audio files used. The user importing this kit needs to place the XML file at KITS/breakbeat.xml, and then also create a folder there – KITS/breakbeat/ – and then put each of the associated audio files in that folder – even if they weren’t in the same folder originally.

Unlike with the collect-media feature for exporting songs, there is no feature to save a preset specially for export – you just gather up the audio files (which is usually easier for one instrument than for a whole song), and give them to the user importing the instrument.

And unlike with songs which have been imported using the collect-media feature, if you save an imported preset, or a song containing it, this doesn’t copy the audio files or put them in a new location. They will be referenced in the above-mentioned special folder that they’ve been placed in, even if the preset has been re-saved with a different name or number. This is important to note because you have to make sure you don’t delete or rename that folder if the files have since also been used in other presets or songs.

Folder browsing and creation for songs and presets

The “load” and “save” interfaces for both songs and presets now function more like the sample browser – you may navigate in and out of folders to access and save work.

You may even create folders on the Deluge – in a “save” interface, simply type the name of the folder you wish to create, hold down the save button, and select the CREAte option. You will automatically be taken into the new folder.

You may also create folders and organise your files on your computer.

Dedicated folders named the same as a preset or song and holding its audio files, will not be visible.