Alternative Firmware für Tuya Hardware OPENBeken

Begonnen von DasQ, 09 März 2023, 09:48:49

Vorheriges Thema - Nächstes Thema

DasQ

Hi,

ich dachte mir, ich möchte euch über meine neuste entdeckung bezüglich "unhackbarer" Tuya hardware informieren.
ich hab mir vor ein paar tagen zwei steckdosenleisten der Marke Aofo (c733) gekauft, die seinerzeit recht einfach zu manipulieren war, als noch ESP8266 verbaut waren. Später wurde softwareseitig das manipulieren erschwert, man musste den ESP auslöten um ihn zu flashen.

Der Hersteller reagierte darauf, mit einer pinkompatiblen hardware änderung. den esp ersetzte ein CB2S von Tuya.
Nun haben findige entwickler, die tuya alternative Tasmota weiter entwickelt und ein eigenes projekt namens OPENBeken(app) entwickelt.
App wohl deshalb weil sie weit mehr chips unterstützt als den oben genannten cb2s.

laut homepage werden folgende chips unterstüzt und die palette wächst stetig weiter.
ZitatBK7231T (WB3S, WB2S, WB2L, etc)
    BK7231N (CB2S, CB2L, WB2L_M1, etc)
    T34 (T34 is based on BK7231N)
    BL2028N (BL2028N is a Belon version of BK7231N)
    XR809 (XR3, etc)
    BL602 (SM-028_V1.3 etc)
    W800 (W800-C400, WinnerMicro WiFi & Bluetooth), W801
    W600 (WinnerMicro chip), W601 (WIS600, ESP-01W, TW-02, TW-03, etc)

diese "firmware" unterstüzt bereits jetzt mehr als 200 geräte. von lampe bis zur smartsteckdose (wie meiner)

das flashen erfolgt mittels eigenem windows flasher und läuft erstaunlich easy und sauber.
das grundkonzept der firmware ist augenblicklich noch sehr "wirr" da ständig was neues hinzu kommt. teilweise täglich mehrere neue versionen.
das layout der beiden webif ist, naja etwas gewöhnungsbedürftig und unübersichtlich. dennoch teilweise intuitiv zu bedienen.
vieles scheint doppelt oder gar dreifach implementiert. da fehlt vielleicht etwas die erfahrung über sauberes styleguide.

aber ich kann es voll und ganz verstehen, warum da vieles so aussieht wie es aussieht, bei mir sähe es nicht anders aus. (sorry für meine rechtschreibfehler und mein deutsches camelcase ist auch unter aller ...)  ;D

naja es geht ja hier um die software/firmware. sie lohnt auf jeden fall einen blick drauf. viele bis jetzt "unhackbare" hardware, lässt sich hiermit vom nervigen "cloudzwang" befreien.

OPENBekenapp kann

OpenBeken features:

    Tasmota-like setup, configuration and experience on all supported platforms (supports common Tasmota JSON over http and MQTT, etc)
    OTA firmware upgrade system (for BK, W*00, BL602); to use OTA, drag and drop proper OTA file on OTA field on new Web App Javascript Console
    Online builds for all platforms via Github, also supports Docker builds
    MQTT compatibility with Home Assistant (with both Yaml generator and HA Discovery)
    Support for multiple relays, buttons, leds, inputs and PWMs, everything fully scriptable
    Driver system for custom peripherals, including TuyaMCU, I2C bus and BL0942, BL0937 power metering chips, Motor Driver Bridge.
    Supports multiple I2C devices, like TC74 temperature sensor, MCP23017 port expander, PCF8574T LCD 2x16 (or other?), etc
    NTP time from network (can be used with TH06 and other TuyaMCU devices), can run any script on selected weekday hour:minute:second
    basic support for TuyaMCU Battery Powered devices protocol (TuyaMCU enables WiFi module only to report the state, eg. for door sensors, water sensors)
    RGBCW LED lighting control compatible with Home Assistant (both PWM LEDs, SM2135 LEDs and BP5758 LEDs)
    LittleFS integration for large files (you can write scripts there, you can host a page there with REST interface control of device)
    Command line system for starting and configuring drivers, for controlling channels, etc
    Short startup command (up to 512 characters) storage in flash config, so you can easily init your drivers (eg. BL0942) without LittleFS
    Advanced scripting and events system (allows you to mirror Tasmota rules, for example catch button click, double click, hold)
    Easily configurable via commands (see tutorial)
    Thanks to keeping Tasmota standard, OBK has basic compatibility with ioBroker and similiar systems through TELE/STAT/CMND MQTT packets, Tasmota Control app is also supported
    DDP lighting protocol support ("startDriver DDP" in autoexec.bat/short startup command), works with xLights
    Automatic reconnect when WiFi network goes out
    and much more

