separate convesions from the main source to allow test builds
extra unit to verify that both duration plain input and
spec work as intended
also fix wdt triggered when unknown symbols are encountered at the end
of duration string (e.g. 10000y)
updated duration parser with a fixed type instead of just millis
separate decimal and floating point converter as well, try to avoid
possible precision loss with microseconds use
see #2578
* deep sleep api without ESP class dependency
* rf + cpu light sleep for cases when deep sleep cannot be used
* generic time-based light sleep; nonos does not halt cpu,
unlike the wakeup variant. timers also keep going, so
this has to be used with extra care
pending some 'deferred' variant and before and after sleep actions
if data size and crc are ok, make sure to notify the caller
rework parameter injection and make sure endianess is right
auto-calibration and range are both a setting and a build flag
see #2578
make TurnOff action select sleep mode from available settings
wifi.off and wifi.on commands in addition to existing AP & STA
overriding buttons is... problematic?
e.g. selecting LO trigger and existing hw pushbutton GPIO,
we are most likely to trigger long-click event
`-mD` is not an option...
`-M -MF $file` can be used together with `-E` to generate a small
makefile-like generator (does not include any compiler flags!) for the
target file so we know which files it would use during compilation