diff --git a/wled00/data/pixelforge/pixelforge.htm b/wled00/data/pixelforge/pixelforge.htm index 165eb7a33..b0c5f2df6 100644 --- a/wled00/data/pixelforge/pixelforge.htm +++ b/wled00/data/pixelforge/pixelforge.htm @@ -1195,7 +1195,7 @@ async function imgPlay(url,name){ on:true, seg: cur!==null && cur!==tgt ? [{id:cur,fx:0,n:""},{id:tgt,fx:53,frz:false,sx:128,n:name}] - : {id:tgt,fx:53,frz:false,sx:128,n:name} + : {id:tgt,fx:53,frz:false,sx:128,ix:0,n:name} }; const r=await fetch(getURL('/json/state'),{method:'POST',body:JSON.stringify(j)}); const out=await r.json(); diff --git a/wled00/image_loader.cpp b/wled00/image_loader.cpp index 0f4c38893..775755392 100644 --- a/wled00/image_loader.cpp +++ b/wled00/image_loader.cpp @@ -28,6 +28,10 @@ int fileReadCallback(void) { } int fileReadBlockCallback(void * buffer, int numberOfBytes) { + #ifdef CONFIG_IDF_TARGET_ESP32C3 + unsigned t0 = millis(); + while (strip.isUpdating() && (millis() - t0 < 15)) yield(); // be nice, but not too nice. Waits up to 15ms to avoid glitches + #endif return file.read((uint8_t*)buffer, numberOfBytes); }