Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Need Tenma 72-6870 Protocol

546 views
Skip to first unread message

John Smith

unread,
Dec 14, 2002, 11:12:09 PM12/14/02
to
Hi. If I am in the wrong newsgroup, please forgive me.

I bought a Tenma 72-6870 from MCM to use in a closed-loop temperature
controller I was constructing. I was unaware that the protocol for the
communications would not be available in the instruction manual. Worse, MCM
will not release the protocol. This makes the meter unusable for my intended
purpose. I have partially decoded the 14-byte string , but have had problems
decoding the rest.

Can anybody help with the protocol? TIA.

John

Michael A. Terrell

unread,
Dec 15, 2002, 12:39:38 AM12/15/02
to

Try going straight to Tenma.

http://www.tenma.com/
--


Michael A. Terrell
Central Florida

mrob...@worldnet.att.net

unread,
Dec 15, 2002, 2:48:16 AM12/15/02
to
John Smith <joc...@spam.mindspring.com> wrote:
>I bought a Tenma 72-6870 from MCM to use in a closed-loop temperature
>controller I was constructing. I was unaware that the protocol for the
>communications would not be available in the instruction manual.

http://home.pages.at/linux/
http://134.76.25.165/~woelz/linux/metex/metex.html

These give information for Metex meters but perhaps one of them uses
a similar enough protocol to your Tenma to help.

Matt Roberds

John Smith

unread,
Dec 15, 2002, 2:03:55 PM12/15/02
to

<mrob...@worldnet.att.net> wrote in message
news:4tWK9.47471$Y86....@news2.central.cox.net...

Thanks, Matt. I have a Metex (they give their protocol, so no problem) but
the Metex and Tenma are different protocols. Good idea, though.

John


John Smith

unread,
Dec 15, 2002, 2:02:40 PM12/15/02
to

"Michael A. Terrell" <ter...@mfi.net> wrote in message
news:3DFC159A...@mfi.net...

Thanks, Michael, I did that. That site leads right back to MCM. I suppose I
could try one of the other distributors though.

John


Michael A. Terrell

unread,
Dec 15, 2002, 3:29:38 PM12/15/02
to

I have a friend who works at MCM in tech support, but I haven't been
able to reach him. I will try again when I get back from the VA
hospital and see if he can get his hands on it. One question. Do you
have software that came with the meter? I have a piece of shareware to
turn a serial port (or two) into an RS232 serial analyzer that would let
you compare readings with the data stream. It is supposed to run under
win 95/98, and night help you decipher the protocol.

John Smith

unread,
Dec 15, 2002, 5:21:55 PM12/15/02
to

"Michael A. Terrell" <ter...@mfi.net> wrote in message
news:3DFCE632...@mfi.net...

> John Smith wrote:
> >
> I have a friend who works at MCM in tech support, but I haven't been
> able to reach him. I will try again when I get back from the VA
> hospital and see if he can get his hands on it. One question. Do you
> have software that came with the meter? I have a piece of shareware to
> turn a serial port (or two) into an RS232 serial analyzer that would let
> you compare readings with the data stream. It is supposed to run under
> win 95/98, and night help you decipher the protocol.
> --
>


Hi, Michael. Yes, I do have software that came with the meter but I need to
capture the data from the meter and manipulate it in real time. I wrote a VB
program to analyze the serial data and have discovered more than half of the
protocol. What I haven't been able to learn about is how the actual data is
buried in there. For example, I know which bit flags the sign, which bit
flags the milli- prefix, which bit flags the autorange function, and I know
that the high nibble of each byte is a number representing the byte position
in the packet. I have caused the DMM to read several voltages and I read the
returned packets but have not been successful in determining how the data
itself is encoded. For example, it appears that a 0000 reading is 7D 7D 7D
7D or 75 75 75 75 depending on whether I should use 3 or 4 bits.

Anyway, thanks for your offer of inside help. No hurry on this, I've been
working on it off and on for many months.

Cheers,
John


Mark Zenier

