Gas meter from Xiaomi/Aqara door sensor (ZigBee)

I found now out what the problem was:

No reset since the February update. and other state class.

Just use this and it will work!

sensor.gas_leser:

sensor.gas_leser:
  state_class: total_increasing

Hey everyone, great project, looking into this as well. Whatā€™s your experiences with battery life so far? Thinking about trying it with the Lidl window contact, and replacing the AAAs with AAs.

From my experience until now and my calculations if you are a ā€œhome userā€ and your average consumption per month is about 250m3 of gas in winter and about 10m3 in summer.
Your sensor will open/close about 800 times per day in winter for about 3-5 months the rest we can assume is normal usage for the sensor, battery of Xiaomi sensor is rated one year (cr2032) with normal usage so determined that the normal battery will last no more then 3-4 months in winter.(not taking in consideration the cold temperature that will just destroy the CR2032)
I have added an AA 3.2V Feo4 rechargeable battery and since 4 months is still at 100% but the reading of the sensor is made for the CR2032 voltage curve so I do not trust the status.
If the Lidl sensor has AAA batteryā€™s from the start I will not bother replacing them just test and see how much it lasts.

Hi all

Great project Marius.

New user here, so Iā€™m still on the steep learning curve.

I have an Aqara sensor that I want to use to read my Landis and Gyr 750 meter (earlier post from another Aussie said that it will work (thanks mate!))

I have created everything, when I swipe the magnet past the sensor the counter increments. The Gas symbol displays on my energy dashboard, but Iā€™m not reading any usage. Iā€™m trying to get the working on the bench before moving to the Gas meter cabinet (which will be fun because itā€™s metal).

I have:

counter.gascounter

sensor.gasmeter

So after all that preamble hereā€™s my setup in home assistant (which runs on a PI with an external HDD).


Automations:
================================================================

- id: '1645368831245'
  alias: Gas Counting
  description: Gas Meter Consumption
  trigger:
  - platform: state
    entity_id: binary_sensor.lumi_lumi_magnet_acn001_60c22500_ias_zone
    id: Aqara Gas Meter
    from: 'off'
    to: 'on'
  condition: []
  action:
  - service: counter.increment
    target:
      entity_id: counter.gascounter
  mode: single
  
  
  
 configuration.yaml
================================================================
 
  # Configure a default setup of Home Assistant (frontend, api, etc)
default_config:

# Text to speech
tts:
  - platform: google_translate

group: !include groups.yaml
automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml
homeassistant:
  customize: !include customize.yaml

sensor:
  - platform: template
    sensors:
### Gas meter template from counter
      gasmeter:
        friendly_name: Gas Meter
        value_template: "{{ states ('counter.gascounter') | float * 0.01}}"
        unit_of_measurement: "mĀ³"
        icon_template: "mdi:fire"
        device_class: gas


		
		
 customize.yaml
================================================================
 sensor.gasmeter:
  state_class: total_increasing
  last_reset: '2021-08-20T06:43:36.740703+00:00'

Iā€™m obviously doing something wrong, but I canā€™t figure out what.

Any ideas please

You can start troubleshooting using the ā€œdeveloper toolsā€ change the state of the sensor from off to on and see if you get the counter moving.

Thanks Marius

When i pass the magnet past the sensor

counter.gascounter    increments  by 1
sensor.gasmeter    increments  by 0.01
sensor.gasmeter_cost   increments  by 0.05

Edit the template and you can delete the last_reset, no need

sensor:
  - platform: template
    sensors:
      gasmeter:
        friendly_name: Gas Meter
        value_template: "{{ states ('counter.gascounter') | float(0) * 0.01}}"
        unit_of_measurement: "mĀ³"
        icon_template: "mdi:fire"
        device_class: gas

Removed the last_reset (from customize.yaml), now its showing cumulative reading in the Energy dashboard, and reading the counter pulses.

Thanks very much Pepe!!!

I hope that this helps others too.

Hi, any updates on the battery usage? Iā€™ve also got a Model 750 gas meter and want to implement something similar. Cheers!

So far so good. However I think the real test will be in winter. when the gas heater is on.

