The State-Based Nixie Multimeter

state

Instead of numbers the IN-15A Nixie tube has symbols, specifically n, μ, P, -, +, m, M, k, Π, and %. The related IN-15B Nixie has letters: A, F, H, Hz, Ω, S, V, and W. These should look familiar to you. [kittan] decided it would be really cool to have a Nixie-equipped multimeter, and since he’s going retro fabulous anyway, he might as well make his multimeter controllerless, with discrete logic and comparator ICs. It’s a state-based Nixie multimeter, and it’s going to be freakin’ awesome.

The basic plan of the multimeter is a precision 1V voltage reference, a bunch of opamps, and a ton of resistors to form a ladder All the opamps in each decade are XOR’d together, so when one of the ten comparators for each decade stage is tripped, only one number will display on the (numeric) Nixie tube.

With a reasonable plan for measuring a voltage, it’s not too hard to expand the design for other measurements. V=IR, so with a constant current, V=R. The same equation can be used with a fixed resistance to determine current. Capacitance can be measured by comparing the change in charge of a known capacitor. Inductance, conductance, power, and frequency are all planned for this monster of a multimeter.

The initial PCB design is completed (and shown above) and it’s theoretically possible to do on a single-sided board with a minimum of jumpers. An amazing project, and even though you could probably find a similar, ancient meter in a trash heap or on a collector’s shelf, this is by far one of the best Nixie projects we’ve ever seen.

 

