Zigbee thermostat - Centralite Pearl Thermostat

I had issues. Adding ikea outlets as repeaters solved most of them, but occasionally it doesn’t respond to a command still.

In the Node red flow I posted above, I listen for errors on the mqtt topic zigbee2mqtt/bridge/log. If it errors, the automation resends the command to the thermostat again. If it fails a second time, I get a notification.

Do you have repeaters? I would check the map in zigbee2mqtt to see how it’s routing. One of my thermostats occasionally tries to route through a switch that is actually further from the coordinator, which makes no sense why it goes that way. I temporarily disconnected power to the far away switch, pull the thermostat off the housing, then reconnect and it finds the right path.

Are you getting errors in your zigbee2mqtt logs? Or are you using zha instead?

I honestly don’t trust the thermostat enough to have any automation turn it totally off and on. During the heating season I just lower the temperature- say 60 degrees, instead of shutting it off. This way if communication fails, at least it will heat to 60 and my pipes won’t freeze and burst.

Also, there was another bug with a math rounding issue that I sent a PR to fix in January, so make sure you are on the latest version if using zigbee2mqtt

2 Likes

I’m having the same problem too! I’m able to get the state but even trying to set anything in the developer tools/state setter doesn’t work nor do anything, and I’m using ZHA.

Edit: I have figured it out!

The thermostat will not change its temperature setting unless it also gets the target_temp_high and target_temp_low, like below:

service: climate.set_temperature
data:
  temperature: 75
  target_temp_high: 80
  target_temp_low: 60
target:
  entity_id: climate.living_room

Hope that helps you!

2 Likes

In my case i figured it out. its just the compressor on my unit. its very slow to switch states. i was able to confirm the unit is receiving my commands and switching state, but then it takes a while for the compressor/ac to “kick in”.

Yes, the compressor will also usually have an “auto protect” mode to give it time between restarts in most HVAC systems to avoid damaging the compressor, resulting in delays between the thermostat calling versus the compressor coming on.

I don’t have the “e” version of the thermostat. Is there a way to do a firmware update or use the other quirk?

Not really sure what the difference, if any, there is between the e version and non e version, but they do have two separate configs in the settings files.

You can do an “external converter” to define a custom one for zigbee2mqtt

https://www.zigbee2mqtt.io/guide/configuration/more-config-options.html#external-converters

What you’ll want to do is create a file in the zwavejs2mqtt data directory, called 315700.js
with the contents here - 3157100.js - Pastebin.com

In your configuration.yaml file for zigbee2mqtt (NOT home assistant) you would add these lines to use the custom converter

external_converters:
  - 315700.js

Restart zigbee2mqtt, then go into the zibee2mqtt UI and click the orange “reconfigure” button for the thermostat. That should override the default and get the hold to work. I’d submit a PR to add this to the program too but I’m hesitant to without having the 315700 none “e” version to test myself, and without fully understanding the difference between the two. Let me know if it works.

@mwav3, I don’t have a “data” folder in my zigbee2mqtt directory. Also, the configuration.yaml file is acutally in json format, so I’m not sure how tot add the external converters. I tried to create a separate external_converters.yaml file and point to it like the others, but that threw errors. Any advice where to go next?

Yes you are using the addon version of zigbee2mqtt (I’m on the docker version) so it will be a little different and require extra steps. Per the addon config documentation here - hassio-zigbee2mqtt/zigbee2mqtt/DOCS.md at b262082c2a838eccc1e6c3df9200e69fcca9c706 · zigbee2mqtt/hassio-zigbee2mqtt · GitHub

Your data folder should map to /share/zigbee2mqtt , so put the .js file there

Then convert the YAML to JASON - Transform YAML into JSON - Online YAML Tools

so it becomes

{
  "external_converters": [
    "315700.js"
  ]
}

If that doesn’t work, you might need to specifically specify the path to the file, it should be

{
  "external_converters": [
    "/share/zigbee2mqtt/315700.js"
  ]
}

I haven’t done a custom converter on the addon version before (only on my docker version) so hopefully these steps work. If I’m missing something hopefully someone who did a custom converter can chime in. If it doesn’t work please post any logs so hopefully I or someone else can figure out what is going wrong.

Z2m is now configured in its own ui, including a place to enter exernal converters.

1 Like

Thanks for the suggestion, that would probably be easier then messing with the config file. Assuming that would be done through here:

Well thank you to everyone. I actually did the change to the configuration.yaml file as in your first example, got no errors and it showed in the External Converters in the menu. Also now shows, up so appears to be working.

Just need to figure out how to use it in my automations, but I think I’m done with the hard part.

Thank you again!

2 Likes

Thanks Kupie, I will try your tweak out as well.

What I’ve noticed with the hold switch, is that it can be controlled accurately from the actual device. However, if I switch it in HA, it goes back to whatever the display on the thermostat shows, so essentially I’m unable to control the hold functionality from HA. Any suggestions?

I’m able to toggle hold on and off through Home assistant. It’s possible this is a difference between the “e” and non e version.

In your device settings, is “optimistic” checked? Mine is, and I think I had to check it for it to work right

So I now have 3 of these in service. I have a node red flow setup to control the schedule via mqtt. However, they keep disconnecting from the zigbee network. I was having some signal issues, so I changed WiFi channels on my access points and changed zigbee channel (requiring me to repair everything). My signal strength on all my devices is much better, but these things keep dropping. Any suggestions? Is there any type of automation to keep them connected?

1 Like

Even though these thermostats can receive power through the common wire from the HVAC equipment, they do not function as repeater devices, and basically in terms of zigbee routing act as a battery powered device.

That being said, do you have other mains powered repeaters near your devices? I was having some connection issues because before I bought these all my zigbee devices were battery powered. I added 3 mains powered Ikea outlets throughout the house, and the zigbee2mqtt map shows the thermostats are connecting through the outlets now. With the addition of the outlets, I rarely have these drop out. The only time they act a little funny is after a power outage where I might have to reconnect them, but otherwise they are stable.

These are the outlets I purchased to act as zigbee repeaters

This portion of the map in zigbee2mqtt shows 2 of the thermostats now connecting through the nearby Ikea outlet. The 3rd thermostat is in the same room as the coordinator so that connects directly to it.

Screenshot from 2022-06-03 13-07-51

@mwav3 thanks for clarifying the point that this thermostat doesn’t actually function as a repeater even if you have it connected to power. I’m considering one of these to replace my Honeywell, though there are also a couple Tuya & Moes ZigBee thermostats I’m also considering and I bet they would be the same. I too have been considering picking up 1 or 2 Tradfri plugs but I’m installing a couple of Sonoff ZigBee Minis within range and will see if I will really need the Tradfri plugs or not.

I have two of those, they repeat, but they don’t work as well as repeaters as the outlets- Maybe because they are so small and inside a wall outlet box, versus the outlets are bigger (likely bigger antenna) and out in the open.

The lqi numbers on the sonoffs are much lower then the ikea outlets that are close to them.

That being said, you can always look at the map after you add the sonoff Minis to see how everything is doing before buying more outlets.

@mwav3 I’m intrigued by your comment “look at the map”. Is there some ZigBee coverage map somewhere that I’m not aware of?

In the zigbee2mqtt GUI, right there where the menu item at the top of the page says Map.

1 Like