Milesight EM300-DI

Pulse counter

A battery-powered LoRaWAN pulse counter for water, gas and energy meters with a reed switch or passive pulse output. It counts up to 2,000 Hz, converts pulses to litres or other units, and also reports temperature and humidity.

Milesight EM300-DI
  • LoRaWAN

Pulse counter

Compatibility

Compatible with EpiSensor Edge over LoRaWAN.

Register it on your LoRaWAN network server with its DevEUI and keys. Edge, on the Gateway, reads its decoded uplinks from that server.

Edge reads 10 values from it, listed under Interface.

Connect it with

Specifications

The EM300-DI reads one dry-contact input on a 1 m cable. It works as a pulse counter or as a digital input. As a counter it takes pulses up to 2,000 Hz with a minimum width of 250 μs, from reed-switch meters or any other passive pulse output. An optional digital pulse filter rejects interference on the line; with it on, pulses longer than 250 μs are counted.12

Power
Battery. One replaceable 4000 mAh ER18505 Li-SOCl₂ cell (8000 mAh version available). Milesight quotes 5 years at a 10-minute interval and 25 °C (a laboratory figure). Alkaline cells are not supported.1
Input
1 × GPIO, dry contact, pulse counter or digital input1
Pulse frequency
Up to 2,000 Hz, minimum pulse width 250 μs1
Applicable meters
Reed-switch meters and other passive pulse outputs1
Cable
1 m, customisable, 3.5 mm connection1
Temperature
-30 to 70 °C, ±0.3 °C (0 to 70 °C), ±0.6 °C (-30 to 0 °C), 0.1 °C resolution1
Humidity
0 to 100 % RH, ±3 % RH (10 to 90 % RH), ±5 % RH outside that band, 0.5 % RH resolution1
Local storage
1,000 records, with retransmission after an outage1
LoRaWAN
Class A, OTAA or ABP, versions 1.0.2 and 1.0.32
Frequency plans
CN470, IN865, RU864, EU868, US915, AU915, KR920, AS923-1 to AS923-41
Transmit power
16 dBm (868 MHz), 20 dBm (915 MHz), 19 dBm (470 MHz)1
Ingress protection
IP671
Dimensions
105.6 × 85.2 × 27 mm, 114.2 g with battery and cable1
Mounting
Wall screws, 3M tape or cable ties to a pole1
Approvals
CE, FCC, ISED, RCM, Telec, RoHS1

Where it is used

Interface

Device class
Class A2
Regional plans
EU868, US915, AU915, AS923, KR920, IN865, RU864, CN470
Activation
OTAA or ABP
LoRaWAN version
1.0.2 or 1.0.3
Default uplink interval
10 minutes (1 to 1,080 minutes)

Ports

Download
FPortDirectionCarries
85UplinkPulse total or input state, temperature, humidity, battery, alarms, stored history and the information packet sent on joining
85DownlinkReporting interval, interface type, pulse conversion, count value, counter start, stop and clear, flow and outage alarms, temperature thresholds, time zone and storage

Decoded fields

Readings and settings, with units and ranges where Milesight publishes them. readable, readable and writable, writable only.23

Download
ReadingUnitRange or valuesAccess
Measurements 6
Converted totalChannel 05, type E1: 32-bit float. Equals the raw pulse count when conversion is off; otherwise in the unit set on the device - - Read only
Pulse countChannel 05, type C8: unsigned 32-bit. Sent only by firmware 1.2 and earlier pulses - Read only
Digital inputChannel 05, type 00, when the input is set as a digital input - lowhigh Read only
TemperatureChannel 03, type 67: signed 16-bit, divided by 10 °C -30 to 70 °C Read only
Relative humidityChannel 04, type 68: unsigned 8-bit, divided by 2 % RH 0 to 100 % RH Read only
Flow or outage alarmChannel 85, type E1: the converted total followed by the alarm code 01 to 04 - water outage timeoutwater outage clearedwater flow timeoutwater flow cleared Read only
Settings 3
Water conversion valueSent with every total: unsigned 16-bit, divided by 10. Set with downlink FF A2 - - Read and write
Pulse conversion valueSent with every total: unsigned 16-bit, divided by 10. Set with downlink FF A2 pulses - Read and write
Reporting intervalDownlink channel FF, type 03: unsigned 16-bit s 60 to 64,800 s Write only
Diagnostics 1
Battery levelChannel 01, type 75. An alarm uplink is sent when it reaches 1 % % 0 to 100 % Read only

Each uplink is a run of channel, type and value fields, with multi-byte values in little-endian order. On current firmware the count arrives as channel 05, type E1: the water and pulse conversion values (unsigned 16-bit, divided by 10) followed by the converted total as a 32-bit float. Firmware 1.2 and earlier sends the raw count as channel 05, type C8, an unsigned 32-bit value.23

The converted total is water conversion ÷ pulse conversion × pulse count. The unit you set is stored in the device and is not sent in the periodic uplink, so record it with the meter's pulse weight when you set up the point in Edge.2

Stored and retransmitted records arrive as channel 21, type CE, with a Unix timestamp, temperature, humidity, alarm type, input state and the converted total. The device needs its clock set, from the ToolBox app or by DeviceTimeReq on LoRaWAN 1.0.3, for those timestamps to be right.2

Setup

  1. Register it on the network server

    Add the EM300-DI as a Class A device using OTAA, with the device EUI from its label, the join EUI 24E124C0002A0001 and its application key.2

  2. Power it on and set the input

    In the Milesight ToolBox app, read the device over NFC and power it on. Set the interface type to Counter, match the frequency plan to the network, and for US915 or AU915 with Milesight gateway defaults enable channels 8 to 15.2

  3. Enter the pulse weight and starting count

    Turn on pulse conversion and enter the meter's pulse weight and unit, for example 1 L per 40 pulses. Set the count to the reading on the meter's register so the two agree from the start.2

  4. Wire the meter

    Connect the cable to the meter's reed switch or passive pulse output. The input is a dry contact, for a volt-free switch output.1

  5. Check one pulse and the total

    Draw a known volume through the meter, or wait for the next pulses, and confirm the converted total rises by the matching amount on port 85. Note the meter's register reading beside the decoded total before you connect it to Edge.

Common questions

Does it send pulses or litres?
On current firmware it sends a converted total as a 32-bit float, together with the two conversion values. With conversion off the total is the raw count. Firmware 1.2 and earlier sends the raw count as an unsigned 32-bit value instead.2
Can it detect a leak?
Yes, indirectly. The water flow timeout alarm fires when the count keeps rising for longer than the time you set, and repeats until the flow stops. The outage timeout does the opposite for a supply that should always be flowing.2
What happens to counts during a network outage?
With data storage and retransmission enabled, the device keeps up to 1,000 timestamped records and resends them once the network is back, every 600 s by default.12
How long does the battery last?
Milesight quotes 5 years at a 10-minute reporting interval and 25 °C on the 4000 mAh cell, as a laboratory figure. An 8000 mAh version is available. Retransmission raises the number of uplinks and shortens the battery life.12