Author Topic: Easy DIY 5.5 Digit DVM + Volt Ref./Cal. (LTC2400+LTC6655 / SPI uC / Arduino)  (Read 121799 times)

0 Members and 1 Guest are viewing this topic.

Offline quantumvoltTopic starter

  • Frequent Contributor
  • **
  • Posts: 395
  • Country: th
After I saw (the late) Jim Williams video on the Linear Technology Voltage reference LTC6655, I bought the 2.5 V version (a bit more than USD 10). In addition to be a 'nice to have' very low noise modern reference, it came to me that I have seen a lot of DIY precision DMM designs out there - but few of them have made it to actually measure anything.

So I decided to make a 6 1/2 voltmeter and bought the cheap LTC 2400 ADC (a tad more than 10 dollars). After reading datasheets and looking around the web, I realized that you can have a breadboard built meter running in less than an hour.

The pictures show a working prototype on top of an Arduino. If you are hip/cool/serious or in any other way too good for Arduino, you can hook the meter to any microcontroller that has 3-5.5 V DC supply and SPI. But if you need protection against hundred of volts or ruggedness that survives falls from 6 feet height you'll be better off looking elsewhere ...

I like these LT devices better and better - they are quality, cheap, simple to connect, rugged and well documented. Combined with the low noise op amp LT1012 as optional front end (buffer/amplifier/ADC-protector), this gadget (which even uncalibrated will give accuracy better than 0.025% / around 4.5 digits) also fills a real need for me: I can measure voltages with more than 3 1/2 digit resolution even when my Agilent 34401A is locked up doing long time data acquisition .

I will use this thread to post all information I have found about these devices and uses of them  :-DMM :-+
« Last Edit: September 23, 2013, 10:53:24 am by quantumvolt »
 

Offline BravoV

  • Super Contributor
  • ***
  • Posts: 7547
  • Country: 00
  • +++ ATH1
Re: PPMgeek! 5.5 Digit DVM + Volt Ref./Cal. (for Arduino or any uC w. SPI)
« Reply #1 on: September 23, 2013, 02:19:52 am »
Thanks for sharing, really interested on how you deal with the analog front end for the LTC2400, please post the schematic.

