I could also send clock in from the modular as well. The design I uploaded could probably use some tweaking, but let me know if it basically does what you are looking for.
I had a look at the internals of the Master clock and decided it would probably be easier to add an external input to the version I built instead. @biminiroad’s version uses a separate phasor for each output and mine only uses one. I’ve updated my version to include a pulse width knob and run toggle.
There is a sync/external input for suppling an external clock or sync pulse.
To use an external beat clock such as MIDI pulse, connect it to the sync/ext input. Set the BPM to match the DAW and then switch on the ext toggle. When the external toggle is on it will override the BPM knob and track the BPM of the external clock. By setting the knob to match before turning on the ext toggle you will get it close so it should stabilize within a beat or 2. In the included file I used @biminiroad’s Master Clock as an example external source. I haven’t tested it very extensively so let me know if you find any bugs.
Master Clock V3.0.audulus (323.5 KB)
That is a lovely module! I kind of forgot about how fun the swing can be.
It’s interesting to note that the STS version is a little more CPU intensive despite only using one phasor. Still no complaints, this is a situation where it’s nice to have both, since @futureaztec man has been using the 16b out as a pattern mute to create more song like patches.
All the extra expression nodes for the sync logic and swing add significant CPU load. If I removed the swing and sync I think it would be a bit more efficient, although the phasor is very low CPU usage compared to an expression. It would have been more difficult to get all the phasors to sync properly to an external source, particularly the triplets. I have a measure output which can easily be fed to an external counter to get longer sequences. Maybe I should build a companion module with multiples of bars out. @biminiroad’s module assumes 4/4 time, whereas I added the logic for other time signatures. Try 9/8!
BTW, I would appreciate any bugs or suggestions for improvement. I didn’t get a chance to do a lot of debugging, so it wouldn’t surprise me if there were a few glitches.
Now comes the really really important stuff. Clock drift… Just uploading the patch… one sec.
Time Signatures (Rethought) 2.audulus (1.8 MB)
Okay, so I created a track in gadget with midi note every 4 beats to get a constant syc. (wondering if this is better with 16ths or if that eats more cpu). I created another track in gadget with a note every 16 bars (only because I couldn’t do it every 64 bars as it is limited to that length in the gadget software) – this is fed to the reset and start. They are on separate midi channels obviously. So, when hit play in gadget it starts nice and locked in. But it seems to drift.
Any thoughts. Also wondering why @robertsyrett dropped the bpm counter This is handy for what I am doing. Which leads me to wonder if we could have some sort of live sync drift indicator or something?
One positive observation was I thought someone said you could only get midi this way on one channel. By the looks of it, you could control 16 voices seperately in Audulus using gadget as a DAW.
It’s also astonishing that I can highlight a knob in Audulus, hit MIDI CC learn, then move a knob in Korg Gadget Taipei and it gives me automation for that knob in Audulus (and, of course, if you wanted you could route that value out of the ES-8 and control your modular). I think that this solution is something very few people are aware of but could solve alot of problems!!
[ableton link] Korg Gadget (ipad) —>AUM ---->audio into QX1002 mixer & bluetooth —>Audulus (iphone) audio into QX1002 mixer
[ableton link] N.I. Traktor ----> into QX1002 mixer
QX1002 mixer ----->USB Macbook with Ableton (for recording synced with ableton link).
btw the xenyx qx1002usb mixer is a beast. Nice colouration/saturation, nice weighted knobs, metal chassis, has an fx send, the built in digital fx algorhythms are useful, you get to preamps with britsh eq’s and compression (so you can send the fx’s back in through this section). It has allowed me to get a bit of the dirt someone might want in the elektron analog heat, since I can connect analog guitar pedals to the fx sends.
Your clock modification likely suffers from rounding errors in the Hertz calculation. If you look at my design you will see that in addition to using the input to calculate BPM, I also use it to sync the Audulus clock with the external DAW. Small errors in the BPM calculation will be corrected at each sync pulse. I chose not to modify the reface Master clock because it would be difficult to sync all the phasors. In my case I only have one to deal with. Have you tried my clock, and if so does it drift?
BPM lives on the master clock for clarity. You could have a couple of “not master clocks” cascaded going at different divisions. I guess that’s a little inconsistent with the output labels, which are based around quarter note BPM. But switching it back should be pretty easy, just change the rounding expression to the display to
not masterclocks.audulus (191.7 KB)
The multiple outputs of the not master clock will need to be synced at the beginning of the Gadget song, using either the start gate or sending a single pulse to the reset input on the first note.
Just so you know, the knobs apply a slew to the incoming midi CC, so if you run it out of the ES-8 it may be slightly different (or dramatically different in the case of stepped signals).
I am about to try switching it out. I was very attracted to the built in swing features, but missed the 1b,2b,4b…64b outputs.
I think you can probably mod the STS version to get those back.
I’d make a copy of the STS master clock and start messing with the multipliers in the sub module with the phasor in it.
maybe cascade the STS master clock. Turns out you won’t get the full pulse width with that technique. @stschoen that might be a bug?
Needs a reset output as well
What is the purpose of PWM on the clock – just for minor latency adjustments?
I think it’s a just in case sort of thing. Duty cycle is another name for pulse width and it can be applied to how long any event occurs per a cycle. The most obvious one would be if you were sending the signal to an envelope generator you can vary the gate length. The real question is why don’t we have a phase parameter as well as a duty cycle on the clock?
Okay @stschoen, I would say your clock seems to be holding the best. I think the “beat” output might be redundant, as opposed to say an “upbeat” output (since there is already a 1/4 note output) – although maybe I am missing something; maybe something to do with the time sigs… I miss the 1/4 triplet. Love the “count”.
I am chugging along with 4 different sources. sounds good. sure was nice to swing the 16th notes.
Just testing away…One thing that has me tripped up is that the Not Master Clock will not stay running when I send the start button a gate.
with a 50% PW you should be able to make an upbeat by inverting the signal.
Looks like @biminiroad set that up as a run gate. You can throw a flip flop in front of that to change it to a toggle:
flip flop.audulus (3.9 KB)
O, I know. The point was just about layout limitations – what features could be replaced with others.
I’ve thought bought building an add-on module for the longer periods.
That’s a nice idea.
I added a beat output because a 1/4 note isn’t necessarily the beat. If your time signature is 6/8 for example then an eighth note is the beat. I tried to build a clock that would allow for more uncommon time signatures.
I took another look at the clocks this morning to see if I could lower the CPU load. I built one with basically the same outputs as the reface version without the swing but with the capability to sync to a beat clock.
I also cleaned up the V3.0 version I posted yesterday.
File replaced see below:
Comparing the 3 clocks, the original reface is the most efficient but doesn’t have the ability to sync to an external beat, the straight time version I built is not as efficient because of the additional logic required to sync to an external source and the one with swing is the worst for CPU because of the swing and time signature logic.
The issue with syncing the original reface version is if you send a sync pulse to each phasor every beat, then all the phasors with a period greater than the beat (1/2 note, whole note, 2 bars etc.) will resync before they reach the end of their cycle. I experimented with a multiphasor design capable of handling an external beat clock, but in the end the single phasor design was more efficient.
Actually, if you are willing to sacrifice the variable pulse width and just have a narrow (1/128th) clock pulse for each output, it could probably be built more efficiently, but it wouldn’t be as flexible.
Strictly speaking the only thing that should matter on a clock is the timing of the lead edge of the clock pulse. The pulse width shouldn’t matter as long as the pulse is long enough to act as a trigger. In practice clocks are often used as a square wave LFO so a variable pulse width can be handy.
New file with some minor bug fixes
Master Clocks V1.1.audulus (497.6 KB)