Het is weer mogelijk! Tuya apparaten flashen met aangepaste firmware! Een lange tijd was het mogelijk om aangepaste firmware zoals ESPeasy, ESPHome of Tasmota door middel van tuya-convert op je Tuya apparaat te flashen. Dit geeft je volledige controle over jouw apparaat, zonder tussenkomt van de cloud. Dit geeft je meer flexibliteit, controle en privacy.

Op mijn artikel over het flashen van tuya-convert op bijvoorbeeld het LSC Smart Socket of de LSC A60 filament lamp van de Action heb ik zeer veel views en reacties gekregen. Het leeft dus erg. Tuya ging het flashen tegenwerken en plaatste andere chips in de apparaten. In het tuya-convert tijdperk waren de chips allemaal ESP gebaseerd, wat het flashen ook zo makkelijk maakte. Hedendaags zijn de Tuya apparaten bijna allemaal uitgerust met RTL en Beken chips. Het is hackers/ontwikkelaars nu gelukt om ook deze te voorzien van nieuwe, eigen en opensource firmwares. Hiervoor maak je gebruik van de nieuwe Cloudcutter toolchain. Je kunt kiezen om je apparaat alleen los te maken van de cloud van Tuya of volledig nieuwe firmware te flashen. Hoe je je nieuwste Tuya apparaten losmaakt van de cloud of voorziet van nieuwe firmware lees je in dit artikel.

tuya-cloudcutter how to

Hieronder vindt je een beknopt stappenplan om de tuya cloudcutter toolchain toe te passen. Na het stappenplan lees je hoe je alle stappen doorloopt. Er zijn 2 opties.

  1. Tuya device cloudcutten: je maakt je apparaat onafhankelijk van de cloud. Je kunt ‘m alleen nog bedienen met bijvoorbeeld Home Assistant in je lokale netwerk. Als je Home Assistant vanaf ‘buiten’ kunt benaderen, kun je natuurlijk deze apparaten ook bedienen. Je bent onafhankelijk van de Tuya cloud maar de firmware op het apparaat is nog wel het originele van Tuya. Je verbind het Tuya apparaat via de LocalTuya integratie met Home Assistant.
  2. Tuya device flashen met ESPHome custom firmware. Voor ultieme open en vrijheid flash je ESPHome op je apparaat. Het apparaat werkt hetzelfde, zo niet beter en vaak ook sneller omdat de communicatie niet eerst de hele wereld over hoeft om je lamp of apparaat in te schakelen. Je verbind ESPHome op het Tuya apparaat met Home Assistant via de ESPHome integratie.

Benodigde tijd: 2 uren

Om de nieuwste Tuya gebaseerde apparaten los te maken van de cloud of te voorzien van eigen firmware doorloop je de volgende stappen. Het is mij onder andere gelukt met Hombli smart stopcontacten en een LSC A60 filament lamp van de Action beide gekocht in 2023.

  1. Vind het MCU en Main module versienummer

    Om deze versienummers te vinden voeg je je apparaat eerst toe aan de Tuya SmartLife app, of wanneer het apparaat al bekend is in de Cloudcutter devices list kun je door naar stap 2.
    Tuya Hombli Power Socket

  2. Gereedmaken van Raspberry Pi

    De Raspberry Pi gebruiken we om de Cloudcutter toolchain uit te voeren.Raspberry Pi Imager

  3. Uitvoeren Cloudcutter

    Wanneer je alle benodigde pakketten geïnstalleerd hebt, kun je de Cloudcutter toolchain uitvoeren en je apparaat ‘cloudcutten’.
    tuya-cloudcutter progress

  4. Optie 1: Voeg je apparaat toe aan Home Assistant

    Door middel van LocalTuya kun je nu je apparaat toevoegen aan Home Assistant.LocalTuya integration Home Assistant

  5. Optie 2: Flashen custom firmware

    Wanneer het mogelijk is voor jouw apparaat kun je ESPHome of Tasmota flashen op je apparaat en dan toevoegen aan Home Assistant.
    ltChipTool tuya-cloudcutter to create ESPHome firmware

Achterhalen MCU en Main module versie

Om straks de juiste aanpak te kiezen, zoeken we eerst uit wat de MCU en main module versie van je apparaat zijn.

