Let your UT61E multimeter speak (or just process its samplings)

Da raspibo.
Jump to navigation Jump to search

Would you like to have a speaking multimeter? Maybe it is fancy, but it becomes crucial if you are blind.

I created this project to help a stundent of mine: he is interested in electronics but it is impossible for him to read the values of the components or the measurements in his circuits.

The idea is to connect the multimeter to a linux box or laptop to process its sampling.

UNI-T UT61E does have a choice of serial intefaces: the one usually provided with the device is a RS232 serial interface (unavailable on modern computers). The product list includes a USB cable (UT-D04). Unfortunately it is an IR USB/HID (quite expensive).

Using an infrared sensor (TCST1103, or more precisely half of it), a FTDI board, some wood, and a 1K resistor I built a cheap and useful cable.

The idea is simple: UT61E has an infrared emitter behind, under a protection cover that be removed. The emitter sends a burst of 13 characters (12chars + New Line) every 2 seconds. The signal is 7 bits, odd parity.

I cut the TCTS1103 and kept the phototransistor side. The phototransistor is connected between the RX and GND pins of the FTDI board. A pullup 1K resistor is set between RX and +3.3V. In this prototype I have used a microbot USB to Serial Adapter (MR002-003.2) but I have successfully used other boards (like the very cheap pine64 serial console adapter).

The only tricky part of the building process is to create a slider (a wooden slider in my case) able to keep the phototransistor in front of the emitter.


It is possible to test the cable using screen (obviously change ttyUSB0 with the name got by the device):

screen /dev/ttyUSB0 19200,istrip


If everything is working properly you'll see appear a new line every 2 seconds.

Sigrok is able to process the "protocol" of UT61e:

$ sigrok-cli --driver=uni-t-ut61e-ser:conn=/dev/ttyUSB0 --samples 1
P1: 0.0 mV DC AUTO

A simple example to have a speaking multimeter is the following:

sigrok-cli --driver=uni-t-ut61e-ser:conn=/dev/ttyUSB0 --samples 1 | espeak 

Actually this is only an example, the blind master student of computer science wrote code to process the data from the multimeter in more convenient sentences.

It is possible to write python programs to process the samplings. For example this is the output of the test program of the project ut61e_py.

2019-01-23 13:28:26.829537
MODE: V/mV      AUTO
0.0 V
= 0.0 V

Further examples can be found in the image directory of the git repository.

The UT61E USB cable can be used with QtDMM, too. QtDMM is a nice program that can show the data from the multimeter, record the samplings and create convenient graphs.