A-OK Motorized blind control?

Hi all. I’m just getting started with HASS. We’re starting to build a home and while we rent in the interim I’m accumulating the necessary components for the automation we want. So far I’ve got smart plugs, Plex, thermostat and garage door control working. Now I’m looking at smart blind controllers.

I’m seeing these on Amazon and wondering if I can control them from HASS on my Pi 4 server. I’ve searched online and on the forums and found nothing definitive. Does anyone have any thoughts, experience with them, or an integration for managing them?




I’ve been looking into similar smart blinds on AliExpress, which I think are the same ones, but they cost half! I believe they all come from the same factory and are called the ‘AM43 smart blinds’ . It looks like you need the app ‘Blind Engine’ for the A-OK ones. I have not found integrations with Home Assistant yet. Maybe someone else knows an integration.

I have the one from aliexpress (branded as “zemismart” in the lot, but no mention of manufacturer on the actual device when received, just the AM43 model name on the box). was priced ~40 Euro

it is using the same A-OK android app for controlling over Bluetooth so it must be technically “the same” device.

as for home-assistant integration:

there is a repo on github https://github.com/binsentsu/am43-ctrl , the latest commit is broken, but you can use my fork instead as a temp solution (better verify first if the original repo is working, as I’m not going to support it in the future) https://github.com/delphir-com/am43-ctrl/

I have just bought a couple of these - and i am gonna try to make them work with the am43-ctl. I can see that there is a integration for openhab - so it should be possible to integrate them into HA aswell.

I am however more interested in making them work with esphome - because I think many houses will likely have them installed in the outer perimeters in their house - so its doubtfull if one BT connection will suffice - with the range limited by walls and floors etc. I have also made an official request on the esphome github page - so maybe if we are lucky - one day we can control i by esphome :slight_smile:

br Ronni

I’m almost sure that this is the same hardware as the Zemismart we are using here: Zemismart Roller Shade Integration

I’m not sure if you bought them already but I ordered a bunch on AliExpress for ~$30-35 inc delivery and tax to the UK. They’re arriving next week so I’ll test them out!

I just got mine up and they’re working great!

I managed to make a nodejs server that sends bluetooth commands to the blinds, same as https://github.com/delphir-com/am43-ctrl/. However, just like this project, I cannot tell the blinds to open x% or even check if they are open or closed. I cannot decipher the crap messages the blinds sends back. Anyone experienced with bluetooth about?!

Check the original iso the fork. I implemented position % read/write in v0.2.0

I got two of these (unbranded but apparently A-ok) and they seem to work fine. I’m restricted to my laptop for testing instead of my Ubuntu server (mini pc) box but it seems very solid. I really like them but i’d like them to be wifi or zigbee.

I install package on Ubuntu 18.04 ARM (nodejs v14.3.0), some warnings but with success. After run i got error:

let devices = {};

SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict mode
    at exports.runInThisContext (vm.js:53:16)
    at Module._compile (module.js:387:25)
    at Object.Module._extensions..js (module.js:422:10)
    at Module.load (module.js:357:32)
    at Function.Module._load (module.js:314:12)
    at Function.Module.runMain (module.js:447:10)
    at startup (node.js:142:18)
    at node.js:939:3

Ubuntu works with BLE dongle fine, Bluetooth LE Tracker in Hassio map devices in neighborhood, so isn’t problem with hardware.
Any idea?

I managed to write a sketch for an ESP32 that can connect to these blinds over BLE and control them using MQTT and HA. I sniffed the BLE connections with blejack to work out exactly how they talk, as well as looking at the nodejs and other code.

No problems with two motors at once on this, though you need to apply a fix to the BLE library. Please try it and let me know how it goes for you:

Hi Bux the ESP32 looks great, had a spare ESP sitting around but no spare PI to run the initial forks. Been playing with the ESP a bit but am no where near a competent user. I ran into an issue with the code you listed, not sure if its the fact in comping in arduino ide with the ESP32 from esspressive (can a simple wifi temp/moisture sensor the old job of the board) or just plain user error. But I posted the issue on the GIT page hopefully you can see where I messed up or give me a hand in getting it going would be nice to sync it to sunrise and sunset rather than change the time every two weeks. Thx J5

This should be good now, the code wasn’t consistent with Arduino’s multi-file behaviour.

ESP 32 program works perfectly. Excellent support from author.

Hey Ben. Looks like an awesome controller you wrote. Was originally planning on setting up the node util binsentsu wrote on a spare NUC I’ve got laying around, but if I could do it on an ESP32, why not!

Would you or anyone else be able to point me towards something that’d help getting this set up from scratch. I presume it’s not a complicated process, I just have 0 experience with arduinos before. The Getting Started section of the readme looks incredibly helpful for steps 1-3, but I’m working on figuring out step 0. Figured I’d start by getting a breadboard and an ESP32. Do I need a Pi to get it set up?

Edit: I’ll answer most of my question:

Raspberry Pi not required, I was stitching from Windows 7. Must be MQTT, maybe on a PC