Zemismart 1/2/3-Phase Energy Meters Now Work with Homey Pro

Hi Homey Community,

Good news for users who want to monitor household or sub-circuit energy usage in Homey: several Zemismart Zigbee energy meters / power monitors can now work with Homey Pro through the official Zemismart app for Homey.

The Zemismart Homey app supports selected Zigbee devices, including energy meters and power monitors. After adding the device to Homey, users can use the reported energy data in Homey and create Flows based on changes such as power, accumulated meter value, voltage, current, and frequency, depending on the device model.

Supported Zemismart energy meter models

The following models are the focus of this update:

  • SPM01-D2TZ-U01-ZM
    1-phase Zigbee 3.0 smart energy monitor, 110V-240V

  • SPM02-D2TZ-U01-ZM
    3-phase Zigbee 3.0 energy meter, up to 63A per channel

  • SDM01-TZ0-12-ZM
    3-phase Zigbee smart energy meter with 3 clamps, max 120A

  • SDM02T-TZ-120A-IEC-ZM
    2-phase Zigbee smart energy meter with 2 clamps, max 120A

In the Homey app store, the Zemismart app currently lists related supported device profiles such as SPM01-U01, SPM02-U01, SDM01_3PN-U01, SDM01V1 / V1.5, SDM02-U01 and SDM02V1. These are Zigbee devices and can be added from the Zemismart app in Homey.

What you can use them for in Homey

Depending on the model and device profile, these meters can help with:

  • Real-time power monitoring
  • Total energy usage tracking
  • Voltage and current monitoring
  • Frequency monitoring
  • Flow triggers when power or meter values change
  • Monitoring single-phase, two-phase, or three-phase circuits

This makes them useful for distribution boards, larger appliances, HVAC circuits, EV charging circuits, solar-related monitoring, or other installations where users want more visibility into power consumption.

How to add

  1. Install or update the official Zemismart app in Homey.
  2. In Homey, choose Add Device.
  3. Select Zemismart.
  4. Choose the matching energy meter / power monitor device profile.
  5. Put the Zemismart meter into pairing mode.
  6. Follow the pairing guide shown in Homey.

Feedback welcome

If you are using one of these Zemismart energy meters with Homey Pro, we would love to hear your feedback:

  • Which model are you using?
  • Which Homey Pro version and firmware are you on?
  • Which values are displayed correctly in Homey?
  • Are you using the data in Homey Energy or Flows?
  • Any pairing, reporting, or calibration issues?

Your feedback helps us improve device support and documentation for the Homey community.

Homey interface screenshots

Below are a few screenshots from Homey with the SPM01-U01 device. They show the device dashboard, Insights page, and Flow tab.Homey device dashboard: imported/exported energy, voltage, current, power, apparent power, power factor and frequency.Homey Insights page: available energy meter data points.

In Homey, the device can display values such as imported energy, exported energy, voltage, current, power usage, apparent power, power factor, and frequency. Users can also use the device as a starting point for creating Flows, making it easier to build automations based on real energy data.

Product references:

Best regards,
The Zemismart Team

A quick clarification about the newly added Zemismart Zigbee energy meter support in the Homey app.

The latest Zemismart app version adds support for several Zigbee 3.0 energy monitoring devices, including 1-phase, 2-phase and 3-phase models. These devices are intended for users who want to monitor real-time power consumption and energy usage directly in Homey Pro.

Supported models include:

  • SPM01-D2TZ-U01-ZM
  • SPM02-D2TZ-U01-ZM
  • SDM01-TZ0-12-ZM
  • SDM02T-TZ-120A-IEC-ZM

After pairing with Homey Pro through the Zemismart app, the devices can report values such as:

  • Power
  • Energy meter value
  • Voltage
  • Current
  • Frequency
  • Power factor, depending on the model

These values can be used in Homey Flows, Insights and energy-related automations.

For example, users can create flows such as:

  • Notify me when power usage is unusually high
  • Turn off a device when consumption exceeds a limit
  • Track the energy usage of a specific circuit
  • Compare usage before and after automation changes

We are especially interested in feedback from Homey Pro users who already use Homey Energy, Insights or other energy monitoring apps. If you test one of these devices, please let us know:

  1. Which model you tested
  2. Whether pairing worked smoothly
  3. Which values appeared correctly in Homey
  4. Whether the readings match your expected usage
  5. Any missing capabilities or unclear device behavior

