Cracking the Code on Complex Guitar Pedals

Try this.
Master Clock V1.3.audulus (216.2 KB)

1 Like

Works great. Thanks again.

2 Likes


Restabilize.audulus

https://soundcloud.com/futureaztec/restabilize/s-4e2GTYrkNLJ

1 Like

Around the price of the blooper pedal.

Also interesting seeing the programmers responding to feature requests on Kickstarter, tinkering with the DSP.

Cool board/chip choices.

Crystal Semi CODECs, TI OPA-series op amps and WIMA film caps in the output stage are used along with low-noise, dedicated LDO voltage regulators for a clean, full soundstage. Audio conversion uses 48KHz sample rate, 24bit resolution with a line or synth level setting.

I can see a similar setup with Audulus, an ES-8 and the Midi fighter twister.

Blooper live event #4?


Empty Patch 4.audulus (1.2 MB)
https://soundcloud.com/futureaztec/vulnerability/s-3bazH5QlFBT

Like the 808 Kick, Simple Looper and just found dTuner.

3 Likes


2 Loopers Dry with Drummer.audulus (713.4 KB)

Starting simple again. Always reset the loopers with the button above the clock. The clock is set to a 4 beat count in. The first looper will start recording immediately and the second will start recording once the first has played back one time. It is set to produce a loop twice as long as the first. Once they have completed their cycles, you can hit the overdub button to add to the loops.

Everything has been kept dry to just focus on the joy of looping. I will be adding patches later with more complexity. But, wow. Audulus! Sorry ZOIA, sorry Blooper. :grin:. Yes they are hardware and have advantages. But, I find, when we play to the advantages within Audulus, it’s its own complete world — like the original Nintendo games, it just draws me in like the the later video games don’t.

2 Likes

Speaking of loops, I assume everyone knows about the isolation packs from Hainbach and Jamie Lidell, if you’re looking for some material to play with:

https://jamielidell.bandcamp.com/releases

And as far as these lockdown times go, how’s everyone holding out?
Well, I hope!

2 Likes

I have been trying to figure out how to implement the simplest function into @stschoen’s Simple Looper.

I just need a gatekeeper.

Here’s a look at the exterior of the altered module.

Arming simple looper.audulus (465.2 KB)

Because I am hardwiring the master clock onto the simple looper, I want a way to allow/disallow that clock from automatically recording. It’s a very basic function on a syncable looper.

I hope everyone understands why this is vital. For one reason, if you want to have 3 loopers hooked up to one clock and synced, you will want to be able to “arm” the third looper once you have finished recording on the other two. You don’t want them to fire all at once. But you can’t just hit record manually, because it will be out of sync, and you would need to throw down your guitar and hit stop record also. So I need an arming toggle.

Geez :roll_eyes: it’s so simple but I can’t make headway.

I tested several sample and hold modules to see if I could get the gate to be interrupted/let through. These all seem to work fine when using a clock signal. But when I try to insert one of these into the node logic in the Simple Looper it never works out.

Here are the sample and holds:

Sample and Holds Switches Latches Flip-flops Shift Registers.audulus (778.0 KB)

I think that one key element is to focus on the result. So, there is already some mildly complex switching logic in the Simple Looper. Knowing where to interrupt might be the issue.

As I mentioned above, I am not huge on adding something outside the module. Use-wise it gets way too filled with wires and it becomes hard to operate because of touch screen space/zooming etc.

2 Likes

Just to make sure I understand how you want it to work. If I understand you, when it isn’t armed you want to block the rec/dub gate from passing through and when it’s armed you want it to pass. The real question is what to do if the rec/dub gate is high when you hit arm. With a simple switch, it would start recording immediately. If you need it to wait until the gate goes low and then high again that’s a bit more complex. Let me know what you need.

I think that in any of these situations the key is to make the symptom clear, or the goal transparent. If you purchase a hardware looper, even if it doesn’t have a sync input, it will tend to begin the overdub phase right on the first beat; however, the guitarist doesn’t have to try to time the record button. This is working for us because of clock integration, but as one gets further into making music, there are limitations. Typically, with a pedal, you have a few seconds to decide if you want to overdub, where when you hit record, the pedal will then note your intent and automatically start recording when the loop completes the cycle and starts the next phase. Ableton does this. So, although there may be many ways to achieve this, simply keeping the functionality of your design intact, while accommodating an “arm” toggle is the goal. Also, I do like that I can actually overdub and back out anywhere in an established loop, so I think it may be a matter of altering the relationship between the gate input and the REC/DUB signal path.

I think that some of what we are doing here is somewhat simple, but in terms of what is currently available and what will become possible, this is cutting edge — again, even though it isn’t necessarily cutting edge logic or dsp. From my perspective, at this point, it’s all about interfacing, control integration, standardization, and the end user. Audulus was marketed as a diy tool. However, there is so much treasure here that it ought to be known that it is at the leading edge of the music industry. I am sure there are manufacturers that have lurked about here, then taken an idea and put it into production.

So, I think this is the key: The clock is badass. No looping pedal has this advanced clock. So, figuring out the best relationship between the clock and the Simple Looper, so that the guitarist can work fluidly and flexibly is the actual goal or need. The strategy varies. I have several ideas by I don’t want to muddy things up more that I already have.

And, for the record, when I say cutting edge, I am not claiming some of this hasn’t been done, rather, it’s when you start to put it all together that it turns into a powerhouse that is a joy to use.

