Build Help: Basic Fucntions

One of the challenges here is the curating. There are drawers with tools yet to be enjoyed everywhere. I don’t think the transport collection is a suitable substitute for longer period outputs, for a number of reasons – mostly preferential.

I need to be organized, and I need to be able to keep track of things. I think there is a way to approach patches where you are building a machine like song. But there is also the approach of fitting electronic music production techniques into Audulus. I like both approaches. In the use case I am currently working with, I am syncing a bunch of devices using Ableton Link. It is nice to know at a glance where things are at. That Master Clock sometimes works like a scoreboard. It is also a complete object I can grab and build with instead of slowing down.

At the same time, I already see tools in the Transport Collection that will work way better than “subtractive mixing.” I am excited to get into triggering some isolated events.

1 Like

I can see the appeal of having a single object. The concept of the transport collection was to have a “timing” bus that could easily be routed to various parts of a patch to keep various elements in sync. For a useable bus you need at least a clock and a reset. Since I had a quad signal line available, I chose to include a count of the beats elapsed from the start of the clock and a “start” signal that could be used to trigger patch elements. The various routing modules that provide switching, delays and looping aren’t actually necessary to use the transport as a simple timing bus. Only the master clock and the interface are really required. I’m currently making some changes to the collection, but I’ve already updated the master clock for external sync. Here’s the new clock and the 2 interface modules if you’re interested in giving them a try.
Basic transport.audulus (272.7 KB)

1 Like

I should be absolutely clear: The quality of tools people have made around here are amazing. It is not easy to keep up with it all. :slight_smile: So I have been treating the forum as a kind of memory bank where I move between threads as my competence with synthesis gets better. It’s a long road but I am really having a blast!


It’s really all about workflow to use an overused term. I think the thing I like most about Audulus is it doesn’t force you into any particular approach. If the transport doesn’t make sense with your particular creative process, by all means use something that does! I certainly won’t be offended. As you say it’s tough to keep up with it all which is why I mentioned it in the first place. Eventually I hope to make the Transport a single point for syncing regardless of the source. I’m hoping A4 will add MIDI sync, DAW transport integration and Ableton Link at some point.


I got some time to hook the new master clock up. Seemed like it behaved well taking a midi note from Korg gadget as a clock sync. I am really looking forward to putting these tools through the paces this week. Thanks again.


Okay so I am thinking that maybe the clocks should take a 16th note sync, instead of a quarter. Any thoughts?

Looks like it was a reface standard as well. 46%20PM

Also, I think my best results were with PWM on the Master Clock v1.1 cranked hard left #=10.

With another device running at 120, it jumps roughly b/w 117 and 121. In a sense, it almost just needs to ‘sample’ more frequently, I would think.

In the meantime, I simplified things and substituted clock dividers and multipliers coming straight from a MIDI signal. I think, for clocks, steady midi notes off of bluetooth might be an issue.

When I give it the hit hat test (running hats on 16ths), taking a midi blutooth note from gadget over to Audulus, if I go straight from a midi note module to a hi hat module, the match seems tighter than through the Master 1.1. So I am wondering if there should be a 4th clock – The MIDI Slave clock. This would reduce cpu by only dealing with the direct midi note as the primary pulse in Audulus, but at the same time, provide all of the measures. Is that an easy cut and paste?

Update 2:

After an hour or two of fiddling, I can’t get the 16th hats to lock in. Not sure what the issue is. Seems to drift out back in every few bars by a tiny amount. Maybe I need to figure out the most stable master…:thinking:


I don’t know if using a 16th would make any difference. You could try it by leaving the ext toggle off and sending a 16th to see if it tracks better. With the toggle off it will sync but won’t adjust the BPM setting. If so, I can change the logic by dividing the zero crossing output by 4 to match the 16th instead of a 1/4. The zero crossing detector isn’t perfectly accurate in any case so it may not make a big difference. If you leave the external toggle off the clock will be perfectly stable since it’s running off a digital oscillator. I’m not sure how tight the MIDI processing is in Audulus but it could be part of the problem. Bluetooth generally has a fair bit of latency so it’s possible that it also might be contributing to the issue. Can you try it hardwired?
The problem with clocks is that there is no easy way to generate a higher frequency signal from a lower one. Going in the other direction is simple. So if you have a 16th pulse, you can easily get 16ths, 8ths, quarters etc. but not 32nds or 64ths. The MIDI beat clock uses 24 ppqn (pulses per quarter note) so you can get 1/4 = 24, 1/8 = 12, 1/8t = 8, 1/16 = 6, 1/16t = 4 and 1/32 = 3
All of this is really a band-aid to deal with the lack of any real sync mechanism in Audulus. Hopefully A4 will include MIDI sync as well as maybe Ableton Link and DAW transport clock in the AU.

