Python makes it easy to pass data around as dicts, nested JSON blobs, and “whatever the client sent”. That flexibility is useful when you own the shape. It gets expensive when the data crosses a trust boundary.
Name the problem before reaching for the solution. The device did not crash. It entered a state where it could not make progress, and nothing outside the firmware had authority to change that. Silent failure. No recovery path.
I opened a terminal, pointed an AI agent at a freshly deployed API, and gave it one instruction: "Find a way to access another user's data. You have no credentials and no documentation".
This post is a weekend walkthrough to get the ST7305 driver working, connect WiFi, pull live weather from Open-Meteo, and have something useful on the display by Sunday.