Keeping Tuya RGBW Controller private?

So, seeing the Tuya LED Controllers on ESPHome, I grabbed one on ebay. But, sadly, I didn’t win the lottery. Instead I got one of the new improved models which I think does not have an ESP chip. At least, I can’t get Tuya-convert to connect to it. It appears this might be supported somehow using Tuya-cloud cutter or OpenBekon, but I’m not able to find the right hardware info.

Does anyone have one of these working via anything other than the Tuya app? Im trying to limit my system to devices that I can disconnect from the internet.

Thanks


If you’ve tried running tuya convert, then you should just run tuya cloudcutter on the same device.
You’ll just need to get the tuya firmware version and see if it matches with the existing profile

Via search.brave.com, which compiled remarks from developer.tuya.com, reddit.com, and usermanual.wiki:

The Tuya CB3S is a low-power embedded Wi-Fi module that consists of a highly integrated RF chip BK7231N and a few peripherals. It supports Wi-Fi AP and STA modes and Bluetooth LE. The module has a Broadcom chipset, so it may not work on a straight flash. However, the datasheets suggest that an ESP-12F should be pin compatible, and it may need to be jumpered a couple of pins high or low to boot the chip when installed.

I’ve converted several CB3S based devices over to OpenBeken using both the CloudCutter path and the physical solder to the pins and flash via a USB to ttl serial method. So you will probably have good luck getting yours to work. Add the device to the Tuya app first, however do NOT allow it to do any firmware upgrades. In the settings for the device, go to the firmware update tab and record the current version of the Tuya firmware, again do NOT let it do any upgrades. Removed the device and erase for the Tuya universe using the option in the app.

With that firmware version number try the CloudCutter route by specifying that firmware version when going down the ‘by version’ route in Cloudcutter. Take your time, and don’t get frustrated, it may take a number of attempts before you get the ‘knack’ of using Cloudcutter. Make sure to reboot your Cloudcutter instance between each use/atttempt.

If that does not work, then again if you have access to the physical pins of the CB3S device, you can most likely get the flash replaced via this route.

I have been very happy with the OpenBeken firmware on a growing number of former Tuya Cloud devices in the home.

Good hunting!

Thank you. I’ll step through as you’ve suggested. How does the device talk to HA post cloud cutter?

I’m a fan of sending as much of my stuff to and from HA via MQTT. So since I use the OpenBeken firmware this was pretty easy as that is the default communication method along the same lines as Tasmota uses. If you go the LibraTiny route, aka espHome, then as I understand it you used the espHome API communication. Folks have been successful with the OpenBeken/Tasmota route and the LibraTiny/espHome route. As I said, I like MQTT so I just stuck with the OpenBeken stuff. Hope you are successful, reach out if you have Q’s. While not all Tuya devices can be converted using these methods, I have been very pleased with the devices (20+ now) that I have been able to make work.

I wasn’t sure where the best place to post this was, but wanted to make sure I put it somewhere others might find it.

Device is a BK7231N-QFN32 with a CB3S Wifi chip.

I was successful at using the iH001 single color LED profile in cloudcutter to reflash my device with LibreTiny, but of course, I lost all the controls and RGB features. Through trial and error, I was able to map all of the pins back to their correct LEDs. Here’s my yaml in case others wind up with this same unit:

esphome:
  name: <name>
  friendly_name: <friendly-name>

libretiny:
  board: cb3s
  framework:
    version: dev

# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption:
    key: "<key>"

ota:
  password: "<passwd>"

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

  # Enable fallback hotspot in case wifi connection fails
  ap:
    ssid: "Fallback Hotspot"
    password: "lsCH2ZUjkgTT"
    
button:
- platform: restart
  name: Restart

debug:
  update_interval: 30s

text_sensor:
- platform: debug
  reset_reason:
    name: Reset Reason
- platform: libretiny
  version:
    name: LibreTiny Version

sensor:
- platform: uptime
  name: Uptime

# Pin specs from: https://docs.libretiny.eu/boards/generic-bk7231n-qfn32-tuya/#arduino-core-pin-mapping
# P6 = ???
# P7 = White
# P8 = Red
# P9 = ???
# P24 = Green
# P26 = Blue
output:
- platform: ledc
  id: output_red
  pin: P8
- platform: ledc
  id: output_green
  pin: P24
- platform: ledc
  id: output_blue
  pin: P26
- platform: ledc
  id: output_white
  pin: P7

light:
- platform: rgbw
  id: light_rgbw
  name: Light
  red: output_red
  green: output_green
  blue: output_blue
  white: output_white
1 Like