In perusing the documentation, this looks like a fantastic addition to the Particle platform. I am particularly excited about the future development of cloud-based configuration.
One thing that seems clear is that this library could significantly simplify my code and, I hope, take care of some of the issues that have required workarounds. One of these areas is in battery state of charge as the connection state of the device and the time since sleep can both impact SoC readings.
This brings up the first question / feature request: There has been a significant number of posts about the accuracy of state of charge measurements when devices sleep most of the time.
I was wondering if this library addresses these issues or if we need to add an option for .withShouldConnectMinimumSoC() to look at a minimum battery voltage. Perhaps a .withShouldConnectMinimumVcell()?
I understand this library can be extended as you showed with the wake from button example.
Again, I believe this is a major step forward - thank you!