Commit graph

64 commits

Author SHA1 Message Date
Riku Isokoski 9ee1160578
Reset timer by long pressing on the button (#1214)
* Reset timer by long pressing on the button

* Consider press_lost as released

Otherwise the bar would keep increasing if the finger slid off the
button
2022-07-21 22:53:36 +03:00
Christoph Honal 0f1e510574 Nimble: Compatibility with LFRC calibration
Nimble has to be aware of the low frequency clock
calibration procedure, in order to not interfere with
the usage of the HFCLK. For more info, see
https://github.com/apache/mynewt-nimble/issues/1207
2022-07-07 11:20:56 +02:00
Christoph Honal 33a7a6a095 Nimble: Enable optional debug output via RTT
This allows better debugging of the bluetooth stack.
2022-07-07 11:20:56 +02:00
Christoph Honal 118adb96cf Nimble: Reduce BLE power usage
This configures Nimble to enable the HFCLOCK and other
Bluetooth peripherals only when needed, but 1500 us in advance.
This time is recommended by the Mynewt docs.
2022-07-07 11:20:56 +02:00
Jean-François Milants a8b7fbe48b New changes according to the review : Priority 0 for display, 1 for system, timer and ble host, and 2 for ble LL 2022-03-21 20:53:46 +01:00
Jean-François Milants cd1f218dd8 Fix priorities of BLE tasks 2022-03-21 20:53:46 +01:00
Avamander e8c1302cd6
Merge branch 'develop' into patch-weather 2021-12-09 22:20:29 +02:00
James A. Jerkins 048ecd41e4 Adjust BLE/LL stacks, style, comments, refactoring
Increase BLE task stack +200 and decrease LL task stack -200
more braces!
2021-12-09 21:14:16 +01:00
James A. Jerkins 62dbcbfc95 Connect and bond with a passkey
This commit adds the following:
    Passkey pairing - passkey is displayed on watch
    Swipe down to clear passkey screen
    Connection encryption
    Connection bonding
    Automatic reconnects to a bonded peripheral
    Trusted device on Android

Note that persisting the bond between reboots is NOT included in
this commit. Therefore, rebooting the watch will cause reconnect failures.
You must delete the bond from the phone to reconnect/pair.
2021-12-09 21:14:16 +01:00
Avamander 6ba2878605 Added QCBOR dependency 2021-12-04 22:03:40 +02:00
Daniel Jackson d7ca217872
Correctly return the tick at which the RF will be fully enabled.
Always returning 0 (when `MYNEWT_VAL_BLE_LL_RFMGMT_ENABLE_TIME` is not defined), rather than a time near to the current tick, causes an issue in at least one place: `ble_ll_adv_sm_start()`, where the calculation of `delta` overflows when the system timer is at 0x80000000 or above -- causing an incorrect, huge adjustment to be made to the scheduled time, ultimately stopping adverts from being sent.
2021-09-25 23:48:53 +01:00
Jonathan Vander Mey 7b75ca591d Fix compile warnings 2021-07-25 18:01:13 +02:00
Riku Isokoski 7133287b76
Set correct refresh times for lvgl (#488) 2021-07-14 20:35:21 +02:00
Jean-François Milants e2efb193c4 Merge branch 'lvgl_use_system_tick' of https://github.com/Riksu9000/InfiniTime into Riksu9000-lvgl_use_system_tick
# Conflicts:
#	src/displayapp/screens/BatteryInfo.cpp
#	src/displayapp/screens/BatteryInfo.h
2021-07-13 20:53:40 +02:00
joaquim.org 084123b752
Using littlefs (#438)
* add submodule littlefs
* base fs
* Save settings using littlefs
* Small fixes and suggestions from PR
* More small fixes from PR suggestions
* Code clean up
* Change SpiNorFlash functions to be private in FS
2021-07-11 15:06:06 +02:00
Riku Isokoski 99e26bdd4c LVGL use system tick 2021-07-07 15:47:47 +03:00
kieranc f317d54218
Add PineTimeStyle watchface (#334)
* PineTimeStyle
* Move GPL license header
* Add step count gauge - replaces heartrate in sidebar
* Enable 12/24h functionality
* Set step gauge outer to be white when step goal is reached
* Add font source file
* Move static needle_colors array to member variable
* Add documentation on generating a font
* Replace .ttf with Google version, add link to font page

Co-authored-by: JF002 <JF002@users.noreply.github.com>
2021-06-29 20:20:27 +02:00
JF002 09977c28c0
Merge pull request #298 from joaquimorg/StepsApp
New Steps app
2021-05-15 22:32:40 +02:00
Joaquim 552f880a23 Update LVGL
fixes from upstream
2021-04-21 15:48:41 +01:00
Joaquim cd4a3e1dfe New Steps app
Settings to set the steps goal
More detail in Motion app
New 42px Font
2021-04-19 15:28:38 +01:00
JF002 9096d1db4c
Merge pull request #259 from JF002/fix-music-app2
Fix music app
2021-04-09 20:44:02 +02:00
Jean-François Milants f8b9a7c060 Fix music app :
- Enable LVGL animation (and disable groups, which were not used), and set the speed.
 - Fix disc animation and progress display by initializing lastIncrement at 0 (a random value will be used otherwise, in release build)
2021-04-04 17:19:41 +02:00
Joaquim bb7531e208 double tap wakeup error fix
battery nonblocking read
2021-04-04 13:51:22 +01:00
Joaquim 1d3742e14f Big UI and navigation Rewrite
new navigation
add some color to the apps
redesign menus
new settings menu
new quick settings
code clean up
size reduction by converting navigation images to font
and more...
2021-04-04 03:08:51 +01:00
Joaquim d257ad21be Update to LVGL 7.11.0 Final 2021-03-20 18:12:44 +00:00
Jean-François Milants 5845fd98ba Add submodule again... 2021-03-07 09:15:26 +01:00
Jean-François Milants 9f67e6f652 Merge branch 'develop' into recovery-firmware
# Conflicts:
#	src/CMakeLists.txt
#	src/displayapp/DisplayApp.h
#	src/systemtask/SystemTask.cpp
#	src/systemtask/SystemTask.h
2021-03-07 08:44:14 +01:00
Jean-François Milants 094f98743d Fix LVGL submodule (sorry!) 2021-02-23 21:53:50 +01:00
Jean-François Milants b11b20b0ac Remove LVGL folder (it's now a submodule) 2021-02-23 21:21:29 +01:00
Jean-François Milants f864330d35 Merge branch 'LVGL7' of https://github.com/joaquimorg/Pinetime into joaquimorg-LVGL7
# Conflicts:
#	src/CMakeLists.txt
#	src/displayapp/DisplayApp.cpp
#	src/displayapp/screens/Modal.cpp
#	src/displayapp/screens/Modal.h
#	src/displayapp/screens/Notifications.cpp
#	src/displayapp/screens/Tile.h
2021-02-23 21:18:59 +01:00
Joaquim 3fe3f06299 Fix delay in button actions 2021-02-22 21:33:27 +00:00
Jean-François Milants 4918524550 Fix memory leak in timer management in port layer of Nimble. 2021-02-07 18:09:19 +01:00
Jean-François Milants d90b7274fa Update to nimble 1.3 master branch commit 82153e744833821e20e9a8b0d61c38b2b0dbcfe1
WARNING : heartbeat task is disabled!
2021-02-02 22:09:00 +01:00
Joaquim a4361de0cf Cleanup 2021-02-01 12:14:49 +00:00
Joaquim ccd423bcef Merge branch 'develop' of https://github.com/JF002/Pinetime into LVGL7 2021-02-01 10:44:10 +00:00
Jean-François Milants 51ff9d5e7b Normalize all the line endings 2021-01-31 20:50:04 +01:00
Jean-François Milants d2bb209d7f Remove BLE debug code 2021-01-31 19:51:36 +01:00
Joaquim a456887eff LVGL v7.10.0 2021-01-28 17:13:28 +00:00
Joaquim efa99da44d LVGL V7 Upgrade 2021-01-28 17:07:28 +00:00
Jean-François Milants 25f35c7d0e Generate pinetime-recovery : a light version of InfiniTime design to be used as a recovery firmware : it only provides basic UI and BLE connectivity for OTA.
This new FW is build on the same codebasse than the actual InfiniTime. Only the display task is different (this allows to remove lvgl from the recovery fw, which is very heavy).

CMake builds and docker have been modified accordingly.
Note than the fw is converted into an image and then into a DFU in the cmake build (previously, it was only done in the
2021-01-26 20:31:45 +01:00
Jean-François Milants 39d9fc2053 Fix bug in animation management for lv_label 2021-01-17 18:25:22 +01:00
Avamander 4daab26926 Renamed displayapp/Screens to displayapp/screens 2020-10-02 21:49:55 +03:00
JF 83f6d7d81b Fix most of the warnings. Remaining warnings come from nimble source code. 2020-08-17 16:31:00 +02:00
JF 09adb78b55 Fix/Workaround a memory leak each time a device connects to BLE. 2020-07-11 20:50:40 +02:00
JF 71842667a0 Remove debug (and bad) #includes. 2020-07-08 21:14:52 +02:00
JF a83f067af9 Reduce RAM memory usage by tuning the stack of the stasks and the heap allocated for FreeRTOS.
Add Monitor to log the stack usage of each task.
2020-07-02 21:38:52 +02:00
JF a0b5cbbc1c Disable all logging 2020-06-19 22:10:01 +02:00
JF 9898fed806 Update to nimble 1.3.0 + WIP : debug BLE connection issue with android phones. 2020-06-16 20:36:24 +02:00
JF 073717980f Merge develop 2020-05-24 16:51:50 +02:00
JF 9753967d8a Update LittleVGL from 6.1.1 to 6.1.2. It fixes a memory leak when a screen used 2 lv_img objects (occured in Clock). 2020-05-17 09:27:36 +02:00