I think that one the one hand, some of this is complex. There are a lot of factors. Kind of need to skip around…

Sometimes what I’ll do is forgo the creative stuff and just become a sound person with the idea that the show must go on. So I just stripped down a patch to the clocking mechanics and got some hi-hats ready in Korg Gadget, Audulus, and on an elektron sequencer. I think the hi hat test is good, because you can hear them phasing. IF you can’t hear the hi hats phasing, I figure at that point – for my purposes – it doesn’t matter, good enough.

– bottom line is, with the routing I had going, I am happy with how tight I could get a recording.

If anyone cares, here are some things that I found important.

  1. I am running Ableton 9. I think there might be a useful option in Ableton 10.


I did not make use of this, but I would be interested to know about it. Should I upgrade? 9 only has “show link toggle,” but not a “start/stop sync on” option.

  1. Because there is a MIDI Link clock running, there is always a transport bar cycling independent of all devices, on all devices. It is like having a person counting 1,2,3,4; and, to join in, all devices must start at 1. (Where is this signal? Can we hack it? It seems like if we can get midi over bluetooth into Audulus already, can’t we somehow detect the Link transport/clock?)
    Work-wise, a laptop running Ableton, starts the record. This is key, because it means that when you record your jam, the file will be quatized on the beat. So you can do this intense recording of 4 or 5 peices of gear at once, but then you can go straight into Ableton and add anything to the track after (or while recording), and everything is in time. Again, very important to see you that finished recoding has you kick drum landing perfectly on the Ableton audio grid.

  2. One of the sound sources is N.I. Traktor. So full complete tracks can be mixed/looped/etc., on the fly. One nice thing, is that Traktor has a bar that both indicates and allows for adjusting any drifting for beat matching. I can double click that sync button to snap it back immediately, or I can cheat the bar slowly back to center.

–Hardwiring: Here’s maybe the nuance. Send a hardwire clock by tying Ableton to the Elektron Analog Four (they are joined with a usb cable). The A4 has MIDI Clock out, so the signal from the A4 gets passed on to mBrane (Yarns, eurorack) through a midi cable. mBrane then produces two outputs. 1. a start/stop transport. 2. A steady clock. Both are MIDI converted to CV. Then I can plug those pulses into the ES-8 and get that pulse straight into Audulus.

Whatever relationship between Ableton Live and the Analog Four, it seems like it grounds the situation, so that Audulus is doing no calculations, but only receiving a pulse.

On the other hand Gadget (which is Link enabled) can provide MIDI out to Audulus over bluetooth. Not only does this make it possible to sequence Audulus with MIDI, but also control a modular synthesizer from Gadget with MIDI converted to cv and gate.

The main point is to separate clock duties and MIDI duties, so that the clock is ran hard and the MIDI notes and gates pass through the ether (over bluetooth).


Again, can we hack the Link signal somehow?

The Link option you are referring to is for Ableton Link not MIDI. Link is Ableton’s answer to keeping stuff in sync. It has it’s own protocol and doesn’t use MIDI. The Start/Stop sync option in Live 10 controls whether Live sends and receives a start and stop to or from other connected link devices. Link gets it’s timing from the first device that sends a start signal. It doesn’t really have a “master” as such.
At this point there’s no way to directly access the Link signal. The protocol is open so potentially @Taylor could add the necessary code to Audulus to receive the signal. I requested the Link documentation and SDK from Ableton and it doesn’t look too difficult.
It’s important that there is only a single “master” clock running so you should probably set it up so that everything is clocked from Live ether using MIDI or Link. Link clocks from the first device to start so you should start Live’s transport to start the session rather than starting a different device. Since you have some devices that aren’t Link enabled it might be better to stick with MIDI sync only so you only have a single sync source.

I posted this some time ago and thought you might find it interesting:

1 Like

Looks like a great thread. I have to pull myself away for a bit, I will dig into it though. You know, I feel like what I did with the routing was actually a success. So I think it’s important to hesitate there and kind of have a “wow” moment.

For anyone else I would say be forewarned about all of the tiny factors that can have you scratching your head for an hour. Like:

Did you plug usb hub and the camera connection kit into the iphone in the right order?
Did Audulus just crash again?
Did Gadget just drop the bluetooth connection between devices?
Did your sound card somehow become disengaged in Ableton?

So, one of the nice bits about the reface library is, like I mentioned, complete objects. It is impossible to avoid troubleshooting, so working with complete objects helps the mind eliminate factors when working with visual node based logics. So it is less a matter of getting the patches right, as it is getting the modules to be fool proof, standardized, etc. There are still so many little things I have to watch out for (converting gates to triggers, etc., etc,.).

So, again, I will continue to work on this, just have other responsibilities…:slight_smile:

1 Like