unread,
Dec 16, 2002, 3:59:24 PM12/16/02
to
In article <ativa...@enews1.newsguy.com>,
John Smith <joc...@Ospam.mindspring.com> wrote:
...

>What I haven't been able to learn about is how the actual data is
>buried in there. For example, I know which bit flags the sign, which bit
>flags the milli- prefix, which bit flags the autorange function, and I know
>that the high nibble of each byte is a number representing the byte position
>in the packet. I have caused the DMM to read several voltages and I read the
>returned packets but have not been successful in determining how the data
>itself is encoded. For example, it appears that a 0000 reading is 7D 7D 7D
>7D or 75 75 75 75 depending on whether I should use 3 or 4 bits.

looks like it's the 7 segment display code. Six one bits and one 0 bit.

-
| |
-
| |
-

I'd bet that 8888 comes out as 7f 7f 7f 7f

Mark Zenier mze...@eskimo.com Washington State resident

Ned Konz

unread,
Dec 18, 2002, 5:21:46 PM12/18/02
to
Mark Zenier wrote:

That's the way that the Fluke 87's undocumented ultrasonic interface works.
One bit per display segment.

John Smith

unread,
Dec 21, 2002, 8:54:28 PM12/21/02
to
"Mark Zenier" <mze...@eskimo.com> wrote in message
news:atoqo8$j30$1...@eskinews.eskimo.com...


Then you would be a winner, Mark. Great insight! I looked at some of the
other data generated by various voltages, decoded the segments, and you are
right on the money.

Each segment is associated with a bit decoded as:

4
-
5 | | 0
- <- 1
6 | | 2
-
3


Thanks for your help.

John


John Smith

unread,
Dec 21, 2002, 8:56:19 PM12/21/02
to
> >> For example, it appears that a 0000
> >>reading is 7D 7D 7D 7D or 75 75 75 75 depending on whether I should use
3
> >>or 4 bits.
> >
> > looks like it's the 7 segment display code. Six one bits and one 0 bit.
> >
> > -
> > | |
> > -
> > | |
> > -
> >
> > I'd bet that 8888 comes out as 7f 7f 7f 7f
>
> That's the way that the Fluke 87's undocumented ultrasonic interface
works.
> One bit per display segment.

Hi, Ned. Yep, you and Mark are right. See my reply to him earlier in the
thread.

Thanks,
John


Michael A. Terrell

unread,
Dec 21, 2002, 10:41:45 PM12/21/02
to

How about posting the full protocol so it can be archived on Google
and other archives so someone can find it in the future?

John Smith

unread,
Dec 22, 2002, 1:34:08 AM12/22/02
to
"Michael A. Terrell" <ter...@mfi.net> wrote in message
news:3E05347...@mfi.net...

> How about posting the full protocol so it can be archived on Google
> and other archives so someone can find it in the future?
> --

Okay, but I haven't organized it yet, so I'll just post the information I
was working from. If this generates more questions, just ask and I'll try to
accommodate.


14 bytes of data --------------- Meter setting and reading
15 27 3D 47 5D 67 7D 87 9D A0 B0 C0 D4 E1 Volts = 0000 (Manual V)

15 27 3D 47 5D 67 7D 8F 9D A0 B0 C0 D4 E1 Volts = 000.0 (Manual V)

15 27 3D 47 5D 6F 7D 87 9D A0 B0 C0 D4 E1 Volts = 00.00 (Manual V)

15 27 3D 4F 5D 67 7D 87 9D A0 B0 C0 D4 E1 0.000 (Manual V)

15 20 35 49 5F 60 75 81 95 A0 B0 C0 D4 E1 1.317 (Manual V)

15 20 35 49 5F 65 7B 80 95 A0 B0 C0 D4 E1 1.321 (Manual V)

15 25 3B 4F 5E 61 7F 83 9F A0 B0 C0 D4 E1 2.639 (Manual V)

15 2F 3D 47 5D 67 7D 8F 9D A0 B8 C0 D4 E1 mVolts = -000.0 (Manual)

