Convert input voltage to an output current


i have a Keyes NANO ATmega328P Board 16MHz

input is from a water pressure sensor that outputs between 1.5V to 3.0V from empty to full

output to the gauge needs to be 4-20 mA empty to full

can some one give me a steer or link, as to how to code for this please
would a different board be better / easier ?



Why with microcontroller? Not needed Arduino. Just OpAmp voltage to current conversion. Ask Google for scheme.

There are standard interface modules for that purpose. Search for "4 to 20 mA transmitter".

thank you, now the 4-20mA for the gauge makes sense, this is an industry standard

so this tramsitter takes the input voltage and outputs 4-20 mA

i will be running it on a 5V supply, from the pdf i can see at no.6 that the jumper needs to be moved, no problem

which pins do i need to connect to for the Voltage in and mA out ?

(i will still need the arduino to expand the range so the gauge has a zero to full scale deflection, i have done the coding and testing for that already)

The power, ground and current output pins are clearly labeled: 3.3V, 5V, GND and Vloop.

The board is controlled by SPI commands. You will need a code library or an instruction sheet to know what to send. The device PDF invites you to download code examples at

Ah !

i assumed it would do a basic V to A conversion only

being able to code it is much more useful :slight_smile:

will order one, many thanks for pointing me in the right direction, have a great day

The board has an MCP4921 12 bit DAC, so you are partially correct. But you need to know how to program the DAC and what voltages to command, in order to set the output current.

tnx JR
i will buy one and look up on the docs to see how to program it
figured out how to do the arduino, so cant be that tough :wink:

going to be few weeks as its v busy at work, i have been looking for a converter like this for over a year, so am happy with the 'progress'