Commit graph

106 commits

Author SHA1 Message Date
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
Riku Isokoski 21b6f85140 Fix regression 2021-06-11 14:46:03 +03:00
Riku Isokoski 123c6f1917 Fix touchevent tap 2021-06-11 13:26:28 +03: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
Florian Kraupa d13dd6dee3 implemented continuous vibration pattern for incoming calls 2021-05-16 00:42:31 +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
Jed 12617ed1bf adds 2048 clone game
styles table


reads touch events


allows moving tiles


allows merging tiles


improves tile movement


allows merging tiles


adds score display


implements color


edit comments


adjust game logic


disallows double merges
2021-01-02 14:15:12 -06:00
ZephyrLabs 09a94ee2b8 Update DisplayApp.cpp
fixed file typo
2020-12-03 20:17:22 +05:30
ZephyrLabs 91b37f8de0 Update DisplayApp.cpp
added Paddle header and paddle app screen
2020-12-03 20:04:37 +05:30
ZephyrLabs 1d69c79942 Addition of new files in MakeList
added Paddle.cpp and Paddle.h
2020-12-03 19:46:36 +05:30
okaestne cadc0c25d4
Include cleanup: displayapp + screens 2020-11-16 01:35:51 +01:00
JF ef5670c7e0 Integrate new notification UI with notifications coming from BLE 2020-10-20 20:57:39 +02:00
JF 55427d83b8 [WIP] Add new notification UI that use HW scrolling effects. Both notification apps are available in the menu, we can compare them. 2020-10-19 21:46:41 +02:00
JF 28bc434419 [WIP] New notification app that uses software scrolling effect. 2020-10-18 17:35:36 +02:00
Avamander 6c86d1d9d7 Fixed all the includes that were broken due to the renames 2020-10-02 22:16:48 +03:00
Avamander e3fb2f0b89 Renamed DisplayApp/ to displayapp/ 2020-10-02 21:46:41 +03:00
Renamed from src/DisplayApp/DisplayApp.cpp (Browse further)