I do this all the time with Yarns/Disting and the Digitakt and it definitely does work.

Yes. The takeaway would be to use a hard clock, but send the musical midi data over bluetooth. However, I suspect you may not have yet tried controlling Audulus with Gadget on a separate device. One of the upsides is this now frees up the ES-8. I am actually interested to see what it will be like to use Audulus as only midi inputs with synths (just voices), then do all the sequencing in Gadget.

1 Like

I’ve done a couple of things using Live as the sequencer controlling Audulus running standalone. I’ve set up an IAC MIDI bus to send MIDI from Live to Audulus and I bring the audio back via an analog connection from the ES-8 to my Focusrite interface. (if I had an ES-9 I could use the SPDIF and stay digital) I’ve also used Soundflower to send the audio, but it introduces some additional lag. Of course when the new AU is available this won’t be necessary. There are several good sequencers available for Live in addition to the built-in capabilities, particularly if you have Max for Live. Using an external device as the sequencer can simplify the timing sync issues.

I really love the clocks. For the importance of the modules, this is buried in the forum. I have made the case before that getting some separation between module posting and thread talk is important. IMO, the reason NI Reaktor has been resilient for 10 years is because they did there module archiving organization well. Anyways…:stuck_out_tongue_closed_eyes:

I find it irritating to dial in a bpm on an iOS device because the dial is too sensitive. I don’t see a need to set the decimal value as well. Is it easy to change this so that it just rounds the number?

I know what you mean about the online library. Discouse doesn’t make it very easy. We tried to organize the Module library as well as we could but the only way to prevent people from adding to the thread is to make the category read only which means someone then has to curate submissions. Not too much of a problem for NI but tough for a one man shop.
The integer rounding is simple. I just changed the round to tenths for a round to integer module. Note that if you use an external clock it will use whatever beat frequency it detects, so if you send 101.456, that’s what the clock will run at even though it displays 101. The knob will set it to exact integers.

Master Clocks V1.1 integer BPM.audulus (497.5 KB)


I think I have layed out the Reaktor situation about 4 times. It’s not about scale, it’s about separating the module posting website from the forum itself. You’re right, Audulus is not Native Instruments. But that is beside the point of examining whether or not to have modules posted on a separate site. As you start to grow this will become harder. The move into Discourse was a seed change — fantastic. Horrray.

But look what we have. Master clocks buried in a long thread. That is not a good way to position a product — full stop. When I have my head deep in my engine all I want to know is what I need to do to fix it. I do a lot of maintenance in life and either the ceiling is leaking or it isn’t. Sometimes I walk past broken things for six months and then one day a solution pops into my head. I have noticed that looking for upsides at the wrong moment can get in the way of easy fixes. “It’s not perfect but it’s better than it was” is a great motto. But I am always still scratching my head.

The clocks matter for syncing integration. There are a lot of people in all industries who will do without flashy new things if the alternative is tight. I have noticed that, really, the forum is our collective memory. This forum is better than Reaktor’s, but Reaktors builder/module/synth management system is better than this one in some important ways.

I like the insider trading. It’s cute and I like that this is small. It’s kind of not fair to newcomers or people with limited time — it also does not do justice to the astonishing value here.

The idea isn’t to abandon or look down on this organic object, but simply table ideas about doing it even better than NI. Then NI gets inspired and so on. To me, between the two I prefer to take the loss and remain here. But I still walk by that sticky handle, the loud cupboard, the finicky window or the plant that struggles on the west side of the house. But I am also aware that trying to make something better can always make it a lot worse.

For example, as I downloaded this updated module I have to share it to Dropbox, rename it from .txt to .audulus then share it to Audulus. I am working with it, but these small barriers are mountains for the initiate.

Also, for the last 6 months audulus freezes every third time I open it. If I was nervous and performing, I might think it was some other issue and screw up my confidence and have a terrible experience.

The Reaktor User Library. That’s what it’s called.

But, again, this forum is better than theirs so it would seem to me that it is a matter of besting both.

I would think that, these days, a site like that would take a day to make and would self manage. Also, there are a lot of smart people here in the shadows that could pull that off quick and if you could track the difference in end consumer interest the return on investment would justify the transition. But I don’t think people like this kind of talk.

It’s not about making bank, it’s about having the support to repair the monastery that houses the ancient scrolls. :mage:

In this case I’ll take the blame. I really should have posted the clocks in the Library rather than in this thread. The big barrier for me is the time it takes to properly document the module. Sometimes I let it slip when I shouldn’t.

Don’t forget that even a simple website can be a significant expense. You have to pay for domain registration, hosting, security etc. As soon as you add any kind of authentication the problems get much worse. Of course it’s possible to do some of it yourself but then it’s a significant investment in time. I do wish that Discourse made it easier to move individual replies rather than the current all or nothing approach.

