[RELEASE] Zemismart Zigbee Blind Driver

Has anyone successfully link the driver to Google Home?

I have done the following:

  • Added the Blind to the Hubitat Google Home app
  • Refresh Google Home Android App (by reconnecting Hubitat and selected the Blind and authorize it)
  • Once authorization is done, no new device / Blind is added to the Google Home android App
  • And when I went back to the Hubitat Google Home App, the Blind is unselected again

It works perfectly with Amazon Echo Skill app though

See Google Home Integration section in first post

1 Like

D'oh! sorry I totally missed it.

I wonder why it uses Curtain, instead of Blind? consider Blinds will allow you to change its height.

Unpairing, resetting, and re-pairing seems to have fixed the problem. I had to reverse the direction and never saw the updateDirection: line in logs, but... it worked.

I also suddenly lost control over the other device - Dining Room Blinds 2. Didn't know what to make of that, but I removed/reset/repaired it and now it's working fine. Thanks!

Next question. I'm trying to create devices that can control multiple shades and I did what you had suggested. I have two rules configured as below. Main problems I see with this are two: (1) When I open/close the device, there is a delay before the blinds open/close. (2) (more annoying), the individual blinds and the overall blinds control do not sync. I.e. if the individual blinds are closed, the overall control does not read as closed - i have to close it again manually. Any suggests for fixing this so the virtual shades device gives correct updated information on the blinds position? Let's assume I want the virtual shades device to read as "open" if either of them are open, and "closed" if both are closed.

Thanks in advance,

I seem to be having some issues with my Zemismart AM43.
I can do a set position, but nothing other than that.
The positions are set and works as expected.
This is what I get when trying to, well anything other than setPosition:

dev:705 2021-07-18 19:33:01.873 errororg.codehaus.groovy.runtime.typehandling.GroovyCastException: Cannot cast object 'null' with class 'null' to class 'int'. Try 'java.lang.Integer' instead on line 204 (setDirection)
dev:705 2021-07-18 19:33:00.867 errororg.codehaus.groovy.runtime.typehandling.GroovyCastException: Cannot cast object 'null' with class 'null' to class 'int'. Try 'java.lang.Integer' instead on line 210 (setMode)
dev:705 2021-07-18 19:32:59.900 errororg.codehaus.groovy.runtime.InvokerInvocationException: java.lang.Exception: Invalid maxClosedPosition "null" should be between 0 and 100 inclusive. (configure)
dev:705 2021-07-18 19:30:08.140 errorjava.lang.NullPointerException: Cannot invoke method negative() on null object on line 516 (stepClose)
dev:705 2021-07-18 19:30:07.125 errorgroovy.lang.GroovyRuntimeException: Ambiguous method overloading for method java.math.BigDecimal#plus.
Cannot resolve which method to invoke for [null] due to overlapping prototypes between:
	[class java.lang.Character]
	[class java.lang.String]
	[class java.lang.Number]
	[class java.math.MathContext] on line 524 (stepOpen)
dev:705 2021-07-18 19:30:06.350 errorgroovy.lang.GroovyRuntimeException: Ambiguous method overloading for method java.math.BigDecimal#plus.
Cannot resolve which method to invoke for [null] due to overlapping prototypes between:
	[class java.lang.Character]
	[class java.lang.String]
	[class java.lang.Number]
	[class java.math.MathContext] on line 524 (stepOpen)
