I have recently put this sketchy polyphonic Midi to 4 cv output module together, using an arduino nano as the brain and the mcp4728 DAC module as the digital to analog converter for the cv outputs. I am just putting this project out there so that someone who actually knows how to code (unlike me!) could maybe take a look at the code part of the project and maybe upgrade the it or fix any bugs that I did not notice. Here is the github project link : GitHub - KalebTheurich/Polyphonic-MIDI-to-CV . Thanks
I wouldn’t have delays in my code like that for the triggers, it means your code pauses for 10ms on every note played, Ideally you want to start a timer when you send a trigger and in your loop check the elapsed time of that timer and if it’s greater then send the trigger low. This way you keep delays out of your sketch.
Have a look at my 8 note poly midi to CV converter on my GitHub pages and see what I do when a start a trigger high.
Alright thanks for the tip!! I already went ahead and fixed it. The trigger seems to be more responsive now. Thanks
Hi 3K3, welcome to the community.
Just another thought, the pitchbend output is only 0-255, but pitchbend is a 14 bit value of 0-16535 bits, 0-255 resolution is going to give you quite a stepped pitchbend, have you considered adding another DAC just to handle pitchbend and that would give you 0-4095 centered at 2047.
Or you could add the pitchbend to the note CV in software so each note contains both the root note and any pitchbend. It’s how most modern synths Di voltage control, a single wire for each note containing note CV, pitchbend, modulation, pitch envelope, autotune etc.
Oh, yes adding another DAC to handle the pitchbend would be a good idea! I didn’t even think of doing that. Also I had the pitchbend with the note CV together at the start when I was prototyping the project. Then I realized that I wanted to have the pitchbend and the modulation coming out of two separate outputs decoupled from the DAC (instead of CV+pitchbend+Mod all in one output of the DAC). So therefore I had to make some acceptations and sacrifice some of the pitchbend resolution.