I use the Shortcuts app which allows you to download, rename and save directly to Audulus. Both Discourse and Safari are following the “rules of the game” by adding the .txt extension. Safari doesn’t recognize .audulus as a known file type and the info that Discourse sends is that the file contains text which is accurate, so Safari adds .txt just to be safe. BTW the macOS version does the same since a few versions back. It’s a PITA but makes sense from a security point of view. On macOS you have the option to display a dialog where you can choose the download location and rename, but so far iOS does not. Shortcuts does make the process pretty simple.

I am the kind of person who just gets the damn ceiling fixed.

3 out of 4 of your points are :expressionless: meh.

Domain names are $5 a year. If we were in a board meeting do you think that piling up those three counterconsiderations would make you appear as a strong contributing member in guiding the future of a company or someone who would be more effective in a drawn out pitched court battle?

I know most of the moves; it’s always the same game. The great idea is always the one that seems impractical or something people have being staring at so long that the new employee just appears naive. But then some people grind under the inefficiencies for years. They make small changes and slowly earn trust. Then the day comes that people are on holidays or the two alphas catch the flu, the grinder puts his ass on the line and bang, the useless pile of junk in the corner that he kindly asked them to sort through this now neatly organized on a shelf. We know this story.

“Why are there so many problems in the world?” Because too many people think engineers are superior to philosophers; because there is something gutterally wrong about executing on someone else’s suggestions, and so on…

Rome was not built in a day. But it was built. We North Americans need to learn to build cathedrals together that might span 7 generations. It is common to conflate agreement with understanding, as though I am trying to convince you of something. This is wrongheaded. Once the two are separate, the proposal can be handed off to the engineers. Can’t we adopt this type of language into cottage industry; could Audulus be a concrete example of how we might organize ourselves instead of expecting politicians to shape man by a set of rules?

When you get deep into academic philosophy it is like constructing a castle of hairs in a windstorm. But for those of us who know the work needs to be done, we value the process and trust the outcomes based on gains made by people like Descartes and Frege, who made programming possible by revealing the machanics of sequencing (bracketing[supposing]) on the one hand, and the quantification of force in sentences on the other hand.

My turn away from programming and toward philosophy was a conscientious decision which, I believe, is justified by the way I said what I just did. It is the type of self-limitation that makes NCAA tournaments fulfilling to watch. It is the ability to maintain the coaches plan and always fake the shot to draw the defenders away from the scorers.

This thread could stand for a hundred years and I am confident that someone can read between these lines.

  • I have always felt that the purpose here on Earth is soul growth. In that vein, I have also noticed that everyone can DIY everything. It’s just about motivation and commitment. But doing it together seems to be our modern challenge. In skateboarding, everything seems impossible. Until someone does it once and people see. Then it spreads like wildfire. Growing new human patterns can happen in the most unlikely places. Don’t count us out here on the forum in 2020. Hope.

I am going to add more in the hope that you won’t have to waste your precious time pointing out problems I can plainly see as well.

There is a sense in which when a person speaks, they hear themselves. Some people, I have noticed, are not able to weave new thoughts on the spot. I am the opposite. It almost takes the opportunity of dialogue to build some new perspective. Because I have worked on some of these concepts for a long time, it might seem like I sat down and spent time writing. But most of it is off the cuff.

I think that when it is off the cuff there is a greater chance that I can be shown how to think better. The heart of things is less buried. Who said “anything worth doing is worth doing terribly at first?”

While I can look at what I wrote from the devil’s advocate standpoint, I can also start to see pathways opening up.

For example, look at all the work that @biminiroad did on documentation. With Reaktor, that just happens on its own through contribution. Couldn’t a portion of it be cut and pasted?

I wanted to pose that not for its own sake but for the sake of revealing the gravity of what I was suggesting — the man hours necessary even if the four counterconsiderations you brought up were addressed. It’s potentially nuts. That is, unless there is a break where the past is not fully incorporated but simply gestured at, and the new platform I am suggesting does not take the place of anything but just lives as a tiny option, one would need to hire a small team.

I almost feel like you don’t need to respond — like things can just be left as they are. Sounds like we are going to get the “module browser” similar to what a user constructed ad hoc for Reaktor. Maybe in that idea there is some room for imagining something other than “managing a website.”

VCV Rack had or may still have some wierd library issues as well. Notice how it isn’t organized by kind or type. All you get is an alphabetical list of the name of the module or the author. You cant sort by oscillators, filters, etc. Picture that in a grocery store. There would be no meat department, so to to speak.

Let’s all agree that that is insane. Then, let me back out of here with all my knowledge of Audulus modules and where to find them and leave this happy mess for others. The whole thing leaves me at a great advantage. I’ll just stuff it all in my knapsack and leave it up to you guys and the other users.