Some new Units to share

+1 for the generic categories!

  • though I am also for generic categories, I strongly recommend not to call any of them „audio fx“ or „audio mod sources“. for isn’t the er-301 nothing less than a great bundle of audio- and cv effects and mod sources?
  • imho same goes for time based effects… (thinking of time and frequency domains in sound/music…)
  • @Joe himself stated somewhere that one of the biggest benefits (though also challenges) of dealing with the er-301 is that you (have to) gain a pretty deep understanding of what is actually happening under the hood of every audio gear. Some of us already had the physics straight when they came to 301-land. Others could begin or continue to have a better understanding of physical possibilities as well as constraints. the er-301 as an outstanding educational tool for audio engineering and music was also mentioned somewhere in the forum. from this point of view a rather physical/mathematical categorization would be interesting though it would obviously lead to a whole different set of categories… at some (more stable) point in time an additional and educationally differentiated init.lua with physical/mathematical categories might get interesting. and for those who already
    know the maths of music that would already be useful i think. but for users who have a more “musical approach” to the er-301 (as some of us might call it) the categories Brian had chosen seems almost necessary.
  • So i got one rather serious suggestion:in order to fit into the categories that we have already on board: what do you think about a further category called

“chorus, phaser and flanger”

  • then, i got a rather funny suggestion: what do you think of a new category called

“nauseators”

(i boroughed the concept from this concert. from the introduction to a song that Leo wrote
for his son @Joe. You see Joe, I keep looking for musical references to your name, while “Hey @Joe” would just be too obvious to be mentioned here :wink: )

or is he saying “noiseator”? help me out here.

Nauseator? Noiseator? Tough call. :slight_smile: I’m not really feeling the need for a vanity category here, even a veiled one. Your point about making a category name that is too generic is well taken though, @mopoco !

Thanks for the votes and thoughts everyone. There’s really no precedent here, so just trying to think through it and hopefully set a good one. One of the things I was really trying to think through is whether there is any value in being able to distinguish between a bulitin and bespoke unit from looking at the insert screen. There’s a group of us who use our 301s a lot, and for that group, I think you already know. Then there are newer users,and more occasional users, and for them it may be less obvious. I guess you can always boot it without the SD card if you want to know, and the bespokes will disappear.

At any rate, based on the responses, I think this will be my approach:

  1. Try to map to builtin categories whenever possible*

  2. If there’s really no good match with the builtins, create a new category*

  3. I will try to make a 5 minute Youtube on editing the init.lua file for anyone who wants to move stuff around. It really doesn’t take any coding skills to do this. Anyone who can operate the ER-301 can edit the init.lua file to make the bespoke unit categorization meet their preferences.

(*) These may be subject change since the bulitin categories may also be a moving target.

2 Likes

Would love a youtube on editing .lua files!

2 Likes

I’m all for having them placed into existing (or new) categories based on function.
It seems that a search might eventually be useful, I currently have trouble finding a unit sometimes despite knowing the name. Entering the first few characters of the name for a search seems like it may be faster than scrolling through all of the units. Just a thought.

1 Like

Here are a couple new units to try out. I think Logics has been my most challenging build yet! But I enjoyed making it. I assume these will work fine on firmware 0.3.25 but I have only tested them (lightly) on 0.4.x. Both units can accept CV or audio rate inputs.

2018-Sep-13
NEW UNIT: Logics
NEW UNIT: Maths
JANITORIAL: Moved units from Experimental to appropriate categories.

Logics
Logics
Compares two inputs (a and b) and outputs a user determined value based on the selected logical operation (select from header menu).

AND: Outputs TRUE when both inputs are true, otherwise FALSE
OR: Outputs TRUE when either or both inputs are true, otherwise FALSE
XOR: Outputs TRUE when one but not both inputs are true, otherwise FALSE
NAND: Outputs TRUE when either input is false , otherwise FALSE
NOR: Outputs TRUE when both inputs are false, otherwise FALSE
XNOR: Outputs TRUE when both inputs are the same, otherwise FALSE