hier noch ein paar links
https://github.com/openshwprojects/BK7231GUIFlashTool
https://github.com/openshwprojects/OpenBK7231T_App
https://www.elektroda.com/rtvforum/forum390.html
https://github.com/openshwprojects/OpenBK7231T_App/wiki/Wiki-Home
https://github.com/openshwprojects/OpenBK7231T_App/tree/main/docs


und noch zum schluss.

VORSICHT LEBENSGEFAHR!!!
(niemals unter spannung arbeiten, die hier ausgeführten arbeiten wurden von fachkundigen und elektriker ausgeführt und nach stand der technik überprüft)
(die steckdose schaltet bei falsch herum eingestecktem schutzkontaktstecker, nur den nullleiter weg, das ist grundsätzlich ganz normal aber sollte laut VDE so nicht sein)

also ich mußte den cb2s auslöten um ihn zu flaschen. er hängt per uart an einem tuyaMCU (ein STM8S003F3P6), die die eigentliche arbeit verrichtet.
cb2s und mcu unterhalten sich wohl über ein proprietäres protokoll. die mcu nimmt vom wlanchip befehle entgegen und sendet feedback zurück. das lässt sich auf der internen "console" mitloggen. aber da steig ich selber noch nicht ganz durch und werd mir die tage den quelltext einverleiben.
hier noch ein link zu meinem forums posting (nicht wundern über mein englisch, wenn man es nicht ständig nutzt, rostet es ein und ich hab viel von google übersetzten lassen, weil mein geschriebenes englisch noch schlimmer als mein deutsch ist)

Fhem on MacMini/Ubuntu.
Absoluter Befürworter der Konsequenten-Kleinschreibung https://de.wikipedia.org/wiki/Kleinschreibung
Infos zu Klimawandel http://www.globalcarbonatlas.org

rob

Hi.

Vielen Dank fürs Teilen der Infos. Sehr interessant  8) 8). Ich habe sogar zwei RGB-Controller mit BL602 rumliegen und als Neuwarenschrott abgehakt, da kein Esp drauf. Auch einige Aubess 16A Unterputzaktoren mit BK7231N liegen hier neuwertig und bereit zum Kapauttbasteln  ;D
Vielleicht doch noch zu retten.

Zitat von: DasQ am 09 März 2023, 09:48:49
...das flashen erfolgt mittels eigenem windows flasher und läuft erstaunlich easy und sauber...
Mit welchem genau? Da werden x verschiedene Flash-Tools verlinkt und überall steht deprecated. Ich hab den BK7231N versucht zu flashen. Zunächst ein Dump mit bk_writer1.60.exe klappt. Flashen nicht. Dump mit BK7231Flasher.exe klappt auch, flashen wieder nicht. Flashen via python klappt auch nicht.
Welchen USB-UART-Adapter hast Du hergenommen?

Vielen Dank und beste Grüße
rob

DasQ

Hi,

Freut mich das ,,totgeglaubtes" neues Leben eingehaucht bekommt.

Das ist der Flasher von oben.


Zum konfigurieren der Dinger am einfachsten im Forum schauen und die ,,autoexec.bat" im ,,http : //ip/app -Fronten im filesystem ablegen und rebooten.
Fhem on MacMini/Ubuntu.
Absoluter Befürworter der Konsequenten-Kleinschreibung https://de.wikipedia.org/wiki/Kleinschreibung
Infos zu Klimawandel http://www.globalcarbonatlas.org

rob

Danke Dir. Den Flasher hatte ich auch ausprobiert. Hab meinen Fehler aber nun entdeckt: Vcc muss fürs Flashen verbunden sein  ::)
Hatte mich auf die Anleitung aus diesen Beitrag verlassen: https://www.elektroda.com/rtvforum/topic3912748.html#20145042

Flashen hat nun geklappt, sogar trotz CP2102-Adapter. Die Einrichtung in FHEM via MQTT ist recht ähnlich zu Tasmota. Da wird Beta-User sich freuen, wenn neue Templates angefragt werden sollten  ;D

VG
rob

RappaSan

Das klingt vielversprechend und läßt hoffen.
Allerdings möchte ich Lampen nicht auseinandernehmen, um zum flashen an den Chip zu kommen.
Aber vielleicht geht das ja demnächst auch OTA. :)

Florian St.

