ESP32 a připojení k Tuya

Při svých pokusech s chytrou domácností Tuya jsem zjistil, že by do této sítě mělo jít připojit vlastní zařízení na bázi ESP32. Zkoumal jsem tedy možnosti takového řešení, a dokonce se i dopracoval k nějak funkčnímu zařízení.

Získání UUID a AUTHKEY

Aby bylo možné vůbec nějaké pokusy páchat, je třeba získat pro zařízení licenci, kterou tvoří dva kódy, tj. UUID a AUTHKEY. Toto se mj. dozvíme i z instrukcí ZDE. Tyto kódy je pak třeba vložit do zdrojového kódu pro zařízení.
Potíž je ale v tom, že mi dlouho nebylo jasné, jak tyto kódy získat, aby byly funkční s mým zařízením. Po nějaké komunikaci s technickou podporou, která mě přesměrovala na e-mail chenyisong@tuya.com, mi po asi dvou dnech do e-mailu přistály potřebné kódy.

Zůstává pro mě tedy otázkou už jen to, jak by bylo možné pro svoji aplikaci vytvořit uživatelské rozhraní do telefonní apky, protože v Tuya Developer Platform zařízení na bázi ESP32 není k dispozici. Asi by bylo možné ji připravit pro jiné MCU, které je v Arduino pro Tuya podporované, a ve zdrojovén kódu na ni odkázat:

  // The "PROJECT_VERSION" comes from the "PROJECT_VERSION" field in "appConfig.json"
  TuyaIoT.begin("xxxx", PROJECT_VERSION);

 

Prozatím nějaké odkazy:

Pinout ESP32 Devkit V1 + základní info
    na stránkách lze dohledat několik zajímavých projektů, jako třeba METEOSTANICE
Hlavní stránka Arduino-TuyaOpen na Github
    Vzorová aplikace dpType, která demonstruje práci s různými typy dat
    Vzorová aplikace quickStart, která vytvoří spínač s LED
    Vzorová aplikace weatherGet, která demonstruje, jak získat meteorologické údaje z cloudu Tuya

Při svých pokusech jsem zjistil, že pinout zařízení ESP32 pro účely TuyaOpen je v Arduino IDE zadáno jinak, než by bylo vhodné pro moji vývojovou desku (v souboru pins_arduino.h je jako LED_BUILDIN definován pin33 a jako BUTTON_BUILDIN pin35, ale na mé desce by to měly být GPIO2 a GPIO0).
Další zjištění se týkalo toho, že mnou vytvořené zařízení spolehlivě fungovalo po připojení do apk Tuya, ale pokud jsem ho připojil do Immax NEO, nechoval se korektně po odpojení napájení apod.