|
Post by haggardgrin on Jan 2, 2023 22:01:40 GMT
Hello everyone! I'd like to share with you all a project I just finished. You may not recognize my username, as I don't have an AE yet but I have spent the last year building a pin header jack modular (heavily inspired by AE of course), and hope to add a small AE rack to it very soon! In the mean time, I've made this quantizer primarily for my bipolar 12v synth but realized it would be fairly trivial to modify it to better suit unipolar 5v synths. And after paring the parts list down as small as can be, I believe this module could be built to fit a single AE rack space! I should warn those that are interested in building it - it is the first code I've ever written, and while it works well it's not exactly elegant. You can't see what scale you're in. Voltages close to the switch point may waver, and it may not always produce precisely what you expect, but it will always be in tune and it's cheap! It can be switched between free running and sample/hold mode. It has 18 scales by default, 2 microtonal, and adding new ones is trivial. If you'd like to contribute to the project, I'm all ears for improvements! More details in the Github RepoHappy patching! Attachments:
|
|
|
Post by admin on Jan 2, 2023 22:14:48 GMT
Hello haggardgrin, This looks like a great module to have! Unfortunately I'm not very good at DIY so I'll leave this to others to build and assess. But I hope that this will somehow enter the ranks of available 3rd party modules some time! One question though - You write "If you only use this with 5V synths, you need no input protection." Could it not be that you exceed 5V for instance coming out of a mixer where 4 input sources are added together? Sorry if this is a stupid question, I failed miserably in the mandatory Electronics 101 I had to take when at Uni 30 years ago
|
|
|
Post by haggardgrin on Jan 2, 2023 22:28:11 GMT
No stupid questions! We're all learning all the time! If the mixer is powered by 5v it can only ever reach as high as 5v so no problem there. But if the mixer is powered by 12v for example there is the possibility to damage the Arduino. In AE world all signals are 0 to 5 volts, which the Arduino is happy to handle. When Arduino pins are configured as inputs we consider them to have near infinite impedance, so no additional current limiting is required as no current will flow to the Arduino anyway.
If however you had some other equipment which can produce higher than 5v or lower than 0v you must use the protection diodes to clip the signal down to the 0-5v range.
Since the DAC chip is powered by the AE's 5v, it can only ever reach 0-5v and is safe to patch into the rest of the system!
|
|
|
Post by admin on Jan 2, 2023 22:31:44 GMT
Thanks for this detailed answer.
I knew that AE Modules were safe to patch anyway you like (in most cases) but I never thought about whether that was because Robert put input protection in or just because of the properties of electrical circuits.
|
|
|
Post by haggardgrin on Jan 2, 2023 22:39:49 GMT
You're welcome! If you'd like to learn more I highly recommend playing with an online circuit simulator called Falstad. Much cheaper to blow up capacitors and op amps on there than in reality! For example here is a filter designed by Moritz Klein which is fun to play with and lets you see how the circuit works!
|
|
|
Post by robertlanger on Jan 3, 2023 13:11:42 GMT
Hi haggardgrin, welcome to the AE family! Great to see you start contributing DIY stuff even BEFORE having an AE system by yourself :-) I'm curious to see what you are coming up with; this is exactly the "AE modular spirit" :-) BTW: I have seen you use the MCP4728 - indeed my favourite DAC for AE, but unfortunately quite difficult to get currently :-( Anyway, let's build and patch!
|
|
|
Post by haggardgrin on Jan 3, 2023 13:58:24 GMT
Hi Robert thanks for your wonderful creation! I've thought about posting my diy modular here for a while, but it feels somewhat "dirty" since it doesn't contain any AE yet. Perhaps I should, it is very much in the spirit of AE! I do also have ideas for a few modules that I would like to share as well. One I hope to have up and running soon is another Arduino based project for a timing quantizer that can turn chaotic signals into clocked gates and triggers. Also some analog circuits, though I really need to sit down with those designs and hammer them down into something that will fit in the much smaller AE case, as my DIY modules are much bigger. And yes, it's a shame about the parts shortage with no end in sight! I got one of the last MCP4728 ICs from Tayda and melted it oops! Sorry little chip! Not wanting to give up on the nearly finished project at that point I got a breakout board from Adafruit. Perhaps they can work out a deal to provide you some chips at a lower rate?
|
|
|
Post by dizzeesatchel on Jan 3, 2023 14:19:46 GMT
Ooh a timing quantiser sounds really interesting...
|
|
|
Post by haggardgrin on Jan 3, 2023 14:56:37 GMT
If you have any thoughts about it I'd be curious to hear! I'm still early in the planning phases but currently I'm thinking something that will take in a fast clock (call it 16th notes) and any other signal that crosses the Arduino's logic level (below 1v low, above 3v high) that can be out of time. It would then hold high values until a clock pulse is detected, when it outputs a gate or trigger. As it is that's basically a sample and hold, so to further push into the realm of quantizer I'd like to add some functionality that accepts or rejects clock inputs analogous to how a pitch quantizer accepts or rejects notes from the chromatic scale to produce musical modes. Hopefully that makes sense! Currently I'm trying to decide on the most important aspect of any module for it - the interface! How do we want to tell this device which clock pulses should be accepted or rejected? One obvious choice would be a predetermined list of groovy rhythms, just like the pitch quantizer has, but I feel this would be very limiting. Could also have an array of latching switches for steps ala a gate sequencer, but again I feel there's some other implementation that could allow greater flexibility. At any rate it's now would be the time to get in feature requests!
|
|
pol
Wiki Editors
Posts: 1,349
|
Post by pol on Jan 3, 2023 20:27:44 GMT
If you have any thoughts about it I'd be curious to hear! I'm still early in the planning phases but currently I'm thinking something that will take in a fast clock (call it 16th notes) and any other signal that crosses the Arduino's logic level (below 1v low, above 3v high) that can be out of time. It would then hold high values until a clock pulse is detected, when it outputs a gate or trigger. As it is that's basically a sample and hold, so to further push into the realm of quantizer I'd like to add some functionality that accepts or rejects clock inputs analogous to how a pitch quantizer accepts or rejects notes from the chromatic scale to produce musical modes. Hopefully that makes sense! Currently I'm trying to decide on the most important aspect of any module for it - the interface! How do we want to tell this device which clock pulses should be accepted or rejected? One obvious choice would be a predetermined list of groovy rhythms, just like the pitch quantizer has, but I feel this would be very limiting. Could also have an array of latching switches for steps ala a gate sequencer, but again I feel there's some other implementation that could allow greater flexibility. At any rate it's now would be the time to get in feature requests! Thinking about this is making my head hurt, let alone buidling a moduel to do it!
|
|
|
Post by dizzeesatchel on Jan 3, 2023 21:05:14 GMT
someone enquired (either here or on the discord) about the possibility of an RBSS add-on in the style of Turing Machine's 'Pulses' expander - which i think is kind of along the same lines as this idea?
|
|
|
Post by haggardgrin on Jan 3, 2023 22:01:08 GMT
someone enquired (either here or on the discord) about the possibility of an RBSS add-on in the style of Turing Machine's 'Pulses' expander - which i think is kind of along the same lines as this idea? Sort of in the same realm but the vision I have is for something that would be most at home as a companion to Topograf, for example. Where Topograf makes very reliably musical patterns, it doesn't really do drum fills - it just keeps plugging along at whatever beat has been pulled out of it. The module I have envisioned would take in a clock (to align the chaos to) and several other signals (could be off-time gates, triggers, or any analog cv wandering through the woods) that would be turned into interesting rhythms and syncopations that line up with the clock. So an obvious use would be to make highly varying drum fills alongside your Topograf generated drum patterns. Or to add some uncertainty to otherwise static rhythmic patterns without risking everything collapsing into full on chaos.
|
|
|
Post by zaphodbetamax on Jan 9, 2023 14:37:05 GMT
Hi haggardgrin , welcome to the AE family! Great to see you start contributing DIY stuff even BEFORE having an AE system by yourself :-) I'm curious to see what you are coming up with; this is exactly the "AE modular spirit" :-) BTW: I have seen you use the MCP4728 - indeed my favourite DAC for AE, but unfortunately quite difficult to get currently :-( Anyway, let's build and patch! digikey.ca lists 0 stock on these. Mouser.ca says "on order". So here in Canada, yes tough to get.
|
|
|
Post by haggardgrin on Jan 9, 2023 22:54:12 GMT
They're not cheap but MCP4728 break out boards are still available from Adafruit. Alternatively, if anyone can suggest a more readily available DAC I will have a go at updating the code to use it.
Also, if anyone's curious - I got some great advice from a few Mod Wiggler users and made a big update to the code. Trimmed 360 lines down to 160, I feel it almost looks like a half-way respectable code now!
|
|
|
Post by funbun on Jan 12, 2023 21:32:12 GMT
|
|
|
Post by haggardgrin on Jan 13, 2023 11:29:36 GMT
Looks like it has a 2 channel 12 bit DAC which is good enough for 1v/oct pitch CV.
It also has 24 bit stereo audio out - maybe my inexperience with microcontrollers is about to show - perhaps that could be repurposed to create CVs or other DC signals?
|
|