Home | ER-101 | ER-102 | ER-301 | Wiki | Contact

Some new Units to share



Hint: You can connect any Outlet to a ParameterAdapter to get access to it as a Parameter.

The part you can’t easily do is restore the value of the TrackAndHold. However, it makes sense that TrackAndHold should take care of serializing its own internal state properly, so I will fix that in the next release.


Mine dont load, I get the error message. Tried all of the above.


It’s hard to help with such limited information but I would try:


And that helped me. Now it works!
Thank you


OK…I’m breaking down and asking for help. I’ve read this thread through a few times, as well as the “goofing off v0.4” thread, and still cannot get Joes Units to load properly. I’ve tried: formatting my SD card with the 301, installing the most recent zip file files, deleting the error log, changing the folder name in the /libs folder, installing v0.4.08 to v0.4.1 then back again…and still no dice. I’m attaching a screencap of what the folder looks like on my SD card, as well as the error log in hopes that someone can tell me what I’m doing wrong. Thanks!


Sorry you’re having trouble. It should be straightforward. From the screenshot, it looks like something weird is going on with the paths, almost like some of the folder name got changed to sub-folders.

If you’re running > 0.4.05, be sure to grab the version of the units that Brian ported from this post.

Ported to 0.4.05

Extract the zip file. All of the lua files should be in the same folder with no sub-folders. Try creating a folder on the SD card in libs. Just name it something simple like JBU (short for Joe’s Bespoke Units). Copy all the files you extracted from the zip into it. It should just work. Post back if you’re still having problems.


Thanks for the response Joe! I did what you recommended and it worked!..the only thing i did differently was rename the folder to JBU and redownloaded the zip file from the link in your post. Dunno why but that seemed to make a difference. Still running v.0.4.08…Cheers!



Hi Joe,

First post here. Firstly thanks a bunch for these custom units! So cool.

I have a question about the logics, I tried to use it to get a PWM Pulse from a Sawtooth ( true to 1 false to -1 then modulating the threshold ) and the audio drops out/behaves weirdly. Any ideas why? Am I doing something wrong? I’m new to the 301.

Thanks again


Hey @jonjonjon - What are you putting into the B input and what operation are you using?

If you’re looking for a PWM pulse, have you tried the Bespoke Aliasing Pulse unit in this library? It would probably be a much more straightforward way to get that.



I tried a bunch of stuff. Either 0v or -5 into B input using OR seemed to get pretty close.

I wanted to get the pulse to have the same cycle as an input signal, was going to invert and attenuate it some and then mix it back in with the source. Sort of a PWMifier, or a simple waveform animator.


I’ll give it a try and see what happens. I’ve never really tested this kind of use case. There could easily be a bug with it.

Is this something you’v been able to do with another logic module?


After re-reading your first post, you mentioned you were modulating the threshold. This parameter is updated at the frame rate rather than the sample rate which means it is more suitable for low frequency signals like an LFO or envelope. So if you were modulating it with an audio rate signal that may explain why you were getting unexpected audio.


Cool. Let me know what you think if you give it a go, it’s a bit odd like it works fine but then something keeps throwing it off.

I can get something vaguely similar from Cold Mac but it’s not a pulse, just some amount of the top or bottom portion of the wave as set by a voltage. So not really.

I can’t actually think of a module with a threshold value for true/false off the top of my head. Maybe a comparator could do the trick :thinking:

Wasn’t modulating at audio rate, just lfos, slow ones at that.


I tried it out, and you’re right. Something strange is going on with that threshold control.

Aliasing Saw at audio rate into input a.
Nothing into input b.
OR operator.

At that point all is well and the output is a clean square wave that tracks the frequency of the saw input as I’d expect.

As soon as I move the threshold control away from zero, I start to get drop outs. Seems like I can restabilize it at certain values, but I can never again get output at threshold of 0 short of recreating the chain.

When it’s not glitching, modulating threshold changes pulse width as I’d expect.

I’m not sure what’s up with that yet. Will need to review the code. Interesting find. Thanks for trying it out and letting me know.


Nice one. Well, good to know it’s an official mystery for now and not me being a doofus or just bumping up against the limitations of the 301. A lot of the audio rate stuff I’ve been trying has been coming out quite unexpected. Particularly using the sample scanner, which seems so full of potential but half the stuff I try with it… weird.

Cheers Joe :grinning:


These units are amazing! I’ve been using them to slowly build up an ER-301 version of the Buchla Music Easel.
I ran into an issue with the Timed Gates unit that might be user error. I can’t seem to be able to modulate the “coarse” or “fine” parameters no matter what I set the gain setting to on the modulation source.
I’ve attached a couple screen shots that show a modulation input of .5 going into the controls with a gain of 10, and no resulting change to the coarse/fine values.
I’m using the version of the units from Brian’s “Ported to v0.4.05” post.

Please excuse me if I’m overlooking something obvious, I’ve had the module all of two days so far :sweat_smile:



Nope, you aren’t doing anything wrong. Just tested and something is broken there.

I’ll add that to my list. Will be giving this library some love soon.


I know, it’s been a long time coming. Forgive me for that. Here’s the first release of 2019.

The final zip archive for firmware v0.3 stable is included as well. The Timed Gate Unit has been removed from the 0.3 archive since it requires a 0.4x feature to work. Units will no longer be created for 0.3x firmware, or tested on it going forward (though you’re welcome to try them).

For firmware v0.4.05+: Accents 2019-Jan-19.zip (30.2 KB)
For firmware v0.3 stable: Joe-s-Bespoke-ER-301-Units Firmware 0.3 Stable.zip (27.1 KB)

Going forward, library has been renamed from Joe’s Bespoke ER-301 Units to Accents. This should make the Units fit much more nicely on the Insert menu and reduce installation issues. I have moved a few units to better category homes.

I have removed or replaced the word “Bespoke” in all unit names. The original intent here was to distinguish them from any future builtin units that might want that to claim that unit name, but since the library name now precedes the unit name on the insert menu, I feel the “Bespoke” prefix is redundant and causes unnecessary clutter. I am not sure if this will break any downstream custom units or chains. I left the actual file name intact in hopes that it won’t. If it does, i apologize - should be a one time thing.

I have created a new github repo for Accents. If you are updating via git, please repoint. The old repo will no longer be maintained.

Finally, there is a bug fix for the Timed Gate unit. And I have updated Scorpio to work with firmware 0.4x and merged it into this library for easier maintenance. It has been renamed to Scorpio Vocoder for clarity.

FIXED: Timed Gate unit coarse and fine duration parameters were not accepting modulation
JANITORIAL: Libarary renamed from Joe’s Bespoke ER-301 Units to Accents
JANITORIAL: Timed Gate unit moved to Timing category
JANITORIAL: Bespoke BPF renamed to Ladder BPF
JANITORIAL: Bespoke Aliasing Pulse renamed to Aliasing Pulse
JANITORIAL: Bespoke Ensemble renamed to Ensemble
ENHCANCED: Moved unit Scorpio to this library, updated to work with 0.4x firmware, and renamed to Scorpio Vocoder. This unit is a collaboration with @kel

1.0 eta - any idea?
V0.4.x Firmware Workout: Goofing off never felt this hard
Arp/Programming Question

Thanks so mutch for your great work which makes it even more
nice to work with the ER 301! Will try the 0.4 update later when I am with my unit.


Thanks a lot for the update!

Short question: There are still two “Bespoke” units in “Accents”: BespokeAliasingPulse and BespokeBPF. I assume we can’t just rename the files, because they are referenced in init.lua?