1
0
Fork 0
Commit Graph

139 Commits (f56cf0e6d1e9d4b6ce5617c37d9c8030816dd767)

Author SHA1 Message Date
Daniel Thompson 60bb43e87b apps: gameoflife: Better pixel colour selection 2020-05-18 22:19:19 +01:00
Daniel Thompson 7f6b1b9059 draw565: Switch to a different palette for RLE 2-bit images
This is an incompatible change... older 2-bit images will need to be
re-encoded to display correctly.
2020-05-18 22:17:51 +01:00
Daniel Thompson d9bdb0c82f boards: Remove demo.py from the manifests
Fixes: #25
2020-05-18 08:12:00 +01:00
Daniel Thompson b9e82424e9 apps: demo: Move the logo into the demo app
The logo module is currently unused but it simply sits there consuming
flash. Let's shift it to the demo app to is can consume RAM instead (but
only when we upload the demo to the watch).
2020-05-17 14:37:44 +01:00
Daniel Thompson ac1a799bfa draw565: Fix line optimization code
sx is measured in pixels (2-bytes) and len(display.linebuffer) gives
a value in bytes so the divisor isn't right.

Whilst we are here let's make sure we use integer division too.

Fixes: #18
2020-05-17 09:47:15 +01:00
Daniel Thompson 4906d46ff4 apps: demo: Move the demo code into a fully fledged application 2020-05-17 09:45:16 +01:00
Daniel Thompson e391480b50 wasp: watch: docstrings for the watch namespace 2020-05-14 23:22:57 +01:00
Daniel Thompson d11e6eb4a1 Make wasp-os namig consistant
Rename WASP to wasp-os (or Wasp-os)
2020-05-14 22:41:05 +01:00
Daniel Thompson b8efcd3053 wasp: Even more docstrings 2020-05-14 22:29:35 +01:00
Daniel Thompson f07fb6d22a wasp: draw565: docstrings for headings and __init__ 2020-05-14 21:44:05 +01:00
Daniel Thompson 42fe7bf352 drivers: vibrator: Finalize docstrings 2020-05-14 21:42:16 +01:00
Daniel Thompson 95f1788347 drivers: st7789: Finalize docstrings 2020-05-14 21:41:02 +01:00
Daniel Thompson 9274d8cc2d drivers: signal: Finalize docstrings 2020-05-14 21:39:14 +01:00
Daniel Thompson 880083977c drivers: nrf_rtc: Finalize docstrings 2020-05-14 21:36:33 +01:00
Daniel Thompson d5c629a9ac drivers: cst816s: Finalize docstrings 2020-05-14 21:36:09 +01:00
Daniel Thompson 85079c149b drivers: battery: Finalize docstrings 2020-05-14 21:32:01 +01:00
Daniel Thompson 93ad0e6972 wasp: draw565: docstring improvements 2020-05-11 23:07:35 +01:00
Daniel Thompson a2fd52ef2b docs: Introduce the Application Writer's Guide. 2020-05-11 21:44:30 +01:00
Daniel Thompson fe1bbbac52 apps: template: Fix broken docstring 2020-05-10 09:34:57 +01:00
Daniel Thompson 09071427e4 drivers: nrf_rtc: Fix some tab/space issues
These issues do not appear when parsing with micropython but when we
import this file into sphinx then things go a bit south.
2020-05-10 09:34:22 +01:00
Daniel Thompson a4c62bb818 wasp: apps: Remove __init__.py
wasp-os contains circular import dependancies (wasp includes apps which
include wasp) but this is normally harmless.

However using __init__.py exagerated to the problem and since the benefit
of the __init__ file is pretty anyway the let's just remove it.
2020-05-10 09:33:26 +01:00
Daniel Thompson c1f8823f61 Add PNVRAM support to avoid forgetting the time during a reboot. 2020-05-09 14:19:10 +01:00
Daniel Thompson 2d437b0f68 wasp: drivers: nrf_rtc: Fix a nasty bug when setting the time
The code to recalculate the uptime to walltime adjustment was broken
(e.g. the longer we leave it after reboot the more inaccurate the time
setting becomes).