Hi! Great project. I just want to do it as well. Can you give me the exact external reed sensor type/manufacturer u used?
Thanks,
Chris

The sensor will work with the built in reed sensor, follow the thread for more info.
As for you questions, the model I ended up is in the first picture, from www.tme.eu

1 Like

Hello everyone, i am trying to implement a similar solution but i am having some issues. Maybe someone can help.

  1. I cannot find any reference or manual for my gas meter. It is a Sagemcom Siconia MG4 AT, as pictured below.

  2. It does state the 1imp=0,01m3, but after 30 minutes of trying, I could not get the aqara sensor to trigger. I tried in several positions both with the meter running and with the meter stopped right in the point the last two digits change. Any idea which point i should check? or perhaps the aqara sensor is not good enough to sense the pulse?

  3. As you might notice, the meter has a cable coming out, which terminates in 3 wires, red/blue-grayish/yellow. I am pretty sure i could hook this up to an esp and count the pulses (although very difficult as i dont have a power source near). Has anyone got prior experience on the details? Since i canā€™t find a manual, i have no idea what voltage i should feed it. Start with 3.3 and move to 5?

Sorry if i should have posted this in a different thread, will do so if needed.

Hi, this is nice! It looks to me that you already have the original meter reed already, you just need to figure out what wires are triggering the signal.
The wires in the last picture are as following:

  1. common (common wire for tamper and reed signal)
  2. reed signal (directly from the reed output, can be ā€œnormal openā€ or ā€œnormal closeā€)
  3. tamper protection (basically it will open the circuit if the sensor is disconnected from the meter)

To figure out what is what you need an multimeter, I will connect the multimeter on random two wires and set it on continuity (beep) then consume some gas (following the ā€œlast two digits changeā€) and in case stops beeping (or is beeping in case is normal open) then you found the correct wires for signal. If you found the wires, then you need to solder then in place of the Aquara reed sensor.

1 Like

That was my first thought, and i tried it with a multimeter set on continuity, as you suggested, while the meter was running non-stop:

  • gray + yellow were beeping non stop
  • red + gray and red + yellow, never beeped.
  • red + gray/yellow (both on the other end of the multimeter) - no beep.

Iā€™m confused, any ideas?

assuming that the reed sensor inside the meter works correctly you have two cases:

  1. normal open reed contact - multimeter will beep shortly while the last two digits will move
  2. normal closed contact - multimeter will beep all the time and stop beeping while last two digits move

You only have 4 combinations of wires as thereā€™s no polarity, you canā€™t damage anything in the electronic part of the gas sensor as long as you do not inject power to the wires.
You can just ā€œwing itā€ and connect two wires to the Aquara sensor replacing the original reed (glass component) - follow the results in the next hours as the Home Assistant will tell you last triggered event of the sensor.

Thanks. I will investigate further and let you know.

There is no chance itā€™s a magnetic pulse sensor is in there that need +/- and signal right?

Also, do I need to remove the sensor from the chip? Or can I just solder the wires in parallel?

Edit:

Sorry, i was thinking about this, the combinations are 3 right?
red gray, red yellow, yellow gray. Is there a fourth that my mind does not grasp? :stuck_out_tongue:

Iā€™m 99% sure that inside the electronics are just one reed sensor and another mechanic switch, I remember that when I done my setup I have found the schematic for my optional GAS sensor. You already have it connected. In this case you will brake the sensors if you inject power in to the wires.
Yes, remove the Aquara sensor to connect the wires.
You are right, if you label the wires 1, 2, 3 the combinations are as following:1 and 2, 1 and 3, 2 and 3

In some sensors that are installed in Poland there are 2 reed sensors instyalled in parallel. One is close enough to magnet on the last reading wheel to generate signals as it spins, the second is far enough not to react to this movements and its role is to detect tampering the sensor with strong magnet placed next to sensor (which should stop actual sensor to react to spinning reading wheel). In such scenario it also get closed /open signaling to reader electronics abnormal operation. You can try to use such magnet to try to identify wires in your configuration.

If that was the case, at least one of the three wire combinations should give me a beep (or stop beeping) once every revolution. I get nothing unfortunately :frowning:
I cant figure it out.