I have few for this 24 bit adc gathering dust for years.  :-[

Offline quantumvoltTopic starter

  • Frequent Contributor
  • **
  • Posts: 395
  • Country: th
Re: PPMgeek! 5.5 Digit DVM + Volt Ref./Cal. (for Arduino or any uC w. SPI)
« Reply #2 on: September 23, 2013, 02:34:02 am »
Documentation from Linear Technology:


LTC6655

Jim Willams: 775 Nanovolt Noise Measurement for a Low Noise Voltage Reference
http://video.linear.com/p4187-7

Product page
http://www.linear.com/product/LTC6655

Datasheet
http://cds.linear.com/docs/en/datasheet/6655fc.pdf

Product Video
http://video.linear.com/p4187-36

AN124: 775 Nanovolt Noise Measurement for A Low Noise Voltage Reference
http://cds.linear.com/docs/en/application-note/an124f.pdf


LTC2400

Product page
http://www.linear.com/product/LTC2400

Datasheet
http://cds.linear.com/docs/en/datasheet/2400fa.pdf

Demo board
http://www.linear.com/demo/DC573A

AN78 - A Collection of Differential to Single-Ended Signal Conditioning Circuits for Use with the LTC2400, a 24-Bit No Latency Delta Sigma ADC ...
http://cds.linear.com/docs/en/application-note/an78fs.pdf

AN80 - How to Use the Worlds Smallest 24-Bit No Latency Delta-Sigma ADC to its Fullest Potential
http://cds.linear.com/docs/en/application-note/an80.pdf

AN86: A Standards Lab Grade 20-Bit DAC with 0.1ppm/ °C Drift
http://cds.linear.com/docs/en/application-note/an86f.pdf

Design Solutions 11 - Testing Linearity of the LTC2400 24-Bit No Latency Delta SigmaTM A/D Converter Help from the Nineteenth Century
http://cds.linear.com/docs/en/design-note/dsol11.pdf


LT1012

Product page
http://www.linear.com/product/LT1012

Datasheet
http://cds.linear.com/docs/en/datasheet/1012afbs.pdf
« Last Edit: October 02, 2013, 07:46:16 am by quantumvolt »
 

Offline quantumvoltTopic starter

  • Frequent Contributor
  • **
  • Posts: 395
  • Country: th
Thanks for sharing, really interested on how you deal with the analog front end for the LTC2400, please post the schematic.

I have few for this 24 bit adc gathering dust for years.  :-[

I don't have a schematic. These bits are like LEGO - connect and play  >:D. But you will find a schematic at page 14 in the LT1012 datasheet linked over. (EDIT: Page 15. Also - you don't need +- 15 V as in the circuit diagram. Look at page 14 and page 1 and you will see that you can run single supply 3 V or more and symmetric minimum supply +- 1.2 V. Nice for batteries. If you want to include zero measurements you can use center tapped AA cells or use a charge pump inverter with the 9 V battery.)

Schematics, gerber and drilling is what I hope to get help for here  :-DD. I am too old for Eagle (my first programming was FORTRAN on VAC punch cards early 1970's). If a Shenzen PCB can be made these bits seem to be perfect for a low risk IGG project. Who knows? May be I'll do it.
« Last Edit: September 23, 2013, 10:52:40 am by quantumvolt »
 

Offline quantumvoltTopic starter

  • Frequent Contributor
  • **
  • Posts: 395
  • Country: th
Re: PPMgeek! 5.5 Digit DVM + Volt Ref./Cal. (for Arduino or any uC w. SPI)
« Reply #4 on: September 23, 2013, 04:03:02 am »
 

Offline dannyf

  • Super Contributor
  • ***
  • Posts: 8221
  • Country: 00
Re: PPMgeek! 5.5 Digit DVM + Volt Ref./Cal. (for Arduino or any uC w. SPI)
« Reply #5 on: September 23, 2013, 10:15:12 am »
Quote
LTC2400

That would be challenging for anyone to use.
================================
https://dannyelectronics.wordpress.com/
 

Offline quantumvoltTopic starter

  • Frequent Contributor
  • **
  • Posts: 395
  • Country: th
Re: PPMgeek! 5.5 Digit DVM + Volt Ref./Cal. (for Arduino or any uC w. SPI)
« Reply #6 on: September 23, 2013, 10:21:19 am »
Quote
LTC2400

That would be challenging for anyone to use.

Sorry. I do not understand your post.
 

Offline Andreas

  • Super Contributor
  • ***
  • Posts: 3221
  • Country: de
After I saw (the late) Jim Williams video on the Linear Technology Voltage reference LTC6655, I bought the 2.5 V version
I will use this thread to post all information I have found about these devices and uses of them  :-DMM :-+

Hello,

one question: do you use the hermetically tight LS8 package or the plastic package?

Mhm, when looking at the video: how can you measure >3V with a 2.5V reference. There is only 12.5% overrange on the LTC2400 device. Or do you use a voltage divider? In this case the pricing of the resistor voltage divider will be much more than the semiconductor parts, if you want to maintain the quality of ADC+reference.

A complete 5.5 digit digital multimeter can be found here:
http://www.thoralt.de/wiki/index.php/DIV
http://www.heise.de/ct/projekte/machmit/ctlab/browser/Schematics/schem_DIV3.pdf?format=raw

The LTC6655 has of course better initial accuracy, drift and noise than the used LT1019 in this design.
Also the LM399 which is a better device is useless when using a resistor divider to scale down to 2.5V.

The true RMS subboard and the power supply are described in separate articles:
http://www.thoralt.de/wiki/index.php/TRMSC
http://www.thoralt.de/wiki/index.php/IFP

Interesting tests which can be done:

- measure your own reference with the input. Should give exactly 2.5V except for the noise voltage. (how large?)
- measure inputs shorted. How large is the offset or did you adjust it?.
- is the reference voltage influenced by mechanical stress (board tweaking)

For lower offset than LT1012 a LTC2057 might be a better choice

With best regards

Andreas
« Last Edit: September 23, 2013, 02:29:46 pm by Andreas »
 

Offline quantumvoltTopic starter

  • Frequent Contributor
  • **
  • Posts: 395
  • Country: th

Hello,

one question: do you use the hermetically tight LS8 package or the plastic package?

Mhm, when looking at the video: how can you measure >3V with a 2.5V reference. There is only 12.5% overrange on the LTC2400 device. Or do you use a voltage divider? In this case the pricing of the resistor voltage divider will be much more than the semiconductor parts, if you want to maintain the quality of ADC+reference.


Thank you for your info. This first prototype is mostly for testing and includes a homemade divider made from some surplus Vishay 2.5/5 ppm/degree as well as some manually measured and selected metal film parallelled resistors.

The whole project is more like a tinker kit. After studying the web and reading this forum I now have these devices from LT: 1236, 6655, 399 - 1043, 1012, 1050 and 1097. They are all a mix of plastic MSOP, SOIC/SOP, DIP (living in Thailand on low budget leaves me few options but take what I can get from Chinese dealers and fleabay).

I have ordered 2 more LTC2400 (9.99 USD :o). My next prototype will be with 3 references that are very stable according to my 34401: one for 2.5, 5 and 10 V each. Also DHT11 and BMP085 for measuring temp, humidity and barometric pressure. By letting relays circle through the 3 refs (5 and 10 V divided down to 2.5) and using environment data I will make a linear interpolating software autocalibrating feature. Much cheaper and more fun than a fortune in precision resistors.

I am not really a 'volt-nut'. It is more like a hobby that fills the void after stopping drinking beer all day  :wtf:. The most precise externally confirmed voltage ref point I have is a board from gellerlabs confirming a 10 yo uncalibrated 34401A. And I will leave it like that.

« Last Edit: September 23, 2013, 06:11:17 pm by quantumvolt »
 

Offline Andreas

  • Super Contributor
  • ***
  • Posts: 3221
  • Country: de
I am not really a 'volt-nut'.

But it seems you are on the best way to get infected.

Just some thoughts:

with a LTC1043 you can get a 2:1 3:1 4:1 or 3:2 voltage divider which is much more stable over temperature or time than every resistor divider. (Although the absolute ratio will be off for some ppms and you will need a high impedance buffer like LTC1050 or LTC2057 at the output).

The LTC2400 LTC1043 and LTC1050 (all self adjusting or chopping devices) are nearly independent with temperature, humidity or mechanical stress. So the package and PCB material plays no role.

The voltage reference is the most critical part. The best experiences (for 5V references) regarding hysteresis, tempco and long term stability I have made with (selected, aged and mechanically decoupled) AD586LQ devices in ceramic package. The LM399 (hermetically metal package) will also be a very good choice after 2-3 months pre ageing.
On the plastic devices the general rule is that the same chip in a (larger + more stiff) DIP package will perform better than in a SO or MSOP package.

Standard metal film resistors have a relative large ageing rate (up to 1000 ppm). For precision applications you will need at least wire wound precision resistors (3-5ppm/K and 25-50ppm ageing) or vishay metal foil (0.2-2ppm/K and 25-50ppm ageing).

with best regards

Andreas

 

Offline quantumvoltTopic starter

  • Frequent Contributor
  • **
  • Posts: 395
  • Country: th
Re: Easy DIY 5.5 Digit DVM + Volt Ref./Cal. (LTC2400+LTC6655 / SPI uC / Arduino)
« Reply #10 on: September 23, 2013, 07:26:32 pm »
Thanks again. I think I will more or less stay away from high end resistors. I have 4 Vishay 0.01% and plan to buy a single 0.005% reference resistor (USD10+4shipping ).

I got the LTC1043 idea from one of your posts. I bought the LTC1050 together with a single 1N829A in order to make an old fashion ref.

But I realize that the LTC1043 and separate batteries for my 3 most stable refs combined with a lot of cheap good HK19F relays from fleabay makes me able to let the uC self calibrate the display at 0, 1.25, 2.5, 3.75 ... up to (10+5+2.5) 17.5 V. By using a software criterion the calibration will start by itself - and also I can force calibration with a push button. Since my front end dividers must hold calibration only for the few seconds it takes to perform the measurement, I can use almost any resistors. And metal film resistors are almost free today.

The method might be somewhat strange. But I like the mix of software, analog hi tech IC's, discrete logic, passive components and relays. I am more an experimenter than a builder ...
 

Offline Andreas

  • Super Contributor
  • ***
  • Posts: 3221
  • Country: de
Re: Easy DIY 5.5 Digit DVM + Volt Ref./Cal. (LTC2400+LTC6655 / SPI uC / Arduino)
« Reply #11 on: September 23, 2013, 08:54:58 pm »
I bought the LTC1050 together with a single 1N829A in order to make an old fashion ref.

The LTC1050 can only deliver around 2mA. So if you want to supply the 7.5mA constant current for the 1n829A you will need a additional power stage.

With best regards

Andreas
 

Offline echen1024

  • Super Contributor
  • ***
  • Posts: 1660
  • Country: us
  • 15 yo Future EE
Re: Easy DIY 5.5 Digit DVM + Volt Ref./Cal. (LTC2400+LTC6655 / SPI uC / Arduino)
« Reply #12 on: September 24, 2013, 01:42:18 am »
Would something like the LM399 work as the voltage reference? How would I get the voltage down, and also, are there any other ADI or TI parts that I can use?
I'm not saying we should kill all stupid people. I'm just saying that we should remove all product safety labels and let natural selection do its work.

https://www.youtube.com/user/echen1024
 

Offline quantumvoltTopic starter

  • Frequent Contributor
  • **
  • Posts: 395
  • Country: th
Re: Easy DIY 5.5 Digit DVM + Volt Ref./Cal. (LTC2400+LTC6655 / SPI uC / Arduino)
« Reply #13 on: September 24, 2013, 05:01:16 am »
Would something like the LM399 work as the voltage reference? How would I get the voltage down, and also, are there any other ADI or TI parts that I can use?

Yes you can use LM399. But it will need a PS/Batt 12 V or more. The LTC2400 takes 5.5 V max. The reason for the fuzz about LTC6655 is that it is modern 2.5 V and gives itself to battery operation in 3.3 V environments. To bring the LM399 down to 5 V you can use either a resistor divider/buffer or first bring it up to 10 V and then divide it with the LTC1043 capacitive divider. Andreas is the expert on all this, I am sure he will give advice.

You can get 24 bit ADC's from TI and others also. The same goes for refs and op amps. You can mix whatever you like - just keep in mind that your end product can quite easily give you some 17 - 19 'noisefree' bits (around 5-5.5 digits or 0.0025% or 25ppm) if you use pieces with similar precision.
 

Offline Andreas

  • Super Contributor
  • ***
  • Posts: 3221
  • Country: de
Re: Easy DIY 5.5 Digit DVM + Volt Ref./Cal. (LTC2400+LTC6655 / SPI uC / Arduino)
« Reply #14 on: September 24, 2013, 07:02:31 am »
Would something like the LM399 work as the voltage reference? How would I get the voltage down, and also, are there any other ADI or TI parts that I can use?

What other ADI or TI parts: references or ADCs?

In my opinion the most precise way (without using precision resistors within a temperature controlled cabinet) to divide the LM399 to usable ~5V is a 3:2 divider giving around 4.6V as reference voltage.

I have already simulated this with LTSPICE:

Input voltage is from a LM399 simulated as 6.86V with some "AC noise"
C4 is the 10 nF (but I need it doubled because the simulation uses 2 different LTC1043 instead of one)
C3 is charged to 1/3 of the input voltage and charged by C1+C2.
So the output voltage is Input voltage minus C3 voltage giving the 4.6V.
C5 is selected exactly for 1.5 times of C1...C3 to optimize settling time (and thus minimizing output ripple).
Of course the output has to be buffered by a OP-Amp to maintain stability.
It is a good idea to select C1...C3 for equal values. And C5 for a exact 1.5 fold capacity.
This will minimize startup time and ripple.
As power supply I have used 14V because I want to measure up to 10V with a second LTC1043 and because the heater current and PSRR of the LM399 will be lesser with higher power supply. Of course with specioalised cirquits you can use the LM399 from around >9V on.


With best regards

Andreas




 
The following users thanked this post: mycroft

Offline quantumvoltTopic starter

  • Frequent Contributor
  • **
  • Posts: 395
  • Country: th
Re: Easy DIY 5.5 Digit DVM + Volt Ref./Cal. (LTC2400+LTC6655 / SPI uC / Arduino)
« Reply #15 on: September 24, 2013, 09:48:25 am »
I bought the LTC1050 together with a single 1N829A in order to make an old fashion ref.

The LTC1050 can only deliver around 2mA. So if you want to supply the 7.5mA constant current for the 1n829A you will need a additional power stage.

With best regards

Andreas

My plan is to copy the 'nostalgia' feedback loop typical of the Khron-Hite 10 V references. I see people buy them for 2-300 dollar. But the reference loop can be made for 20-40 dollar: an 1N829A, a LTC1050, a discrete 2-transisor current source with a low tempco zener, and a driver transistor. (Since you say a chopper is needed for the LTC1043 I can buy a LTC2057 later).

The resistive divider might be as you say the most expensive part (but I only need 2 resistors). I have seen on volt-nut that someone has posted schematic. If I do no find it, the schematic of the beauty of a simple circuit that is stable within a few ppm from year to year can be studied at 20:00 in this video.


 

Offline echen1024

  • Super Contributor
  • ***
  • Posts: 1660
  • Country: us
  • 15 yo Future EE
Re: Easy DIY 5.5 Digit DVM + Volt Ref./Cal. (LTC2400+LTC6655 / SPI uC / Arduino)
« Reply #16 on: September 24, 2013, 03:54:48 pm »
Probably just a precision voltage divider then... or more LT samples...
I'm not saying we should kill all stupid people. I'm just saying that we should remove all product safety labels and let natural selection do its work.

https://www.youtube.com/user/echen1024
 

Offline mtdoc

  • Super Contributor
  • ***
  • Posts: 3575
  • Country: us
Re: Easy DIY 5.5 Digit DVM + Volt Ref./Cal. (LTC2400+LTC6655 / SPI uC / Arduino)
« Reply #17 on: September 26, 2013, 02:12:52 am »
Super cool project!  :-+

I picked up one of these LTC2400 Arduino breakout boards from Ebay to simplify using it in an arduino project to monitor current into and out of my solar system batteries via a 500amp/50millivolt shunt.  Didn't think I had the soldering skills to use it otherwise....   The voltage reference is not as high end as the LTC6655 but it's probably good enough for my project. The board does have pads in place to substitute a somewhat better Analog Devices REF195E 5.0V reference.

This stuff is all new to me but the LTC2400 is just the ticket I needed for my project since the Arduino's built in 10bit ADCs did not have the resolution I needed.

I'm looking forward to seeing what your final build looks like!
 

Offline quantumvoltTopic starter

  • Frequent Contributor
  • **
  • Posts: 395
  • Country: th
Re: Easy DIY 5.5 Digit DVM + Volt Ref./Cal. (LTC2400+LTC6655 / SPI uC / Arduino)
« Reply #18 on: September 26, 2013, 03:54:44 am »
Super cool project!  :-+

I picked up one of these LTC2400 Arduino breakout boards from Ebay to simplify using it in an arduino project to monitor current into and out of my solar system batteries via a 500amp/50millivolt shunt.  Didn't think I had the soldering skills to use it otherwise....   The voltage reference is not as high end as the LTC6655 but it's probably good enough for my project. The board does have pads in place to substitute a somewhat better Analog Devices REF195E 5.0V reference.

This stuff is all new to me but the LTC2400 is just the ticket I needed for my project since the Arduino's built in 10bit ADCs did not have the resolution I needed.

I'm looking forward to seeing what your final build looks like!

Yes - that is the same seller where I found the chip for some 10 dollar, while the plug-and-play-board you have bought is a bit more expensive but has on-board reference REF3040. It is OK for your use, but not for a Voltmeter (imo). I have studied the seller's download files, and there is schematic for your board. It is quite easy to put in a better reference later. He recommends REF195E, which imo also is good. I have a few that I use for other purposes. If you do it, you must put in a 7805 (solder pads are there already), feed the board with 9 V (that goes directly to the 5 V reference and via the 7805 to the LTC2400), and remove L1 (and better remove the old reference). If you go for a reference of another type that uses connections to more then pins 2,4 and 6 (standard), then you will have to put in a few small wires.

His code is a mod from the first (?) published code from a German man/university lab. There is code both for serial window and a 1602 display. I use parts of this code - it works OK but needs some cleanup.

I'll be back with a more decent shield-build that I will keep as my second precision DC Voltmeter  :-DMM
 

Online bingo600

  • Super Contributor
  • ***
  • Posts: 1976
  • Country: dk
Re: Easy DIY 5.5 Digit DVM + Volt Ref./Cal. (LTC2400+LTC6655 / SPI uC / Arduino)
« Reply #19 on: September 26, 2013, 03:25:05 pm »
I have some MAX6198-AESA (8-Pin SOIC) (4.096v)
http://datasheets.maximintegrated.com/en/ds/MAX6190-MAX6198.pdf

They seem to have quite the same specs. as the suggested REF195E.
But DS says 500uA , would that work as a ref for the ADC ?

/Bingo
 

Offline quantumvoltTopic starter

  • Frequent Contributor
  • **
  • Posts: 395
  • Country: th
Re: Easy DIY 5.5 Digit DVM + Volt Ref./Cal. (LTC2400+LTC6655 / SPI uC / Arduino)
« Reply #20 on: September 26, 2013, 09:18:42 pm »
In my view the MAX6198 will work fine. Good for battery use. The LTC2400 has analog input leakage current max +- 10 nA, so 500 uA supply from the ref is ample. Some of the feinschmecker members here might think a max tempco of 5 ppm/degree CELSIUS* is a bit high (it will typically be lower), but I am more pragmatic. I never have the time for rigging decent measurement conditions. If I can see 5.000 0xx V once, I am OK  :-+ .

NOTE* The CELSIUS is an early Christmas present to some our European Central Continental brothers that like to point of that if it ain't Kelvin, it is not scientific. Nice to see an American datasheet using Celsius.
 

Offline branadic

  • Super Contributor
  • ***
  • Posts: 2378
  • Country: de
  • Sounds like noise
Re: Easy DIY 5.5 Digit DVM + Volt Ref./Cal. (LTC2400+LTC6655 / SPI uC / Arduino)
« Reply #21 on: September 26, 2013, 09:28:43 pm »
Quote
NOTE* The CELSIUS is an early Christmas present to some our European Central Continental brothers that like to point of that if it ain't Kelvin, it is not scientific. Nice to see an American datasheet using Celsius.

Got it, but what do you want to expect of a continent that still measures in units of body parts  :-DD
Computers exist to solve problems that we wouldn't have without them. AI exists to answer questions, we wouldn't ask without it.
 

Offline quantumvoltTopic starter

  • Frequent Contributor
  • **
  • Posts: 395
  • Country: th
Re: Easy DIY 5.5 Digit DVM + Volt Ref./Cal. (LTC2400+LTC6655 / SPI uC / Arduino)
« Reply #22 on: September 26, 2013, 10:37:49 pm »
Quote
NOTE* The CELSIUS is an early Christmas present to some our European Central Continental brothers that like to point of that if it ain't Kelvin, it is not scientific. Nice to see an American datasheet using Celsius.

Got it, but what do you want to expect of a continent that still measures in units of body parts  :-DD

Just joking  ;D. I must admit that I have learned a lot from the continental European members here. Thanks to all.
 

Offline echen1024

  • Super Contributor
  • ***
  • Posts: 1660
  • Country: us
  • 15 yo Future EE
Re: Easy DIY 5.5 Digit DVM + Volt Ref./Cal. (LTC2400+LTC6655 / SPI uC / Arduino)
« Reply #23 on: September 27, 2013, 02:59:51 am »
Rest of world: 10^x for most units
United States, 5280, 16, 128, 4, 1760, WTF????
I'm not saying we should kill all stupid people. I'm just saying that we should remove all product safety labels and let natural selection do its work.

https://www.youtube.com/user/echen1024
 

Offline quantumvoltTopic starter

  • Frequent Contributor
  • **
  • Posts: 395
  • Country: th
Re: Easy DIY 5.5 Digit DVM + Volt Ref./Cal. (LTC2400+LTC6655 / SPI uC / Arduino)
« Reply #24 on: September 27, 2013, 10:25:46 am »
DVM Shield for Arduino. Need one day to fix the code. Video of functioning meter tomorrow  ::) Yep  >:D





« Last Edit: September 27, 2013, 10:31:55 am by quantumvolt »
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf