Detailed guide on how to flash the new Tuya Beken Chips with OpenBK7231T

Thanks @pencilhead, for documenting the approach you used for the DETA 6951HA.
It helped me a lot.

I’ve now used it for a DETA 6904HA 4 gang light switch with a slight modification successfully.

I selected :

  • “1.1.5 - BK7231T / oem_bk7231s_rnd_zero_dctrl_switch”
  • “Lonsonho”
  • “X804A 4 Gang Smart Wifi Switch”

FYI for anyone else the GPIO Pins on the DETA 6904HA are

  • touch buttons # P10, P6, P9, P14
  • relays # P24, P7, P26, P8
  • status LED P1
2 Likes

I have just found and old Tenda smart plug in the unused stuff box that has a Realtek RTL8710BX chip.

This device is not Tuya, it used it’s own app, so cloudcutter can’t be used.

So what is the process to flash this by serial ? What firmware do I put on it initially ??

It happened - it’s merged! :dancing_women: :dancing_men: :dancer: :man_dancing: :rocket:

ESPHome 2023.9.0 is scheduled to be released next Wednesday with LibreTiny support :fireworks: :tada:

3 Likes

Yup! 10 char

This is pretty amazing. This really expands the number of devices that ESPhome works on. They might even need to change the name!

:joy: I had this thought…

serial method, connect tx2, rx2 pins and ground tx2 for a moment to start flashing
also try the 2mb 468k board if ota isn’t working for the RTL8710bx

rtl87xx:
  board: generic-rtl8710bn-2mb-468k
  framework:
    version: latest

Hi, I’ve just flashed an Avatto 1 Gang light switch using the GUIFlashTool and everything was clean, I’ve configured the device to be discovered by home assistant and it was recognized right. My question is, Is there any way you could configure an admin password for the config webpage like you do for tasmota? I just want to secure the devices so nobody in the LAN can get into those config pages and mess around with the configuration.

Which config webpage? This one :point_down:

If yes just read the docs as it mentions how to add authentication via user/password :lock:

Ok, I have tried to load ESPHome onto the device but get this error:

E: ValueError: Failed to write to 0x800B000

I’m pretty sure I have the serial wired OK as I was able to read the original firmware from the flash, a look at the file shows this:

This flash type is not supported!
 CHIPID[%08x]

The flash chip is a H25S80BG which seems to be a 8Mbit.

Any ideas ??

Never got that error before.

Can you post that in the libretiny discord for discussion

I have created new uf2 files for the 3 possible options for that chip with Esphome 23.9.0b1a and get the same error with all of them. I’m pretty sure I have the serial stuff connected correctly and power is OK as I I can read from the device.

I can’t access my Discord account for some reason so I created an issue on the LibreTiny github and added the dump of the original firmware.

Hi!!
Nope, I mean this one.

I wrote in the forum of elektroda and got this:

We need to wait one week more :scream: This big release is now scheduled for the 27th of September :spiral_calendar:

Just to finalise this, after a lot of assistance from the LibreTiny folks on github I have successfully loaded ESPHome on this smart plug and it works fine.

The process was a bit more complicated and required the writing of the separate OTA1 &2 files with a different software package. It also needed the smallest generic board type as the flash is only 1Mb.

The internal connections to the RTL8710BX module in the Tenda Beli SP3 plug are:

Relay1&2	GP12	Pin2
LED D6		GP22	Pin11	Red
LED D7		GP19	Pin12	Blue
Button1		GP11	Pin4
INFO ESPHome 2023.9.0b1
INFO Reading configuration /config/esphome/tenda-test22468.yaml...
INFO Starting log output from tenda-test22468.local using esphome API
INFO Successfully connected to tenda-test22468.local
[21:10:00][I][app:102]: ESPHome version 2023.9.0b1 compiled on Sep 15 2023, 13:16:12
[21:10:00][C][wifi:546]: WiFi:
[21:10:00][C][wifi:382]:   Local MAC: 50:2B:73:F6:xx.xx
[21:10:00][C][wifi:383]:   SSID: [redacted]
[21:10:00][C][wifi:384]:   IP Address: 10.0.0.146
[21:10:00][C][wifi:385]:   BSSID: 80:2A:A8:D1:CF:D5[redacted]
[21:10:00][C][wifi:387]:   Hostname: 'tenda-test22468'
[21:10:00][C][wifi:389]:   Signal strength: -31 dB ▂▄▆█
[21:10:00][C][wifi:393]:   Channel: 1
[21:10:00][C][wifi:394]:   Subnet: 255.255.0.0
[21:10:00][C][wifi:395]:   Gateway: 10.0.0.1
[21:10:00][C][wifi:396]:   DNS1: 10.0.0.1
[21:10:00][C][wifi:397]:   DNS2: 10.0.0.1
[21:10:00][C][logger:357]: Logger:
[21:10:00][C][logger:358]:   Level: DEBUG
[21:10:00][C][logger:359]:   Log Baud Rate: 115200
[21:10:00][C][logger:361]:   Hardware UART: UART2
[21:10:00][C][mdns:115]: mDNS:
[21:10:00][C][mdns:116]:   Hostname: tenda-test22468
[21:10:00][C][ota:097]: Over-The-Air Updates:
[21:10:00][C][ota:098]:   Address: tenda-test22468.local:8892
[21:10:00][C][ota:101]:   Using Password.
[21:10:00][C][api:138]: API Server:
[21:10:00][C][api:139]:   Address: tenda-test22468.local:6053
[21:10:00][C][api:143]:   Using noise encryption: NO
[21:10:00][C][lt.component:013]: LibreTiny:
[21:10:00][C][lt.component:014]:   Version: v1.4.0 on generic-rtl8710bn-2mb-468k, compiled at Sep 15 2023 13:15:57, GCC 10.3.1 (-Os)
[21:10:00][C][lt.component:015]:   Loglevel: 3

There are some great tutorials on the internet
I used the above one and the updated video

I already flashed 3 lights.
Now I’m wondering if I should give it a try flashing the vacuum cleaner.
Or wil it destroy my device if ltchiptool doesn’t recognize it.

I also have the same labeled chip and flash the 2mb 468k board size.
Didn’t have to use separate software just the ltchiptool.
How stable is the wifi connection on the plug so far?

Assuming it’s using tuya mcu like this one, you should be good

I had to use the python2 version of the rtltool.py and I used a linux VM in Proxmox when I couldn’t get python to work in Windows.

The relevant info for my device is in this issue on github.

Everything is working fine, I am still trying to sort out the 2 leds but the relay and button are done.

Another question about LibreTiny ESPHlome.

Has anyone tried to rename a device from the 3 dot menu the ESPHome addon ?? I just tried on my new RTL8710 based smart plug and it went through the hoops and uploaded something but the name stayed the same.

Also tested it on a random ESP based device and that worked as I expected.

INFO ESPHome 2023.9.0b1
INFO Reading configuration /config/esphome/tenda-test22468.yaml...
Updating /config/esphome/tenda-test22468.yaml to /config/esphome/tenda-plug-1.yaml

Edit: OK the renamed device did show up in HA with the new name but the stuff in the ESPHome addon did not get updated to the new name. I had to create a new device with the new name and paste the old yaml into and manually rename it.