Voeg daarvoor eerst het apparaat toe aan de SmartLife app van Tuya. Maak een account aan, kan ook een tijdelijk account zijn, en koppel het apparaat. Tik in het hoofdscherm op de naam van het apparaat. Daarna op het potloodje rechtsbovenin het scherm. Kies nu helemaal onderaan voor “Zoeken naar Firmware Updates”. Op dit scherm worden nu de Main module en MCU Module versies weergegeven. In mijn geval beide v1.3.5 voor de Hombli Power plugs, voor de LSC Smart Connect Filament LED A60 lamp was dat v1.1.6. In mijn voorbeeld gebruik ik Hombli Smart Sockets met power meter HBSS-0109.

Tuya Hombli Power Socket
Tuya Hombli Power Socket

Raspberry Pi klaarmaken

Pak je Raspberry Pi erbij en flash met de Raspberry Pi Imager Raspberry Pi OS. Schakel in de configuratie SSH in zodat je straks direct kunt verbinden via putty. Verzin een gebruikersnaam en wachtwoord.

Wanneer je op SCHRIJF klikt, wordt de gekozen SD-kaart geformatteerd en RaspPiOS geflashed naar je SD kaart.

Wanneer het flashen klaar is, haal je de sdcard uit je kaartlezer en stop je ‘m in de pi. Schakel de stroom in, hang ‘m aan een internetkabel en wacht tot de pi geboot is. Dit duurt een paar minuten.

Verbinden met putty

Download en installeer putty op je laptop of pc. Hiermee kunnen we verbinding maken (via SSH) met de Raspberry Pi zonder scherm en toetsenbord eraan te hangen.

Login op de Pi met het IP-adres of de hostname en je zojuist ingestelde gebruikersnaam en wachtwoord.

Putty Synology NAS
Putty naar Raspberry Pi

Installeren tuya-cloudcutter

We gaan starten met de voorbereidingen om tuya-cloudcutter te installeren.

Installeer eerst network-manager, bewerk daarna het dhcpcd.conf en het networkmanager.conf bestand. Network manager installeer je door middel van:

sudo apt update && sudo apt install network-manager
Installeren van network-manager

Bewerk het dhcpcd.conf bestand met tekstverwerker nano doormiddel van het volgende commando:

sudo nano /etc/dhcpcd.conf

Scroll naar beneden en typ als laatste regel:

denyinterfaces wlan0

Sla op met CTRL+X en Y en Enter

Daarna pas je het networkmanager bestand aan door middel van:

sudo nano /etc/NetworkManager/NetworkManager.conf

Pas het aan naar onderstaande tekst

[main]
plugins=ifupdown,keyfile
dhcp=internal
[ifupdown]
managed=true

Start de Pi nu opnieuw op door middel van:

sudo reboot

Laat de Pi opstarten en verbind opnieuw met de Pi via Putty.

Installeer docker

Installeer Docker volgens de officiële instructies. Dit kan even duren.

Installeer git

Installeer daarna git met het commando:

sudo apt install git
Installeren git op Raspberry Pi

Clone cloudcutter

Nu zijn we klaar om de cloudcutter repo te klonen. Dit doe je door middel van het volgende commando:

git clone https://github.com/tuya-cloudcutter/tuya-cloudcutter
git clone tuya-cloudcutter

Voorbereidingen gereed

Nu zijn alle voorbereidingen klaar en kunnen we gaan flashen!

Navigeer naar de map cloudcutter door:

cd tuya-cloudcutter

Start daarna het tuya-cloudcutter script op in combinatie met het ingeven van je wifi gegevens.

sudo ./tuya-cloudcutter.sh -s <SSID> <SSID password>

Tip

Tijdens mijn eerste poging de Hombli Plugs te cloud-cutten was er geen deviceprofile beschikbaar. Wat betekend dat de plugs niet direct herkend werden als apparaat dat te cloudcutten is. Na het succesvol cloudcutten via een ander device profile heb ik een juist device profile toegevoegd aan de device list van cloudcutter via een issue. Deze is inmiddels beschikbaar en kun je nu kiezen vanuit de lijst. Wanneer jouw apparaat dus niet in de lijst staat, zoek dan op main module en MCU versie in de lijst naar een apparaat wat op jouw apparaat lijkt en probeer te cloudcutten! Als basis voor de Hombli plugs heb ik in eerste instantie het device profile van de Antela Fls202-EU Smart Plug gebruikt. Dit bleek te werken en heb dit kenbaar gemaakt via de issue. Voor de LSC A60 Filament lamp heb ik het profiel gebruik van de LSC RGB GU10 LED lamp. Het belangrijkste is dat de versienummers overeen komen zodat de juiste exploit ingezet wordt.