29 thoughts on “The State-Based Nixie Multimeter

  1. Oh, huh. This got featured overnight. I just posted the PCB yesterday evening; it’s probably pretty terrible as it’s a first draft and I have not much experience yet with PCB design, I tend to prototype stuff directly but I wanted this project to be repeatable.
    Additionally, the “state-based” label isn’t terribly accurate anymore; my original idea was to use a single divider and some basic state logic to iterate residue/remainders back through the divider loop for successive decades of measurement but decided it would be a lot easier (and probably more precise) to just use one divider for each decimal place of the output instead. The PCB currently shown is one divider board, so the final will probably have 4 of them edge-connected into a display board with the nixie tubes and module control for what is being measured. The board as it is should be able to directly drive low-side NPN transistors on the nixie cathodes without any additional logic or drivers required.

    Additionally, it seems strange to feature a project when it’s only about 5% complete. But thanks, it’s pretty cool to make the main page.

      1. Nope, I wasn’t really around this site much before the sci-fi contest in April (Novak and I were building The Matrix, I got the hardware done but we didn’t get any complete code ready). Last fall Novak bought some nixie tubes and wanted to make a clock, see if we could end up selling some for the business we had just started; my job was power supply and drive circuitry but he was in charge of the microcontroller code. It’s funny, we’ve been about 80% done since about Thanksgiving but haven’t gotten around to picking it back up; we’re the alarm amplifier circuit short of being ready for a final PCB design and after that all that’s left is the case, which I’m partial to routed and finished oak.
        At some point I might post some documentation of another nixie project I was asked to do, for a guy that wants an analog-only 64-band stereo audio spectrum analyzer. Nothing like designing 64 different third-order bandpass filters and strapping them to envelope detectors and log amplifiers and current drivers and also needing a 150W 100V DC supply. Should be a fun project. Nixies are pretty sweet, and I knew almost nothing about them before last November.

    1. The layout looks fine for a first prototype. My main layout suggestion going forward is to use the schematic as a starting point for your layout. With the through hole parts, you should be able to snake the feedback to each analog switch back under the comparators and ladder.

      As for measurement errors, It looks like you should be able to tune out most of the residual error between stages with a gain adjustment pot on the error-amp. (after that I think comparator precision will be the biggest error source) To save parts, comparators with a push-pull output would save 9 resistors. Using logic level fets for the Nixie tube outputs would save another 9 resistors.

      1. When I was sampling parts for a nixie clock last year, the 200V-capable logic-level FETS I spec’d cost 4 times what the 200V-capable NPN cost. Since each meter will require something like 60 of them, I opted for the design that, even adding in resistors, should save a bit of money. Additionally resistors are like built-in jumpers, which might be needed anyway. I liked FETs going in but it wasn’t as economical.

        Yep, my guess was also that ending up with calibratable gain on the error amp (probably actually adjusting gain on the output and the inputs might be good) would help dial in the precision. It’ll be implemented later, right now I mostly just want a proof-of-concept.

        I designed this layout based mostly on that the comparators were on both sides of the chip, so I wrapped the voltage divider ladder around them (down one side and up the other) to make that simpler. The problem I’d run into with putting them all in line is that all adjacent pairs of comparators feed into XOR gates, so pretty much anything I do I’ll have resistor routing into both sides of the chip and outputs routing from both sides to something else. And the resistor ladder feeds into the switches but the logic routes around to them as well so it’d have to bypass all the comparators and divider resistors. It’s worth a shot seeing if I can pull it off with fewer jumpers, that’s mostly my main concern because jumpers are annoying. The board needs to be designed such that I can make it at home and currently all we got is single-sided copperclad and toner transfer process. Once I get around to trying it again I’ll post the updated board (if it’s worth it). I might wait until this one is tested, and then I’ll add decoupling caps and some other needed things as well.

        Additionally, I haven’t seen comparators with push-pull, they were always open-collector. I’ll do some digging because that would be quite handy, thanks for the suggestion.

        1. Ah, output fets are a cost/assembly-time tradeoff. Figured as much.

          The MCP6542 is one of my favorite comparators with a push-pull output though it’s dead slow and has higher input offset than I’d want for an ADC. (and the 600nA quiescent current is wasted in a Nixie DMM) I’d also look at Microchip’s op-amp line. The inputs tolerate use as a comparator, and they have tighter input offsets with no hysteresis. The MCP602 looks like a good candidate. A capacitor from the output to the +in pin can add AC hysteresis as needed to stop/slow oscillations.

          For layout, chips oriented perpendicular to the resistor ladder works well in my minds eye. The under-chip area should then be mostly free to run feedback lines. The trade off is that power, ground, and the input voltage now have lots of jumpers.

          1. I’ll look into that part. Low offset and high input impedance will be good things for this project; speed doesn’t matter a whole lot because the display is ripple-fed from a sample-and-hold latched input anyway so it’d need time to settle out regardless.

            Did you look at the ladder board schematic in the project writeup? If I redesign the PCB I’ll probably look into doing it a lot like that except horizontal – a long narrow board with the resistors, comparators and logic down the long axis and an edge connector at the end. I’ll see about putting the current design to the test hopefully this week and verifying the basic operation before sitting down to a redesign.

          2. Ordered some MCP602 today to test out on the prototype PCB; looks like they’re pin-compatible with LM393 so it should be a drop-in replacement. I’ll test with the LM393 first to get some baseline expectations. Hopefully I’ll have some pictures and test results of the first test PCB this week.

  2. V=IR but the current doesn’t have to be 1A. When the current is constant the V is a linear function of IR where I is a constant coefficient, V is Y-axis and R is X-axis. Shame on you for oversimplificating the Ohm’s law!

    1. It should have said “V is proportional to R”, where the constant of proportionality is the constant current. Read the actual project writeup instead. Their mistake wasn’t an oversimplification of Ohm’s law, but an assumption of the constants used in the measurement process. The end result *will* be that V=R, because the only thing actually being displayed is voltage and every measurement module will operate solely on outputting voltages equal to the quantity being measured, but they’ll all require scaling amplifiers and whatnot to achieve it. Read and nitpick the project itself rather than the very brief description written by someone completely unrelated to the project.

  3. Hi kittan,

    for precision measurements of capacitance values, you could use a very simple capacity-to-voltage-converter circuit using two of the famous NE555 timer ICs.

    If you use one of the CMOS-based NE555 derivatives (e.g. ICM7555/ICM7556), this yields very accurate capacitance measurements.

    In fact, this circuit is employed in one of the hybrid ceramic daughter boards on the Metex M4650B digital multimeters. (I once had to repair mine, this is why I know this).

    It is an astable oscillator with a fixed frequency, followed by a monostable pulse generator with Cx as the pulse-width-determining element. The output is a PWM with the pulse width directly proportional to the measured capacitance value.

    A simple RC filter serves as integrator for a voltage output, which you can feed into your voltage measuring stage.

    It is this circuit:
    http://www.electronicecircuits.com/electronic-circuits/capacitance-meter.

    By the way, this is also useable for inductance measurements!

    Simply swap the pull-up-resistor of the monostable stage in place of the Cx and connect the unknown inductor in place of the pull-up-resistor.

    Do you plan only having only a one-digit voltage measurement?

    I did not read this out of the description.

    1. I’m planning on stacking four of the divider boards to get a four-digit measurement. I probably only have enough precision for three digits but I might as well. Each board does a decade truncation (that is, floored to the tenths place), displays the truncated value then subtracts the truncation from the input (giving the remainder unmeasured value of less than 0.1V), multiplies by 10 and sends it to the next board. So the first board causes to display the tenths, the second board hundredths and so on.

      I’m trying to see what I can do without a lot of complexity, so nesting 555s into an LPF exceeds the limits of the design philosophy just for capacitance. The best I came up with for duty cycle relies on precision voltage clamping and LPF but that’s fairly obvious. Additionally if you think about it, the circuit you described is in principle pretty similar to what I’m designing for capacitance measure (there’s a full paragraph and block diagram in the project writeup) but with directly sampled voltage instead of voltage transformed into a pulse width and then back to a voltage.

      1. The problem with charging a capacitor to a certain voltage and then measuring it is leakage current of the measuring circuit and the capacitor itself, and – more importantly – measurement noise.

        By averaging a duty cycle output over multiple cycles using a low-pass-filter, voltage noise of the comparator threshold can be mostly eliminated.

        This will be vastly more accurate.

        BTW, the precision voltage clamping is done automatically if you use a CMOS version of the NE555. Its discharte gpin output swings exactly to GND.

        1. Right, but… “I’m trying to see what I can do without a lot of complexity, so nesting 555s into an LPF exceeds the limits of the design philosophy just for capacitance.”

          With a MOS-input comparator the current loss is limited; if my charging current is at least a few orders of magnitude greater thant the expected loss current that’s just fine with me. Additionally the measurement will be latched and refreshed every second or half-second so if the measurement needs to be averaged the user will notice fluctuations and say “oh hey, it must be about this value”.

          If that turns out to not be good enough, I’ll consider a redesign using more complex methods. But the point of the project is to find out what is good enough using the least complexity.

          1. deedee, By “capacitance”, do you mean the range of the capacitance setting, or actual capacitance of the input?
            The manual for my Metex M-3640D (yes, I know, not the same meter, but maybe similar enough) has two
            capactance ranges: Lo: nF2/20/200 and High: uF 2/20/200

            Oh! wait! the manual also lists the same ranges for a M-3650D

          2. Hi Ren, Thanks for responding. I need the actual capacitance of the multimeter and not the capacitance range it can measure. I need the actual capacitance t find out the stray losses of my system.

  4. ‘accurate’ and ‘555 timer’ are never to be used in the same sentence.

    there are precision voltage measurement chips (24bit a/d) and use a simple arduino (sorry) to process. in fact, I’d just hack a dmm board, capture the display data and adapt that to nixies. (I build nixie clocks, db volume level displays and other things; nixies are cool and they’re coming back in style, at least for some apps)

    1. I likely won’t try for precision measurement in the picofarad range, let alone femtofarad.

      Using standalone A/D converters defeats the entire purpose of the project. Hacking an existing DMM board defeats the entire purpose of the project. Using an arduino utterly destroys the entire purpose of the project and is also something I’ll never do for any project ever. Please read the actual project description and the reasons for the project before commenting anything about recommending any complex integrated and/or digital solutions.

  5. Neat. I have an old bench top multimeter with a two digit nixie display I found at a rummage sale a while back. Cool looking, but a bit unstable and I haven’t take the time to try and fix it yet.

    1. I would suggest that it’s a terrible idea, based on the design philosophy of the project. The project exists to find the most functionality possible with only basic circuitry that specifically does not include, wherever possible, complex combined logic like binary counters. Additionally, if I used a binary counter like slope integrators tend to do, I’d need additional dense logic to convert between the binary output and multi-digit decimal. Instead I’ll use comparators and exactly one layer of logic to directly translate between the voltage level and my nixie display output.

      If you read the actual project data, I am looking to use linear ramp charging fairly heavily in a lot of the measurement circuits. In that sense, I am applying some of the theory behind slope integrators. But the application of a full slope-integration ADC violates the purpose of the project by giving no additional functionality with a great increase in complexity. Most classic multimeter designs are not this multimeter design, for a reason.

        1. Thanks. I’m in some downtime between large jobs at work so I’ll be playing with this and a few other things (at least one other nixie project) while waiting for stuff to start back up. I’m hoping to have a functional prototype by the end of the year, with at least voltage and current measurements and a stable infrastructure to add other measurement modules reliably.

Leave a Reply to TomCancel reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.