Commit graph

60 commits

Author SHA1 Message Date
Riku Isokoski 2a3e126390 Fix most issues 2021-07-16 00:07:55 +03:00
Riku Isokoski fe64176e7b New touch handler, with issues 2021-07-15 14:11:27 +03:00
Riku Isokoski 7133287b76
Set correct refresh times for lvgl (#488) 2021-07-14 20:35:21 +02:00
Riku Isokoski a5616b0bc8
Adjust displayapp delay to compensate time spent (#482) 2021-07-13 20:42:59 +02:00
Riku Isokoski 61a4642221
Improve stopwatch (#432)
* Improve stopwatch more

* Make sure sleep gets reenabled

* Cleanup and clang-format
2021-07-04 20:23:03 +02:00
JF002 c6dca25b9f
Add support for BMA425 acceleration sensor. (#440)
* Add support for BMA425 acceleration sensor.
2021-06-19 20:27:59 +02:00
Jean-François Milants d6fcbe960e Fix build issues since Metronome app has been merged. 2021-06-12 15:14:14 +02:00
Bryton Hall c575754b42
add basic metronome app (#409)
* add basic metronome app

* add bpb, tap to bpm, update widgets

* use event pressed for bpm tap

* move case statement break to the right place

* narrow bpm selection range, override touch events

* fix arc knob style

* re-enable sleeping in destructor
2021-06-12 15:06:58 +02:00
Avamander 314a8ebba0
Changed the namespace of SystemInfo::sortById to avoid a name conflict (#360) 2021-06-12 11:18:19 +02:00
Jean-François Milants 6d524ebea2 Move most of the code from the constructor of the objects statically initialized in main() into Start()/Init() functions to avoid Static Initialization Order Fiasco (https://en.cppreference.com/w/cpp/language/siof). See https://github.com/JF002/InfiniTime/pull/415#issuecomment-859004238. 2021-06-12 10:58:28 +02:00
Jean-François Milants b1925ff286 Minor improvements: use std::make_unique when creating unique_ptr, check the code is running from an IRQ before calling xQueueSendFromISR or xQueueSend) 2021-06-10 21:20:27 +02:00
Jean-François Milants caca6a5cff Fix stack corruption when exiting an app (the app was destroyed while it was executing the button handler). 2021-06-10 21:19:11 +02:00
Jean-François Milants 7f9cc51b05 Initialize SystemTask, DisplayApp and HeartRateTask as global static variable instead of variables on the heap. We don't need them on the heap as we know their size at build time, it'll reduce memory fragmentation and it'll make memory analysis easier. 2021-06-06 15:56:03 +02:00
JF002 1b6acdedc2
Enable various compilation flags to reduce the binary size (#401)
* Add the following compilation flags:
 * -fno-exceptions and -fno-non-call-exceptions : disable exception handling
 * -fno-rtti : disable run time type information (needed by dynamic_cast, for example)

These flags reduce the binary size by about 100KB!

Also, -fstack-usage generate debug info (not in final binary) to allow tools like Puncover to do a stack analysis.

* Remove unused CMake variables in CMake_nRF5x.cmake (duplicated in src/CMakeLists.txt).
Replace -O0 by -Og in DEBUG builds. This generates a smaller binary (small enough for the internal memory) that is debugger friendly.
2021-06-01 21:03:01 +02:00
Florian 13e3463276
Timer App (#355)
* built timer app

* Style improvements

* making sure buttons stay hidden when the app is reopened and reappear after the timer runs out

* more sensible calculations of time deltas. eliminated that mysterious scaling factor

* changing the timer icon
2021-05-20 20:43:54 +02:00
Jean-François Milants d7fa000b85 DisplayApp : returnApp was renamed ReturnApp() (manual fix after multiple merges). 2021-05-15 22:38:49 +02:00
JF002 09977c28c0
Merge pull request #298 from joaquimorg/StepsApp
New Steps app
2021-05-15 22:32:40 +02:00
JF002 204d63697c
Merge pull request #349 from Avamander/patch-2
Switched to booleans for infinite while loops
2021-05-15 09:57:22 +02:00
JF002 48018fc1d8
Merge pull request #350 from Avamander/patch-3
Added braces to a few if statements
2021-05-15 09:56:48 +02:00
Avamander d29d513244 Fixed a naming inconsistency of DisplayApp::ReturnApp and a few formatting errors 2021-05-14 12:46:51 +03:00
Avamander e54163b7c2 Added braces to a few if statements 2021-05-14 12:43:29 +03:00
Avamander 33f965f326 Switched to booleans for infinite while loops 2021-05-14 12:40:46 +03:00
petter 6e1726d1d0 short vibration when enabling it 2021-05-02 11:48:05 +02:00
Joaquim cd0d85dff9 Merge branch 'develop' of
https://github.com/JF002/InfiniTime into StepsApp
2021-04-26 21:29:48 +01:00
Avamander 40d45d923b Reformatted all the files according to clang-format style 2021-04-24 11:39:53 +03: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
Joaquim 3c413bdd52 In order to stabilize the battery reading,
I modified the process to make 5 consecutive readings,
as the process is asynchronous,
there is no interference in the main process.
2021-04-16 16:15:38 +01:00
Joaquim f5e43a1668 Move Task info to about menu
fix build error in WatchFaceDigital
2021-04-11 17:20:15 +01:00
Joaquim 012c246e40 0.16.0 TWI problems fix
More memory for freertos heap and timer stack
Fix warning in watchface
Fix number of bytes read by cst816
Debug app to show freertos tasks
Increased the number of bytes of the twi write buffer
2021-04-10 19:09:33 +01:00
Jean-François Milants 15b3b8e282 Merge branch 'develop' into motion-sensor
# Conflicts:
#	src/CMakeLists.txt
#	src/displayapp/Apps.h
#	src/displayapp/DisplayApp.cpp
#	src/displayapp/DisplayApp.h
#	src/displayapp/lv_pinetime_theme.c
#	src/displayapp/screens/ApplicationList.cpp
#	src/drivers/TwiMaster.cpp
#	src/systemtask/SystemTask.h
2021-04-09 21:16:21 +02:00
Joaquim 3685095da0 add more memory to displayapp task 2021-04-09 09:29:29 +01:00
Jean-François Milants 68bdaee1cc First integration of the motion sensor (bma 421) : step counting + wake on wrist rotation + app to see the value of the 3 axis in "real time". 2021-04-04 15:56:04 +02: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
Niall Cooling 8eb947a223 replaced all unique_ptr.reset calls with std::make_unique 2021-03-22 17:56:26 +00:00
panky-codes dd9d6cd23e Reverted the paddle app in displayapp.cpp 2021-03-21 11:15:31 +01:00
panky-codes 5345650880 Merged upstream 2021-03-20 22:45:29 +01:00
Jean-François Milants 405c85c160 Merge branch 'develop' of github.com:JF002/Pinetime into develop
# Conflicts:
#	src/main.cpp
#	src/systemtask/SystemTask.h
2021-03-20 11:41:49 +01:00
panky-codes abc30028a2 Removed unused variables. Tested. 2021-03-15 21:35:36 +01:00
panky-codes cc58b635a3 Basic logic done. Need to change the timer source to get ms. Also need to replace with paddle app in displayApp.cpp and ApplicationList.cpp later. 2021-03-11 10:54:14 +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
Joaquim 8c53d0b70b Multi face support, analog clock, 12/24 config 2021-02-24 19:40:24 +00: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 a4361de0cf Cleanup 2021-02-01 12:14:49 +00:00
Joaquim a456887eff LVGL v7.10.0 2021-01-28 17:13: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 219bafb01a Handle call notification the same way than other notifications.
Display the call notifications in the Notification app, with buttons to accept/reject the call.
2021-01-24 17:22:39 +01:00
Rasmus Schenstrom 10ba20876f Add incoming call functionality
Add categories to AlertNotification

Add new alert notification screens bases

Add Incoming Call

Add Modal

Add event to AlertNotification

Co-authored-by: Robin Karlsson <robin.karlsson@protonmail.com>
2021-01-21 23:15:29 +01:00
Jean-François Milants 522a1eb0be Merge branch piggz/nav into develop:
- fix conflict
 - add a icon for the navigation app.
2021-01-20 21:34:09 +01:00
Jean-François Milants 04063cf0af HR Sensor : Add start/stop button to the HeartRate app (the HR sensors stays ON when the app is closed), display the HR value on the Clock app. 2021-01-17 10:39:46 +01:00
Jean-François Milants 1a582815ba First implementation of the HR sensor using 100% foss code (ported from waspos) 2021-01-10 17:57:26 +01:00