Eerste poging ging mis

Bij de start van het script maak je de keuze of je een nieuwe firmware wilt flashen of het apparaat los wil maken van de cloud. Ik heb ervoor gekozen eerst de plug te cloudcutten. Doordat je net voor optie -s in combinatie met je WiFi gegevens hebt gekozen sla je die vraag over.

Door het apparaat los te maken van de cloud maakt de plug geen verbinding meer met de Tuyacloud en werkt dan alleen nog lokaal via bijvoorbeeld Home Assistant. Wanneer je Home Assistant vanaf ‘buiten’ kunt bereiken werken je Tuya apparaten natuurlijk wel.

Het script vraagt een keuze te maken of je je apparaat wilt selecteren op basis van fabrikant en apparaatnaam of op basis van MCU en Main module versie. In mijn eerste poging de Hombli plug te cloud-cutten heb ik gekozen voor de eerste optie. Ik heb het device profile van de Hombli HBSS-0209 gekozen, terwijl mijn plug de HBSS-0109 is. Het resultaat van deze poging was dan ook “The profile you selected did not result in a successful exploit”.

Tweede poging is gelukt

Bij de tweede poging heb ik gekozen voor “By firmware version and name”. Ik scrolde naar het versienummer van mijn Hombli plug 1.3.6. Nu kwam de vraag om een apparaat te selecteren. Ik koos voor de Antela Fls202-EU Smart Plug. Deze plug lijkt erg op de Hombli plug dus goede kans dat het werkt.

Het process begint met het zoeken naar je apparaat. Zet je apparaat in de slow-blink modus. Deze activeer je door eerst naar de fast-blink modus te gaan door je apparaat te resetten. Bij een smart plug houd je de knop hiervoor een aantal seconden ingedrukt. Als de led snel knippert, laat je los en houd je de knop nog eens ingedrukt. De led gaat nu langzamer knipperen. Nu kan tuya-cloudcutter je apparaat vinden. Bij een lamp reset je door de lamp 3 tot 6x aan en uit te zetten totdat je de fast-blink mode geactiveerd hebt, en daarna nog een keer 3 tot 6x aan en uit zetten.

Tuya cloudcutter vindt het accesspoint van het apparaat en start met het uitvoeren van het exploit script. Als het lukt volg je de instructies op het scherm.

De exploit heeft gewerkt! Je krijgt nu de local en device keys te zien. Sla ze goed op!

Een tweede apparaat ging direct goed

Voor de LSC Smart Filament A60 lamp kies je firmware 1.1.6:

Cloudcutted apparaat toevoegen aan Home Assistant

Nu je apparaat los is van de Tuya Cloud kun je ‘m alleen nog benaderen via de Local Tuya integration van Home Assistant. Je kunt LocalTuya downloaden via HACS. Als je custom firmware wilt flashen zoals ESPHome kun je door naar de volgende paragraaf.

Tuya apparaat toevoegen aan Home Assistant met LocalTuya

Installeer LocalTuya via HACS. Als je dit gedaan hebt stel je een nieuwe LocalTuya integratie in via het integraties overzicht. Kies daarna voor configureer.

Kies voor “do not create cloud account” en ga verder. Klik op “Add a new device”.

Kies in het volgende menu je cloudcutted device, te herkennen aan de Device ID. In mijn geval heb ik die aangepast tijdens het flashen “abcdefghijklmnopqrst”. Dit is niet noodzakelijk, tijdens het proces van cloudcutten worden de keys opgeslagen in de configured-devices map op je Raspberry Pi mocht je ze nog eens nodig hebben. Back up de keys wel goed!

Vul nu je Local Key in en ga verder na het volgende scherm.

Je kunt nu kiezen welke sensoren van het apparaat je wilt toevoegen. Ik heb eerst de knop toegevoegd.

Het ID is per sensor en apparaat anders. Je kunt het opzoeken in de Tuya Developer omgeving. Klik in het menu op Cloud -> API Explorer. Kies daarna voor Smart Home Basic Service in het menu linksbovenaan. Daarna in het menu daaronder klik je op Smart Home Device Control. In dit submenu kies je voor Get Device Specification Atrribute (de onderste optie, er zijn er twee!). Maar ik vond dit allemaal erg omslachtig en foutgevoelig werken. De scaling factor van 0.001 wordt ook niet gepakt als je het intypt. Copy/paste de waarde in het veld werkt wel.

