Danke. Das war es.
Ich habe nun effektiv über 10h gesucht, da man einfach nicht weiß, wo der Anfang ist.
Die Lösung zum Issue in der Version 2 hatte mir google leider nie rausgeschmissen oder ich hatte es übersehen - da nicht richtiger Ort.
Magst Du das bitte nicht einfach auch direkt im Git einfügen? Auch wenn Du dieses nicht mehr pflegst.
Habe dir gerade einen PullRequest gesendet (readme.md mit der Fehlerbeschreibung & -lösung und black.gif Bild hinzugefügt)
Folgend eine Beschreibung, falls jemand auf diesen thread hier durch googlen stößt:
Die einfache Lösung ist, hier folgende Zeilen am Ende der verwendeten Konfigurations.yaml
hinzuzufügen:
animation:
- id: animation_black
file: "black.gif"
image:
- id: image_black
file: "black.gif"
Hinzu kommt, dass man ein x-beliebiges gif Bild mit 1x1 Pixel in schwarz in den esphome Ordner (/config/esphome/) ablegt.
Das Bild muss dann den identischen Namen wie in der yaml haben - hier also black.gif.
Erst jetzt erkennt der Compiler, dass er aus den Ressourcen in den Build-Ordner (da, wo alles comipilert wird) auch die “animation Ressourcen” kopieren muss.
Das sieht man schön an der json, die während des Kompilieren erstellt wird:
Mit Samba Add-On: \\192.168.xx.xx\config\esphome\.esphome\<nameDeinerKonfiguration>.yaml.json
(Deine HA-IP bitte verwenden)
{
"storage_version": 1,
"name": "ulanzi",
"friendly_name": null,
"comment": "Ulanzi TC001",
"esphome_version": "2023.9.0-dev",
"src_version": 1,
"address": "ulanzi.local",
"web_port": 80,
"esp_platform": "ESP32",
"build_path": "/config/esphome/.esphome/build/ulanzi",
"firmware_bin_path": "/data/ulanzi/.pioenvs/ulanzi/firmware.bin",
"loaded_integrations": [
"adc",
"addressable_light",
"animation",
"api",
"async_tcp",
"binary_sensor",
...
Vorher fehlte immer animation.
In der EHMTX.h wird aber immer fest animation.h aufgerufen.

Und wenn man das mit der animation.h gelöst hätte, würde sofort der nächste Fehler mit den image Ressourcen passieren.
Daher müssen beide Werte in der YAML hinzugefügt werden.