I have an Arduino Nano 3.3BLE that will be used as a automotive fan controller. The controller senses up to 3 temperatures to control fan speed. At this point temperature control is pretty well understood. But I have a couple of analog input pins available that I may want to make use of.
Since this will be a universal controller those additional features are not defined as they will be at the users discretion of how to use and program them.
But in most cases these inputs may be used based on some automotive ~13.8V DC on or off type scenario which is too high for the 3.3V IO pins of the nano
So I would like to find the best way to assure any voltage coming into the IO pins is clipped to 3.3V max. In the attached schematic circuits A6 and A7 would be available as these types of inputs
Thanks for the reply. I get the opto but whats the LED for. This will all be in an enclosure, tucked deep under the dash board. Also I'm running a 3.3V Nano. Will those resistors change with 3.3V?
There are many millions of imputs protected like this. It is very low cost and effective.
Greater protection can be had by using regular silicon diodes (Vf ~0.7V) followed by a resistor and a pair of schottky diodes. A bit belt and braces, but the automotive environment can be very harsh. The resistor values and capacitor value can vary from those in this diagram.
This diagram is from https://www.digikey.co.uk/en/articles/protecting-inputs-in-digital-electronics.
There seam to be quite a few options here. I wont be commencing on this for some time but I do expect to get back to it. For the moment I am focusing on a board without these optional inputs.
Sorry, I’m confused by your explanation, could you please show me why you think there is a difference whether or not Arduino is powered on this diagram
If there is only 1volt on the 'Connector terminal', then nothing will flow into the 5.1V zener,
but current will flow into the pin through the MCU's internal clamping to the MCU's VCC.
Leo..
Then go find a topic on current protection. you singled out my reply as if I suggested some nonsense when in fact it is a common way of doing it. Thanks for wasting my time
Looking at some of the conversation going on, I'm not sure if my request may have been mis-leading. The way these pins will be used is to tell if a circuit is on or off. The actual magnitude of the voltage doesn't matter. So in this case applying automotive voltage of ~ 14V is the normal operation and not a transient. The goal is to make 14V or preferably any signal that is too high just clipped down to a something usable on the 3.3V IO pins of the Arduino.
One of the other goals I have is to get the component count to a minimum. Space is getting tight especially when there are multiple circuits to fit in. I probably wont attempt this until I get up to speed with surface mounted components.