Right

If I understand you correctly, this is why I have been converting the steady open gate to a 10ms pulse? My sense is that that can become a limiting can of worms, if the approach is to direct wire the clock, because then one might lose the advantage of deciding when to initiate the segment of recording since the master clock begins all segments at the start and closes those gates according to the bar duration. With the counter, I can start a 16 bar loop, 4 bars in. Again, if I am correct, the purpose of the bar toggle gates was to link up to the mixer with mutes.

Funny, there is also some fine tuning to be done there, as I think sometimes a kick drum may not get muted fast enough. Sorry I am not a programmer. But, to me, I am fairly astonished with all the work here. The achievement of Audulus 3 is hard to explain, unless one has integrated it all into a practice of creative ritual. Ideally, someone could do it all. Realistically, it seems like the forum — the unfolding collaboration and assistance is a medicine in its own right, maybe more interesting than the notion of absolute competence.

1 Like

In your patch the clock is set for a 50% duty cycle (PW), so a one bar gate is high for 2 beats then low for 2 beats. A 4 bar gate is high for 2 bars then low for 2 bars. The rising edge of the gate marks the start of the next period so a 4 bar gate goes high every 4th bar. If you adjust the pulse width (PW) you can set the clock to a much narrower or wider gate if necessary, although it will always be a percentage of the total period. At 0 or 100 you won’t get a gate at all. The gate timing is as accurate as possible given the limitations of Audulus so I’m not sure what kind of fine tuning you had in mind. The clock is not really intended for any specific purpose like muting, it’s just a source of timing.
You might want to have another look at the transport collection I posted a while back. It’s a bit more flexible than a single clock and allows for some randomness as well.

Just to clarify the thinking around the looper I put together, I was really trying to explore the basics of using the delay node as a mean of creating a loop. As such, I felt that the simpler I kept the design, the more clearly I could focus on the basic programming challenges, mostly making a clean loop with no noticeable glitches at the start or end. The simple looper was fairly successful at covering the basics, but I realize that it leaves a lot to be desired as a practical performance module. I’ve been thinking about how to refine the design and make a more useable model, hopefully without adding too much additional CPU load. At this point it seems to me that there are really two separate use cases. The first is a manually operated looper which is started and stopped by either the button or an external gate. For this a beat clock input would provide sync but still allow the user to determine when to start and stop the loop. The second is a looper module intended to be controlled by other parts of a patch. the optimum input setup for this might be somewhat different. You could have a module that starts recording on the next beat after the rec gate goes hi and loops on the next beat after the gate goes low. Once a loop is created a separate overdub input could control playback/overdub. It would be possible to have the overdub either punch in or automatically start and end at the loop boundaries. This might be easier to integrate with other parts of a patch.

1 Like

I was reading this thread earlier and it occurred to me, I don’t know the use case for the pulse to 10 ms gate utility. What purpose does that serve, and how does it work in this use case?

In this case, with the master clock it outputs a full signal for the duration of a given bar. However, sometimes you might want to simply set off an envelope, for instance. So, when you convert a continuously “on” signal to a “spike then off” signal, the envelope (or sample and hold, or kick drum, etc.) gets pinged rather than held.

For all intents and purposes, the gate to 10ms pulse is extremely handy when getting not only Audulus modules to communicate, but also getting those modules to talk to external hardware properly.


It’s located under building>gate in the iOS version of Audulus.

1 Like

Ohhhhh, so it’s basically a gate to trigger function, if I am understanding correctly, like you take a long on signal and turn it into just a short little ‘blip’ event then?

1 Like

Yep. :space_invader::space_invader::space_invader:

1 Like

My understanding of the purpose of the Reface Library was to get standardization happening — to curate some of the hidden gems in the old library as well as some standout modules from various users and put them into a highly intuitive presentation. This move, which looked like it took a lot of work from @biminiroad, completely changed the game for me. Having 4 delay modules with clock sync, for example, meant I could work at speed. It seems to me that many factors go into this type of organization that make workflow a priority over uniqueness. Uniqueness is fun for programmers, but can become a roadblock for end users. The perfect example is when Microsoft reinvents their standard interfacing and you spend 20 minutes searching for the print function.

With respect to the mixer, I believe that it had muted, but I requested an available gate so that I can make generative electronic music, where every so many bars hi-hats come and go, bass lines happen, etc. In the example below, you can see and hear how the kick drum gets cut off. Adjusting pulse width on the master clock didn’t resolve the issue. I am sure the solution is obvious to a programmer, just not to me.


Muting Example.audulus (304.7 KB)

1 Like

I almost need to quote your entire response. Whatever your intentions for the Simple Looper were, you have created something I absolutely love. I think I have explained the purposes of “arming” ad nauseam in this thread. Don’t take that the wrong way, my MacBook is down and I have to organize this discussion over an iPhone touch pad and the nerves in my thumbs get inflamed.

To me, there is often always the perfect reason why a feature is missing. There is no iOS app for my portable BopPad drum, my JBL charge 3 has a super loud obnoxious noise when you turn it on or off or pair it with Bluetooth. On their site people complained about this loud noise that you can’t turn off or turn down. They just made the JBL Charge 4. It has the same annoying noise.

I don’t know what it would take to add the gatekeeper for the Simple Looper, but I will keep trying to figure it out, because I know that the benefit for me will be huge. Thanks for taking some interest.