dev:705 2021-07-18 19:30:05.655 errorjava.lang.NullPointerException: Cannot invoke method negative() on null object on line 516 (stepClose)
dev:705 2021-07-18 19:30:05.060 errorjava.lang.NullPointerException: Cannot invoke method negative() on null object on line 516 (stepClose)
dev:705 2021-07-18 19:30:02.436 errorjava.lang.NullPointerException: Cannot invoke method negative() on null object on line 516 (stepClose)
dev:705 2021-07-18 19:16:05.037 errororg.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: user_driver_amosyuen_ZemiSmart_Zigbee_Blind_693.ping() is applicable for argument types: () values: []
Possible solutions: find(), print(java.lang.Object), find(groovy.lang.Closure), print(java.io.PrintWriter), print(java.lang.Object), run() (ping)
dev:705 2021-07-18 18:57:06.050 errororg.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: user_driver_amosyuen_ZemiSmart_Zigbee_Blind_693.checkEventInterval() is applicable for argument types: () values: [] (checkEventInterval)
dev:705 2021-07-18 18:45:05.039 errororg.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: user_driver_amosyuen_ZemiSmart_Zigbee_Blind_693.ping() is applicable for argument types: () values: []
Possible solutions: find(), print(java.lang.Object), find(groovy.lang.Closure), print(java.io.PrintWriter), print(java.lang.Object), run() (ping)
dev:705 2021-07-18 18:36:44.547 errorgroovy.lang.GroovyRuntimeException: Ambiguous method overloading for method java.math.BigDecimal#plus.
Cannot resolve which method to invoke for [null] due to overlapping prototypes between:
	[class java.lang.Character]
	[class java.lang.String]
	[class java.lang.Number]
	[class java.math.MathContext] on line 515 (stepOpen)
dev:705 2021-07-18 18:36:43.146 errorjava.lang.NullPointerException: Cannot invoke method negative() on null object on line 507 (stepClose)

I'm also getting this one regularly:

dev:7052021-07-18 19:45:05.040     errororg.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: user_driver_amosyuen_ZemiSmart_Zigbee_Blind_693.ping() is applicable for argument types: () values: []

The Zemismart AM43 Roller Shade Driver works fine on turning open vertical blinds that have beaded chains.

But it doesn't work well on the nylon cord that draws the blinds open.

Does anyone know of a similar device that works with Hubitat that can handle the smooth nylon cords that draw blinds open and closed?

Make sure you have set maxClosedPosition in the preferences and click save preferences.

Mine works fine with a nylon cord. Make sure you are using the right spinner. Refer to the instructions for which spinner to use. Also make sure it's tight enough.

I was set, probably by default to max close = 1 and max open = 99

I changed the values to 2 and 98 and saved.
It’s seems to be working, but I’m not at home at the moment, so I will update when I’ve checked.

It doesn't do anything useful.
Still can't use open, close, step or start position change.

I tried all four spinners. They each had the same problem - either they did not grip the cord well enough, or they gripped it too much and would not release the cord causing both sides of the cord to loop around the spinner.

Hello friends, I am going to buy this device for my blinds, do I need your zigbee hub, or does it integrate with he directly?

No other hub needed. Can connect directly to Hubitat.

1 Like

Is there an updated link for this? The link currently doesn't go anywhere.

Can anyone tell me what I'm doing wrong here? Once again I have a fresh AM 43 device installed, set the upper and lower limits, paired to my Hubitat, set the up/down direction buttons properly, and once again the Open/Close buttons in Hubitat do the reverse of what I want. I change the direction to reverse, save, click "configure" and wait a while. Now the open/close buttons do nothing.

This was after reseting and repairing and redoing everything.

I have a feeling this falls in the DOH! section, but will this integration work with Zemismart products like this one found on Amazon? Or is this specific to their rope motor control?

@amosyuen or @rlithgow1 could I trouble you or any other kind soul for setup advice again?

I've installed three of these AM43 Blind Drive Motors so far, and while the third one was a bit of a rocky start with me having to uninstall/unpair and repair it before I got it to work, it worked ultimately.

Now I have a fourth one of these devices and despite removing/resetting/repairing it several times, I can't get it to work properly.

Specifically, in Dashboard (using the Shades tile) and in the device page it keeps saying "Opening" even though the blinds are fully closed. When I open them using the slider in dashboard, it says "Closing" then it says "Opening" but it never says "Open" despite it being fully open. Nor does it say "Closed" when it is fully closed.

In addition to this, it doesn't respond to rules that I have setup to open or close the blinds at certain times, which do work with other AM43 devices that I already installed.

The last time this happened, I had to remove, reset, and repair it. But I've done that twice now and the problem persists.

I've attached a screenshot of the device configuration page and the log which shows what happens when the blinds are closed and I open them, then what happens when they are open and I close them.



Any insight greatly appreciated. Even if I'm doing something stupid....

Did you set its limits on the device itself?

Yes, that's always the first thing I do before I pair it.

hmm, no idea then. Usually I only see it when its not stop configured. If you refresh the device page does it continue to show opening after it's stopped?