This is still an area where real-world feedback is very valuable, especially because installations and electrical setups can differ by country and use case.

If anyone would like to test a device with Homey Pro, feel free to reply here or send us a message. We are happy to collect feedback and improve the Homey integration based on actual user experience.

Hi! Is there any plans for WiFi (tuya) version metering devices support in Homey? I can add them trough Homey Tuya app, bet there are no any metering information and functions available.

whichi module you had?

We can test whether it’s possible to access it.

I have in use 3 phase meters SPM02-D2TW and 1 phase SPM01-D2TW.

Wi-Fi versions of devices do not currently support access to Homey.

:confused:

If they are Tuya based, then you can use the Tuya app:

@kaspars_smits If they are not supported by the Tuya Homey app natively, you can always use raw status and commands (or Tap to Run scenes if you only need actions)

I do use Tuya Homey app.
Well, ok, I readded devices and now 1 phase meter SPM01-D2TW shows some values,

but 3 phase meters SPM02-D2TW are “empty” - no values at all.

Can you right click the device, click Settings and share the device specification here? Then we might be able to help you create Flows and virtual devices for your device

Certainly. Here it is for SPM02-D2TW:

{ “device”: { “active_time”: 1703340330, “biz_type”: 18, “category”: “dlq”, “create_time”: 1703340330, “icon”: “smart/icon/ay1553162414592ZG6Kk/40e5a162faf5e90868046ea01979e2c5.png”, “id”: “bf52fbfbe270acc064dvmc”, “ip”: “”, “lat”: “”, “local_key”: “”, “lon”: “”, “name”: “Apkure_SPM02_WiFi”, “online”: true, “owner_id”: “”, “product_id”: “fygozcnralhwbauo”, “product_name”: “SPM02_WiFi”, “status”: [ { “code”: “total_forward_energy”, “value”: 1664087 }, { “code”: “cur_neutral”, “value”: 4 }, { “code”: “phase_a”, “value”: “CYQAAv8AAAE=” }, { “code”: “phase_b”, “value”: “CYwAAxUAAAc=” }, { “code”: “phase_c”, “value”: “CXsAAu0AAAA=” }, { “code”: “fault”, “value”: 0 }, { “code”: “switch_prepayment”, “value”: false }, { “code”: “energy_reset”, “value”: “” }, { “code”: “balance_energy”, “value”: 0 }, { “code”: “charge_energy”, “value”: 0 }, { “code”: “alarm_set_1”, “value”: “BwEADQgBAAA=” }, { “code”: “alarm_set_2”, “value”: “AQEAGQIBABQDAQD9BAAAtAUBAAAHAQAACAAAHgkAAAA=” }, { “code”: “breaker_number”, “value”: “SPM02_7939” } ], “sub”: false, “time_zone”: “+02:00”, “uid”: “”, “update_time”: 1703340330, “uuid”: “” }, “specifications”: { “category”: “dlq”, “functions”: [ { “code”: “switch_prepayment”, “type”: “Boolean”, “values”: “{}” }, { “code”: “clear_energy”, “type”: “Boolean”, “values”: “{}” }, { “code”: “charge_energy”, “type”: “Integer”, “values”: “{\“unit\”:\“kW·h\”,\“min\”:0,\“max\”:999999,\“scale\”:2,\“step\”:1}” }, { “code”: “alarm_set_1”, “type”: “Raw”, “values”: “{}” }, { “code”: “alarm_set_2”, “type”: “Raw”, “values”: “{}” } ], “status”: [ { “code”: “total_forward_energy”, “type”: “Integer”, “values”: “{\“unit\”:\“kW·h\”,\“min\”:0,\“max\”:99999999,\“scale\”:2,\“step\”:1}” }, { “code”: “cur_neutral”, “type”: “Integer”, “values”: “{\“unit\”:\“kW.h\”,\“min\”:0,\“max\”:99999999,\“scale\”:2,\“step\”:1}” }, { “code”: “phase_a”, “type”: “Raw”, “values”: “{}” }, { “code”: “phase_b”, “type”: “Raw”, “values”: “{}” }, { “code”: “phase_c”, “type”: “Raw”, “values”: “{}” }, { “code”: “fault”, “type”: “Bitmap”, “values”: “{\“label\”:[\“short_circuit_alarm\”,\“surge_alarm\”,\“overload_alarm\”,\“leakagecurr_alarm\”,\“temp_dif_fault\”,\“fire_alarm\”,\“high_power_alarm\”,\“self_test_alarm\”,\“ov_cr\”,\“unbalance_alarm\”,\“ov_vol\”,\“undervoltage_alarm\”,\“miss_phase_alarm\”,\“outage_alarm\”,\“magnetism_alarm\”,\“credit_alarm\”,\“no_balance_alarm\”]}” }, { “code”: “switch_prepayment”, “type”: “Boolean”, “values”: “{}” }, { “code”: “energy_reset”, “type”: “Enum”, “values”: “{\“range\”:[\“empty\”]}” }, { “code”: “balance_energy”, “type”: “Integer”, “values”: “{\“unit\”:\“kW·h\”,\“min\”:0,\“max\”:99999999,\“scale\”:2,\“step\”:1}” }, { “code”: “charge_energy”, “type”: “Integer”, “values”: “{\“unit\”:\“kW·h\”,\“min\”:0,\“max\”:999999,\“scale\”:2,\“step\”:1}” }, { “code”: “alarm_set_1”, “type”: “Raw”, “values”: “{}” }, { “code”: “alarm_set_2”, “type”: “Raw”, “values”: “{}” }, { “code”: “breaker_number”, “type”: “String”, “values”: “{\“maxlen\”:255}” } ] }, “data_points”: [ { “code”: “total_forward_energy”, “custom_name”: “”, “dp_id”: 1, “time”: 0, “type”: “Integer”, “value”: “{\“unit\”:\“kW·h\”,\“min\”:0,\“max\”:99999999,\“scale\”:2,\“step\”:1}” }, { “code”: “cur_neutral”, “custom_name”: “”, “dp_id”: 2, “time”: 0, “type”: “Integer”, “value”: “{\“unit\”:\“kW.h\”,\“min\”:0,\“max\”:99999999,\“scale\”:2,\“step\”:1}” }, { “code”: “phase_a”, “custom_name”: “”, “dp_id”: 6, “time”: 0, “type”: “Raw”, “value”: “{}” }, { “code”: “phase_b”, “custom_name”: “”, “dp_id”: 7, “time”: 0, “type”: “Raw”, “value”: “{}” }, { “code”: “phase_c”, “custom_name”: “”, “dp_id”: 8, “time”: 0, “type”: “Raw”, “value”: “{}” }, { “code”: “fault”, “custom_name”: “”, “dp_id”: 9, “time”: 0, “type”: “Bitmap”, “value”: “{\“label\”:[\“short_circuit_alarm\”,\“surge_alarm\”,\“overload_alarm\”,\“leakagecurr_alarm\”,\“temp_dif_fault\”,\“fire_alarm\”,\“high_power_alarm\”,\“self_test_alarm\”,\“ov_cr\”,\“unbalance_alarm\”,\“ov_vol\”,\“undervoltage_alarm\”,\“miss_phase_alarm\”,\“outage_alarm\”,\“magnetism_alarm\”,\“credit_alarm\”,\“no_balance_alarm\”]}” }, { “code”: “switch_prepayment”, “custom_name”: “”, “dp_id”: 11, “time”: 0, “type”: “Boolean”, “value”: “{}” }, { “code”: “clear_energy”, “custom_name”: “”, “dp_id”: 12, “time”: 0, “type”: “Enum”, “value”: “{\“range\”:[\“empty\”]}” }, { “code”: “balance_energy”, “custom_name”: “”, “dp_id”: 13, “time”: 0, “type”: “Integer”, “value”: “{\“unit\”:\“kW·h\”,\“min\”:0,\“max\”:99999999,\“scale\”:2,\“step\”:1}” }, { “code”: “charge_energy”, “custom_name”: “”, “dp_id”: 14, “time”: 0, “type”: “Integer”, “value”: “{\“unit\”:\“kW·h\”,\“min\”:0,\“max\”:999999,\“scale\”:2,\“step\”:1}” }, { “code”: “alarm_set_1”, “custom_name”: “”, “dp_id”: 17, “time”: 0, “type”: “Raw”, “value”: “{}” }, { “code”: “alarm_set_2”, “custom_name”: “”, “dp_id”: 18, “time”: 0, “type”: “Raw”, “value”: “{}” }, { “code”: “breaker_id”, “custom_name”: “”, “dp_id”: 19, “time”: 0, “type”: “String”, “value”: “{\“maxlen\”:255}” } ] }

