Driver for Aqara Smart Curtain Motor E1?

I tried that driver hoping to get lucky, but it didn't work.

Interesting. I have a couple of these coming in tomorrow so keeping an eye on this as well.

Adding HA for Z2M support can get around these device compatibility issues pretty easily. Home Assistant Device Bridge is a really useful integration to have available.

1 Like

I went ahead and set this up, and so far it seems to be working pretty well.

2 Likes

Hi guys,

@philtor and @SmartHomePrimer, this might be daft questions but

  • when you say you set that up and it worked, does that mean you set it up in Home assistant or did you set it up in Hubitat? I am currently not using home assistant and would idealy like to use Hubitat. How did you go about solving that?

  • I followed the link @SmartHomePrimer provided and on that page is a reference to required firmware. Is that firmware to installed on the curtain motor device, HA or in Hubitat? How did you go about doing that?

  • I downloaded the Aqara app to start setting the motors up there, but that requires having an Aqara hub, which I at the moment don't have. Did you buy an Aqara hub in order to set this up, or isn't the hub required anymore using the Xiaomi integration?

  • Am I requred to get a Rasberry PI and install Zigbee2MQTT support for this to work?

Thanks

Regards,
Magnus

Zigbee2MQTT doesn't technically need Home Assistant, but it is by far the easiest and best documented way to use it. You can setup Home Assistant and Zigbee2MQTT on a spare computer, or an Intel based mini PC, to name just a few options. A Raspberry PI isn't a requirment, but it can be a simpler way to get this all going. Virtual installs on Computers can add a level of complexity in some cases when it comes to the integrations needed.

For hardware requirements, you would need a Zigbee controller, such as the ConBee 2 Zigbee stick, or a TI based Zigbee stick.
For additional software requirements, you would need Home Assistant Device Bridge to bring Zigbee devices joined to Home Assistant into Hubitat for control and automation.

There are a number of pieces to put together and a learning curve, but taken slow and thoughtfully, there's complete step by step instruction for each phase. Once you have it setup, it's super reliable and there are tons on Zigbee devices and other integrations (both local and cloud) beyond just the Aqara curtain motor that you would be able to benefit from.

Start here for HA and choose one of the methods to get that going.

Buy a Zigbee controller. There are many options, but the ConBee 2 is plug and play, one of the most supported around, and its performance and device support is excellent.

Go here for Zigbee2MQTT installation instructions. This is one of the best guides I've found, but there are many you can follow.

Once you get the device working in Home Assistant. Come back to here for Home Assistant Device Bridge so you can import the device into Hubitat and automate it with the rest of your rules and devices.

1 Like

I use a Synology DS918+ NAS with the necessary USB driver hack, and I connected a Sonoff USB Zigbee 3.0 dongle that I bought off ebay for less than $20 delivered. I installed the Zigbee2MQTT docker container which connects to my Home Assistant VM, both are running on my NAS. I use HE-HA-control on my Hubitat to interface with my Home Assistant VM. It’s been working 100% reliably and amazingly responsive.

I would still prefer to have native HE support.

1 Like

The E1 series of Aqara devices are locked to their hub. Zigbee2mqtt has to spoof being an Aqara hub for E1 devices to pair and function with it. Seems unlikely Hubitat Inc.'s legal dept would think that's a good idea for them to do.

1 Like

I have the Aqara Curtain Driver E1 added directly to my hub. It was pretty straight forward in terms of pairing, but their use of non standard clusters is still a mess hence why they don't officially support them.

1 Like

So you're able to control the Aqara Curtain Driver E1 directly using HE? If so, which driver are you using?

Yes. Wrote my own driver. Not publicly posted though for various reasons. But direct connection and control is possible. Same with battery reporting, light sensor, charging state and level.

Side note: If anybody wants to write a public driver for it and has experience writing the zigbee drivers, I am willing to share the relavent code that you can integrate.

4 Likes

Hi @SmartHomePrimer ,