Klik op opslaan en voeg nog sensoren toe voor current, power en energy. Wanneer je klaar met de laatste sensor bent vink je Do not add any more entities aan. Je kunt je Tuya apparaat nu lokaal gebruiken zonder cloud!

Flashen ESPHome op Tuya apparaat

Om ESPHome op je tuya apparaat te flashen kies je in het menu voor optie 2 nadat je commando:

sudo ./tuya-cloudcutter.sh

Heb ingevoerd. Er zijn voor twee flash bestanden beschikbaar. Een versie met OpenBeken en een met ESPHome.

Je doorloopt weer dezelfde stappen als in het eerste stappenplan. Maar als laatste is er een nieuwe stap. Kiezen tussen de OpenBeken of ESPHome custom firmware. Ik kies uiteraard voor ESPHome. Een standaard versie van ESPHome wordt op je Tuya apparaat geflashed. Je kunt naderhand de configuratie aanpassen zoals normaal met ESPHome.

Als je apparaat de juiste chip blijkt te hebben is het flashen vrij snel klaar en je apparaat start opnieuw. Check met je telefoon de wifi netwerken. Er staat nu een kickstart wifi accespoint in je lijst. Verbind met het kickstart accesspoint en ga in je browser naar 192.168.4.1.

Kies uit de lijst je wifi netwerk en voer het wachtwoord in. ESPHome maakt verbinding met je thuisnetwerk en meldt zich bij Home Assistant. Check na een paar minuten of je apparaat daar ook opgepakt wordt. Maar voeg het nog niet toe! We gaan eerst een juiste yaml config maken voor je apparaat. Dit gaan we doen met ltchiptool.

ESPHome config voor Tuya apparaat genereren

Om een juiste ESPHome configuratie te maken voor jouw Tuya apparaat maken we gebruik van ltchiptool. Download het tooltje en start het op. Klik op de tab UPK2ESPHome. Klik op de knop Grab from ESPHome-Kickstart. Vul het ipadres in van je geflashede apparaat of de hostname van je apparaat: kickstart-bk7231t.local.

ltchiptool leest nu je apparaat uit en creëert een yaml bestand die je in ESPHome kunt gebruiken.

LibreTiny ESPHome add-on

De ‘normale’ versie van ESPHome zal deze yaml niet begrijpen omdat de chips (nog) niet ondersteund worden door de officiële ESPHome. Om ondersteuning van de Tuya chipsets toe te voegen aan de normale ESPHome, staat er een pull-request open. Deze is tot nog toe niet gemerged… Even afwachten dus. Voor nu moeten we dus een speciale ESPHome versie add-on installeren. Dit is de LibreTiny ESPHome add-on. Deze is beschikbaar in de add-on store nadat je de repo toegevoegd hebt.

LibreTiny ESPHome add-on

Voeg de LibreTiny Add-on op de volgende manier toe aan je Home Assistant:

Klik op instellingen, vervolgens op Add-ons. Daarna klik op de blauwe knop Add-on winkel. Vervolgens klik je op de menu knop rechtsbovenin en kies Repositories. Plak de onderstaande URL in het veld en klik op toevoegen.

https://github.com/catalin2402/esphome-hass-addon/

Zoek in je Add-on overzicht nu de LibreTiny ESPHome add-on op en installeer ‘m. Dit heeft geen invloed op je bestaande ESPHome! Zodra de Add-on geïnstalleerd is, klik je op Open WEB-UI. Je ziet nu de lege ESPHome omgeving. Voeg een device toe, of klik op edit als het device al gevonden is.

ESPHome YAML maken voor Tuya device

Geef je nieuwe apparaat de volgende naam: kickstart-bk7231t. Deze kun je na het configureren wijzigen. Klik op next. Klik daarna op skip this step als ESPHome je vraagt het board te verbinden.

Kies nu het type chip. In mijn geval de BK7231T. Kijk hiervoor in ltchiptool op het tabblad ESPHome YAML onder libretiny: board: .Klik weer op next.

Het apparaat is toegevoegd aan je overzicht, klik op skip en edit het device. Kopieer het stuk code met API en OTA naar een kladblok.

Klik op het tabblad options in ltchiptool op generate en ga daarna naar tabblad ESPHome YAML. Kopieer de volledige inhoud van dit scherm in het code scherm van je apparaat in LibreTuya ESPHome.

Vervang het deel code van API en OTA door het origineel wat in je kladblok staat.

Pas de regel name aan naar kickstart-bk7231t. Anders kan ESPHome in eerste instantie het apparaat niet vinden. Straks flashen we nogmaals met een aangepaste naam.

