SONOFF ZBMINI Function Questions

I’m researching lighting controls for my new house and came across the ZBMINI from SONOFF. It seems like a good solution as it checks a number of boxes:

  1. It allows me to connect my lighting to one of the common automation protocols (zigbee, z-wave, etc.)
  2. It has the ability to hardwire a switch (a requirement from SWMBO) and doesn’t require a special switch
  3. It’s decently priced, especially since you can use regular switches (another plus with SWMBO, as I’m going to need 20 of these).
  4. It’s from a company I am familiar with (I have used some of SONOFF’s ESP8266-based devices before).

But I find the product documentation somewhat lacking in answering practical questions, so I’m hoping someone here has experience.

A) ZBMINI is the first device I came across that ticked all the boxes above. But my previous SONOFF projects have just been tinkering. Are these stable enough to use with the main lighting of a house? Does anyone have any alternate recommendations?

B) How does this device function when not connected to a Zigbee hub (like say the hub is malfunctioning or unplugged)? Does it just use the switch signal to control the relay – thus acting like a dumb switch?

C) What happens if the switch signal and the automation signal get out of sync? For example, let’s say I pull into the garage and the basement lights automatically come on with a motion sensor. But this is from an automated signal and not the switch. The switch signal is still in the off (open) position.

So if I walk upstairs and hit the switch at the top of the stairs, what does the unit do? Does it recognize the change in state to the signal line and turn the light off? Or does it recognize the switch signal is now in the on (closed) position and leave the light on? If the latter, do I have to flip the switch on and then off again to turn the light off?

D) SONOFF seems to be targeting retrofit applications, so I think they’re assuming you will just use your existing NM cable for the signal wire. But I’ll be using these in new construction, so 12-guage wire seems like overkill (I’m assuming the signal line is 5V or 12V). Is it safe to use 18-guage wire (like for low-voltage lighting) for the signal line? And would using it pass US electrical codes?



In the absence of other information, I’ve been doing some first-hand testing of the ZBMINI. Here are my conclusions to some of the questions above.

B) When the Zigbee hub is not working, the ZBMINI does still function with the physical switch, just as if the digital relay was not present.

C) The ZBMINI does not seem to pay attention to whether the switch is on or off (open or closed), but functions more like a 3-way switch where the ZBMINI senses the change in the switch state and changes the state of the relay. In other words, the ZBMINI doesn’t care whether the switch is going from open to closed or closed to open, just that it’s changing state.

I’m assuming the ZBMINI actually does know the true state of the switch, but it either doesn’t pass that info on to HA or HA doesn’t show it in any way. The on-off indication in HA is based on the state of the relay.

All that to say, there doesn’t seem to be any concern with the device getting out of sync.

D) The inspector I talked with said a device like this was acceptable for US codes because it had the manual switch override. He also said that using 18-guage wire for the switch would be acceptable as long as the load and line used proper gauge wire for the circuit’s rating.

However, he also said that in order to pass inspection a device needs to be UL rated, which the ZBMINI is not. It has a CE certification (although I’ve read that this is self-certification), but not UL.

So if anyone knows of any economical switch-controlled relays like this that are UL rated, I would love to have a recommendation.


Many thanks for your update here @cweinhofer!

Your experiences match mine. Thanks for posting! Unlike my Sengled bulbs, these seem to very rarely, if ever, have the state fall out of sync with the controller.

One limitation is that you can only bind the switch to a single Zigbee group. It looks to be a limitation or bug in the firmware, and when I contacted support they weren’t helpful.

The best part of these is the price. I’ve installed one of these switches (GE branded in the US), and it was significantly easier. But, they’re 4-5x the cost for each switch.

Otherwise, I will likely use a zbmini in a light fixture where the neutral wire is only in the light, and not at the box, which wouldn’t work for the above switch.

One limitation is that you can only bind the switch to a single Zigbee group.

Can you elaborate a little more on where you might need this feature for a relay like this? I’m still fairly new to both Zigbee and HA, but I understood groups to be something you would use for grouping three bulbs together if they were in the same fixture, for example. But with a relay like this, you would be controlling the electricity upstream of the fixture and eliminating the need for a group. I’d be interested to hear what your use case is where you’d want the relay itself in a group.

A common recommendation is to target groups as much as possible, as it reduces the overall traffic on the network.

For example, I have one group called “All lights”, which is every single light in the house. I also have another group for “Main floor” and finally one for “Kitchen”. Once I bind the zbmini to “All lights”, it can no longer be bound to the other groups it’s logically a part of.

If you tried to turn off dozens of bulbs with individual commands, at best there will be lag while the controller sends out individual commands, or at worst some messages will be lost.

Thank you for starting this topic, @cweinhofer

Adding my experience with the Sonoff ZBMINI modules after some initial experience with them, I can summarise the following:

  • Great build quality (except for the recessed multifunctional button)
  • High pro-quality terminals that outperform competitive products that even cost multiple times more
  • Service switch can break easily, probably due to the casing that is part of it, to be handled with care
  • Very cost-effective, I payed € 7.50 including VAT on Amazon per piece in a 4-pack deal, which is a steal
  • In a 50 mm internal depth wall housing there is with 28 mm plenty of space left for a switch, providing minimal cables and thin flexible cables between module and switch, providing they are properly terminated with wire ferrules
  • New firmware versions do allow toggle mode so momentary (monostable) switched can be used as well as regular pre-installed bipolar switches and there is no setting necessary to work with both modes, this is done with timing
  • 2 linked N-terminals, saving the need and space for a wire joiner
  • 10A load capacity (not tested), so plenty for lighting but limited for other loads
  • Fair RF-reach between similar modules in the Zigbee mesh (not that great between the ConBee II stick and the first module, regardless the position with an extension cable and the correct module placement)