threshold: values at or above the threshold are considered TRUE, below FALSE. Threshold applies to both inputs a and b. Modulatable at frame rate
true: value to output when TRUE. Modulatable at sample rate
false: value to output when FALSE. Modulatable at sample rate

Scopeside Chat for Logics Unit

Maths
Compares two inputs (a and b) and outputs a value based on the selected math operation (select from header menu).

MAX: Outputs the maximum value of the two signals
MIN: Outputs the minimum value of the two signals
MEAN: Outputs the mean value of the two signals

Scopeside Chat for Maths Unit

Direct Download: Joe-s-Bespoke-ER-301-Units-13-Sep.zip (106.8 KB)
or
Github: GitHub - SuperNiCd/Joe-s-Bespoke-ER-301-Units: A collection of units for the Orthogonal Devices ER-301 Sound Computer Eurorack Module

18 Likes

Nice work Joe! :heart_eyes_cat:

Just one quick thing that I noticed:

      controls.truth = GainBias {
        button = "true",
        description = "True Output",
        branch = self:getBranch("True"),
        gainbias = objects.truth,
        range = objects.truth, -- requires a MinMax or ParameterAdapter object
        biasMap = Encoder.getMap("default"),
        initialBias = 1.0,
      }

 
      controls.falseth = GainBias {
        button = "false",
        description = "False Output",
        branch = self:getBranch("False"),
        gainbias = objects.falsth,
        range = objects.falsth, -- requires a MinMax or ParameterAdapter object
        biasMap = Encoder.getMap("default"),
        initialBias = 0.0,
      }

This is would be why you are not seeing the post modulation fader rendered next to the bias fader for those controls.

2 Likes

Thanks Brian! :slight_smile:

I hadn’t even noticed that- too involved in making the rest of it work I suppose. I’ll get it fixed up though!

1 Like

@Joe!!! i LOVE you!!! i was asking myself about some logic units just a cpl of days ago and then… boom! this is surely a game changer!
you are not a custom units jukebox i know but can i make a request?
what about some flip flop? the various types? :smiley: :smiley:

2 Likes

Hehe, thanks @hyena, glad you’ll get some use from these. I’ll have to reacquaint myself with flip-flops. It’s been like 25 years since I’ve thought about them. :wink:

1 Like

with custom units we can emulate the “toggle” flip flop triggering a “toggle” custom control. but not the other types i think

Great stuff, thanks!!!

1 Like

Modulating a counter’s step size with pingable random and clocked random, and then using this to drive pitch, easy patterns!

Cheers!

10 Likes

pingable scaled random, what does levels do? I had assumed it was some kind of level quantization but now I dont think it is.

It is output level quantization but you have to activate it in the header menu before the control does anything.

2 Likes

Ahh!

Can you do me favor and post this patch here? I tries fo get this setup working, but seem to fail in so many places. Hopefully analyzing it helps me to learn putting the pieces together…
Thanks!

2018-Sep-15
FIXED: Logics unit, added missing modulation sliders for true and false controls (thanks Brian!)
NEW UNIT: Voltage Bank

Voltage Bank

voltagebank

This unit stores up to 8 voltages in indexed slots. It is essentially a selectable array of sample and holds, or you could think of it as a lookup table. The signal you’ll sample into each slot goes into the front (left) of the unit. Firing trig samples/stores the input voltage into the selected index.

The header menu contains three options to control the output.

input: echos the unit input, so essentially the voltage array is bypassed. However, firing trig will still grab the current voltage into the index. Useful for hearing the result of what will be stored in that index to help you build up the bank.
index: outputs the value stored in the selected index
sum: outputs the value stored in the selected index, summed with the input (useful for transpose, for example)

Direct Download: :Joe-s-Bespoke-ER-301-Units-15-Sep.zip (114.0 KB)
or
Github: GitHub - SuperNiCd/Joe-s-Bespoke-ER-301-Units: A collection of units for the Orthogonal Devices ER-301 Sound Computer Eurorack Module

19 Likes

Great stuff Joe, thanks for your ongoing contributions!

1 Like

@Joe - wow man you’re on bender of awesome!

1 Like