summaryrefslogtreecommitdiff
path: root/wasp
AgeCommit message (Collapse)Author
2020-08-16boards: simulator: Add an screenshot facilityDaniel Thompson
The screenshot is automatically named after the application currently running and copied into the res/ directory. This allows the application screenshots to be quickly updates if/when the screenshots get out of date as the applications are improved. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-08-16README: Add a (fairly) comprehensive screenshot tourDaniel Thompson
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-08-15apps: stopwatch: Add NEXT supportDaniel Thompson
On a device with NEXT support we need to make sure we reset the stopwatch when switching away from it (if it is not running) since there may not be any other way to reset it. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-08-15drivers: cst816s: Handle a failure to sleepDaniel Thompson
Exceptions on th sleep path more or less kill the device (it is half alseep and is not on... but not off enough for the power button to work. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-08-15gadgetbridge: Disable the not-implemented messageDaniel Thompson
Currently the not-implemented message provokes GadgetBridget into issuing lots of annoying toaster messages. It's still useful for debugging but let's disable it by default. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-08-15wasp: Introduce a NEXT eventDaniel Thompson
This is useful for devices that do not have touchscreens. It can be used to cycle through the quick ring and to check out notifications. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-08-15k9: Disable safe-modeDaniel Thompson
Currently the K9 is wedged in safe-mode. Oops! Fix this. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-08-15k9: watch.py.in: Fix backlightDaniel Thompson
Currently the backlight is permanently on at its lowest level. The backlight is so dim that this is almost impossible to detect. I only found it when lying in a field in total darkness and observing that the screen wasn't quite as black as I expected. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-08-09Merge pull request #48 from Siroj42/masterDaniel Thompson
Fix background color of strings.
2020-08-09k9: Add support for Senbono K9Daniel Thompson
The K9 is similar to the PineTime and P8 devices but does not appear to use the CST[78]16 touch screen controllers. At present the protocol is not known (readfrom yields all zeros, readfrom_mem provokes an exception) so we have a hugely limited interface consisting of the side button and the touchscreen interrupts (in other words we can treat the touchscreen like a second button). Works suprisingly well considering... Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-08-02draw565: Fix wrong background color of stringsSiroj42
Signed-off-by: Joris Warmbier <siroj42@t-online.de>
2020-07-27boards: p8: Full support for Colmi P8Daniel Thompson
All the components (bootloader, reloader, micropython) has P8 support added some time back but without full integration at the wasp-os level. Let's add it! Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-07-24StatusBar: Rename and add BLE connection status iconDaniel Thompson
Notifier was a dumb name so make it better. Now that we have a decent name it should be obvious how to handle the BLE connection status icon! Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-07-19Introduction basic notification supportDaniel Thompson
This requires a modified version of Gadgetbridge and currently works by implementing the BangleJS protocol. In Gadgetbridge ensure "Sync time" is *not* set and choose "Don't pair" when adding the PineTime device.
2020-07-09boards: simulator: Swap up/down swipe detectionDaniel Thompson
Fix swipe detection so it matches the real device. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-07-07simulator: Provide a special main.py for the simulatorDaniel Thompson
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-06-30wasp: Switch to scheduling from interruptDaniel Thompson
This has two useful properties. Firstly it means the watch will be maintained in the background, allowing the REPL to be used for notifications and other updates. Secondly it will save a little bit of power by reducing the work needed to handle spurious wake ups. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-06-27apps: stopwatch: Improve splits... and colour schemeDaniel Thompson
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-06-27boards: simulator: Add swipe detection and button supportDaniel Thompson
Currently the simulator relies on the keyboard to issue touchscreen gestures and button presses. Fix this by adding swipe detection and introducing a skin which gives us the capability to press the button using touchscreens or pointer devices. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-06-25boards: spinx: Fix the documentation generationDaniel Thompson
Currently the template app documentation will not generate. Fix that! Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-06-25ppg: Pull the PPG signal processing into a seperate libraryDaniel Thompson
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-06-24apps: heart: Initial heart rate detectionDaniel Thompson
The algorithm is fairly crude and the GUI is pretty simple but, if you stay still for 10 seconds, there's a good chance of an accurate pulse reading. Of course if you jog on the spot for ten seconds it more likely to calculate how many steps per minutes you are performing! Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-06-24simulator: Reverse the simulated PPG waveformDaniel Thompson
This avoids an implusive change in base value and makes the waveform a little more interesting. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-06-22apps: heart: Introduce simple app for the heart rate sensorDaniel Thompson
The heart rate analysis step is still a work in progress but the current app allows us to visualize the the results of the signal conditioning. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-06-22drivers: hrs3300: Add a basic HRS3300 sensor driverDaniel Thompson
Add the driver and enable it on PineTime. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-06-22wasp: Switch to the faster fill routinesDaniel Thompson
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-06-22draw565: Optimize filled rectangle drawingDaniel Thompson
The original approach is *really* bad at drawing vertical lines (it ends up working a pixel at a time and works the chip select for each one. Optimize both the pixel fill and the use of the line buffer. The result is 20% faster for quarter screen fills, 3x for horizontal lines and 6x for vertical lines. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-06-22apps: testapp: Filled rectangle drawing benchmarksDaniel Thompson
Measure the performance of the quarter screen fill, horizontal lines and vertical lines. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-06-17dsd6, nitrogen: Make them build againDaniel Thompson
Fixes: 9eb9b74 ("Update preprocess to use $(BOARD)"). Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-06-12apps: [steps,stopwatch]: Increase font size of clockDaniel Thompson
We also change the colour scheme slightly because the increased size of the clock interferes visually with the main display when it is bright white. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-06-12apps: steps: Fix the overnight step counter resetDaniel Thompson
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-06-12drivers: bma421: Reduce the post-reset delayDaniel Thompson
There nothing in the docs to give the delay time required after a reset. Currently we use 200ms because that appears on some older code for BMA423 but is removed in more recent drivers. 50ms is still a long time (for hardware) and has held up in testing. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-06-12wasp: simulator: Improve the RTCDaniel Thompson
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-06-11drivers: cst816s: optimize for power saving and responsivenessFuji Pebri
Signed-off-by: Fuji Pebri <pebri86@gmail.com> [daniel@redfelineinja.org.uk: removed leading underscore from method arguments, removed redundant state tracking, adopt i2c.writeto_mem] Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-06-11wasp: simulator: Add interupt support for CST816SDaniel Thompson
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-06-11fonts: Add sans28 (numerals only)Daniel Thompson
2020-06-10boards: pinetime: Improve safe mode implementationDaniel Thompson
2020-06-09wasp: apps: Step counter applicationDaniel Thompson
Currently there's no fancy algorithms to estimate stride length. Just pure simple step counting directly from the hardware's "intelligence engine". Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-06-04Fix symbol lookup error (knob2)Daniel Thompson
2020-05-24apps: settings: Adopt the slider... it looks more interestingDaniel Thompson
2020-05-24widgets: Introduce a slider widgetDaniel Thompson
Currently the slider doesn't actually slide (because we process touch events rather than swipe events) but we've called is a slider anyway.
2020-05-24draw565: rle2bit: Add support for palette overridesDaniel Thompson
This allows some interesting manipulations of 2-bit images.
2020-05-18apps: gameoflife: Better pixel colour selectionDaniel Thompson
2020-05-18draw565: Switch to a different palette for RLE 2-bit imagesDaniel Thompson
This is an incompatible change... older 2-bit images will need to be re-encoded to display correctly.
2020-05-18boards: Remove demo.py from the manifestsDaniel Thompson
Fixes: #25
2020-05-17apps: demo: Move the logo into the demo appDaniel Thompson
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-17draw565: Fix line optimization codeDaniel Thompson
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-17apps: demo: Move the demo code into a fully fledged applicationDaniel Thompson
2020-05-14wasp: watch: docstrings for the watch namespaceDaniel Thompson
2020-05-14Make wasp-os namig consistantDaniel Thompson
Rename WASP to wasp-os (or Wasp-os)