Millivolt Meter Version 2

MilliVolt Meter V 2.11 Front 4 Volt range
MilliVolt Meter V 2.11 Front 4 Volt range

An updat­ed ver­sion of the Millivolt Meter project from May 2016, with dual range selec­tion, cal­i­bra­tion selec­tion, improved soft­ware, and updat­ed board lay­out.

After three years, I decid­ed it was time for a refresh of my orig­i­nal Millivolt Meter ver­sion 1.51, based on the Scullcom Hobby Electronics  Millivolt Meter on Youtube.
The orig­i­nal board was designed to loose­ly match the orig­i­nal Scullcom Hobby Electronics thru-hole board using a mix of sur­face mount and thru-hole devices instead. The major changes in ver­sion 1.5 were the addi­tion of the Caddock volt­age divider in place of the dis­crete resis­tors, the Arduino Pro Mini instead of the Nano, and using an I2C con­nect­ed dis­play instead of the direct­ly con­nect­ed par­al­lel dis­play.

Original Millivolt board V 1.5 Top Components
Original Millivolt board V 1.5 Top Components

The Version 1.51 board was fea­tured in a lat­er video by Scullcom Hobby Electronics as the Millivolt Meter MK2, with sev­er­al oth­er updates.

Paul Versteeg made sev­er­al mod­i­fi­ca­tions to the board such as bat­tery volt­age mon­i­tor­ing and refined the soft­ware to include fil­ter­ing, and improved cal­i­bra­tion. Paul’s Blog

Millivolt Meter V2.1 Assembly test setup
Updated Millivolt Meter V 2.1 Assembly test set­up

The new ver­sion 2 board is now larg­er to sup­port the addi­tion­al com­po­nents.
One of the first changes was to replace the TO220 volt­age reg­u­la­tor with a sur­face mount low qui­es­cent cur­rent / low dropout ver­sion. Also added was a PTC fuse on the 9 volt input. The board will now work with a sup­ply down to 5.4 volts which allows the 1.5 volt bat­ter­ies to be drained all the way to 0.9 volts each.
A MAX14931 dig­i­tal iso­la­tor was added between the dig­i­tal and ana­log sec­tions of the board for com­mu­ni­ca­tions with the LTC2400 ADC, and iso­lates the SPI bus and relay con­trol.
The ADR4540 volt­age ref­er­ence remains the same, but now has mechan­i­cal and ther­mal iso­la­tion slots around it along with addi­tion­al fil­ter­ing on the vref out using film capac­i­tors.
The input volt­age divider still uses the Caddock pre­ci­sion decade resis­tor divider, but it is now con­fig­ured as a 10 meg Ohm 10:1 divider on the 40 volt range. A shield­ed COTO relay with a 5 volt coil is now includ­ed to switch to a 4 volt range, which bypass­es the divider still keep­ing a 9 meg Ohm input resis­tance.
I added an over-range check in soft­ware to auto­mat­i­cal­ly switch to the 40 volt range from the 4 volt range if the volt­age is greater than 4.01 volts or the ADC sets the over-range bit, along with set­ting the back­light to vio­let to warn of the range change.

Millivolt Meter V 2.11 Assembly test shorted input
Millivolt Meter V 2.1 Assembly test set­up with short­ed input

Some oth­er new items are an input pro­tec­tion board, a ZeptoBit iso­lat­ed USB-UART adapter, Multi-input I2C LCD dis­play adapter with EEPROM, bat­tery volt­age mon­i­tor, and back pan­el cal­i­bra­tion selec­tion switch.

Millivolt Meter V 2.11 top inside
Millivolt Meter V 2.11 top inside set­up for volt­age ref­er­ence 1,000 hour burn in. (exter­nal pow­er)

To con­nect the USB iso­la­tor to the back pan­el I used an Adafruit pan­el mount exten­sion USB Cable — Micro B Male to Micro B Female #3258.
For the cal­i­bra­tion switch, I used a C&K MA00L1NZQD rotary switch and pinned it for 5 posi­tions with the fifth posi­tion being OFF to pre­vent acci­den­tal cal­i­bra­tion from the front pan­el.
I was orig­i­nal­ly going to use 4 sin­gle cal­i­bra­tion points, but end­ed up using a 2‑point cal for each range at 10% and 90%.
Cal‑A and B are used for the low (0.4096) and high (3.6864) cal for the 4 volt range, with Cal‑C and D used for the low (4.096) and high (36.864) cal on the 40 volt range.
The cal­i­bra­tions for each range must be done with A before B, and C before D, as the high cal for each range uses data from the low cal for it’s cal­cu­la­tions.
The 2‑point cal does­n’t use a zero cal, so that front pan­el switch is cur­rent­ly unused.

