Back to the front page

'Unlocking' multimeter RS232 output

November 2010

There is a band of products within the handheld multimeter market which, regardless of the manufacturer, are all based around an IC family from Taiwanese manufacturer CyrusTek. You can see this in Dave Jones' multimeter teardowns - nearly all the units he opens up have a CyrusTek IC running the show. So in terms of feature sets they are all on a fairly level playing field; the price spread mostly comes from build & component quality and the user interface design.

If you read the datasheet for those ICs - the ES519xx series - you'll make the interesting observation that they all do RS232 compliant output. So a vast number of multimeters - quite possibly yours - are capable of serial communication, but most manufacturers don't break it out to the front panel for you.

Fair enough perhaps - it adds to the cost and it might not be a popular feature that everybody wants. On high end bench instruments (voltmeters, lock-in amplifiers, electrometers...) it's a completely standard feature. Typically with those instruments you're recording a lot of data, and you don't want to be writing it down on a piece of paper like some chump from the 1960's. For hobby applications, let's imagine you want to monitor the resistance of a sensor... once a second for 2 days. Maybe you built your own signal generator, and you want to calibrate it by measuring with a multimeter in 1Hz steps. Data logging can be pretty useful.

I'm accustomed to only seeing serial output on $100+ meters, and even then it's not guaranteed. If you're willing to scrounge around it is in fact possible to find cheap RS232-enabled meters (example). But as you might have guessed, if you already own a CyrusTek based meter I'm about to get it essentially for free (if you're willing to cut some holes in your prized possession that is).

I'll demonstrate with an ES51973 based meter that I have lying around, an 'ISO-TECH IDM 98II'. For different Cyrustek controllers it will obviously pay to read the datasheet - these are readily available online - but I don't imagine the process will be much different to this.

Let's crack this thing open and have a look:

Let me highlight that this is not an RS232 meter, there is no provision or markings for it anywhere on the case. That said, to enable serial output you just need to touch the 'RS232' pin to the 'V-' pin on the controller IC. You'll hear a beep, and you might even see an 'RS232' segment light up if the LCD has one. Note that this mode is not permanent - you can change measurement settings without losing it but every time you turn off the meter it will leave this mode. You'd need to rig up a momentary switch across these two pins and make it available from the outside of the case. The details of that are up to your engineering imagination, I won't do it here.

The meter is now continuously sending out data - there is a 3V, 2400 baud serial signal appearing between 'SDO' and 'DGND':

Note the voltage levels: if you call DGND 0V, the serial signal will go between 0 and -3V. Because it's battery operated we have some freedom to chose where we put the ground reference. To capture data I attached a logic analyzer with it's ground on SDO and the signal line on DGND. This gives an inverted serial signal which stays positive (0 to 3V). Here's what you see:

On the ES51973 data comes in 11 chunks consisting of (start bit + 7 databits + stop bit + parity bit), and will tell you all sorts of things including the measurement function, range and the measured value. You can refer to the datasheet to decode the databits. In the example I've shown above the meter was set to resistance mode with no probes connected, hence the overload condition.

In general it's not a great idea to directly wire to the SDO and DGND pins like I've done above. You could easily fry the connected computer if you're not very careful. A more common approach is to maintain electrical isolation by optocoupling the pins. This is also an easy way to see if you have things working - use a visible LED and you'll see it flashing if you have serial data present. Alternatively if you can find enough room in the case you could think about something really neat like hiding a microcontroller in there to read the datastream, parse it and send it out wirelessly.

To see how the professionals do it, let's crack open another meter that was built with RS232 in mind. This one is an 'SDA2010' which has a mini USB jack at the top and some custom software to interpret the data.

In this case the controller is hiding under an epoxy blob, but it's still pretty easy to see the optocoupling arrangement. An infrared LED placed across the two serial pins shines onto an infrared receiver on a separate board. To be very sure about electrical isolation, that second board is sealed up in a plastic casing. On that board is a UART to USB chip, powered over USB. All parsing of the serial data happens in the custom PC software.

If you're willing to open up your multimeter, take a look and you might discover that you can modify it for data logging.

Back to the front page