This post is a follow-up to the first water meter monitoring article. The core system, a Heltec CubeCell transmitting pulse counts over LoRaWAN, stayed the same. Moving to a new house brought a new problem: the water meter had an aluminium rotating disc instead of steel, and the sensor from the first installation never triggered on it.

The Problem: Wrong Sensor for an Aluminium Disc

The first article used a TL-W5MC1 inductive proximity sensor, which only detects ferrous metals (steel, iron). The water meter in the new house has an aluminium rotating disc. Aluminium is non-ferrous, so the TL-W5MC1 never triggered. No error, no noise, just a permanently silent output.

The fix was to replace it with an LJ18A3-8-Z inductive sensor. This model uses a higher-frequency oscillator that can detect non-ferrous metals, including aluminium, at short range. The form factor is cylindrical (18 mm diameter), which makes it easy to mount close to the dial.

(Photo: the different sensors side by side, TL-W5MC1, LJ18A3-8-Z, reed switch, coming soon)

(Photo: LJ18A3-8-Z sensor mounted on the water meter, coming soon)

Choosing the Right Sensor for Your Meter

Before ordering anything, look closely at the rotating element of your water meter. The disc can be made of steel, aluminium, or it can embed a small magnet. Each material requires a different detection technology, and the wrong sensor will simply produce no output, with no error to diagnose.

Disc material Recommended sensor
Steel or iron TL-W5MC1 (or any standard NPN inductive sensor)
Aluminium LJ18A3-8-Z (high-frequency inductive sensor)
Magnet embedded in disc Reed switch or Hall effect sensor

Why the LJ18A3-8-Z Is the Better Choice Anyway

Beyond aluminium detection, the LJ18A3-8-Z has another practical advantage: it is available in a 5V version, and that version works reliably.

The TL-W5MC1 also exists in a 5V version, but in my experience it is not stable at that voltage: readings were erratic and pulses were missed. In the first installation, I had to add a 5V to 12V booster between my 5V power supply and the sensor to get it working correctly. That is one extra component, one extra failure point, and extra power consumption.

With the 5V version of the LJ18A3-8-Z, the sensor can be powered directly from the same 5V supply as the rest of the system. The power architecture becomes simpler:

5V Transformer (from wall outlet)
    |
    +---> LJ18A3-8-Z Sensor (5V, direct)
    |
    +---> Mini UPS (5V, designed for USB cameras)
              |
              +---> Voltage Converter (5V -> 3.3V) ---> CubeCell Arduino

So even if your meter has a steel disc and the TL-W5MC1 would technically work, the LJ18A3-8-Z is worth considering: it detects both ferrous and non-ferrous discs, and its 5V version removes the need for a voltage booster.

Wiring and Firmware

The wiring is identical to the TL-W5MC1: brown to V+, black to signal output, blue to GND. No firmware change was needed since the pulse logic is the same. One full rotation of the aluminium disc still produces one pulse, still counting one liter.

The full source code is available on GitHub.


The new house also has two underground rainwater tanks that needed their own monitoring. A dedicated post about the Dragino PS-LB-I5 pressure sensor, and what it revealed about the tanks, is coming next.