Millivolt Meter V 2.11 back panel
Millivolt Meter V 2.11 back pan­el

I used a 6‑cell AA bat­tery pack for nor­mal oper­a­tion of the meter, but added an exter­nal pow­er jack for test­ing and burn-in pur­pos­es. I kept the unit pow­ered con­tin­u­ous­ly for over 1,000 hours / 45 days to allow the volt­age ref­er­ence drift to set­tle, before my final cal­i­bra­tion.
Overall I am pleased with the updates, but feel that there is still room for improve­ment espe­cial­ly with the soft­ware to reduce some non-lin­ear errors with the ADC.
I would like to uti­lize the EEPROM on the I2C dis­play board to map out the non-lin­ear errors in the ADC cir­cuit, but that will be a future project.

Millivolt Meter V 2.11 front shorted input
Millivolt Meter V 2.11 front short­ed input

Eagle CAD board and schemat­ic files Millivolt Meter Version 2.11
OSH Park Millivolt Meter V2.11 project page

Millivolt Meter Ver. 2.11 BOM

Eagle CAD board and schemat­ic files RGB I2C Display with EEPROM

Eagle CAD board and schemat­ic files Input Protection board

Front Panel Designer front and back pan­el files for Hammond 1455N1601BU box

Arduino sketch files for soft­ware ver­sion 3.34

Modified Adafruit_RGBLCDShield library for addi­tion­al input I/O

2 Replies to “Millivolt Meter Version 2”

  1. Hi Greg,

    This looks like a very good iter­a­tion from your 1.5 ver­sion. I was wait­ing to see if there had been any fur­ther devel­op­ments and am pleased to see that you have incor­po­rat­ed sev­er­al advances in this design. I like the mul­ti­point cal­i­bra­tion mech­a­nism and the board design looks like it has incor­po­rat­ed sev­er­al advances that, in the­o­ry should improve on the pre­vi­ous per­for­mance. The changes to the volt­age reg­u­la­tor was some­thing I was intend­ing to do if I made the 1.5 ver­sion, but the oth­er changes should be very ben­e­fi­cial too.

    One of the issues raised with the pre­vi­ous prob­lem seemed to be wide vari­a­tions and lin­ear­i­ty prob­lems at the very low end of the range. Has the range switchover improved this? It seems that you have a strat­e­gy for address­ing lin­ear­i­ty and stor­ing this in EEPROM which sounds like it should be a sim­ple cod­ing issue 😉 rather than a pcb design prob­lem.

    Looking at the pho­tos in your blog, I note that there are a cou­ple of post-pro­duc­tion ‘addi­tions’. There is a blue wire from pin 5 (INA3) on the iso­la­tor head­ing under the Arduino — not sure if that has been addressed on the lat­est pcb? There is also a SOT23 daugh­ter­board vis­i­ble on the ‘top view’ of the open case above — looks like it might be an addi­tion­al volt­age reg­u­la­tor to the Arduino?

    I am busy with the MilliOhm meter at the moment but will be fol­low­ing this one close­ly as it is high on my list of ‘inter­est­ing projects’.

    As a com­plete aside, I designed a set of RF H‑Field probes on a 4 lay­er PCB ear­li­er in the year but nev­er got round to pro­duc­ing them. When I was look­ing on OshPark for the MilliOhm boards, I came across a sim­i­lar set you had pro­duced but can’t find any ref­er­ence to them in your blog. I would be inter­est­ed to know if you got them to work or if you had any prob­lems with them.

    1. Hi John,
      There is some improve­ment at the low end due to the range switch and the 2‑point cal­i­bra­tion, but once the mea­sured volt­age is at the mid­dle or extreme high/low end of the range, there are still errors in the hun­dreds of uV.
      The errors are very repeat­able and sta­ble, so that is why I am inter­est­ed in explor­ing addi­tion­al cal­i­bra­tion meth­ods.
      The blue bodge wire was to cor­rect a non-con­tin­u­ous trace for the relay con­trol, which has been cor­rect­ed in Ver. 2.11
      The SOT23 is a Maxim MAX6342 pow­er on reset mon­i­tor that I was exper­i­ment­ing with. The dis­play that I was using had a real­ly long start­up and would require a sys­tem reset 10% of the time when pow­er­ing up.
      I end­ed up adding some addi­tion­al capac­i­tance to the exist­ing reset cir­cuit on the Pro-Mini (the blue capac­i­tor) and remov­ing the MAX6342.

      The H‑Field probes were designed, but haven’t been ordered yet. Eagle CAD files

      Greg (Barbouri)

Leave a Reply

Your email address will not be published. Required fields are marked *