I was wondering, would it be possible to modify some settings in the module itself to set a timer “low-level”, and change the toggle/follow switch behaviour as well, so when a momentary switch is pressed the relais output will engage for a set time, like a (door)bell or a ventilator. Something similar to what is possible with a Fibaro switch module (based on Z-wave), so that even in the unfortunate case Home Assistant is down the set timer will still work.
I tried to accomplish this with the Clusters window (Configuration > Devices > specific 01MINIZB device > Manage Clusters) where you can find

OnOff (Endpoint id: 1, Id: 0x0006, Type: in)

And then select

on_time (id: 0x4001)

And put a value in there, and click Set Zigbee Attribute, but it seems to have no effect.
You can read the settings back but that is about it.
In the end I have done a few things with Automations, but that is not the real deal and fiddly.
By the way, for all it matters, using Home Assistant 2021.9.4.r01 on a NAS running Python 3.

Love to hear if someone has managed to make these settings work.
Any other advices, like mentioning other Zigbee devices that have internal timers, much welcome too.

How do you get new firmware ?

I’m not even seeing a firmware version in the device configuration. @basmeijer are you able to update the firmware when using their app or gateway?

I have 2 with firmware version 2.0.0, and 1 with no firmware version

That’s great! Can you try binding the zbmini with the newer firmware to multiple groups? If that works, it will certainly be worth investigating how to upgrade the firmware on older units.

I am not sure if you can update it yourself. It might be possible using a Sonoff totally friendly gateway, which I do not have anyway, using a ZHA integration for all my stuff here.
I just found out about the various firmware versions that are present in the ZBMINI’s that are sold.
Sorry that I am not able to help.
You could consider re-flashing them with Tasmota and take the zigbee2mqtt route. I know the ZBMINI’s can be used for this but that did not work out for me because of my Docker / Core based Home Assistent version and my limited knowledge of Docker.

1 Like

Hello guys,
I am doing the same research as @cweinhofer because I am also renovating the house and I will have to do the completely new electrical system.
I wanted to base all the lights in the house and the switches for the heating on the Sonoff ZBMINI but I have some doubts.
My Home Assistant server is installed on a Raspberry and I have configured the Zigbee devices via the SONOFF ZigBee USB Dongle Plus and everything seems to work.
But I can’t figure out how to access the ZBMini configuration. In particular, if used through their application it is possible to configure the type of external switch (button or switch), which is fundamental for me to be able to control the same ZBMini from several buttons together.
Do you know how to do this?
Thank you! :smiley:

Are you using ZHA or zigbee2mqtt? Both have options for forcing the device type, and neither exposes it through the UI. You have to do it through the configuration files. I’ve successfully done it under both systems, changing a ZBMINI to a light entity.

If you’re not too far deep into your reno, I’d suggest going with something like Enbrighten-Zigbee-In-Wall-Smart-Dimmer-with-QuickFit™-and-SimpleWire™-White-Almond instead of a ZBMINI. They are way easier to install, and they can be put into pairing mode without having to take off the face plate.

I did it via ZHA. Do you have an example to customize it with teh config file?
I can’t find any example online :rofl:

But for example I can’t understand why the entities to check the LQI and RSSI of the devices are not enabled.

Do you think that through zigbee2mqtt everything works better? I use the Sonoff temperature and humidity sensors and the ZBMINI to control my heating system divided for each room in the house.

Docs here on modifying the ZHA device type:

What’s “best” isn’t a simple question, but I’ve been posting notes since May over here:

Ok, thank you.
I have Home Assistant installed in the 8GB RAM RASPBERRY PI 4, and as a coordinator I use the SONOFF Zigbee 3.0 USB Dongle Plus.
I read that maybe I should also update the firmware since sometimes it also happens to me that the commands are lost and not executed, but I did not understand if I have to flash the router or coordinator firmware.
What do you think?

Has anyone every connected two ZBMINIs to the same switch? If so, did you do it in parallel (left) or series (right)?
parallel series

I have a situation (bathroom light / fan) where I want to control the power of two devices based on the action of one switch. Each device will do something different (one will turn on/off, one will stay on for an extended time).

And FYI, I’m not considering using a zigbee-only relay for the second device, because I really like the fact that the ZBMINI provides a hardwire control backup in case the server is down.

I did a test of the “series” wiring option (from switch to mini A to mini B back to switch) and it seemed to work fine. Each mini had its own independent power (wyed from a common source) both to and from the device. It will be a while before I set up the part in HA for the extended timer, but I’ll try to report back when I do.

1 Like

I am considering putting some of these in to make my ceiling fans smart (just the light kit). My concern is that my circuit is the standard 15A and this zbmini is only rated for 10A. What if we plug some things into the outlet, down circuit from this device, and draw 12A (for example)? Are there concerns that this device might fail or… idk… catch fire, explode, etc?

A maintenance guy at work recommended having the Lin come from the switch (maybe even embedding this at the fan box rather than the switch box). That way, you can easily hit the switch off if something happens with the zbmini, or even if the mini needs a reset, rather than having to go to the breaker.

I see 2 wiring options here smart - Connecting S1 and S2 on SONOFF Mini to 230V - Electrical Engineering Stack Exchange. I assume the standard setup is the one on the right with the switch using the SW ports. I also assume the maintenance guy’s suggestion would use the left diagram with the Lin coming from the switch, essentially making this a wedge between the switch and light/fan.

I already know that I have a space heater on this circuit that’s 900w which automatically puts me at 7.5A. That doesn’t leave much wiggle room but I don’t fully understand electrical circuitry to know how this would affect the ZBmini.

What’s the best/safest way to wire this? Does having it downline from the switch alleviate any of the amperage concerns?