Can you share a screenshot of the device in the Tuya/SmartLife mobile app?

and there are together 3 such screens - one for each phase.

It appears to use encrypted raw values (it’s not regular base64 at least). I don’t think it’s possible to integrate this device into Homey

it is quite strange, because some of SPM01-D2TW values are available on Homey. SPM01-D2TW is one phase meter.
Spec:
{ “device”: { “active_time”: 1712997332, “biz_type”: 18, “category”: “dlq”, “create_time”: 1712997332, “icon”: “smart/icon/ay1553162414592ZG6Kk/4a0d40f41722b721de3d8641f6d59567.png”, “id”: “bf415897684c7ec7ecxvtk”, “ip”: “”, “lat”: “”, “local_key”: “”, “lon”: “”, “name”: “Sporta.zāle.Metering_1PN_WiFi”, “online”: true, “owner_id”: “”, “product_id”: “aqktrdhlsw8q90dr”, “product_name”: “Metering_1PN_WiFi”, “status”: [ { “code”: “forward_energy_total”, “value”: 78314 }, { “code”: “phase_a”, “value”: “CXoAAAAAAAA=” }, { “code”: “fault”, “value”: 0 }, { “code”: “alarm_set_1”, “value”: “BwEABQgBAAA=” }, { “code”: “alarm_set_2”, “value”: “AQEAFAMBAP0EAAC0BwEAAAgBAA8JAAAA” }, { “code”: “breaker_number”, “value”: “SPM01_B29F” }, { “code”: “supply_frequency”, “value”: 4996 }, { “code”: “cur_voltage”, “value”: 2426 }, { “code”: “cur_current”, “value”: 0 }, { “code”: “cur_power”, “value”: 0 } ], “sub”: false, “time_zone”: “+03:00”, “uid”: “”, “update_time”: 1712997332, “uuid”: “” }, “specifications”: { “category”: “dlq”, “functions”: [ { “code”: “clear_energy”, “type”: “Boolean”, “values”: “{}” }, { “code”: “alarm_set_1”, “type”: “Raw”, “values”: “{}” }, { “code”: “alarm_set_2”, “type”: “Raw”, “values”: “{}” }, { “code”: “online_state”, “type”: “Enum”, “values”: “{\“range\”:[\“online\”,\“offline\”]}” } ], “status”: [ { “code”: “forward_energy_total”, “type”: “Integer”, “values”: “{\“unit\”:\“kW·h\”,\“min\”:0,\“max\”:999999999,\“scale\”:2,\“step\”:1}” }, { “code”: “phase_a”, “type”: “Raw”, “values”: “{}” }, { “code”: “fault”, “type”: “Bitmap”, “values”: “{\“label\”:[\“short_circuit_alarm\”,\“surge_alarm\”,\“overload_alarm\”,\“leakagecurr_alarm\”,\“temp_dif_fault\”,\“fire_alarm\”,\“high_power_alarm\”,\“self_test_alarm\”,\“ov_cr\”,\“unbalance_alarm\”,\“ov_vol\”,\“undervoltage_alarm\”,\“miss_phase_alarm\”,\“outage_alarm\”,\“magnetism_alarm\”,\“credit_alarm\”,\“no_balance_alarm\”]}” }, { “code”: “energy_reset”, “type”: “Enum”, “values”: “{\“range\”:[\“empty\”]}” }, { “code”: “alarm_set_1”, “type”: “Raw”, “values”: “{}” }, { “code”: “alarm_set_2”, “type”: “Raw”, “values”: “{}” }, { “code”: “breaker_number”, “type”: “String”, “values”: “{\“maxlen\”:255}” }, { “code”: “reverse_energy_total”, “type”: “Integer”, “values”: “{\“unit\”:\“kW.h\”,\“min\”:0,\“max\”:999999999,\“scale\”:2,\“step\”:1}” }, { “code”: “supply_frequency”, “type”: “Integer”, “values”: “{\“unit\”:\“Hz\”,\“min\”:0,\“max\”:9999,\“scale\”:2,\“step\”:1}” }, { “code”: “online_state”, “type”: “Enum”, “values”: “{\“range\”:[\“online\”,\“offline\”]}” }, { “code”: “cur_voltage”, “type”: “Integer”, “values”: “{\“unit\”:\“V\”,\“min\”:0,\“max\”:5000,\“scale\”:1,\“step\”:1}” }, { “code”: “cur_current”, “type”: “Integer”, “values”: “{\“unit\”:\“A\”,\“min\”:-100000,\“max\”:100000,\“scale\”:3,\“step\”:1}” }, { “code”: “cur_power”, “type”: “Integer”, “values”: “{\“unit\”:\“kW\”,\“min\”:-20000,\“max\”:20000,\“scale\”:3,\“step\”:1}” } ] }, “data_points”: [ { “code”: “forward_energy_total”, “custom_name”: “”, “dp_id”: 1, “time”: 0, “type”: “Integer”, “value”: “{\“unit\”:\“kW·h\”,\“min\”:0,\“max\”:999999999,\“scale\”:2,\“step\”:1}” }, { “code”: “phase_a”, “custom_name”: “”, “dp_id”: 6, “time”: 0, “type”: “Raw”, “value”: “{}” }, { “code”: “fault”, “custom_name”: “”, “dp_id”: 9, “time”: 0, “type”: “Bitmap”, “value”: “{\“label\”:[\“short_circuit_alarm\”,\“surge_alarm\”,\“overload_alarm\”,\“leakagecurr_alarm\”,\“temp_dif_fault\”,\“fire_alarm\”,\“high_power_alarm\”,\“self_test_alarm\”,\“ov_cr\”,\“unbalance_alarm\”,\“ov_vol\”,\“undervoltage_alarm\”,\“miss_phase_alarm\”,\“outage_alarm\”,\“magnetism_alarm\”,\“credit_alarm\”,\“no_balance_alarm\”]}” }, { “code”: “clear_energy”, “custom_name”: “”, “dp_id”: 12, “time”: 0, “type”: “Enum”, “value”: “{\“range\”:[\“empty\”]}” }, { “code”: “alarm_set_1”, “custom_name”: “”, “dp_id”: 17, “time”: 0, “type”: “Raw”, “value”: “{}” }, { “code”: “alarm_set_2”, “custom_name”: “”, “dp_id”: 18, “time”: 0, “type”: “Raw”, “value”: “{}” }, { “code”: “breaker_id”, “custom_name”: “”, “dp_id”: 19, “time”: 0, “type”: “String”, “value”: “{\“maxlen\”:255}” }, { “code”: “reverse_energy_total”, “custom_name”: “”, “dp_id”: 23, “time”: 0, “type”: “Integer”, “value”: “{\“unit\”:\“kW.h\”,\“min\”:0,\“max\”:999999999,\“scale\”:2,\“step\”:1}” }, { “code”: “supply_frequency”, “custom_name”: “”, “dp_id”: 32, “time”: 0, “type”: “Integer”, “value”: “{\“unit\”:\“Hz\”,\“min\”:0,\“max\”:9999,\“scale\”:2,\“step\”:1}” }, { “code”: “online_state”, “custom_name”: “”, “dp_id”: 35, “time”: 0, “type”: “Enum”, “value”: “{\“range\”:[\“online\”,\“offline\”]}” }, { “code”: “cur_voltage”, “custom_name”: “”, “dp_id”: 102, “time”: 0, “type”: “Integer”, “value”: “{\“unit\”:\“V\”,\“min\”:0,\“max\”:5000,\“scale\”:1,\“step\”:1}” }, { “code”: “cur_current”, “custom_name”: “”, “dp_id”: 103, “time”: 0, “type”: “Integer”, “value”: “{\“unit\”:\“A\”,\“min\”:-100000,\“max\”:100000,\“scale\”:3,\“step\”:1}” }, { “code”: “cur_power”, “custom_name”: “”, “dp_id”: 104, “time”: 0, “type”: “Integer”, “value”: “{\“unit\”:\“kW\”,\“min\”:-20000,\“max\”:20000,\“scale\”:3,\“step\”:1}” } ] }

That appears to be similar. Does it show up when selecting the text part of any of these cards?

It seems that I am not so familiar with Homey yet … I can not find a place where are such cards.

Edited - seems I found where they are.

If it does make sense, I am just trying out Homey, I have Self hosted Homey without any Homey bridge. Only devices I am playing with are my existing Xiaomi sensors and different Tuya wiFi devices.

Click here to open the editor, right-click, select Add->Then

Then, you choose Tuya->[your device] and there you can find the cards