wasp-os: MicroPython for PineTime!
#81
Daniel, since you sounded like you had issues with your pinetime, would you like me to send you a new sealed pinetime unit with the new bootloader to help with your development efforts? I got a three pack, but i wont be needing all three.
  Reply
#82
Wink 
(10-21-2020, 05:01 AM)purlupar Wrote:
(10-21-2020, 02:00 AM)danielt Wrote: I suspect that int(z[1]+si*p-w//2) has evaluated to a negative number (resulting in one of the four expressions on the last line being out of range). When running on the simulator it should be easy to print them: perhaps modify the set_window() method to print out all its arguments.

It will be a slow but it should be fairly clear.

That was it! In fact, not negative but too large. I somehow wanted to draw hands larger than the display, which went well until now. I'll commit and re-do the pull request later today. Thanks so much!

Hi,

I'm developing a watchface based on your analog and chrono24 watchfaces Smile . My goal is develop a configurable clock that allows the user customize the watchface using a settings page (not implemented). Currently supports de digital clock (same than the Dainelt but refactored) and an analog clock. I'm struggling with the performance... In the simulator, your analog or chrono24 apps or my configurable clock it seems not to be enough faster.

If you are interested, lock at: https://github.com/arkharim/wasp-os/blob...e_clock.py I tried to clean a liitle but it is in development.

One interesting feature is that it supports background images Big Grin . I modified the Draw565 library adding the redraw_blit method.

Finally, today in the pinetime chat one guy share a table with the sin and cosine calculated. In want to try to check the performance but my feeling is that the problem is related with spi velocity.

Important, I only tried this watchface in the simulator as I don't have a pinetime already (waiting for a one unit sealed pinetime)
  Reply
#83
(10-25-2020, 10:43 AM)arkharim Wrote: I'm developing a watchface based on your analog and chrono24 watchfaces Smile . My goal is develop a configurable clock that allows the user customize the watchface using a settings page (not implemented).

I'd also like to be able to offer customizable watch faces but I don't personally think a configurable clock is the right way to handle supporting multiple watch faces. A large monolithic clock app risks making it difficult for users to provide a new watch face. Large apps only be loaded into FLASH whilst small apps can be loaded into RAM allowing the app to be loaded without having to recompile the whole firmware.

The system is currently designed such that the first app on wasp.system.quick_ring is special and will automatically be switched to when the display turns off due to inactivity (unless the current app asks for this not to happen). The result is that watch face will be displayed by default the next time the watch is activated. This is the only difference between a watch face and any other app. To change the default watch face then the users's main.py (or a settings app) can simply do something like: wasp.manager.quick_ring[0] = NewWatchApp() .

On other words rather than having a configurable clock app I think it is better to have several single watch face applications and to modify the system manager to offer better ways to enumerate the applications that are available.

Please don't be discouraged by anything here. I'm keen to see new watch faces and have started to merge faces from other developers into the wasp-os repo! I just think it is better for each watch face to be a separate app.

PS I spent some time this weekend simplifying and commenting the existing digital clock app (which has been requested by others who want to code their own watch faces). I've not pushed it yet because it needs a little more testing but there are some fairly significant simplifications (the code to handle lazy redraw is not a lot clearer).
PineTime: wasp-os and MicroPython, Pinebook Pro:  Debian Bullseye
  Reply
#84
(10-26-2020, 05:27 AM)danielt Wrote:
(10-25-2020, 10:43 AM)arkharim Wrote: I'm developing a watchface based on your analog and chrono24 watchfaces Smile . My goal is develop a configurable clock that allows the user customize the watchface using a settings page (not implemented).

I'd also like to be able to offer customizable watch faces but I don't personally think a configurable clock is the right way to handle supporting multiple watch faces. A large monolithic clock app risks making it difficult for users to provide a new watch face. Large apps only be loaded into FLASH whilst small apps can be loaded into RAM allowing the app to be loaded without having to recompile the whole firmware.

The system is currently designed such that the first app on wasp.system.quick_ring is special and will automatically be switched to when the display turns off due to inactivity (unless the current app asks for this not to happen). The result is that watch face will be displayed by default the next time the watch is activated. This is the only difference between a watch face and any other app. To change the default watch face then the users's main.py (or a settings app) can simply do something like: wasp.manager.quick_ring[0] = NewWatchApp() .

On other words rather than having a configurable clock app I think it is better to have several single watch face applications and to modify the system manager to offer better ways to enumerate the applications that are available.

Please don't be discouraged by anything here. I'm keen to see new watch faces and have started to merge faces from other developers into the wasp-os repo! I just think it is better for each watch face to be a separate app.

PS I spent some time this weekend simplifying and commenting the existing digital clock app (which has been requested by others who want to code their own watch faces). I've not pushed it yet because it needs a little more testing but there are some fairly significant simplifications (the code to handle lazy redraw is not a lot clearer).
Hi Danielt,
Thanks for the whole explanation. I'm only free time developer without experience in this kind of systems before. I'll follow your suggestion to develop a small app.
  Reply
#85
The wasp project is proud to announce the release of wasp-os v0.3. This release is long overdue given the step counter and heart rate monitor (which was the original target for this release) have been running since mid-July. Anyhow, the long gap between releases has allowed lots more new stuff to be added. This includes the infrastructure for notifications (just the infrastructure... a GadgetBridge port it available as a companion app for Android but currently it is available only as a source-only pre-release) together with extensive support for over-the-air updates, including support for the OTA updates to and from the new factory firmware for Pine64 PineTime devices.

https://github.com/daniel-thompson/wasp-...s/tag/v0.3

As ever all the new features have corresponding updates to the documentation meaning you can read all about the new apps and features right now at: at: https://wasp-os.readthedocs.io . You can also watch many of the new features in action by looking at some of the most recent wasp-os video blogs:

Step counting and heart rate monitoring on Pine64 PineTime
* Installing on a Pine64 PineTime running the latest factory firmware
PineTime: wasp-os and MicroPython, Pinebook Pro:  Debian Bullseye
  Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Update bootlogo and pinetime-app with OTA/DFU lookin 3 133 8 hours ago
Last Post: lookin
  PineTime Simulation Feature gjoyet 3 184 11-15-2020, 11:42 AM
Last Post: gjoyet
  Star Trek computer themed wasp-os on PineTime graynada 11 1,695 10-30-2020, 01:00 PM
Last Post: graynada
  Pinetime and P8 Integration testing framework maiden 7 919 10-23-2020, 03:25 PM
Last Post: maiden
  Article: Create Your Own PineTime Watch Face in Rust... And Publish on crates.io lupyuen 2 405 10-18-2020, 09:24 PM
Last Post: lupyuen
  Article: Bluetooth Time Sync and LVGL on PineTime Mynewt lupyuen 0 239 10-15-2020, 05:51 PM
Last Post: lupyuen
  Remote PineTime for flashing and testing firmware remotely lupyuen 5 595 10-06-2020, 12:03 AM
Last Post: lupyuen
  Rust on PineTime at RIOT Summit lupyuen 3 831 09-25-2020, 05:05 PM
Last Post: lupyuen
  Article: Preview PineTime Watch Faces in your Web Browser with WebAssembly lupyuen 1 561 09-13-2020, 02:09 PM
Last Post: VMMainFrame
  Article: Porting PineTime Watch Face from C to Rust On RIOT with LVGL lupyuen 0 296 09-12-2020, 10:13 PM
Last Post: lupyuen

Forum Jump:


Users browsing this thread: 2 Guest(s)