Fixes: 80079e4 ("wasp: nrf_rtc: Add a tiny bit of extra resolution")
2020-04-26 15:01:48 +01:00
Daniel Thompson 6729ac67a5 apps: launcher: Add a scroll ready indicator 2020-04-26 15:01:48 +01:00
Daniel Thompson 8b2ba4e79c apps: launcher: Make app.ICON optional 2020-04-26 15:01:48 +01:00
Daniel Thompson e854998268 apps: stopwatch: Fix redraw bug (and remove some old test code) 2020-04-26 15:01:48 +01:00
Daniel Thompson 9348e758b2 wasp: nrf_rtc: Add a tiny bit of extra resolution
We now have a couple of applications (stopwatch, Game of Life) that benefit
from sub-second precision. The micropython RTC/utime code for nrf still
needs a major overhaul but this allows us to paper over the cracks for
just a little longer.
2020-04-26 15:01:48 +01:00
Daniel Thompson 5b277e94f1 wasp: Manager: Avoid printing the stack trace when it can cause problems
On nRF devices if we print with the NUS console disconnected (instead
of never connected) then things we can end up hanging. Better only
to print an exception if the watch class contains a method to do
that.
2020-04-26 15:01:48 +01:00
Daniel Thompson 880764da7d wasp: apps: Conway's Game of Life 2020-04-18 11:54:03 +01:00
Daniel Thompson bfd914a5d1 boards: simulator: Add ptr32 support 2020-04-17 17:19:11 +01:00
Daniel Thompson 66743d42c8 wasp: Manager: Bring in proper separation of apps
This is getting us much closer to the final UI concept. We have a
quick ring from which we can select typical apps such as clock and
stopwatch which will (eventually) be supplemented with step counting
and heart rate monitoriing. More exotic apps (currenrtly torch, self
test, settings) are all relagated to the launcher ring.
2020-04-14 20:05:57 +01:00
Daniel Thompson 10706a9704 wasp: stopwatch: Replace the stub with a "real" implementation
There are still some holes here. In particular the RTC resolution on
nRF devices (such as PineTime) is currently a full second (meaning
the centiseconds will always be zero. Nevertheless that isn't the apps
fault... as we can see when we run on the simulator.
2020-04-14 20:03:04 +01:00
Daniel Thompson 5fc802fb78 wasp: Manager: Push exceptions to the console as well as the crash app 2020-04-14 20:00:49 +01:00
Daniel Thompson a77301ec64 fonts: Add sans36 (numerals only)
At 36pt this is already gobbling a fair bit of flash so, for now, we've
restricted this only numerals (and colon).
2020-04-14 20:00:04 +01:00
Daniel Thompson 64afea0d07 WIP: Introduce the quick_ring 2020-04-12 08:59:37 +01:00
Daniel Thompson b649cd1b24 wasp: template: Implement optional application methods 2020-04-12 08:41:31 +01:00
Daniel Thompson 80d518b75b wasp: apps: Add shortcuts to all apps 2020-04-12 08:40:49 +01:00
Daniel Thompson 64a97fce58 wasp: testapp: Sort tests alphabetically 2020-04-12 08:40:11 +01:00
Daniel Thompson 50ecff29ef wasp: Automatically generate watch.py for PineTime
This should ensure that main.py is always up to date.
2020-04-11 21:12:18 +01:00
Daniel Thompson 4c09add2d8 docs: Add text descriptions of icons
Having the raw hex strings makes the docs look really unclean. Fix this
by providing a special version of icons for the "sphinx" board.
2020-04-11 20:49:06 +01:00
Daniel Thompson 683c3497e0 docs: Fix warnings and add a few extra apps to the docs 2020-04-11 20:26:12 +01:00
Daniel Thompson af1379806c wasp: simulator: Use Tab to replicate the physical button 2020-04-11 20:15:20 +01:00
Daniel Thompson f68eb610c5 wasp: On-device crash reporting
If an application crashes let's report it on the device so it can be
distinguished from a hang (if nothing else it should mean we get better
bug reports).
2020-04-11 20:15:02 +01:00
Daniel Thompson 23368a659b wasp: apps: Add a new (super simple) settings app 2020-04-10 20:30:20 +01:00
Daniel Thompson f734568ad2 wasp: draw565: Optimize the bit expansion blitter slightly. 2020-04-10 20:23:12 +01:00
Daniel Thompson 22ca8886c2 wasp: draw565: Automatic RLE format conversion
From here we can also bring colour to the launcher!
2020-04-10 20:22:51 +01:00
Daniel Thompson a1badfd95d wasp: draw565: Fix colors when burst filling a line. 2020-04-10 20:20:01 +01:00
Daniel Thompson 3bcda8d546 Merge branch 'master' of https://github.com/daniel-thompson/wasp-os 2020-04-10 14:32:22 +01:00
Daniel Thompson 74511a1e1c
Merge pull request #7 from salcedo/master
wasp: pinetime: Release SPI NOR from deep power-down
2020-04-10 14:32:14 +01:00
Daniel Thompson fd64abe882 wasp: draw565: Optimize the 2-bit RLE drawing functions
There's a bunch of different changes here but there are only really three
big wins. The biggest win comes from restructuring the 2-bit RLE decode
loop to avoid the inner function (~20%) but the switch to 16-bit writes in
_fill() and adoption of quick_write (e.g. no CS toggling) are also
note worthy (and about 5% each).
2020-04-08 21:50:42 +01:00