17 27 3D 47 5D 67 7D 8F 9D A0 B8 C0 D4 E1 mVolts = 0 DC (Auto)

17 20 35 49 5F 60 75 81 95 A0 B0 C0 D4 E1 Volts = + 1.317 DC (Auto)

17 20 35 4F 5E 62 77 80 95 A0 B0 C0 D4 E1 1.641 (Auto)

17 25 3B 4F 5E 61 7F 87 9F A0 B0 C0 D4 E1 Volts = + 2.638 DC (Auto)

17 28 35 49 5F 60 75 81 95 A0 B0 C0 D4 E1 Volts = - 1.317 DC (Auto)

13 20 30 47 5D 6E 78 80 90 A0 B2 C4 D0 E1 Ohms = Infinite Megs (Auto)

11 20 30 47 5D 6E 78 80 90 A0 B2 C4 D0 E1 Ohms = Infinite Megs (Manual)

11 20 30 4F 5D 66 78 80 90 A2 B0 C4 D0 E1 Ohms = Infinite K Ohms (Manual)

11 20 30 47 5D 66 78 88 90 A0 B0 C4 D0 E1 Ohms = Infinite Ohms (Manual)

13 27 3D 45 5B 65 7B 8D 9B A0 B0 C0 D0 E4 C degrees = 22.2

11 27 3D 4F 5D 67 7D 87 9D A0 B0 C0 D2 E1 Hz = 0000

17 27 3D 47 5D 6F 7D 87 9D A0 B8 C0 D8 E1 mA = 00.00 (Auto)

17 2F 3D 47 5D 6F 7D 87 9D A0 B8 C0 D8 E1 mA = -00.00 (Auto)

15 27 3D 47 5D 6F 7D 87 9D A0 B0 C0 D8 E1 Amps = 00.00

High nibble of each byte is the sequence position of the byte.

Sign is bit 3 of byte 2. True = Negative.

Decimal point is bit 3 of byte 4, 6, or 8.

Milli- prefix indicated by bit 3 of byte 11.

Auto range indicated by bit 1 of byte 1. True = Auto.

2400, 8, N, 1

John Smith

unread,
Dec 23, 2002, 7:10:23 PM12/23/02
to
> "Michael A. Terrell" <ter...@mfi.net> wrote in message
> news:3E05347...@mfi.net...
>
> > How about posting the full protocol so it can be archived on Google
> > and other archives so someone can find it in the future?
> > --

There were some mistakes in my last post. I have done more work on
this and have this to offer:

The hardware...

There is a PCB inside which does all the work and contains an IR emitter. An
IR detector on a seperate tiny PCB is mounted on the back cover. This is for
isolation, I presume. The detector is a diode-like thing and has a resistor
of 680 ohms in series with it. Also on this tiny board is male pin and
finger contact like those wall wart connectors. This is the connector for
the serial cable . The other end of the serial cable has a DB9. The wiring
is like so...

DB9 pin 4 (DTR, ~ +12V) --------------A diode C-----|
|
DB9 pin 2 (RXD, ~ 0V) -------------- 680 Ohm -----|

This does not show the wall wart type connector on the meter end.

I had some problems with reliable communications. Sometimes it would garble
the data, sometimes it would not work at all. I traced the problem to
insufficient signal amplitude. I shorted the 680 Ohm resistor but it didn't
work any better. However, I left it shorted since I could see no reason for
it being there. On the main board inside, there is a 3k series resistor
(surface mount) for the IR emitter. I paralleled that with a 1.5k resistor
and it has worked well ever since. There is nothing magical about the 1.5k,
it was just what I had handy.


The protocol...

The Tenma periodically sends out a packet of 14 bytes of data without being
prompted. The parameters are 2400 bps, 8 bits, no parity, one stop bit. The
upper nybble of each byte contains the sequence number of the byte, starting
with 1. That is, the first byte (after a pause) is 0001XXXX, the next is
0010XXXX, the third is 0011XXXX, etc. The lower nybble is the data that
drives the LCD display. In the following, bit 7 is the most significant bit,
bit 0 is the least significant bit.