Zitat von: RappaSan am 13 März 2023, 08:59:31
Das klingt vielversprechend und läßt hoffen.
Allerdings möchte ich Lampen nicht auseinandernehmen, um zum flashen an den Chip zu kommen.
Aber vielleicht geht das ja demnächst auch OTA. :)

Hallo
Das gibt es bereits. Habe soeben einen nigelnagelneuen Mini-Smart-Switch mit Openbeken OTA geflashed, mit dem "Nachfolger" von "Tuya Convert".
https://github.com/tuya-cloudcutter/tuya-cloudcutter
einen anderen älteren habe ich allerdings noch nicht geflashed bekommen, der weigert sich vehement.
Es gibt 10 Gruppen von Menschen: Die, die Binärcode verstehen und die, die ihn nicht verstehen.

Ich möchte gerne die Welt verändern, doch Gott gibt den Quelltext nicht frei.

RappaSan

Ich habe hier ein paar LEPRO Lampen:
https://www.amazon.de/gp/product/B08WZ4CSRQ/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1
Tatsächlich hat das flashen OTA funktioniert, das entsprechende device meldet sich auch an meinem MQTT2 Server.
Steuern ist aber bisher nicht möglich. Hat jemand einen Tip, welches template das richtige ist? Wie muß die Lampe selbst in ihrem Web-frontend konfiguriert werden?

DasQ

Versuch mal das template von BK7231T -> Lepro LE Wifi Smart LED Bulb

ansonsten ein log erstellen.
Fhem on MacMini/Ubuntu.
Absoluter Befürworter der Konsequenten-Kleinschreibung https://de.wikipedia.org/wiki/Kleinschreibung
Infos zu Klimawandel http://www.globalcarbonatlas.org

RappaSan

Du meinst das von der Web-Oberfläche unter ...//app?
Das war das erste, das ich versucht hab.
Ansonsten: Welches Log meinst du?

DasQ

#9
genau auf der app seite, oben links auf log und da müsse was in der art erscheinen.aber mach mal zuerst alle configs rückgänig. (clearAll auf den konsole im log) danach ist aber auch die wlan konfig futsch, also ganz von vorn.

offen gehabt hast so ne birne noch nicht? was ist denn jetzt genau für ein chip drin?
Fhem on MacMini/Ubuntu.
Absoluter Befürworter der Konsequenten-Kleinschreibung https://de.wikipedia.org/wiki/Kleinschreibung
Infos zu Klimawandel http://www.globalcarbonatlas.org

DasQ

Fhem on MacMini/Ubuntu.
Absoluter Befürworter der Konsequenten-Kleinschreibung https://de.wikipedia.org/wiki/Kleinschreibung
Infos zu Klimawandel http://www.globalcarbonatlas.org

RappaSan

Ohne BT.
Ist ein BK7231T.
Log kommt noch etwas später.

DasQ

Fhem on MacMini/Ubuntu.
Absoluter Befürworter der Konsequenten-Kleinschreibung https://de.wikipedia.org/wiki/Kleinschreibung
Infos zu Klimawandel http://www.globalcarbonatlas.org

RappaSan

#13
War's wohl nicht, aber:
Ich habe eine kompatible gefunden - Moes Smart LED Light Bulb RGBCCT 5W...
Damit funzt alles. :)

OK, Nicht alles. Grün und Blau sind vertauscht.

Allodo

Ich habe eine LSC Smart Plug (Action, Firmware 2.0.1), eine LSC RGB Birne und Workzone Smart Plug (ALDI, Firmware 1.1.4). Diese wollte ich umflashen. Jedoch bekomme ich jedes Mal gesagt, dass das ausgewählte Profil nicht stimmen würde. Habe tuya-cloudcutter auf einem RPi3 laufen.

Für die LSC Steckdose habe ich den LSC Plug ausgewählt, da die Firmware von meinem nicht in der Liste auftaucht. Also habe ich mal eine andere Firmware versucht, mit demselben Ergebnis :(

Habe dann mal die Cloudcutter App installiert um einen Dumb zu erzeugen. Es wird auch eine Verbindung hergestellt, aber jedes Mal beim Druck auf "Read Flash" kommt "Error could not read package". Irgendwie komme ich da partout nicht weiter :(

Bin auch nicht ganz schlau daraus geworden bzgl. eines ESP8266 mit Tuya-Libre. Muss ich erst irgendein NodeMCU, Wemos D1 o.#. mit Tuya-Libre flashen für einen AP?

Vielleicht kann mir ja irgendjemand auf die Sprünge helfen :)