Klik na het aanpassen van de naam op save en daarna op install.

Rename ESPHome apparaat

Standaard krijgt je tuya apparaat de naam kickstart-bk7231t in ESPHome. Dit is natuurlijk niet zoveel zeggend, dus die kunnen nadat je de eerste keer geflashed hebt aanpassen. Klik hiervoor op de menuknop van het apparaat en kies voor rename. Geef een naam in en laat de installatie gaan.

Extra code aanpassingen

Verder heb ik nog wat aanpassingen gedaan in de code voor de Smart Plugs. In sommige van mijn Tuya apparaat zoals de Hombli plugs zit ook een Powersensor welke ESPHome kan uitlezen. Dit gebeurde mij niet vaak genoeg standaard, dus heb ik dit gewijzigd naar 10 seconden. Ook heb ik de stroommeting gekalibreerd door het inpluggen van een apparaat met een vast verbruik en de waardes bekeken. Zo kwam ik op 957 uit voor voltage_devider in plaats van de standaard 1000. Vervang het sensors deel met onderstaande code:

sensor:
- platform: uptime
  name: Uptime
- platform: hlw8012
  model: BL0937
  cf_pin:
    number: P7
    inverted: true
  cf1_pin:
    number: P8
    inverted: true
  sel_pin:
    number: P24
    inverted: true
  current:
    name: BL0937 Current
  voltage:
    name: BL0937 Voltage
  power:
    name: BL0937 Power
  energy:
    name: BL0937 Energy
  voltage_divider: 957
  current_resistor: 0.001 ohm
  update_interval: 10s

Tuya apparaat met ESPHome Toevoegen aan Home Assistant

Voeg je apparaat nu toe aan Home Assistant. Je kunt gebruik maken van het discovered device scherm klik op configureer en alles wordt ingesteld.

Het werkt!

Steeds wanneer ik ESPHome projectjes uitvoer blijf ik mij verbazen over de mogelijkheden en de kracht van dit platform. Daarnaast is het ook nog eens gratis en bied het nu, met het toevoegen van vele tuya chips, ook ondersteuning aan nog meer apparaten. Mijn ESPHome apparaten werken betrouwbaar en foutloos zonder haperingen of verbindingsproblemen en ook nog eens zonder cloud!

Is het flashen van esphome om gelukt voor jouw apparaat? Laat het weten in de commentaren! Dan kunnen andere lezers daar ook van profiteren. Op de pagina “Welke producten werken met tuya-convert en tuya-cloudcutter?” kun je lezen welke apparaten andere lezers al getest hebben.

Wat vond je van deze blogpost?

Klik op een ster om een beoordeling te geven!

Gemiddelde score 4.7 / 5. Aantal stemmen: 14

Er heeft nog niemand gestemd. Wees de eerste, het kost niets en geen registratie!

Jammer dat de post niet behulpzaam was.

Laten we deze post verbeteren!

Wat zou er beter kunnen?

Door Wouter