BYTE 1
BIT
7 - 0
6 - 0
5 - 0
4 - 1
3 - AC
2 - DC
1 - AUTO (RANGE)
0 - 1


BYTE 2 (LEFTMOST LCD DISPLAY DIGIT)
BIT
7 - 0
6 - 0
5 - 1
4 - 0
3 - SIGN
2 - LOWER LEFT VERTICAL SEGMENT
1 - UPPER LEFT VERTICAL SEGMENT
0 - TOP HORIZONTAL SEGMENT


BYTE 3 (LEFTMOST LCD DISPLAY DIGIT)
BIT
7 - 0
6 - 0
5 - 1
4 - 1
3 - BOTTOM HORIZONTAL SEGMENT
2 - LOWER RIGHT VERTICAL SEGMENT
1 - CENTER HORIZONTAL SEGMENT
0 - UPPER RIGHT VERTICAL SEGMENT


BYTE 4 (SECOND LCD DISPLAY DIGIT FROM LEFT)
BIT
7 - 0
6 - 1
5 - 0
4 - 0
3 - DECIMAL POINT
2 - LOWER LEFT VERTICAL SEGMENT
1 - UPPER LEFT VERTICAL SEGMENT
0 - TOP HORIZONTAL SEGMENT


BYTE 5 (SECOND LCD DISPLAY DIGIT FROM LEFT)
BIT
7 - 0
6 - 1
5 - 0
4 - 1
3 - BOTTOM HORIZONTAL SEGMENT
2 - LOWER RIGHT VERTICAL SEGMENT
1 - CENTER HORIZONTAL SEGMENT
0 - UPPER RIGHT VERTICAL SEGMENT


BYTE 6 (THIRD DISPLAY DIGIT FROM LEFT)
BIT
7 - 0
6 - 1
5 - 1
4 - 0
3 - DECIMAL POINT
2 - LOWER LEFT VERTICAL SEGMENT
1 - UPPER LEFT VERTICAL SEGMENT
0 - TOP HORIZONTAL SEGMENT


BYTE 7 (THIRD LCD DISPLAY DIGIT FROM LEFT)
BIT
7 - 0
6 - 1
5 - 1
4 - 1
3 - BOTTOM HORIZONTAL SEGMENT
2 - LOWER RIGHT VERTICAL SEGMENT
1 - CENTER HORIZONTAL SEGMENT
0 - UPPER RIGHT VERTICAL SEGMENT

BYTE 8 (RIGHTMOST LCD DISPLAY DIGIT)
BIT
7 - 1
6 - 0
5 - 0
4 - 0
3 - DECIMAL POINT
2 - LOWER LEFT VERTICAL SEGMENT
1 - UPPER LEFT VERTICAL SEGMENT
0 - TOP HORIZONTAL SEGMENT


BYTE 9 (RIGHTMOST LCD DISPLAY DIGIT)
BIT
7 - 1
6 - 0
5 - 0
4 - 1
3 - BOTTOM HORIZONTAL SEGMENT
2 - LOWER RIGHT VERTICAL SEGMENT
1 - CENTER HORIZONTAL SEGMENT
0 - UPPER RIGHT VERTICAL SEGMENT


BYTE 10
BIT
7 - 1
6 - 0
5 - 1
4 - 0
3 - u (MICRO) INDICATOR
2 - n (NANO) INDICATOR
1 - k (KILO) INDICATOR
0 - DIODE SYMBOL INDICATOR


BYTE 11
BIT
7 - 1
6 - 0
5 - 1
4 - 1
3 - m (MILLI) INDICATOR
2 - unused
1 - M (MEGA) INDICATOR
0 - TONE ANNUNCIATOR SYMBOL


BYTE 12
BIT
7 - 1
6 - 1
5 - 0
4 - 0
3 - F (FARAD) INDICATOR
2 - OMEGA INDICATOR
1 - unused
0 - unused


