Freint Electricity Meter Interface (Develco ZHEMI101)

The manufacturer documentation which is mentioned a few times in this thread indicates that maybe you could do more with the device, see 3.3.4.1.3 InterFaceMode, but I think there is a catch.

I noticed that the Frient I bought came with a read head called “LED”. The documentation mentions other supported head types. I would imagine that this head can only read light pulses. My assumption is that there is nothing stopping the end-user from replacing the head with an IR read head and setting the interface mode to IEC62056-21.

Reading the OBIS data packets from my ISKRA MT681-D4A51-kp (Schltg. 4000) would also be an ideal scenario for me but I haven’t tested simply changing the interface mode yet to see if the LED head can handle the task. I’m still fighting to get it working correctly with pulses. Changing the pulse_configuration to 10,000 alone has been quite the adventure so far as I refused to abandon my existing ZHA integration for a single device but I think I’ve got it. I’ll try and document any knowledge holes in this thread as I see them later on.

Hi khvej8

I have bought mine from Proshop also but can’t make it work.

I have made a connection to the HA with modified Sonoff zigbee bridge and get a reading which disappears after couple of minutes. Is there anyway you can help me sort this out?

Hi. Think I need a bit more information to solve this. Sounds strange the reading is there and disappears.
Which HA version, using ZHA or Zigbee2MQTT? Can you post the version/information of the ZHEMI101, like the screenshots above? The entity, is it generated with all the information or do you miss the kWh like some others? Do you have any other zigbee devices which work as expected.
What’s strange is that you get a reading and it disappears afterwards. Not likely it is related to the device, if the device is working as expected.

Could someone post some details on where to actually buy one of these? Ideally international…

I got mine from Amazon Germany at https://www.amazon.de/frient-Stromverbrauch-Zwischenstück-Verschiedene-batteriebetrieben/dp/B08WXT6HHJ/

yeah, if you can post any info possible or screenshots it would be helpful

  • screenshot of the entities in developer panel
  • Do you have anything in your configuration.yaml added recently to make it work?
  • What zigbee controller are you using? Has the firmwire been updated (if possible on the controller you have)

I’ve just been through the process of setting this up with ZHA and a Conbee II - i have documented what worked for me to hopefully help anyone else having similar issues with this device.

The device added OK but both sensors did not have a Unit Of Measurement so i was unable to use them with the HA Energy dashboard.

I followed @SiM22 's post and set the unit_of_measure cluster attribute to “enum8.kW & kWh binary”, shortly after setting this attribute both sensors gained a unit of measure however the sensor values were too high, like the decimal point was in the wrong spot.

Reading the technical manual i found that there was another cluster attribute “divisor” which has a default value of 1000. When getting the value through HA it returned 1000, even though this was correct i tried setting the attribute again and immediately the sensor values corrected. After clearing out all the old sensor data things seem to be running well.

@dmcw
Thanks, that was the missing link for my setup.
Now energy stats working again :+1:

I bought this meter yesterday and this is a really useful solution!

since the second sensor is “state_class: total_increasing” is meant to always increase its value?
I have some smart plugs with energy metering and the value resets itself every 24h

I’m happy some of my stuff helped or pointed you in the right direction. I believe there is a way of making these changes permanently for the future but requires submitting a PR to the zippy repo (quirks or something like that), not on my list as never done it before. Maybe something for the future

1 Like

I’m trying to update the divisor but every time I change it it stays at 1000. I’ve tried setting the value to 4000 and clicking set, I’ve tried setting the manufacturer code override to 4000 and doing it that way. I’ve tried setting them to the hex value in both places but it always stays at 1000. The readings I get are 4 times too high so it’s all working I just need to find a way to update this!

Screenshot 2022-03-09 165820

I’ve just installed this (UK) and it was pretty straightforward through Zigbee2mqtt.

