1
0
Fork 0

TODO: Switch to reverse order

There are absolutely no changes to any milestone in the roadmap. It is
simply sorted differently.

Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
This commit is contained in:
Daniel Thompson 2020-08-16 18:52:16 +01:00
parent de582cce2b
commit a14f1b054c

196
TODO.rst
View file

@ -3,47 +3,90 @@
Roadmap Roadmap
======= =======
M1: Dumb watch feature parity 0.4: Integration, Fit and finish
----------------------------- --------------------------------
The focus for M1 is to get wasp-os both to meet feature parity with a dumb For 0.4 we focus on improving the watch/phone integration whilst also taking steps
watch and to have a bootloader and watchdog strategy that is robust enough to improve the general fit and finish. In addition the reloader will be extended
to allow a PineTime case to be confidently glued shut. to ensure we retain the capability to install wasp-os over-the-air on newer
PineTime models.
Bootloader Bootloader
~~~~~~~~~~ ~~~~~~~~~~
* [X] Basic board ports (PineTime, DS-D6, 96Boards Nitrogen) * [ ] Stay in bootloader after battery run down
* [X] OTA application update * [ ] Implement power off support (no splash screen)
* [X] Enable watchdog before starting the application
* [X] Splash screen
* [X] Ignore start button for first few seconds
MicroPython Reloader
~~~~~~~~
* [ ] Board identity check
* [ ] UICR update support
* [ ] Improve linker map (everything except linker table at +256K)
* [ ] mcuboot
* [ ] Reconfigurable entry point (allow reloader to run from mcuboot)
* [ ] Allow reloader to install mcuboot and flash app (from wasp-bootloader)
* [ ] Allow reloader to install wasp-os (from mcuboot)
Micropython
~~~~~~~~~~~ ~~~~~~~~~~~
* [X] Basic board ports (PineTime, DS-D6, 96Boards Nitrogen) * [ ] Use SoftDevice sleep logic
* [X] Long press reset (conditional feeding of the watchdog) * [ ] Automatically enter SPI flash power saving mode
* [X] Feed dog from REPL polling loop
* [X] Feed dog from a tick interrupt
Wasp-os Wasp-os
~~~~~~~ ~~~~~~~
* [X] Display driver * [ ] Watch/phone integration
* [X] Display initialization * [ ] Music player support
* [X] Bitmap blitting * [ ] Set date/time
* [X] RLE coder and decoder * [ ] Fully fledged wasp-os device class
* [X] Optimized RLE inner loops
* [X] Backlight driver 0.3 (a.k.a. M3): Smartwatch
* [X] Button driver (polling) ---------------------------
* [X] Battery/charger driver
* [X] Simple clock and battery level application At M3 we start to build out full fitness tracking and notification
* [X] Basic (WFI) power saving functionality.
* [X] Implement simple RTC for nrf52
Reloader
~~~~~~~~
* [X] Pre-flash image verification
* [X] Post-flash image verification
Wasp-os
~~~~~~~
* [X] Enable heart rate sensor
* [X] HRS3300 driver
* [X] HRS data post-processing
* [X] Heart rate counter app
* [X] Notifications
* [X] BLE notification protocol
* [X] Notification popups
* [X] Notification app (show notification history)
* [X] Add (out-of-tree) Gadgetbridge support
* [X] Step counting
* [X] BMA421 driver
* [X] Step counter app
* [ ] Documentation
* [ ] Debugging and troubleshooting guide
* [ ] Screenshots for bootloader and all applications
* [X] Improve the install guide
* [X] Simulator
* [X] Add a simple skin for better screenshots
* [X] Full swipe detection (avoid keyboard)
0.2 (a.k.a. M2): Great developer experience 0.2 (a.k.a. M2): Great developer experience
------------------------------------------- -------------------------------------------
@ -92,87 +135,44 @@ Wasp-os
* [X] Optimized "2-bit" RLE encoder and decoder * [X] Optimized "2-bit" RLE encoder and decoder
* [X] Logarithmic RBG332 <-> RGB56516bit color space conversion * [X] Logarithmic RBG332 <-> RGB56516bit color space conversion
0.3 (a.k.a. M3): Smartwatch M1: Dumb watch feature parity
--------------------------- -----------------------------
At M3 we start to build out full fitness tracking and notification The focus for M1 is to get wasp-os both to meet feature parity with a dumb
functionality. watch and to have a bootloader and watchdog strategy that is robust enough
to allow a PineTime case to be confidently glued shut.
Reloader
~~~~~~~~
* [X] Pre-flash image verification
* [X] Post-flash image verification
Wasp-os
~~~~~~~
* [X] Enable heart rate sensor
* [X] HRS3300 driver
* [X] HRS data post-processing
* [X] Heart rate counter app
* [X] Notifications
* [X] BLE notification protocol
* [X] Notification popups
* [X] Notification app (show notification history)
* [X] Add (out-of-tree) Gadgetbridge support
* [X] Step counting
* [X] BMA421 driver
* [X] Step counter app
* [ ] Documentation
* [ ] Debugging and troubleshooting guide
* [ ] Screenshots for bootloader and all applications
* [X] Improve the install guide
* [X] Simulator
* [X] Add a simple skin for better screenshots
* [X] Full swipe detection (avoid keyboard)
0.4: Integration, Fit and finish
--------------------------------
For 0.4 we focus on improving the watch/phone integration whilst also taking steps
to improve the general fit and finish. In addition the reloader will be extended
to ensure we retain the capability to install wasp-os over-the-air on newer
PineTime models.
Bootloader Bootloader
~~~~~~~~~~ ~~~~~~~~~~
* [ ] Stay in bootloader after battery run down * [X] Basic board ports (PineTime, DS-D6, 96Boards Nitrogen)
* [ ] Implement power off support (no splash screen) * [X] OTA application update
* [X] Enable watchdog before starting the application
* [X] Splash screen
* [X] Ignore start button for first few seconds
Reloader MicroPython
~~~~~~~~
* [ ] Board identity check
* [ ] UICR update support
* [ ] Improve linker map (everything except linker table at +256K)
* [ ] mcuboot
* [ ] Reconfigurable entry point (allow reloader to run from mcuboot)
* [ ] Allow reloader to install mcuboot and flash app (from wasp-bootloader)
* [ ] Allow reloader to install wasp-os (from mcuboot)
Micropython
~~~~~~~~~~~ ~~~~~~~~~~~
* [ ] Use SoftDevice sleep logic * [X] Basic board ports (PineTime, DS-D6, 96Boards Nitrogen)
* [ ] Automatically enter SPI flash power saving mode * [X] Long press reset (conditional feeding of the watchdog)
* [X] Feed dog from REPL polling loop
* [X] Feed dog from a tick interrupt
Wasp-os Wasp-os
~~~~~~~ ~~~~~~~
* [ ] Watch/phone integration * [X] Display driver
* [ ] Music player support * [X] Display initialization
* [ ] Set date/time * [X] Bitmap blitting
* [ ] Fully fledged wasp-os device class * [X] RLE coder and decoder
* [X] Optimized RLE inner loops
* [X] Backlight driver
* [X] Button driver (polling)
* [X] Battery/charger driver
* [X] Simple clock and battery level application
* [X] Basic (WFI) power saving
* [X] Implement simple RTC for nrf52