BYTE 13
BIT
7 - 1
6 - 1
5 - 0
4 - 1
3 - A (AMPERE) INDICATOR
2 - V (VOLT) INDICATOR
1 - Hz INDICATOR
0 - unused


BYTE 14
BIT
7 - 1
6 - 1
5 - 1
4 - 0
3 - unused
2 - DEGREES C INDICATOR
1 - unused
0 - 1


Mark Zenier

unread,
Dec 24, 2002, 3:49:03 PM12/24/02
to
In article <au88l...@enews2.newsguy.com>,

John Smith <joc...@Ospam.mindspring.com> wrote:
>
>The hardware...
>
>There is a PCB inside which does all the work and contains an IR emitter. An
>IR detector on a seperate tiny PCB is mounted on the back cover. This is for

Probably a photodarlington transistor. Sensitive, but slow.

>isolation, I presume. The detector is a diode-like thing and has a resistor
>of 680 ohms in series with it. Also on this tiny board is male pin and
>finger contact like those wall wart connectors. This is the connector for
>the serial cable . The other end of the serial cable has a DB9. The wiring
>is like so...
>
>DB9 pin 4 (DTR, ~ +12V) --------------A diode C-----|
> |
>DB9 pin 2 (RXD, ~ 0V) -------------- 680 Ohm -----|
>
>This does not show the wall wart type connector on the meter end.

Did you look in (or ohm out) the DB9 to see if there were any other
components? I suspect there may be another resistor from one of the pins
(that's normally at -12) to pin 2. (Maybe TXD)? That would give you
the bipolar RS-232 levels.

>I had some problems with reliable communications. Sometimes it would garble
>the data, sometimes it would not work at all. I traced the problem to
>insufficient signal amplitude. I shorted the 680 Ohm resistor but it didn't
>work any better. However, I left it shorted since I could see no reason for
>it being there. On the main board inside, there is a 3k series resistor
>(surface mount) for the IR emitter. I paralleled that with a 1.5k resistor
>and it has worked well ever since. There is nothing magical about the 1.5k,
>it was just what I had handy.

Trading off battery life for reliability. On that note, maybe one of
those "unused" bits is the low battery indicator.

John Smith

unread,
Dec 26, 2002, 10:09:59 AM12/26/02
to

"Mark Zenier" <mze...@eskimo.com> wrote in message
news:auctok$vj$1...@eskinews.eskimo.com...

> In article <au88l...@enews2.newsguy.com>,
> John Smith <joc...@Ospam.mindspring.com> wrote:
>
> Did you look in (or ohm out) the DB9 to see if there were any other
> components? I suspect there may be another resistor from one of the pins
> (that's normally at -12) to pin 2. (Maybe TXD)? That would give you
> the bipolar RS-232 levels.


Good point, Mark. I'll do that.


> Trading off battery life for reliability. On that note, maybe one of
> those "unused" bits is the low battery indicator.
>


Another good point. I wish you were the one investigating this meter. You
seem to have a lot of experience.

John


John Smith

unread,
Dec 26, 2002, 10:23:33 AM12/26/02
to

"Mark Zenier" <mze...@eskimo.com> wrote in message
news:auctok$vj$1...@eskinews.eskimo.com...

> >
> >DB9 pin 4 (DTR, ~ +12V) --------------A diode C-----|
> > |
> >DB9 pin 2 (RXD, ~ 0V) -------------- 680 Ohm -----|
> >
> >This does not show the wall wart type connector on the meter end.
>
> Did you look in (or ohm out) the DB9 to see if there were any other
> components? I suspect there may be another resistor from one of the pins
> (that's normally at -12) to pin 2. (Maybe TXD)? That would give you
> the bipolar RS-232 levels.


I opened up the DB9 connector and found, to my disappointment, that it is
wired as shown above. I've seen connections such as the resistor you mention
in other equipment, but this one has nothing more. I'd say that's sort of
living on the edge.

Well, my personal opinion is that it is a pretty shoddy design anyway. Maybe
I just expect too much for $40.

Thanks.

John


0 new messages