Milesight EM300-DI Impulszähler neben Notizbuch und Bleistift, um Stand und Impulswert des Wasserzählers zu notieren

Pulse Counter for Water Meters: How Do You Set It Up?

You have wired a wireless pulse counter to the reed switch on your water meter, the first readings are arriving, and the number on your dashboard still does not match the dials on the meter. Usually neither the radio nor the meter is at fault; the math in between is. To set up a pulse counter for water meters correctly, you need exactly three facts: how many liters one pulse represents, which meter reading you start from, and whether your system expects a running total or usage per interval.

The conversion itself is simple: pulses times liters per pulse gives liters, and liters divided by 1,000 gives cubic meters. Errors creep in where units, starting values and data fields shift unnoticed. The worked example throughout is the Milesight EM300-DI, a battery-powered LoRaWAN pulse counter with a dry-contact input.

Milesight EM300-DI pulse counter for water meters next to a notebook and pencil for logging the meter reading
Before you configure the pulse counter, write down the water meter’s pulse factor, unit and current reading.

What is a pulse counter?

A pulse counter is a device that adds up the electrical pulses coming from a meter and stores or transmits the running count. It does not measure water itself. It simply listens for the moment the water meter’s pulse output switches and counts each of those events. What a single pulse means is defined by the water meter, not by the pulse counter.

On water meters that output is almost always a reed switch: a small magnetic switch that closes briefly whenever a magnet inside the register sweeps past it. The pulse counter sits next to the meter, detects each closure and reports the count over a radio link or a cable. That turns a purely mechanical meter in a basement or pit into a measuring point you can read remotely, without replacing the meter.

The Milesight EM300-DI is a pulse counter of this kind for LoRaWAN in the EU868 band. According to its datasheet, it has one GPIO input for dry contacts that works either as a counter or as a simple digital input. It handles pulses up to 2,000 Hz with a minimum width of 250 µs, sits in an IP67 enclosure and runs on a replaceable 4,000 mAh ER18505 battery. It also measures temperature and humidity, useful in damp meter pits. It is designed for reed switches and other passive pulse sources; an output that supplies its own voltage does not belong on this input.

Water meter pulse factor: liters per pulse or pulses per liter?

The pulse factor is printed on the dial, on the clip-on pulse module or in the meter’s datasheet. It comes in two forms, and they are reciprocals of each other. Liters per pulse tells you how much water one pulse represents, for example 10 L/pulse. Pulses per liter tells you how many pulses make up one liter, for example 4 pulses/L. On residential water meters with a reed switch, 1, 10, 100 or 1,000 liters per pulse are typical values.

If a meter sends one pulse per 10 liters, 25 pulses mean 250 liters. If you read the same 10 as ten pulses per liter, those 25 pulses turn into just 2.5 liters. That is a factor of 100, and no radio error or warning message will flag it.

On the EM300-DI the setting is called “Pulse Value Conversion.” You enter a water amount, a unit and a pulse count; the manual’s example is “1L = 40 Pulse.” For a meter rated at 10 L/pulse you enter 10 L = 1 pulse, and for one rated at 4 pulses/L you enter 1 L = 4 pulses. Both fields accept one decimal place. The device then calculates water amount divided by pulse count times the counter value and sends the result as a consumption figure. Always record the pulse factor with its unit and source, not just “10” but “10 L/pulse per the meter label,” so someone else can check your setup later.

How do you connect a pulse counter to a water meter?

First, check whether your water meter has a pulse output at all. Many residential meters are “pulse-ready”: a magnet turns inside the register, and a reed module clips onto the dial afterward. Others have the switch built in with a cable already attached. Without a magnet in the register and without a pulse module, a pulse counter has nothing to count.

Wiring a reed switch is straightforward. The EM300-DI’s lead is about one meter long according to the datasheet and leaves the enclosure through a cable gland. You connect it to the two wires of the reed switch, ideally in a junction box or with a waterproof splice, because meter pits are often damp. A plain reed switch has no polarity. If your meter has an electronic output instead, such as an open-collector output, follow the polarity in its datasheet and confirm beforehand that it behaves as a passive pulse source.

Next you configure the device over NFC. Milesight uses its ToolBox app on an NFC-capable smartphone: read the device, change the settings, write them back and read again to confirm. The interface type matters most. Set to “Digital,” the EM300-DI only reports whether the contact is open or closed. For consumption metering it has to be set to “Counter.” The manual describes mounting with screws, 3M tape or cable ties, with some distance from metal objects so the radio signal does not suffer.

How do you set the starting meter reading on a pulse counter?

When you fit the pulse counter, your water meter already shows a reading, say 123.456 m³. A freshly powered pulse counter starts at zero. Both values are correct; they just have different starting points. To make your dashboard match the register, you need a starting value, and there are two ways to set one.

The first is on the device. The EM300-DI has a setting called “Modify Count Value” that sets the counter’s initial value. That value is entered in pulses, not liters. So you calculate: 123.456 m³ is 123,456 liters, divided by 10 liters per pulse gives 12,345.6 pulses. You enter 12,345, and the device then reports 12,345 × 10 = 123,450 liters. The missing six liters are not an error but the resolution of the pulse output: the count can never be finer than one pulse.

The second is on your platform. You let the device start at zero and store the meter reading and its timestamp as a fixed offset in your application. That is cleaner if you want to keep the raw device values untouched. Whichever route you take, read the water meter and the pulse counter at the same moment, ideally while no water is running, and write both down.

Milesight EM300-DI pulse counter beside cards reading Pulse and Volume, illustrating the conversion to liters
The pulse factor links the counted pulses to the volume the water meter actually recorded.

Reed switch water meter: what does the pulse counter count?

