CV in to Axo analog in (gpio)

modular

#1

so I'm going 0..5v to 0..3.3.

Ive implemented a diode clamp , as per

1k, r3 , d3,d4 are bat 85 (schotty diodes)

it kind of works , but ive noticed the voltage range is 0..3.5v rather than 3.3v

Ive checked the voltage I'm feeding is 5.1v (from axo 5v line), and 3.28v (from vdda), this is according to my multimeter.

I also checked with 9v and again clamped from 0 to 3.51v

why the difference?
what does R1 do?

in this solution, my plan was to use a simple voltage divider to get the input, so theoretically, the clamp is needed in case I some how put more than 5v in.
(alternative opamp solution, I'm putting comments on below)

a couple of small related questions
- im assuming the circuit also needs the two grounds to be connected.
- if the dumb user (me :wink:) accidentally puts a cv input from the modular to this, I'm assuming this is 'ok', just no current will flow. (vs output to output, where I'm assuming i should put a diode to protect reverse current)

EDIT: tried replacing diodes with 1N5818 and similar, clamps at 3.44v so still over the 3.28 Id expect.

apologies in advance if my terminology is incorrect, very much a noob on this stuff, please correct me where necessary, I'm keen to learn :slight_smile:


Suggestions for CV/gate out from Axoloti to new Euro-compatible Behringer Model D
#2

bonus question... (id like to know the above still, so I can document alternatives)

so the above is useful for a simple voltage divider.

the alternative is to use a rail to rail opamp - I have some MCP6002s

if I use the MCP6002, so I need a diode clamp, since the rails are at 0 and 3.3v, so surely cannot exceed this?
also the above link showing an opamp has schotty diodes d1, d2.. what are these for?

so the mcp6002 looks good, as I potentially get scaling, protection and also I think it my add a bit of low pass filtering (?), but I guess I will need two in series, otherwise the cv will be inverted.
(I presume the second can just be unity gain, as its just going to invert)


#3

http://irieelectronics.de/wp-content/uploads/2016/09/op_amp_ciruit.svg


#4

http://build.irieelectronics.de/io-routing/

hope to find a solution for 1v octave , any help would be welcome


#5

There is a simple diode clamping circuit on the Doepfer DIY page that he uses to limit the voltages to some of his voltage sensitive circuits. I don't know how well it would work for pitch related CV use where scaling etc really matters, but it might be useful for you too. http://www.doepfer.de/DIY/a100_diy.htm It is in the bottom of section#2 Basic Circuits.


#6

thank you, this is really helpful

ive been looking thru the euxoloti schematics (thought hadn't seen the website where this was nicely documented), but as its for different voltage ranges, its tricky for a beginner (like me) to adapt it.
( I understand the basics with opamps etc, and have this working on a breadboard, but its the extra components that are added, that I'm unsure what they do)

the doepher page is great ...lots of useful circuits.
the description on the voltage clamp helped me understand the issue

the forward voltages differs at different currents but the 0.3v is basically what id probably get.

so this still raises the question, is 3.6v acceptable on the gpio pins... since all diodes are going to take it slightly over 3.3v (as they all have forward voltage)

still raises questions of the MCP6002, and if a voltage clamp is necessary for protection..., perhaps i'll chuck 9v into it, and see if it blows up, or exceeds 3.3v... (of course, whilst NOT connected to Axoloti :wink:)


#7

The BAT85 diodes have a voltaje drop of about 0.4V (it depends of the current flow), this voltaje adds to the reference voltaje, so the maximum voltaje you are measuring is correct, and I think the Axoloti will handle with no problems.

The 1K resitor is there to limit the current once the diode starts to conduct (without the resitors current will be to high and the diode will broke).


#8

Thanks great info.
So to calculate the value of the resistor, I need to look at the max current allowed for diode, and expected max voltage.


#10

Yes and no... Also you have to take in account that the current will have to be managed by the Axoloti regulators, and that current could introduce disturbance in the reference voltages = noise...
In the post about the Axoloti hardware pinout somebody recomended a serial resitor between 10K (minimun) and 50K to be safe.
To me those values are too high in the sense that this resistor will form a voltage divider with the input impedance of the GPIO (50K) so the voltage at GPIO will be lower than the maximum voltage expected, therefore you never reach the maximum digital read...
In my design I ended using MCP6002, a solution a bit more complicated but safer (I think)...
I'm building my interface right now, if works fine I will share the schematics and PCB.


#11

Interesting @Sebo , increasing the resistance (to a 47k) would help drop the Vfd, but your saying will cause a voltage divider so lower voltage at pin.
So what's the 'theoretical' solution? measure current under normal use and size resistor accordingly?

Yeah I've got some 6002, so I think that's my route too. I guess that will provide the protection as will only go to rails - no issue with input exceeding rails - no?


#12

Actually I didn't find an easy solution with diode clamp, I didn´t try much, as I think that the rail to rail opamps are better/safer, and, to be honest, I looked at what some designers are doing, and they go for the op amp way (ie: Mutable Instruments).
With the MCP6002, if inputs exeeds the rails voltage for a small amount the output will stay at rails level, if input increases a lot over the rails level the output will be inverted but between the rail levels (that's called common rejection ratio), this will give a strange reading for the Axoloti, but nothing will burns...


#13

Here I posted the final circuit I used: