From O|D Wiki
< ER-301
Revision as of 04:00, 8 August 2018 by Odevices (talk | contribs) (Delay(s))

Jump to: navigation, search


Reported but not confirmed crashes

  • Crash when quicksaving a CPU-heavy (or memory-heavy?) patch (50+ units).

Confirmed crashes

  • None at the moment


  • Grain Stretch > grain rendering is not respecting slice boundaries.
  • After X hours, sample playback glitches (reported but not confirmed on my end yet but seems to be power supply related).
  • Discontinuous playback when playing unit shares buffer with another recording unit (play/record head leapfrog bug).
  • Occasional buffer over-runs when recording to a class 10 card.
  • Sample Player wave display sometimes does not reflect newly recorded content of a shared buffer. (see Forum: Question about looper/recorders and sample players with shared buffers)
  • Input resampling algorithm has aliasing artifacts.

Cosmetic bugs

  • scope traces draw outside of border
  • frequency display on gate/trig parameters sporadically shows incorrect value
  • short triggers do not show up on the bicolor LEDs (frame rate aliasing)
  • Mono subchains of stereo chains do not show signals on scope if 2nd channel is selected.

Feature Requests

The majority of the requests listed here were compiled from requests made by users over at the forum.
Please do not purchase the ER-301 only because of something(s) on this list because there is a risk that I might not get all of these features implemented in a time-frame that is useful to you. I will work hard (but not to the point where I destroy my health or my love for modular) and hopefully the upcoming SDK will alleviate some of this time risk but it is still a very real possibility that some of the items on this list will never be realized.

In Progress

        _,'|             _.-''``-...___..--';)
       /_ \'.      __..-' ,      ,--...--'''
      <\    .`--'''       `     /'  in-progress
       `-';'               ;   ; ;
 __...--''     ___...--_..'  .;.'
(,__....----'''       (,..--''
  • hold mode
  • scope mode (aka bird's eye view)
  • polyphonic sampler
  • wavetables
  • cherry-picking from list below


                       | \
                       | |
                       | |
  |\                   | |
 /, ~\                / /
X     `-.....-------./ /
 ~-. ~  ~              |  definitely
    \             /    |
     \  /_     ___\   /
     | /\ ~~~~~   \ |
     | | \        || |
     | |\ \       || )
    (_/ (_/      ((_/

Routing Signals

  • see thread.
  • feedback
  • crossfade
  • with custom controls
  • gift local parameters to all units
  • replace global chains with global parameters
  • custom ranges for faders
  • control for stereo audio input
  • control for integers
  • provide custom unit's input as a local source
  • expose internal unit state to (downstream) chains

Custom Units

  • Promote/demote controls on embedded units to the parent custom unit.
  • Hide controls that are used for implementation only. Differentiation between UI and implementation.
  • User-configurable parameter ranges.

Unit Parameters

  • user bookmarking of specific values for quick selection of often used values (via shift+encoder)
  • on the spot adjustment of knob sensitivity
  • on the spot adjustment of parameter ranges
  • parameter recall via stack semantics (push and pop)
  • combine L/R faders and use channel select buttons to determine L vs R vs LR

UI enhancements

  • numeric entry of parameters
  • drag unit to new position (see thread)
  • include user unit presets in the unit choooser in a natural way
  • AIFF support
  • remap Gx and INx when loading a chain preset into a different channel
  • Clearly display buffer/sample assignment in units that have them.
  • Customize unit selection screen via configuration file (see thread)
  • Tween GUI animations against wall clock instead of frame clock
  • Replace/Swap Unit command


  • tuning info
  • adjustable time and amplitude scales

Firmware updating

  • implement restore points (copies of files that were changed by the firmware update)
  • add scripts to be executed before and after the installation


  • shareable packaging
  • extensions: *.cha, *.uni, *.pro
  • list what failed to load (samples, units, slices)
  • Endless quicksaves
  • Quicksave folders


  • Global slicing vs local slicing.
  • many slice files for one audio file
  • many audio files for one slice file
  • learn function for slice selection
  • support for WAV cue chunks (see thread)
  • JSON/XML formatted files
  • vertical zoom

File browser

  • ops: rename, delete, move
  • package preset


  • layering looper (see thread)
  • variable speed recording
  • pedal Looper > double loop length
  • speed control
  • more monitoring options
  • reverse
  • half speed
  • loop volume level
  • option to begin overdubbing immediately after first record pass.


  • looping mode w/ cv-control of loop start(offset) and length
  • multiple sample buffers
  • next slice trigger
  • more slice types (bounce, jump, random)
  • specializations
    • sampled instrument player (i.e. keymapped ADSR samples, sfz files)
    • drum kit player (i.e. multiple one-shots in parallel)
  • Offer to purge unused samples when sample memory is full. (see thread)
  • end of slice trigger (see thread)
  • end of slice fade
  • play to end of sample even in sliced mode (see thread)


  • add/remove channels
  • specialize mixer into 3 types: insertion, layering, song (see forum post)
  • add custom controls

Clocking and Timing

  • snap and recall tempo for Tap Tempo
  • clock multiplier
  • clock divider
  • 1V/oct to period converter
    • workaround: 1V/oct --> Any Oscillator Unit (1V/oct) --> Period-o-meter



  • freeze/reverse via gate input
  • non-pitched delay adjustments
  • CV-able feedback amount
  • alternate pitch-shifter via dual delay-lines and Doppler effect


  • more waveforms
  • sinc-based pulse-trains

Envelope Follower

  • output gain


  • more peaks (or specialized formant filter?)
  • add resonant band pass

Lookup Table (LUT)

  • quantize to user scale
  • wave folding
  • response curves
  • drawable(?)
  • load/save as WAV
  • Window Unit: specialization of LUT for soft selection operations (see post)


  • basically looper optimized for very short loops with pitch/loudness normalization
  • user sets start and stop points in a source sample
  • (user-assisted) pitch normalization of each wavetable/loop
  • (user-assisted) loudness normalization of each wavetable/loop
  • morph between multiple wavetables/loops
  • phase modulation
  • offset modulation

Unit templates

  • user saves the state of a unit as a special preset that will be used whenever instantiating the unit


  • button bounce time
  • default delay max time
  • default fade time
  • flash message time
  • zoom step for wave displays
  • common default parameter values (mixer gain, VCA level, etc.)

Command Bus

  • command messages broadcast or sent to specific units
  • example: clear buffer to all loopers
  • command generation unit that will emit a set of commands when a trigger is received


  |\      _,,,---,,_
  /,`.-'`'    -.  ;-;;,_
 |,4-  ) )-,_..;\ (  `'-'      eventually
'---''(_/--'  `-'\_)

More Units

  • spatialization
  • compressor
  • slow random source
  • bytebeat
  • simple step sequencer
  • digital waveguide synthesis (wind and string models)
  • (experimental) data-driven multitap delay: real-time onset detectors feed clock and feedback amount
  • (experimental) non-linear oscillator (driven oscillations)
  • (experimental) automatic loop/wavetable clustering

UI enhancements

  • undo