24 gedachten over “Hoe je ESPHome op een Tuya apparaat kunt installeren met Tuya Cloudcutter”
  1. Bedankt!

    Ik had al een tijdje een “CALEX Smart LED filament lamp E27/7W ST64 smokey grijs” liggen om mee te spelen, maar ik kwam er niet helemaal uit met cloudcutter.

    Dit heeft me precies de aanknopingspunten gegeven om er succesvol ESPHome op te zetten.

      1. ik heb dit alles perfect kunnen uitvoeren , echter bij een rebuild in tiny moet ik waarschijnlijk een fout gemaakt hebben mbt het ota password
        ========================= [SUCCESS] Took 33.84 seconds =========================
        INFO Successfully compiled program.
        INFO Resolving IP address of kickstart-bk7231n.local
        INFO -> 192.168.0.131
        INFO Uploading /data/kickstart-bk7231n/.pioenvs/kickstart-bk7231n/firmware.uf2 (2797056 bytes)

        ERROR Error auth result: Error: Authentication invalid. Is the password correct?
        ERROR Backend error code: 0x0000

        enig idea hou ik hiervan recover of is dit device voor de vuilnis ?

        alvast bedankt

        1. Hoi Kurt,
          Ja dat heb ik ook wel eens gehad. Je hebt dan het OTA password niet goed gekopieerd. Heb je een webserver actief op het apparaat? Dan kun je daar een nieuwe firmware OTA flashen.

          Succes
          Wouter

  2. […] Je kunt ook je LSC Smart Connect producten van de Action toevoegen aan domoticz of home assistant. Dat is wel goed te doen in combinatie met ESPHome. Met het tuya-convert script flash je custom firmware op je lamp, ledstrip of plug van LSC van voor 2021. Heb je je LSC apparaat na 2021 gekocht probeer dan het tuya-cloudcutter script eens! Met tuya-cloudcutter ontkoppel je de cloud en bedien je je LSC apparaat lokaal […]

  3. Ik heb dit alles perfect kunnen uitvoeren, echter bij een rebuild in libretiny moet ik ergens een fout gemaakt hebben met het ota password, waardoot iedere build nu mislukt met ========================= [SUCCESS] Took 33.84 seconds =========================
    INFO Successfully compiled program.
    INFO Resolving IP address of kickstart-bk7231n.local
    INFO -> 192.168.0.131
    INFO Uploading /data/kickstart-bk7231n/.pioenvs/kickstart-bk7231n/firmware.uf2 (2797056 bytes)

    ERROR Error auth result: Error: Authentication invalid. Is the password correct?
    ERROR Backend error code: 0x0000

    Weet er iemand hoe ik hiervan kan recoveren of is dit device voor de afvalbak ?

    1. Hoi Kurt,

      Ja dat heb ik ook wel eens gehad. Je hebt dan het OTA password niet goed gekopieerd. Heb je een webserver actief op het apparaat? Dan kun je daar een nieuwe firmware OTA flashen.

      Succes

      Wouter

  4. Dank u voor de reactie, ik vrees er voor , de enige poort open is
    8892
    seosload
    From the new Computer Associates eTrust ACX
    deze reageert echter niet op web nog putty enz….ik vrees er dus voor

  5. Dag Wouter ,

    dank voor de link , ik had deze zelf reeds bekeken , echter zonder suc6,
    had nu vandaag een lcd lamp gekocht om te testen, deze verschijnt in tuya als st64 gold met een mcu 2.9.27 , deze is perfect te selecteren en dit alles gaat goed er word een ap opgezet die zichtbaar is met als naam smartlife-234f , deze word echter niet gevonden door de cloudcutter is echter wel perfect te bereiken via pc, phone
    uiteindelijk stopt de slow blink en verdwijnt natuurlijk ook het AP

    Wiping NetworkManager configs
    Scanning for open Tuya SmartLife AP
    …………………………………………………………………………………………………………………………………………….

    De wiping is afkomstig opdat ik voor 1 van mijn laatste testen tevens de -r optie toegevoegd heb zodoende de netwerk manager te wipen …ook dit helpt niet
    op deze manier dus sudo ./tuya-cloudcutter.sh -r -s
    ondertussen de vraag gesteld op github hoe ik dit eventueel kan troubleshooten
    Ik hou U op de hoogte

  6. ok wederom een stap verder , hij faalt nu echter bij de validatie van de yaml ….ben hier nu reeds 5 uur zoet mee , laten valideren in lint enzo …;echt niets noppa nada ….snap het niet meer


    esphome:
    name: kickstart-bk7231t
    libretiny:
    board: generic-bk7231t-qfn32-tuya
    framework:
    version: dev
    logger: null
    web_server: null
    captive_portal: null
    mdns: null
    api:
    encryption:
    key: xL9B7xWU/9cHXtw1KOlVIZOqYDUDJJ+cxyhOXi5Y7Y4=
    ota:
    password: a94eb0187496fdd1f071f89e7401fed1
    wifi:
    ssid: wifi_ssid
    password: wifi_password
    ap: null
    button:
    – platform: restart
    name: Restart
    debug:
    update_interval: 30s
    text_sensor:
    – platform: debug
    reset_reason:
    name: Reset Reason
    sensor:
    – platform: uptime
    name: Uptime
    output:
    – platform: libretiny_pwm
    id: output_cold
    pin: P26
    – platform: libretiny_pwm
    id: output_warm
    pin: P24
    light:
    – platform: cwww
    id: light_cwww
    name: Light
    cold_white_color_temperature: 6500 K
    warm_white_color_temperature: 2700 K
    cold_white: output_cold
    warm_white: output_warm

    1. Zit je wel in de libretiny esphome addon? Of ben je inmiddels over naar 2023.10 want daar zit de ondersteuning voor bk7231t ook in..

      Waarom staat er steeds null achter webserver, capative portal etc?

  7. Dag Wouter,
    Dit was op 2023.10.1 op de libretiny esphome addon , zit ondertussen op 2023.10.2 , de Null zal waarschijnlijk door lint yaml validator erbij gezet ziijn

  8. Hoi, ik ben er bijna, bij het ESPverhaal blijf ik echter hangen en krijg ik een foutmelding die ik maar niet opgelost krijg

    ___________Foutmelding

    INFO ESPHome 2023.7.0-dev
    INFO Reading configuration /config/libretuya-esphome/kickstart-bk7231t.yaml…
    Failed config

    esphome: [source /config/libretuya-esphome/kickstart-bk7231t.yaml:2]

    Platform missing. You must include one of the available platform keys: esp32, esp8266, rp2040, libretiny, host.
    name: kickstart-bk7231t

    _____________

    esphome:
    name: kickstart-bk7231t

    bk72xx:
    board: generic-bk7231t-qfn32-tuya

    logger:

    web_server:

    captive_portal:

    mdns:

    api:
    encryption:
    key: “oyLsVbWyP0jZRXF/Hp6ZfkW7f06+EYPVLmh7cB6JPIw1=”

    ota:
    password: “265c39377daa68b683f64d3fe92c9b5d1”

    wifi:
    ssid: SSID
    password: PAssword
    ap:

    text_sensor:
    – platform: libretiny
    version:
    name: LibreTiny Version

    binary_sensor:
    – platform: gpio
    id: binary_switch_1
    pin:
    number: P10
    inverted: true
    mode: INPUT_PULLUP
    on_press:
    then:
    – switch.toggle: switch_1

    switch:
    – platform: gpio
    id: switch_1
    name: Relay 1
    pin: P26

    status_led:
    pin:
    number: P6
    inverted: true

    sensor:
    – platform: hlw8012
    model: BL0937
    cf_pin:
    number: P7
    inverted: true
    cf1_pin:
    number: P8
    inverted: true
    sel_pin:
    number: P24
    inverted: true
    current:
    name: BL0937 Current
    voltage:
    name: BL0937 Voltage
    power:
    name: BL0937 Power
    energy:
    name: BL0937 Energy
    voltage_divider: 1600
    current_resistor: 0.001 ohm

    1. Hoi Alex,

      Zo te zien gebruik je niet de LibreTiny ESPHome Addon maar de normale ESPHome addon die inmiddels ook ondersteuning heeft voor Tuya chips. Ik had daar nog geen ervaring mee, maar heb geprobeerd één van mijn apparaten om te zetten naar de normale code. Die werkt, krijg het alleen nog niet geflashed vanwege de error “Connection reset by peer”… Maar dat lijkt een ander probleem en niet gerelateerd aan dat van jou.

      Als ik je code in een nieuw apparaat plak krijg ik errors bij de volgende punten:

    2. ap: hier heb je niks ingevuld. Dat kun je weghalen of juist configureren.
    3. De textsensor met platform LibreTiny klopte niet helemaal
    4. De encryption key kreeg ik een foutmelding over dat ie niet base64 is
    5. Onderstaande code werkt nu bij mij, en wordt gebuild:

      esphome:
      name: kickstart-bk7231t

      bk72xx:
      board: generic-bk7231t-qfn32-tuya

      logger:

      web_server:

      captive_portal:

      mdns:

      api:
      encryption:
      key: "h9fhHPo+FDY6U0TmrqdEJVSD+x0HgJjIY3ahDS0cILw="

      ota:
      password: "265c39377daa68b683f64d3fe92c9b5d1"

      wifi:
      ssid: SSID
      password: PAssword

      text_sensor:
      - platform: libretiny
      version:
      name: LibreTiny Version

      binary_sensor:
      - platform: gpio
      id: binary_switch_1
      pin:
      number: P10
      inverted: true
      mode: INPUT_PULLUP
      on_press:
      then:
      - switch.toggle: switch_1

      switch:
      - platform: gpio
      id: switch_1
      name: Relay 1
      pin: P26

      status_led:
      pin: P6

      sensor:
      - platform: hlw8012
      model: BL0937
      cf_pin:
      number: P7
      inverted: true
      cf1_pin:
      number: P8
      inverted: true
      sel_pin:
      number: P24
      inverted: true
      current:
      name: Current
      voltage:
      name: Voltage
      power:
      name: Power
      energy:
      name: Energy
      voltage_divider: 1600
      current_resistor: 0.001 ohm


      INFO ESPHome 2023.10.6
      INFO Reading configuration /config/esphome/test.yaml...
      INFO Generating C++ source...
      INFO Compiling app...
      Processing kickstart-bk7231t (board: generic-bk7231t-qfn32-tuya; framework: arduino; platform: libretiny @ 1.4.1)
      --------------------------------------------------------------------------------
      Warning! Non-Git installations are NOT SUPPORTED.
      HARDWARE: BK7231T 120MHz, 256KB RAM, 1.03MB Flash
      - framework-arduino-api @ 2022.8.24+sha.237b10a
      - framework-beken-bdk @ 0.0.0+v2021.06.07.sha.6491b8c
      - library-flashdb @ 1.2.0+sha.d5c892f
      - library-freertos @ 9.0.0+sha.95cc959
      - library-freertos-port @ 2023.5.23+sha.a917d93
      - library-lwip @ 2.1.3-bdk+sha.4ee4d34
      - library-printf @ 6.1.0+sha.28a79bd
      - library-uf2ota @ 5.0.0+sha.f955412
      PLATFORM VERSIONS:
      - libretiny @ 1.4.1
      - ltchiptool @ 4.7.0
      CUSTOM OPTIONS:
      - fw_name = esphome
      - fw_version = 2023.10.6
      Dependency Graph
      |-- AsyncTCP-esphome @ 2.0.1
      |-- ESPAsyncWebServer-esphome @ 3.1.0
      |-- DNSServer @ 1.1.0
      |-- noise-c @ 0.1.4
      |-- ArduinoJson @ 6.18.5
      Linking .pioenvs/kickstart-bk7231t/raw_firmware.elf
      |-- Image 1: raw_firmware.elf
      | |-- image_bk7231t_app.0x011000.rbl
      | | |-- raw_firmware.bin
      | |-- image_bk7231t_app.0x011000.crc
      | |-- image_bk7231t_app.0x129F0A.rblh
      | |-- image_bk7231t_app.ota.rbl
      | |-- image_bk7231t_app.ota.ug.bin
      RAM: [==== ] 44.2% (used 115800 bytes from 262144 bytes)
      Flash: [======= ] 66.5% (used 720444 bytes from 1083136 bytes)
      Building UF2 OTA image
      |-- esphome_2023.10.6_generic-bk7231t-qfn32-tuya_bk7231t_lt1.4.1.uf2
      |-- firmware.uf2
      |-- firmware.bin
      ========================= [SUCCESS] Took 15.52 seconds =========================

      Let goed op de formatting en of strings tussen dubbele aanhalingstekens staan. Plak even je eigen encryption key terug anders werkt het niet. Ik gebruik ESPHome 2023.10.6 en jij 2023.7-dev. Weet je zeker dat daar LibreTiny ondersteuning inzit?

      Groet Wouter

  9. Hoe maak je verbinding via SSH met de Pi nadat je “denyinterfaces wlan0” hebt aangepast, de NetworkManager.conf file hebt aangepast en een reboot hebt gedaan……dat schakelt toch WIFI uit?

    En blijkbaar staat de huidige LSC Smart Plus van de Action (type 3202087 met versie V1.1.17) nog niet op de lijst?

    1. Dat klopt, daarom moet je ook de pi met een kabel verbinden of een tweede wifi adapter.

      Heb je de LSC Smart Plus succesvol geflashed? Dan zet ik m op de lijst 😉

    1. Dag PJ,

      Voor esp gebaseerde tuya apparaten kan ik me voorstellen dat espeasy zou kunnen werken, maar voor de nieuwe beken chips heeft espeasy geen ondersteuning denk ik. Je kan esphome misschien connecten met domoticz? Of ‘gewoon’ overstappen naar Home Assistant? Overstap ging bij mij toentertijd redelijk smooth.

      Groet Wouter

    2. Het is nog vroeg, maar heeft domoticz ook niet een local tuya achtige plugin? Dan kun je je apparaat los maken van de cloud en alleen nog lokaal aansturen.

      Groet Wouter

      1. Ik heb een esphome draaien (airconditioning) in mijn netwerk die ik met mqtt aanstuur via domoticz.
        Dit zal toch ook wel mogelijk zijn voor jou artikel?

        1. Hoi peje

          ja dat kan hoor als je dat al werkend hebt. Je kunt zo te zien het mqtt component toevoegen aan je yaml. Wist ik niet!

          Groet Wouter

Laat weten wat je van dit artikel vindt!

Deze site gebruikt Akismet om spam te verminderen. Bekijk hoe je reactie-gegevens worden verwerkt.

%d bloggers liken dit: