1222 Tuner VCO Module

Connect your beatstep to the mid control center and see what voltage the thing is sending out of the pitch cv.

1 Like

Yeah figured it out, it had the 0V midi note set to C-2 so I changed it to C3. All I need is a couple more transistors and Ill have everything done

2 Likes

Hi all.

Not that I want to reinvent the wheel when it already works so well, but I’ve written some modified code for the Arduino. There were some small overlaps in the frequency ranges so I decided to remove the list of frequencies and use an equation instead to work out the notes. If anyone is interested in giving it a go, you can download it from the link below (it’s the 1222_VCO.ino file).

Now my 1222 is calibrated, I need to try and work out my 1145 VCLFO.

7 Likes

@egan

Hey, I just finished a 1222 VCO and popped your code onto it and just wanted to say it works like a charm, the equation solution you’ve implemented is very clever, thank you for putting it together.

I noticed that unlike Sams’ code your version omits B# and jumps straight between B and C which threw me off at first, I had to do some musical research to determine that B# and C are the same heh.

3 Likes

and also no E# ( = F ) :slight_smile:

4 Likes

That’s actually what got me to try out egan’s code in the first place, I couldn’t find E# in Sam’s and thought it was a bug haha

2 Likes

aha! I thought I was going mad for a second! had to check the code thought by what you said I managed to include E sharp in the code, I thought surely I didnt do that :O. but yeah @GeorgeBPryor the chromatic scale is an odd one! and to none music people it is sorta counter intuitive!!! in my head there was someone who was trying to add the notes in-between the whole tones when it happenned back in the day and went to themselves… "“aaaah shit we put E and F too close together and B and C… this is gunna get messy” haha

3 Likes

I can hear the cries of a 1000 music theoricians at once :laughing:

6 Likes

Well, most people don’t have their synths in Pythagorean tuning…

// 8 | +g 12 3/2  |  pythagorean chromatic
const float Quantizer::scale8[] = { 0.0,38.7950083172,69.5842880906,108.379296408,139.168576181,177.963584498,208.752864272,239.542144045,278.337152363,309.126432136,347.921440453,378.710720227,409.5,448.295008317,479.084288091,517.879296408,548.668576181,587.463584498,618.252864272,649.042144045,687.837152363,718.626432136,757.421440453,788.210720227,819.0,857.795008317,888.584288091,927.379296408,958.168576181,996.963584498,1027.75286427,1058.54214405,1097.33715236,1128.12643214,1166.92144045,1197.71072023,1228.5,1267.29500832,1298.08428809,1336.87929641,1367.66857618,1406.4635845,1437.25286427,1468.04214405,1506.83715236,1537.62643214,1576.42144045,1607.21072023,1638.0,1676.79500832,1707.58428809,1746.37929641,1777.16857618,1815.9635845,1846.75286427,1877.54214405,1916.33715236,1947.12643214,1985.92144045,2016.71072023,2047.5 };

(QuantizerModule/Quantizer.cpp at master ¡ holmesrichards/QuantizerModule ¡ GitHub)

… I said MOST…

5 Likes

Thanks.

I’ve actually had a newer version of the code which I wrote but didn’t upload it. I’ve now uploaded it to the GitHub as a separate file and named it version 2 There’s no real need for it, but I originally had to compromise on finding the note by looping through all the possible notes until it found the one being played. The solution to remove the loop was bugging me so I went back to work it out. I also removed the need for the additional library and averaged the period in the ISR loop to reduce any jumpy signals.

I probably have OCD.

2 Likes

Hey, so I uploaded the new version to my module and it’s working great. I was actually having a problem with the previous version where the notes on the display/LEDs would stop cycling beyond a certain point; if you had the octave switch at its highest setting the display/LEDs would freeze after adjusting the tuning pot beyond about 1/4 max but it seems like the update fixed this. Thank you for the hard work you’ve put into this project, I think it was well worth it :slight_smile:

1 Like

Hi all. It’s my turn for a silly question. I have built one of the 1222 VCO’s and it all seems to work except for the PWM IN. The PWM pot works but not the input jack. Here is the stupid question. :slight_smile: What is the PWM IN expecting to see? I have tried feeding it LFO’s and CV’s but nothing seems to want to work. I just added a 20M resistor (well two 10’s) across the two points that Sam suggested. I think it widened the PWM pot. I haven’t added the Arduino or 7 segment display yet as they haven’t arrived. I hope someone can help me.

hey up! you should be getting something from it whilst something is plugged into the square wave output. if not check soldering on the jack and the connector between the PCB’s if the knob works and the jack doesn’t its likely a colder solder joint :). but remember pulse width only works on the square waves.

4 Likes

Wow thanks Sam. It turned out to be one solder joint wasn’t holding. It goes to show you that you shouldn’t just visually check solder joints. Give them a poke and see if they move or are nice and tight. I read through this whole thread and still thought “no my soldering is fine” (toot toot on my own trumpet). Well guess bloody what…FAIL. Anywho it’s all working as it should now. Thanks Sam.

4 Likes

OK I need some help. I have been trying to “tune” the VCO with an app on my Iphone. I have put the Arduino in the module and uploaded the software. Due to me not knowing the difference between an octave and a semitone I am at a loss. I tried to follow Sam’s tuning video but no matter how much twiddling I dont seem to be able to get it. It seems strange to me also that the tones get deeper as I turn the Octave knob to the right. I might not know my musical notes etc but I can swing a mean soldering iron.

An octave consists of 12 semitones. A semitone is the difference between two consecutive keys on a piano, eg C and C#. An octave is the difference between two consecutive notes with the same name, eg C4 and C5. Going an octave corresponds with a doubling of frequency. TBF, google it…

1 Like

Yeah fair call. I suppose I should have just said I am having trouble with the tuning process.

1 Like

yes for me it seems to be reversed, have you don’t invert the gnd and + connection on the rotary switch ?

You can use a reference pitch like A4 (440HZ) and tune to that. You will notice drift from whatever you choose to tune to after a few octaves, and thats normal.

If you cant tell if its out of tune, you have to wonder whether you need to tune it at all anyways! I get that you were kidding about not knowing a semitone from an octave, but if you cant tell its out of tune, its probably fine you know?

As Dud mentioned, your rotary switch behavior is dictated the way you hooked it up. You should be able to swap the wires around to change polarity. Remember what you are getting with that is a variable resistor, and what you are doing is one side has more resistance and the other has less. by changing where your references are (ground and +), you are flipping which sides have more and less resistance.

Does that make sense?

2 Likes

LOL

and if it takes you more than one hour to tune, forget about taking up harp.

7 Likes