How to get a zemismart curtain controller working?

Hi, just got myself this curtian rail from zemismart.

Tuya converted succesfully then flashed Tasmota and tried this:

Specifically:

From the tasmota command line:

  • change to TuyaMCU with module 54 (will reboot)
  • Switch from U0RX/TX to U1RX/TX with backlog gpio1 0; gpio3 0; gpio15 107; gpio13 108 (will reboot)
  • Treat DpId 0x65 as a Dimmer with tuyamcu 21,101
  • Allow the dimmer to get down to 1% with setoption69 0

The curtain motor now presents as a Dimmer, with 100% full brightness = fully closed, and 0% full darkness = fully open.

The curtain motor also presents DpId 0x66 as a single event “Full Open” 00 , “Full Close” 01 , and “Stop” 02 command; but as of September 2019, I can’t see how to get that working.

The curtain motor also presents DpId 0x67 as a Boolean. I have only seen value 0x01 in all my prodding. 55 aa 00 07 00 05 67 01 00 01 01 75 = 07 Status, 0005 length, 67 DpId, 01 type, 0001 length, 01 value, 75 checksum

How to translate that to esp home?

Got this:

substitutions:
  devicename: zs_curtain_01
  upper_devicename: Zemismart Curtain controller - 01

esphome:
  name: $devicename
  platform: ESP8266
  board: esp01_1m
  
wifi:
  ssid: !secret esphome_wifi_ssid
  password: !secret esphome_wifi_password
  # enable the fallback hotspot
  ap:
    ssid: $devicename
    password: "qwe12345"

captive_portal:
  
api:
  password: !secret esphome_api_password

ota:
  password: !secret esphome_ota_password
  
web_server:
  port: 80
  
logger:
  baud_rate: 0

uart:
  rx_pin: GPIO13
  tx_pin: GPIO15
  baud_rate: 9600

# Register the Tuya MCU connection
tuya:

and then logged:

Datapoint 101: int value (value: 51)
Datapoint 102: enum (value: 2)
Datapoint 103: switch (value: ON)
Product: ‘8wq8cNNPt1bbXgYC1.0.0’

How to proceed from there?

Hi I used this setup and got dimmer working, I was able to open/close and set position:

light:
  - platform: "tuya"
    id: zemismart_curtain_light
    name: ${curtain_name}_light
    dimmer_datapoint: 101
    switch_datapoint: 103 

However when the motor controlled by a remote and curtain is closed it sets brightness to 0 and light switch is turned off automatically (did not find any ways to avoid this) what leads to curtain goes to closed position and open again.
Now I flashed Tasmota and it does not have such problem.

Is there any way to control only brightness slider without any feedback on the light?

Hi,

I keep having problems with this tuya curtain. It opens en closes perfectly using the remote control, but when using this config:

substitutions:
  devicename: zs_curtain_01
  upper_devicename: Zemismart Curtain controller - 01

esphome:
  name: $devicename
  platform: ESP8266
  board: esp01_1m
  includes:
    - zs_curtain_01/curtain.h
  
wifi:
  ssid: !secret esphome_wifi_ssid
  password: !secret esphome_wifi_password
  # enable the fallback hotspot
  ap:
    ssid: $devicename
    password: "qwe12345"

captive_portal:
  
api:
  password: !secret esphome_api_password

ota:
  password: !secret esphome_ota_password
  
web_server:
  port: 80
  
logger:
  baud_rate: 0

uart:
  - id: com_1
    tx_pin: GPIO15
    rx_pin: GPIO13
    baud_rate: 9600

globals:
  - id: cover_open
    type: bool
    restore_value: yes
    initial_value: "false"
  - id: cover_reversed
    type: bool
    restore_value: yes
    initial_value: "false"
  - id: cover_position
    type: float
    restore_value: yes
    initial_value: "0"

cover:
  - platform: custom
    lambda: |-
      auto curtain = new CustomCurtain();
      App.register_component(curtain);
      return {curtain};
    covers:
      - name: Curtain
        device_class: blind

custom_component:
  - lambda: |-
      return { new CustomAPI() };

I am able to close the curtains once, from Home Assistant using the UP arrow and the curtain closes, but the DOWN button then gray’s out and I am not able to close them then.
Also the STOP button only stops shortly and then continues opening.

Anyone?

What is the name of the module that is connected to the USB stick (Tuya Dongle Wifi)?
Then where does this module connect?
THX

Hi Folks,

I have this curtain rail working perfectly using Tasmota and MQTT. Perhaps some of the information in this post will help you to figure out how to get your ESPHome versions working?

If not, you could flash Tasmota and follow the instructions. The Curtain operates perfectly in Home Assistant, Homekit, and Alexa. When the RF remote control is used, the position is updated to Home Assistant, so it is also reflected in Homekit. Alexa knows the position too!

Hope this is helpful to someone - good luck!