BacktoBasics: DMM Digits and Counts

Ever noticed the manuals of Digital Multimeters (DMM) mention the display as 3.5, 4.5, 5.5 digits, etc? What’s up with the 0.5? Why these specific numbers, you ask? Let’s explore…


The precision digits, also known as the resolution of a DMM, tell us how finely a meter can measure. For instance, a 2.5-digit DMM can display up to 199, a 3.5-digit DMM up to 1999, and a 4.5-digit DMM up to 19999. More the number of digits, more the resolution. Well, the “half digit” or 1/2 can only display a “1” or “0”, The numerator of 1/2 is the maximum digit that can be shown(1) and the Denominator is the total number of digits possible(2). Hence 1/2.

Sometimes you might even see it mentioned 4.75 or 5.75, which is 3/4. It can display 1,2,3 or 0 in which 3 is the max and takes the numerator position out of 4 possible numbers. A 3.75-digit DMM can display up to 3999, compared to a 3.5-digit DMM which can only display up to 1999.

Now, let’s talk about DMM counts. The count of a DMM is the maximum number that the DMM can display. A higher count lets you measure higher values at a higher resolution. So, a 20000-count DMM can display from 0 to 19999, offering more detail than a 2000-count DMM. It’s another way to talk about precision without using the digits terminology.

Remember, more precision digits or counts don’t always imply greater accuracy, but they do enable more precise measurements. Accuracy is typically dictated by ADC, component tolerances and calibration factors. It’s expressed separately as a percentage of the range or in count terms in spec sheets. If it’s in counts, for instance, 5 counts, it indicates that the DMM’s LSB can have an error range of 5 units in either the positive or negative direction. Therefore, when selecting a DMM, consider its digit count and accuracy to ensure it suits your requirements.

If you liked the post, Share it with your friends!

BacktoBasics: I2C and Long distances

I usually get asked this by clients, “We want to use I2C to communicate with our sensors X meters away” where X is usually a large number. Please understand that this is usually a bad practice. You can do it but it’s not designed for it.


I2C or Inter-Integrated Circuit, when Philips Semiconductors invented it in the 1980s, it was meant to be used as a method to connect and send data between ICs inside a single PCB. It is intended for small distances inside the area of a PCB. Its goal was to reduce the number of parallel lines needed for talking between multiple chips dropping the required connection to just 2 lines. It was never meant for inter-PCB or long-distance communication.

Now for the cases you really want to use it for long ranges, here are 3 options I know of(If you know of any other tricks, drop them in the comments)

1. Use I2C repeaters like TIs P82B715, or LTC4311 or NXPs PCA95 series of chips. These act as buffers and can potentially drive signals to a distance of 50m when used as a twisted pair with individual return GND wires

2. Reduce I2C clock speed. The usual default speed is around 400KHz, you can keep dropping that to small speeds to increase the distance slightly but it will be in the 1-3m range

3. Have a strong I2C pullup on the lines(meaning lower resistance and pulled up to Vcc), this means that the RC time constant will be smaller and faster rise time. Search my older posts on the website on how to select the pullups for I2C. But this is not a great solution as you will increase your idle system power draw.

So the point is you can use I2C for longer lengths but look into it if you really want to, other serial protocols are designed specifically for long-range like CAN, Ethernet, Serial with RS485, etc. The next-gen of I2C, which is I3C, is looking to address this long-wire approach in the future specs of I3C.

If you liked the post, Share it with your friends!
1 27 28 29 30 31 86