transitionend is unreliable: if the Pi's display sleeps or a transition is interrupted, the event never fires and the next slot's src is never set. advanceSlide then waits forever on an onload that can't fire. Replace with a 1600ms setTimeout (just past the 1.5s CSS transition) which always fires. Also add a guard to kick-start the src if it's blank when advanceSlide runs. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>