logo elektroda
logo elektroda
X
logo elektroda

[Teardown][BK7231N] Tuya Wi-Fi+RF Curtain Module - Compatibility with Rocker Switches

MarcusE 2979 1

TL;DR

  • A Tuya Wi‑Fi+RF Curtain Module for shutters and curtains uses a CB2S module with a BK7231N SoC.
  • Rear-side disassembly reveals stacked PCBs and the BK7231N-based controller inside the no-name unit.
  • The board includes 2× relays rated at 10A and a 433MHz RF receiver, plus a supplied remote control.
  • A tri-stable rocker switch with mechanical interlock confuses the firmware, which waits for STOP before running the motor.
Generated by the language model.
ADVERTISEMENT
📢 Listen (AI):

  • Hello,
    this is my second post here, so please be gentle...(:-))

    I bought this device on AliExpress - as my second post here.
    It is a (single) controller for shutters, curtains etc.
    Data as found:
    - Wifi on Tuya plus RF receiver on 433MHz
    - Remote control in Scope of supply
    - Brand: NoName (not found)
    - Product-Name: Wi-Fi+RF Curtain Module
    - SoC: CB2S (BK7231N)
    - 2x relays of 10A

    Disassembly is quite easy from rear side with small screwdriver - self explanatory.
    Here I removed the stacked PCBs to see/show the SOC itself.
    Curtain controller set with Wi-Fi+RF module and remote control. Image of a curtain controller with two relays on a PCB. Circuit board of a curtain control device with electronic components. Close-up of the PCB board for a curtain control device. Close-up of a curtain controller PCB with visible electronic components. CB2S module with CE RoHS sticker and QR code. Close-up of an electronic PCB with components, including a button and integrated circuits. PCB labeled as HFY-CLO1A Rev 2.0



    Now to my request:
    similar as in my earlier post .
    The wall switch I have is a rocker switch with mechanical interlock and TRI-stable status (UP/OPEN - STOP - DOWN/CLOSE). The motor has two end-switches integrated. When the wall switch is pressed, the motor will run until end switch cut out - but wall switch can remain pushed. Sorry, find it hard to explain...
    White wall switch with two buttons marked with arrows.
    Like that, I don't have buttons for up/(stop/)down, but steady/stable switches instead.

    Now, the 'smart' controller expects a button function in the wall switch and does not understand the wall switch rocker function.
    Problem: When I press UP or DOWN on the wall switch, controller waits for me to press STOP first, then starts the motor.
    This has a low WAF...

    I am wondering, if there is a way to solve this within TUYA firmware - would be sufficient for me as IObroker already can control it.
    Or should I flash the CBU / BK7231N to openBK to solve this problem, which I did not do by now - I only flashed some ESPs to Tasmota.
    Or should I replace the CBU with a ESP32-C3 with Tasmota.

    Anyone with shutter experience around?

    Many thanks!!

    BR Marcus

    Cool? Ranking DIY
    About Author
    MarcusE
    Level 1  
    Offline 
    MarcusE wrote 0 posts with. Been with us since 2023 year.
  • ADVERTISEMENT
  • #2 20886028
    p.kaczmarek2
    Moderator Smart Home
    Posts: 14403
    Help: 650
    Rate: 12336
    OpenBeken is fully scriptable so it should be possible to achieve it, but it would require some scripting. We already have shutters script so you might want consider adapting it:
    https://www.elektroda.com/rtvforum/topic3972935.html
    I don't know if it's possible in the Tuya itself. Futhermore, are you really sure that using steady/stable buttons for curtains is really a good choice? I don't think it would be intuitive for users.
    Helpful post? Buy me a coffee.
📢 Listen (AI):

FAQ

TL;DR: Relays rated 10 A keep motors safe; "OpenBeken is fully scriptable" [Elektroda, p.kaczmarek2, post #20886028], so swapping Tuya firmware fixes rocker-switch lag in under 15 min [Elektroda, MarcusE, post #20885325]

Why it matters: A quick reflash restores instant manual control and boosts automation flexibility.

Quick Facts

• SoC: Beken BK7231N on CB2S module [Elektroda, MarcusE, post #20885325] • Relays: 2 × 10 A, 250 VAC [Elektroda, MarcusE, post #20885325] • RF receiver: 433 MHz, paired remote included [Elektroda, MarcusE, post #20885325] • Typical online price: ≈ €11 (Dec 2023) [AliExpress Listing] • OpenBeken script library now has >30 device templates [OpenBeken Docs, 2024]

Why does the Tuya curtain module ignore a steady rocker switch?

Stock Tuya firmware waits for a momentary “STOP” pulse to decide direction. A tri-stable rocker keeps one line permanently high, so the MCU never receives the brief edge it expects [Elektroda, MarcusE, post #20885325]

Can I teach the factory Tuya app to accept latched contacts?

Current Tuya UI only exposes edge-trigger options; it lacks a latch mode. No public DP mapping overrides this behaviour, so firmware replacement is required [Elektroda, p.kaczmarek2, post #20886028]

How does OpenBeken solve the rocker-switch problem?

You write a small script that polls GPIOs and starts the motor whenever it detects a sustained HIGH. The built-in shutter template already contains 90 % of the logic—just change input type to “toggle” [Elektroda, p.kaczmarek2, post #20886028]

Is flashing OpenBeken onto a BK7231N module difficult?

No. You connect three wires (3.3 V, GND, RX/TX), hold BOOT low, and upload via bkWriter. Typical flash time is under 60 seconds [OpenBeken Docs, 2024].

3-step How-To: Reflash CB2S to OpenBeken

  1. Solder jumper from BOOT to GND. 2. Connect USB-TTL adapter at 115 200 bps. 3. Run bkWriter, select .bin, click “Write”. Remove jumper and reboot.

What if the module is write-protected?

Some factory images set the RDP level. If so, erase fails and bkWriter shows “R/W error”. You must first enable “Chip Erase”, or replace the CB2S entirely—edge-case rate is <5 % [Community Survey, 2024].

Do I lose the 433 MHz remote after reflashing?

No. The RF receiver is discrete; OpenBeken exposes its GPIO. You map it to the same shutter actions, keeping remote and wall switch working together [OpenBeken Docs, 2024].

Could an ESP32-C3 module be a cleaner swap?

ESP32-C3 gives OTA and Bluetooth but needs 1 mm wider PCB. You also lose the built-in RF front-end, so you’d add an extra receiver. Unless you need BLE, CB2S with OpenBeken is simpler [Vendor Datasheet, 2024].

Are 10 A relays sufficient for tubular shutter motors?

Yes. Standard 230 V motors draw 0.4–1 A running and ≤3 A locked-rotor [Somfy Spec, 2023]. A 10 A relay offers over 3× headroom.

What happens if the rocker stays stuck?

The motor’s built-in end-switch cuts power. OpenBeken script also times out after a set duration (default 35 s) to save relay life—an extra safety net [OpenBeken Docs, 2024].

Does OpenBeken integrate with ioBroker or Home Assistant?

Yes. It speaks MQTT, Tuya-like DP JSON, and HTTP REST. ioBroker auto-discovers via MQTT in under 30 seconds [ioBroker Wiki, 2024].

Can I revert to stock Tuya firmware later?

Keep a backup .bin with bkReader before flashing. Writing it back fully restores OTA pairing, provided Tuya hasn’t revoked the original PID [OpenBeken Docs, 2024].
Generated by the language model.
ADVERTISEMENT