The pulse counter counts switching events, not water. Every time the magnet in the register closes the reed switch, the count goes up by one. It sees nothing of what happens between two pulses. At 10 liters per pulse, almost 10 liters can flow through the pipe without the count changing at all.

A dripping faucet losing 5 liters a day produces one pulse every two days at 10 L/pulse, and only one every 20 days at 100 L/pulse. For a consumption overview that is fine; for spotting small leaks, a coarse pulse factor is too slow. If small volumes matter to you, look for a fine pulse factor when you choose the meter or pulse module.

A simple reed switch also has no sense of flow direction. If a pressure surge pushes water briefly backward and the magnet swings across the switching point, an extra pulse can appear and count as consumption. If the meter stops with the magnet sitting right at the switch, the contact simply stays closed; that creates no false pulse, but a continuity tester will read “closed” even though no water is flowing.

Why is my pulse counter miscounting?

The most common cause is the pulse factor itself: liters per pulse swapped with pulses per liter, or a value copied from a different meter. A close second is double conversion. If the EM300-DI already converts to liters and the decoder or dashboard multiplies by 10 again, every value is ten times too high. Make sure the conversion happens in exactly one place.

If the device counts more pulses than the water that actually flowed, contact bounce or electrical noise on the line is often involved. The EM300-DI handles debounce with its “Pulse Filter.” According to the manual, when it is enabled only pulses longer than 250 µs are counted, so shorter spikes are dropped. The filter is no substitute for clean wiring, though. A long unshielded cable running next to pump or motor cables can pick up interference that lasts longer than 250 µs. If the count keeps rising while the water meter is visibly standing still, look for the fault in the signal path, not in the software.

If the device counts too few pulses, the cause is often mechanical. A pulse module that has not clicked fully into place, or a switch that has slipped, misses some passes of the magnet. Just as often the interface type is still set to “Digital.” To check, draw a known volume, for example ten fills of a 10-liter bucket. At 10 L/pulse you expect ten pulses, plus or minus one, because you do not know where the magnet stood at the start. That is up to ten percent uncertainty. With 500 liters and 50 expected pulses it shrinks to about two percent. When troubleshooting, change only one setting at a time.

How often does a LoRaWAN pulse counter report?

A LoRaWAN pulse counter counts continuously but transmits only at set intervals. On the EM300-DI the manual gives a reporting interval range of 1 to 1,080 minutes. The preset value differs depending on whether you configure through the ToolBox app or a platform template, so read it out after you first power the device on. No pulse is lost between two uplinks: the counter keeps running inside the device, and the next message carries the current total.

The interval is a trade-off between resolution and battery. Milesight rates the 4,000 mAh battery at about five years with a ten-minute interval at 25 °C. Shorter intervals drain the battery without improving the usage picture much; for daily and weekly consumption, intervals of 15 to 60 minutes are usually enough.

According to the manual, the EM300-DI can send a water flow alarm and a water outage alarm: if the count keeps rising without a pause for longer than the set time, it reports continuous flow, and if it does not rise at all for too long, it reports a standstill. It stores up to 1,000 records that can be resent after a radio outage. Because the device runs as LoRaWAN Class A, a configuration change sent as a downlink only reaches it after its next own uplink. With long intervals that can take a while; on site, NFC works immediately.

Cumulative total vs interval usage: what does a pulse counter report?

The EM300-DI sends a cumulative value, meaning the total since the last reset, not usage per interval. According to the manual, older firmware up to version 1.2 reports the raw pulse count. Newer firmware instead sends the water amount, the pulse count of the conversion setting and the converted consumption; with conversion switched off, that consumption simply equals the pulse count. Which format you get therefore depends on firmware and decoder, so check it against the first real uplink.

Your platform calculates hourly or daily usage as the difference between two consecutive totals. Adding the totals together instead multiplies the apparent consumption. Duplicate or resent messages must not increase consumption twice either, and an older value must not overwrite a newer one. Note also that the unit is not part of the radio message; whether “219” means liters or milliliters has to be recorded on the platform side.

One technical detail on cubic meters: consumption is transmitted as a 32-bit floating-point number, which represents whole numbers exactly only up to 16,777,216. If you track a large meter at 1 L/pulse in liters, you hit that limit at around 16,777 m³, and the last digits become imprecise from there. To convert liters to cubic meters, divide by 1,000; your platform can do that while the device stays in liters.

The total also drops when the water meter is replaced. In Germany, for example, cold-water meters must be replaced or re-verified after six years and hot-water meters after five. The new meter starts at a different reading, often near zero, and may have a different pulse factor or module. Record the old meter’s last reading and the counter value before the swap, then the new meter’s starting reading, check the pulse factor on the new dial and reset the starting value on the device or platform. The same applies when you clear the count on the EM300-DI on purpose (“Clean the count”) or a firmware update changes the data format. Treat the drop as the start of a new segment, not negative consumption. And one honest note: for billing, the reading of the certified water meter counts, not the value from a retrofitted pulse counter.

Where can you buy a pulse counter for water meters?

Before you buy, sort out the meter first, not the radio device. Does your water meter have a reed switch or is it ready for a pulse module, and what pulse factor is printed on it? Then check whether the pulse counter’s input matches that output: dry contact or electronic output, pulse width and maximum frequency. For a meter pit, the enclosure rating, battery life and onboard storage for radio outages matter. Also look at where the conversion to liters happens, whether you can set a starting value and whether there is a pulse filter for debounce. For LoRaWAN you need a gateway or an existing network within range. The Milesight EM300-DI covers these points for reed switches and other passive pulse sources. If you want to set up a pulse counter for water meters and are still looking for the right device, you can find our models in the water meters category.

Our latest news

Scroll to top