Releases: cehbz/Watchy-Screen
Minor change, put default location back into config.h
Errors and Timestamps
Add a global error code variable called Watchy::err and define values for it in WatchyErrors.h
Make GetLocation, GetWeather, and SyncTime set Watchy::err on failure (or OK on success.) Since
GetLocation and GetWeather always return cached values on errors, there was no other way to tell
if they succeeded or not.
SyncTime no longer returns a value. To check its status check the error code.
Expose the "last successful" timestamp variables for GetLocation, GetWeather, and SyncTime. Each
of those functions store the timestamp of their last successful invocation. It's used internally
for rate limiting, but it can also be used to tell when (or if) they've been successful.
In main.cpp sync the time and set the location if they haven't ever been set.
Bug fix, added documentation, platformio.ini cleanup
Fixed the referent for extern currentTime
in Watchy.h
Added a PORTING document that tries to explain how to port a watchface from Watchy to Watchy-Screen
Got rid of the "release" and "debug" environments in platformio.ini that were confusing some people and causing double builds. Now there's just a "debug" build - uncomment the "release" section if you want it.
satisfy extern ref for currentTime
There was an extern for currentTime, but we never defined the referent. Expose currentTime in Watchy, even though it's never updated. Existing watch face code often refers to it to display the time so this makes porting easier.
Fix bug in setting TZ
Bugfix: SetTime and SyncTime weren't setting TZ before using localtime. Move TZ setting into main Watchy so people don't have to remember. Remove TZ setting from TimeScreen.
Add ImageScreen
Added ImageScreen
a flavor of IconScreen
that displays a vanilla Adafruit GFX bitmap and a label.
Fix bug in time sync
Wasn't setting the default ntpServer name, ever. So time sync would never succeed.
Separate libs for time, location, weather (builds on Linux)
Remove reference to Wifi.h
refactor time, location, weather into libs
Clean up time, location, and weather so that they live in their own libraries. Remove inter-screen dependencies.
Screens have parents
Give screens parents, delete screen names