The only strange thing that I get is that the instant power reading (W) comes into HA as ‘power’ so is identified as a diagnostic value and not a sensor. I can’t add it to any of the dashboards which is a little frustrating. I can pull it out with Node-Red and push it into Grafana (which is probably what I will do now) but it feels like an easy thing to sort so I can have both instant power (W) and total (kWh) on the boards.

Is this something I can change in the config or would I have to create a custom entity and copy the value?

Mike

Check the attributes, if they are as expected. Check post 30 of this thread.

The only thing off the top of my head that you can try is update the firmwire of the zigbee coordinator your using. I remember updating mine using deconz/phoscon app.

I’ve been using the Frient Energy meter for some time now and it seems that the meter is reporting about half of the actual consumption when I compare it with the figures provided by my electric company.

Should I change the divisor value to adjust for this?

EDIT: Might have solved the issue by adjusting the multiplier to 2 instead of 1 which seems to default.

If that is the same for all those then consider working/submitting on a “quirk” for ZHA Device Handlers:

https://github.com/zigpy/zha-device-handlers/issues

Be sure to first search for exsting before submitting a new device feature request or bug report there:

https://github.com/zigpy/zha-device-handlers/issues?q=ZHEMI101

https://github.com/zigpy/zha-device-handlers/issues?q=is%3Aissue+frient

That way that “quirk” for the device can ship with ZHA by default so everyone then gets it as standard.

https://www.home-assistant.io/integrations/zha#zha-exception-and-deviation-handling

https://github.com/zigpy/zha-device-handlers/blob/0163c7ca3dff3508544bca0d57b57d0156342c80/README.md

ZHA Device Handlers (a.k.a. zha-quirks) library get new device quirks which then is updated in HA/ZHA

Thank you for some pointers, I did some more testing last night and even if I set the multiplier to 2 and send the updated value to the meter with ZHA next time I poll the device the multiplier comes back as 1.

So it seems that the updated multiplier doesn’t stick. Or is this a limitation of ZHA so I should give Zigbee2MQTT a go instead?

Maybe a bug or wrong implementation but certainly not a limitation, so do discuss the quirk for it here:

https://github.com/zigpy/zha-device-handlers/issues

Again be sure to first see exsting before submitting a new device feature request or bug report there:

https://github.com/zigpy/zha-device-handlers/issues?q=ZHEMI101

https://github.com/zigpy/zha-device-handlers/issues?q=is%3Aissue+frient

I got one of these and would like to replicate what you have done.
Could you share the template sensor YAML you have created please?
Also, I’m guessing that the template sensor goes in the ‘Configuration.yml’ file?

I’m new to HA and still learning!

Thanks.

Hi there,

My Freint device pulls in a computed “total value” of kWh measured since it was installed. This sensor is called sensor.electricity_monitor

I have the following template sensors. These can be put in your configuration yaml under “template:”

  - sensor:
        - name: "Current Power Consumption"
          state: "{{ state_attr('sensor.electricity_monitor', 'power') }}"
          unit_of_measurement: Watts
          device_class: energy

This sensor extracts the power attribute from the sensor.electricity_monitor to show the current Wattage output, showing how much electricity my home is currently using. This is the sensor I use with HA’s energy dashboard.

  - sensor:
      - name: "Current Meter Reading"
        state: "{{ (states.input_text.meter_reading_initial.state|float + states.sensor.electricity_monitor.state|float)|int }}"
        icon: mdi:counter

The sensor.electricity_monitor only shows kWh consumed since it was installed so it’s not useful on it’s own to give me a current meter reading. I have created an input_text entity. In this I have input the meter reading as it was when I first installed my Freint device. This template sensor adds that value on to the value of the sensor to give me an up to date and accurate current meter reading that I can then use to report my usage to my energy company without needing to go to the garage and take a reading.

I hope this is helpful. I am also a HA noob despite having used it for a number of years so I’m always happy to help out further, as I’ve been helped numerous times along my journey and understand how frustrating it can be sometimes.