[sdiy] Arpeggiator1 / Arduino UNO
Rick Jansen
rick.jansen at xs4all.nl
Fri Apr 10 11:35:50 CEST 2015
> On 10 Apr 2015, at 11:11, Roman Sowa <modular at go2.pl> wrote:
>
> And when you decide to add glide in software, then what? Oh, you already answered that, a chip...
> Or this can be better done as gated analog glide like for example in MC202.
Or, do it analog, and put a big capacitor/R on the output, somewhere.
Or, if you use a modular, do something with FM on a VCO input, like an ADSR signal.
But, I'll see if I can bend the pitch while the note is playing. That is not so much a DAC issue, more if you have that much control in the software. The Arduino is not a fast computer, and interrupt handling leaves little time to really do fancy things.
r.
>
> I had this idea of using 2 DACs in MIDI2CV module before, but it all collapses when Pitch Bend needs to be added. At the end it turned out cheaper/easier/better to use regular 16bit DAC.
>
> Roman
>
> W dniu 2015-04-10 o 10:26, Rick Jansen pisze:
>>
>> No idea, and I don't care :-) All I want is 12 discrete voltages per
>> octave. As far as I can tell, without actually measuring, the voltages
>> are reached quick enough, and are repeatable.
>>
>> The arpeggiator code has a list of 48 values, one for each pitch. You
>> can tweak each value to obtain the perfect pitch, eh, voltage.
>>
>> So, this is not a DAC where changes from 0x40FF to 0x4100 or 0x4000 to
>> 0x3FFF are an issue. And if they are I'll use a chip.
>>
>> I'm quite happy to have found this componentless solution, as I did not
>> have a DAC (well, I have an old ZN426), and it was Easter, so no shops
>> were open..
>>
>> rick
>>
>>
>>> On 10/04/2015 10:08, Roman Sowa wrote:
>>> How does your 8+8 bit PWM DAC perform in terms of DNL at the MSB
>>> boundary? I mean when for example it goes from 40FFh to 4100h, as well
>>> 4000h to 3FFF.
>>>
>>> Roman
>>>
>>> PS. I put so many tehnical sounding mumbo jumbo in first sentence that
>>> it sounds even funny :)
>>>
>>> W dniu 2015-04-10 o 01:03, Rick Jansen pisze:
>>>> Hi all,
>>>>
>>>> Well, at long last I'm a bit back to synth-diy-ing. Here is my first
>>>> Arduino UNO based project: an arpeggiator:
>>>> <http://dropmix.xs4all.nl/rick/Emusic/Arpeggiator1/>
>>>>
>>>> It serves two purposes: 1. getting to know the Arduino, and 2. finally
>>>> using that 1-octave piece of keyboard that was in a box for 20 years.
>>>>
>>>> It's still in the breadboard phase, as a tryout for the upcoming
>>>> sequencer, but it works, and I'm having a lot of fun with it.
>>>>
>>>> A longer writeup, images and sketch are in the web page
>>>>
>>>> <http://dropmix.xs4all.nl/rick/Emusic/Arpeggiator1/>
>>>>
>>>> Here are some keywords:
>>>>
>>>> - I2C 8574 ic's as in/out expander: 2 chips to read the 12-key 1-octave
>>>> keyboard, interrupt based; 4 bits spare;
>>>> - I2C 8574 ic's as LED outputs: 12 LEDs, one per key, displaying the
>>>> note playing as a sequencer; 4 bits spare;
>>>> - Can easily be expanded to 64 keys in + 64 LEDs out, or 128 things in
>>>> or out, or whatever. (I2C is great!)
>>>>
>>>> - ~16 bit "DAC" without a DAC: using two PWM pins combined, and
>>>> RC-filters, to produce the control voltage;
>>>> - gate signal; gate may be shorter than the note duration for
>>>> "staccato", etc;
>>>>
>>>> - TimerOne interrupt based timing, 120BPM, 24 ppqn, like midi does, if I
>>>> understand that correctly;
>>>>
>>>> - sequence mode: up / down / up-down / random ;
>>>>
>>>> - For each note there's a pitch, a duration and a gate duration,
>>>> internally, although for the arpeggiator note and gate duration are
>>>> currently fixed value (all quarter notes, @ 24 ppqn)
>>>>
>>>> - Operation:
>>>> 1. press START
>>>> 2. press one or more keys of the keyboard
>>>> 3. while you keep the keys pressed the machine loops through the
>>>> corresponding notes
>>>> 4. press STORE to store the melody; you can now release the keys
>>>> ...
>>>> 8289. press STOP
>>>>
>>>> rick
>>>>
>>>>
>>>> _______________________________________________
>>>> Synth-diy mailing list
>>>> Synth-diy at dropmix.xs4all.nl
>>>> http://dropmix.xs4all.nl/mailman/listinfo/synth-diy
>>> _______________________________________________
>>> Synth-diy mailing list
>>> Synth-diy at dropmix.xs4all.nl
>>> http://dropmix.xs4all.nl/mailman/listinfo/synth-diy
> _______________________________________________
> Synth-diy mailing list
> Synth-diy at dropmix.xs4all.nl
> http://dropmix.xs4all.nl/mailman/listinfo/synth-diy
More information about the Synth-diy
mailing list