Thank you so much for taking the time to write down this detailed and pedagogical step by step instruction on how to set this up. I appreciated this a lot, thank you!

Based on your list I went to the store and bought my first Raspberry PI 4b and Conbee stick II and started to set this up. It has taken me the better part of my day and most of the steps have gone smooth. Except one.

It appears the Zigbee functionality in the stick is unavailable or cannot be reached for some reason. When I try to access the web UI of the Zigbee2MQTT app I get Error 502: Bad Gateway.

The log file says:
[01:46:36] INFO: Handing over control to Zigbee2MQTT Core ...

zigbee2mqtt@1.27.0 start
node index.js Zigbee2MQTT:info 2022-08-14 01:46:43: Logging to console and directory: '/config/zigbee2mqtt/log/2022-08-14.01-46-43' filename: log.txt
Zigbee2MQTT:info 2022-08-14 01:46:43: Starting Zigbee2MQTT version 1.27.0 (commit #unknown)
Zigbee2MQTT:info 2022-08-14 01:46:43: Starting zigbee-herdsman (0.14.46)
Zigbee2MQTT:error 2022-08-14 01:46:53: Error while starting zigbee-herdsman
Zigbee2MQTT:error 2022-08-14 01:46:53: Failed to start zigbee
Zigbee2MQTT:error 2022-08-14 01:46:53: Check Zigbee2MQTT fails to start | Zigbee2MQTT for possible solutions
Zigbee2MQTT:error 2022-08-14 01:46:53: Exiting...
Zigbee2MQTT:error 2022-08-14 01:46:53: undefined

And then the same message repeats.

I have read through the comments of the Smart home junkie video, read the documentation text for the app as well as googled the error. I have tried a lot of small changes but nothing seems to work.

  • The documentation to Zigbee2MQTT mentions enabling 'zigbee_herdsman_debug'. Do you know how to do that? Where do I enter this line to get the debugging to start?

  • If I understood a text I read correctly, the log from this debug is not entered into the standard log file adjacent to the configuration, but written in a separate log file? Do you know where to find this other log file?

  • Out of curiosity, I also noted that the USB reference in the tty reference changed from 0 to 1 and then back again every time I restarted the Raspberry PI. Having owned my first Raspberry PI for less than a day, is that normal behaviour of a Raspberry PI to change the references to the USB ports dynamically in this way?

Thank you for having taken the time to read my post.

Any thoughts and advise is highly appreciated!

Fairly common issue when setting up Zigbee2MQTT. Answer was a little different for me than it's been for others.

Maybe also some help here if you don't find the solution with what I've posted previously.

1 Like

Thank you thank you thank you! It worked! I removed the ZHA integration and changed the mqtt server to the IP address and bam,
Did I say thank you?!
:slight_smile:

1 Like

Excellent! Hope you enjoy your new Smart Curtains and the massive library of additional Zigbee devices and integrations you can now access.

1 Like

Thank you! I am looking forward to continue with your eminent set of instructions and explore what is now possible to do! :slight_smile:

1 Like

Is anyone working on a public driver?

I don't believe this is true. I can pair it with my Hubitat. However, most controls don't work yet as I don't know the zigbee clusters which have to be sent. "Stop" works though. If someone can figure out the remaining clusters, then a native driver could be written. That's the exact same thing that had to be done with the B1 drivers and @markus figured that out.

Can you share your code and the clusters used? I can edit markus's driver to work with the E1. Thanks!

PM Sent.

Hey guys,

So here's the 1st iteration of this driver. Thanks @gavincampbell . It's really gavin's work integrated into markus's driver with some changes.

I still have a lot of work to do. The curtain sends its position, battery and a bunch of other info every 6 minutes. I need to get the driver to properly consume that once I figure out what is what. It's not essential as the curtain sends its position whenever it opens or closes. However, it's useful for getting the latest battery without having to click the "refresh" command.

Anyways, pretty much all the commands should work now. You can also use the "track discovery" to set the open and close limits of the curtain. Will update when I have a new version. Cheers.

4 Likes