OS Level Control - nothingmn/AGENT.Contrib GitHub Wiki

OS Level Control

Rebooting the AGENT

If you hold the top-right and bottom-left buttons for about ten seconds, the watch will reboot. That's a fail-safe, in case an app ever went wrong.

Recovery Mode

And if you hold down the middle button on the right while booting, it goes into recovery mode.
yes, there is a servicing model for the core OS. We can even replace the recovery mode software safely. It all deploys over Bluetooth, and it all has fail-safe protections. To update the core OS, the watch reboots into recovery mode. The recovery mode software erases the current operating system and then downloads the updated operating system via Bluetooth. It writes the new operating system to flash, verifies that it was written correctly, and then reboots. Upon reboot the operating system starts.

If the operating system update fails (phone battery dies, solar storms, walk out or range with watch, etc.) you simply restart the update procedure. The recovery mode software will automatically stay in recovery mode until the operating system is flashed correctly.

In the rare case than an operating system update ever flashed successfully but cannot boot, you can reboot into recovery mode by pressing and holding the bottom-left, top-right, and middle-right buttons. From there you can erase the OS, revert the watch to factory state, etc. Yes, there are backup-backup procedures :) If you're familiar with Netduino, replace "recovery mode" with "TinyBooter" and "operating system" with "TinyCLR" and "downloads the operating system" with "Deploy ER_FLASH via MFDeploy" in the above description and you'll understand the functional parallels.

Since AGENT is totally wireless, we strongly felt that we needed fail-safes. We don't want any chance that a bad firmware update could brick your watch. We can even update the recovery mode software (to support updated Bluetooth profiles), and we have fail-safes in place for that process too.

We may have over-engineered AGENT a bit, it's true :) But like with Netduino, we want to build you a great piece of hardware that will be reliable and last you for years.

Both are wired in hardware and controlled by the second processor.

Returning back to the watch face

You can press and hold the bottom-left button at any time to go back to the watchface

Power Saving

When you reach 10% battery, the watch will actually change into low-power (watchface-only) mode for you, giving you a few extra days of timekeeping. It's certainly possible to extend this functionality further with 20% notifications, etc. We'll keep refining the user experience based on backer feedback during and after the campaign.