Commit Graph

663 Commits

Author SHA1 Message Date
Joaquim
7e2db806c3 font creation 2021-04-04 22:03:53 +01: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
Jean-François Milants
1d7576de64 Reset the step count every day at midnight. 2021-04-04 15:56:40 +02:00
Jean-François Milants
52a90288fd Handle return code from BMA driver, and set a flag is the initialization fails. This allows to boot InfiniTime even if the device cannot initialize. 2021-04-04 15:56:11 +02:00
Jean-François Milants
c7cc47ae30 Code cleaning in BMA421 driver. Do the axis inversion in the driver and not in the application.
NOTE: Axis remapping from the SDK do not apply to the "raw" X/Y/Z values returned to the sensor. According to the doc, the remapping is only applied to features, but I cannot check if it has any effect on step counting (I'm not sure I use it correctly, doc is not complete enough about this feature).
2021-04-04 15:56:11 +02: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
Jean-François Milants
3934e9bef2 Ignore notification with empty message. 2021-04-04 15:19:37 +02:00
Joaquim
bb7531e208 double tap wakeup error fix
battery nonblocking read
2021-04-04 13:51:22 +01:00
Jean-François Milants
1b71a10beb Notification app : disable swipe when the app is in 'preview' mode. In this mode, only the new notification should be displayed, there is no point to allow navigating to past notifications.
Works as a workaround for the crash that occurs when you swipe the notification app in preview mode (https://github.com/JF002/InfiniTime/issues/250).
2021-04-04 13:42:22 +02:00
Jean-François Milants
03de1c6739 Add support for notification title. The notification buffer must contain the title and the message separated by a '\0' character.
If the buffer does not contain any \0, the whole buffer is considered to be the message of the notification. A default title will be displayed in the notification app.
2021-04-04 12:10:47 +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
Niall Cooling
e5e3fc02b8 Updated to include WatchFaceAnalog and fixed clashes 2021-03-22 17:23:49 +00:00
JF002
0c8b371a4c
Merge pull request #245 from petterhs/fixDisplayErrors
fix display driver issues in recovery
2021-03-21 16:35:21 +01:00
JF002
84798329dc
Merge pull request #244 from joaquimorg/LVGL7.11.0
Update to LVGL 7.11.0 Final
2021-03-21 16:35:00 +01:00
petter
3b51b4367d fix display driver issues in recovery 2021-03-21 12:29:57 +01:00
panky-codes
dd9d6cd23e Reverted the paddle app in displayapp.cpp 2021-03-21 11:15:31 +01:00
panky-codes
bb12ae9d65 Updated lvgl submodule to match with develop branch 2021-03-21 10:43:14 +01:00
panky-codes
5345650880 Merged upstream 2021-03-20 22:45:29 +01:00
panky-codes
754ac23304 Reworked based on PR comments. 2021-03-20 22:42:13 +01:00
Joaquim
d257ad21be Update to LVGL 7.11.0 Final 2021-03-20 18:12:44 +00:00
JF002
a3ff2e46ca
Merge pull request #240 from joaquimorg/ScreenCorruptionFIX
FIX screen corruption (Issue #213)
2021-03-20 18:10:13 +01:00
JF002
463e60eb4e
Merge pull request #237 from muesli/systeminfo-url
Update project URL in SystemInfo
2021-03-20 17:55:32 +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
Joaquim
dba7e47ac0 FIX screen corruption #213 2021-03-18 19:38:19 +00:00
Niall Cooling
14bd790701 Resolved C++14 Cmake build issues so correctly building to C99/C++14 standards 2021-03-16 12:43:50 +00:00
Christian Muehlhaeuser
509ac066d4
Update project URL in SystemInfo
Pinetime -> InfiniTime
2021-03-16 04:01:22 +01:00
panky-codes
abc30028a2 Removed unused variables. Tested. 2021-03-15 21:35:36 +01:00
panky-codes
bc6d447a5f Increased the size of the button and realigned the layout a bit. Tested. 2021-03-13 22:29:07 +01:00
panky-codes
d409643b8e Added some comments for clarity. Ready for review. Tested. 2021-03-13 14:53:37 +01:00
panky-codes
02824d0671 Stopwatch completed. Ready for PR 2021-03-13 14:38:18 +01:00
panky-codes
5d57b9054a Adding laps completed. 2021-03-13 13:59:54 +01:00
panky-codes
00f2a053bf Laps introduced. Tested. Need to change the icon. 2021-03-12 20:24:53 +01:00
panky-codes
a090664a4c Added a button for stop lap. Logic works. Need to implement symbol and buffer for lap 2021-03-12 09:43:13 +01:00
panky-codes
70373e7345 Added play/pause button. 2021-03-11 23:41:24 +01:00
panky-codes
ce91e1a7a6 Changed the clock source. Stopwatch works. Need to add butttons. 2021-03-11 11:56:58 +01:00
panky-codes
1f8f527f9f Merge branch 'develop' of github.com:JF002/Pinetime into feature/add-stop-watch 2021-03-11 10:54:58 +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
Joaquim José Almeida Pereira
282e34dca1 fix AM/PM 2021-03-08 12:23:32 +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
Joaquim
97deb43fb7 Update from JF comments to PR 2021-03-06 19:55:53 +00:00
Joaquim
3d6e8c3beb Merge from upstream 2021-03-06 19:55:36 +00:00
JF002
54dcd77c61
Merge pull request #222 from nscooling/refactor-clock-private-statics
Moved private statics into unnamed namespace in cpp file
2021-03-06 17:34:57 +01:00
Niall Cooling
d34a510158 Moved private statics into unnamed namespace in cpp file to reduce coupling and uncessar in header 2021-03-03 17:07:05 +00:00
Niall Cooling
35aa4bb8d6 Refactored src/CMakelist to support C++14 and cleanup up redundant/incorrect -std= directives 2021-03-03 15:27:32 +00:00
Joaquim
ee6ce64571 Merge branch 'develop' of https://github.com/JF002/Pinetime into MultiFaceClock 2021-02-25 09:28:25 +00:00
Joaquim
8c53d0b70b Multi face support, analog clock, 12/24 config 2021-02-24 19:40:24 +00:00
JF002
8a48850afd
Merge pull request #211 from roblabla/fix-flashing
Flash correct file name
2021-02-24 20:05:47 +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
roblabla
9f6d1c6948 Flash correct file name 2021-02-19 19:44:51 +01:00
Jean-François Milants
f81ff98c30 Merge branch 'develop' of github.com:JF002/Pinetime into develop 2021-02-14 14:42:42 +01:00
Jean-François Milants
01e194426d Fix IRQ management in FreeRTOS to avoid crash and deadlock in BLE stack. 2021-02-14 14:42:30 +01:00
JF002
e62f8734be
Merge pull request #205 from nscooling/dirtyRefactor
refactored class DirtyValue
2021-02-14 14:37:26 +01:00
JF002
57ce58ff0d
Merge pull request #186 from petterhs/musicUI
music: Symbols for the buttons
2021-02-14 14:32:15 +01:00
Jean-François Milants
2922b26121 Remove debug variable. 2021-02-14 14:30:34 +01:00
JF002
0ad10a3817
Merge branch 'develop' into Hrs3300_SetGain_remove_warnings 2021-02-14 14:26:49 +01:00
JF002
97a1c4b3d7
Merge pull request #182 from petterhs/warnings
Fix build warnings coming from HR implementation
2021-02-14 14:25:38 +01:00
Jean-François Milants
5fdfb2112e Fix merge conflict. 2021-02-14 14:19:30 +01:00
JF002
4c3803450e
Merge pull request #161 from petterhs/calls
Call functionality with changed UUID for notification event characteristic
2021-02-14 12:03:49 +01:00
Niall Cooling
6c03c97005 eliminated warnings in Hrs3300 2021-02-12 17:36:56 +00:00
Niall Cooling
751ffab497 refactored class DirtyValue 2021-02-12 17:13:02 +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
petter
1e2cc3ce91 add vibration toggle 2021-02-07 13:31:02 +01:00
petter
7ab153cd76 refactor MotorController 2021-02-05 17:12:46 +01:00
petter
1bd5457848 trigger vibration from systemtask 2021-02-05 15:43:20 +01:00
Jean-François Milants
5016e0143f Increase FreeRTOS heap size and re-enable heart rate task. New Nimble probably uses more memory than before. 2021-02-03 20:28:41 +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
Jean-François Milants
740b3d7b58 Add new cmake option to disable the generation of DFU file (which needs adafruit-nrfutil on the build machine) : BUILD_DFU (disabled by default, enabled in docker build). 2021-02-01 21:07:53 +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
JF002
97807edd9d
Merge pull request #193 from Avamander/patch-5
Updated CMakeLists.txt to be more consistent
2021-01-31 20:51:02 +01: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
Avamander
4371b7fecc
Update CMakeLists.txt 2021-01-30 19:11:07 +02: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
petter
d4c31bcbbe add mute button and functionality for call notification + new button icons 2021-01-27 17:07:46 +01:00
petter
700af0b8a1 improve music UI with icons for play/pause/next/prev/ and volume 2021-01-27 13:49:56 +01:00
petter
7ea2cbff67 update font with icons for music, call and qr 2021-01-27 13:48:30 +01:00
petter
523398d24a update font with icons for music, call and qr 2021-01-27 13:42:04 +01: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
jlukanc
da56ca5bfb remove vibtimer from .h to fix nonstop vibration 2021-01-25 13:03:04 -05:00
petter
3dd88339f3 create motorcontroller in main and pass by reference 2021-01-25 12:45:04 -05:00
jlukanc
f27e632906 move app timer def 2021-01-25 12:44:58 -05:00
petter
169b861af1 fix build warnings in HR implementation 2021-01-25 14:53:44 +01:00
The King
8c3df5f021
Merge branch 'develop' into upstream-dev 2021-01-24 16:01:14 -05:00
Jean-François Milants
3d1881c5ab Revert invalid changes in Navigation.h and add missing changes in Notifications.h. 2021-01-24 17:27:48 +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
jlukanc
51c8cadcb7 fix merge issue 2021-01-23 16:13:58 -05:00
jlukanc
4cbcc99c8d fis merge conflict? 2021-01-23 16:12:06 -05:00
jlukanc
bf7d77bd34 remove unneeded defines 2021-01-23 15:15:42 -05:00
petter
6d76dbc911 change Notification Event base UUID 2021-01-21 23:36:17 +01:00
petter
2d90571f0d change Notification Event UUID 2021-01-21 23:15:34 +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
Niall Cooling
66a296d0f3 changed command MemoryDataAccessControl from 036 to 0x36 in St7789 class 2021-01-21 07:51:43 +00:00
JF002
be48f5275a
Merge pull request #168 from Panky-codes/fix-erratic-battery
Fix erratic battery
2021-01-20 20:41:55 +00: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
JF002
a0f2fa8469
Merge pull request #169 from JF002/heartRateSensor
Heart rate sensor
2021-01-20 20:11:56 +00:00
JF002
35d4f6d487
Merge pull request #171 from JF002/fix-lvgl-animation
Fix bug in animation management for lv_label
2021-01-20 20:09:59 +00:00
Jean-François Milants
ba03372f3b Music UUID must start with 00000000 instead of 00010000 (copy/paste error) 2021-01-19 21:38:53 +01:00
Jean-François Milants
ccbe2e8e1b Adapt the UUID of Music service according to new guidelines. 2021-01-19 21:27:44 +01:00
Jean-François Milants
39d9fc2053 Fix bug in animation management for lv_label 2021-01-17 18:25:22 +01:00
Jean-François Milants
68674cec53 Add heart rate BLE service. 2021-01-17 16:34:14 +01:00
Jean-François Milants
3a3a14115a Add License/copyright info in HR related files. 2021-01-17 16:33:45 +01:00
panky-codes
b31c0e7e45 Added more descriptive comments in doxygen format. 2021-01-17 11:06:24 +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
panky-codes
952021cdb6 Changed float to int in battery controller file. 2021-01-16 21:31:58 +01:00
panky-codes
8697a06642 Changed std accumulate to use int instead of a float. 2021-01-16 20:46:01 +01:00
panky-codes
271ca78be5 Converted all the other float usage to int. 2021-01-16 20:18:55 +01:00
panky-codes
e2d1f81915 Converted percent remaining calc to int. 2021-01-16 19:51:32 +01:00
panky-codes
11280d5f37 Adjusted the firmware to display percent instead of gfx. 2021-01-16 14:55:13 +01:00
jlukanc
b5992fd7ec add motor to notifs, fix tabs in motorcontroller.h 2021-01-15 22:49:37 -05:00
jlukanc
ce6c5d3bd3 add motorcontroller to cmake 2021-01-15 22:46:03 -05:00
jlukanc
fbb77baa3b add non-blocking motor controller 2021-01-15 22:11:53 -05:00
panky-codes
dece6c6bc8 Adapted the accumulate function to return float. 2021-01-14 22:11:17 +01:00
panky-codes
b8f943e73c Implemented a circular buffer and added an average alg for batter remaining percentage. 2021-01-14 21:22:36 +01:00
Jean-François Milants
c82c22650c HR Sensor : do not go to sleep when the HR app is running. 2021-01-10 22:02:21 +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
petter
10376cd81c fix MusicService UUID typo in comment 2021-01-08 15:35:43 +01:00
JF002
033a09db6d
Merge pull request #154 from jedmijares/twos-game
Adds 2048 clone game
2021-01-03 13:40:29 +00:00
Jean-François Milants
e0082f0ae3 Rename Pinetime in InfiniTime in sysinfo app. 2021-01-02 21:23:40 +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
Michael
1a6de3326f Add source code license and link to github to system app 2020-12-28 02:45:24 -05:00
ZephyrLabs
cc04c2c1f8 Update Paddle.cpp
blankline removal
2020-12-20 11:53:39 +05:30
ZephyrLabs
61e78d338b Update Paddle.cpp
fix uppercase
2020-12-20 09:32:00 +05:30
ZephyrLabs
020840e04f Update Paddle.h
fix uppercase
2020-12-20 09:28:51 +05:30
ZephyrLabs
b098d27d08 Update Paddle.cpp
tranparent paddle bug fix.
2020-12-20 09:23:31 +05:30
ZephyrLabs
ea4d2560cf Update Paddle.cpp
added changes from PR
2020-12-08 10:06:30 +05:30
ZephyrLabs
6b2dbafd6c Update Paddle.h
add changes from PR
2020-12-08 09:50:44 +05:30
ZephyrLabs
a701ef23d8 Update Symbols.h
change symbol to correct vale
2020-12-04 14:09:12 +05:30
ZephyrLabs
418d857308 Update Paddle.cpp
bugfix: add missing class
2020-12-03 20:59:22 +05:30
ZephyrLabs
ad1a99acac Update Paddle.h
bugfix: add missing class
2020-12-03 20:57:54 +05:30
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
253a86bb8c Update Apps.h
added Paddle app
2020-12-03 20:03:45 +05:30
ZephyrLabs
4f41d4d854 Update Paddle.cpp
create Paddle.cpp
2020-12-03 20:03:11 +05:30
ZephyrLabs
ed34096320 Update Paddle.h
created Paddle.h
2020-12-03 20:02:58 +05:30
ZephyrLabs
96346b9884 Update jetbrains_mono_bold_20.c
added paddle symbol in font
2020-12-03 20:02:35 +05:30
ZephyrLabs
29989b323e Update Readme.md
added range of paddle symbol
2020-12-03 20:02:08 +05:30
ZephyrLabs
251dddb0bf Update Symbols.h
added paddle symbol
2020-12-03 20:01:44 +05:30
ZephyrLabs
adfec51230 Update ApplicationList.cpp
added paddle app
2020-12-03 20:01:03 +05:30
ZephyrLabs
1d69c79942 Addition of new files in MakeList
added Paddle.cpp and Paddle.h
2020-12-03 19:46:36 +05:30
JF002
c6556bcdea
Merge pull request #136 from okaestne/include-cleanup
Includes cleanup
2020-12-01 21:44:44 +01:00
JF002
c87de415b2
Merge pull request #128 from AirHamster/cyrillic-font
Add Cyrillic symbols into jetbrains font
2020-12-01 21:39:44 +01:00
JF002
737a7e57ca
Merge pull request #124 from IoTPanic/patch-waketime-iotpanic
Reduced interval where the display shows the previous time on wake
2020-12-01 21:20:02 +01:00
Samuel Archibald
e180ec5f3a Jeez this is what I get for rushing 😬 2020-11-19 15:50:39 -05:00
Samuel Archibald
e18485c92b Whoops! Don't look at this XD 2020-11-19 15:47:27 -05:00
Samuel Archibald
681182d16a Readability and fix 2020-11-19 15:44:57 -05:00
JF002
fa4c0d5e3e
Merge pull request #125 from IoTPanic/patch-menubattery-iotpanic
Fixed battery percentage readout in the menu display
2020-11-19 19:49:05 +01:00
Samuel Archibald
3703611a60 Fixes #119! Improved based off suggested changes 2020-11-18 00:00:33 -05:00
okaestne
6e22509b5f
Delete Tab.cpp and Tab.h
as discussed with JF
2020-11-17 20:51:27 +01:00
JF002
b50e222e2e
Merge pull request #120 from ryanplusplus/transfert-typo
Fixed typo (Transfert -> Transfer)
2020-11-17 19:43:45 +01:00
Samuel Archibald
600dbb0280 Fix for comments on issue #125, bounds check removed 2020-11-16 09:43:32 -05:00
okaestne
f42b33ed6d
fix TWI includes 2020-11-16 01:35:51 +01:00
okaestne
cadc0c25d4
Include cleanup: displayapp + screens 2020-11-16 01:35:51 +01:00
okaestne
1516573df4
Include cleanup: components 2020-11-16 01:35:45 +01:00
okaestne
c3475b92fa
Include cleanup: drivers 2020-11-15 05:04:22 +01:00
Ryan Hartlage
a30282bdd5 Flash the correct file when running FLASH_pinetime-app with JLink 2020-11-14 19:23:16 -05:00
Ilia Zarubin
c25fd2e37f fonts: readme: add cyrillic symbols UTF-8 range 2020-11-07 23:44:22 +03:00
Ilia Zarubin
64408803be fonts: add cyrillic symbols in mono bold font
Just converted jetbrains and awesome fonts with additional cyrillic
symbols.
2020-11-07 23:43:20 +03:00
Samuel Archibald
c816d9b88e Fix to #119 2020-11-02 23:29:42 -05:00
Samuel Archibald
37c2768787 This is the actual fix, reducing the time between LCD is turned back on and the next task which will display the time is started. 2020-11-02 23:13:31 -05:00
Samuel Archibald
10c5260187 Fixed displaying last displayed time for ~100ms on wake 2020-11-02 21:14:28 -05:00
Ryan Hartlage
3ccfa1d924 Fixed typo (Transfert -> Transfer) 2020-11-01 15:44:06 -05:00
JF
29f8074fcb Refactoring of BLE service discovery : it is now implemented into the classes of the services. 2020-10-29 16:06:01 +01:00
JF
f90f2254f5 Reset BLE services on disconnect, do not start advertising if a connection is already established. 2020-10-28 18:23:09 +01:00
JF
7de43a1660 Fix conflicts 2020-10-27 21:55:18 +01:00
JF002
45e65b66b1
Merge pull request #111 from JF002/fix-twi-hang
Workaround for TWI driver freeze
2020-10-27 19:48:39 +01:00
JF
8a8c8aa863 Handle error code when calling TwiMaster::Read(). 2020-10-27 19:46:51 +01:00
JF
1bb2eb9dcd Disable sleep mode on the SPI NOR Flash when the version is unknown. This is because the current bootloader (which does not exposes its version) cannot initialize the chip when it's in sleep mode.
This feature will be re-enabled when the bootloader expses it's version.
2020-10-27 19:38:45 +01:00
JF
2f710d06f3 Workaround for bug https://github.com/JF002/Pinetime/issues/79 until a better fix is found.
When the driver is stuck in an infinite loop for more than ~2.5ms, the TWI device is re-init and the transaction is retried.

Read() and Write() return an error code.
2020-10-23 22:25:37 +02:00
Anton Fosselius
ab36c6cd24
Update main.cpp
changed "include Logging" to "include logging", now compiles with RTT ;)
2020-10-23 11:25:46 +02:00
JF
5983e33b8d Notifications : Replace the label "notificationNr/notificationNb" by a grey border on the bottom that is displayed when there are other notifications to available. 2020-10-22 15:39:20 +02:00
JF
07b6812f61 Notifications : Fix copy when the messages is spread across multiple os_mbuf. 2020-10-22 10:43:42 +02:00
JF
cabf1168d4 Notifications : Fix display of notification index/number. 2020-10-21 22:15:02 +02:00
JF
440ae412b9 Increase max size of notification message to 100 char.
Fix bug in message handling that would ignore the last character of the notification.
2020-10-21 17:31:56 +02:00
JF
ef5670c7e0 Integrate new notification UI with notifications coming from BLE 2020-10-20 20:57:39 +02:00
Enno Boland
8842259c7c fix build on linux
This commit fixes upper/lowercase issues in directory names that cause
the build to fail on case sensitive file systems like Linux uses.
2020-10-20 09:16:30 +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
JF002
3c5fd5ca8b
Merge pull request #93 from robertecurtin/master
Fix typo in SystemInfo app.
2020-10-18 17:50:20 +02:00
JF002
c655ec71f0
Merge pull request #99 from rafacouto/patch-1
Update SystemInfo.cpp - Show MAC bytes with left-zeroes
2020-10-18 17:46:22 +02:00
JF
28bc434419 [WIP] New notification app that uses software scrolling effect. 2020-10-18 17:35:36 +02:00
Avamander
4b0a852053 Made sure to use right data type for a negative number 2020-10-15 22:52:53 +03:00
Avamander
174e5ccfe4 Removed weird parentheses from constexpr 2020-10-15 22:51:43 +03:00
Avamander
128a2ea226 Changed #define to constexpr in Music.cpp 2020-10-15 22:50:28 +03:00
Avamander
6f45c0f669 Unified MusicStatus enum constant capitalization with others 2020-10-15 22:45:53 +03:00
Avamander
d4531d7bf3 Reordered the functions in Music.cpp correctly 2020-10-15 22:16:08 +03:00
Avamander
82126edf88 Added lv_img_set_src_arr that does better type checking when drawing images from arrays 2020-10-15 22:16:08 +03:00
Avamander
2b9906184b Refactored and improved the Music watchapp 2020-10-15 22:16:08 +03:00
Robert Curtin
2d5ddb88a7 Noticed this typo when booting my PineTime 2020-10-12 08:45:41 -04:00
Rafa Couto
efb7a973a1
Update SystemInfo.cpp
Show MAC bytes with left-zeroes
2020-10-12 05:12:31 +02:00
Avamander
fd110dabe8 Reformatted InfiniPaint again 2020-10-09 11:36:16 +03:00
Avamander
189c5a83b2 Made sure to unsuppress the diagnostic check after the infinite loop declaration 2020-10-09 11:36:16 +03:00
Avamander
f68c7b65b3 Minor formatting, diagnostic and documentation changes 2020-10-09 11:36:16 +03:00
JF002
b3ef816471
Merge pull request #83 from Avamander/patch-7
Removed an incomplete message() call from CMakeLists.txt
2020-10-08 21:03:39 +02:00
JF002
0a8d8953f7
Merge pull request #80 from Avamander/patch-1
Switched from NULL to nullptr
2020-10-08 20:58:24 +02:00
Avamander
cc3a9f3c79 Removed an incomplete message() call from CMakeLists.txt 2020-10-04 18:46:34 +03:00
Avamander
aba3d65e3a Merge remote-tracking branch 'origin-origin/patch-3'
# Conflicts:
#	src/systemtask/SystemTask.cpp
2020-10-04 16:23:13 +03:00
Avamander
77f4d5448b Fixed a small warning with Screen's constructor 2020-10-04 15:14:09 +03:00
Avamander
9b7ba7b5b8 Fixed a typo in SystemTask 2020-10-04 15:13:01 +03:00
Avamander
1d96758acd Minor #include improvements 2020-10-04 15:11:21 +03:00
Avamander
e85d1ffc62 Replaced NULL with nullptr 2020-10-04 15:09:17 +03:00
Avamander
13da1e38f0 Switched from NULL to nullptr 2020-10-04 14:53:11 +03:00
Avamander
6c86d1d9d7 Fixed all the includes that were broken due to the renames 2020-10-02 22:16:48 +03:00
Avamander
4daab26926 Renamed displayapp/Screens to displayapp/screens 2020-10-02 21:49:55 +03:00
Avamander
e3fb2f0b89 Renamed DisplayApp/ to displayapp/ 2020-10-02 21:46:41 +03:00
Avamander
30c261028e Renamed Logging/ to logging/ 2020-10-02 21:45:51 +03:00
Avamander
e25c4edbcf Renamed SystemTask/ to systemtask/ 2020-10-02 21:45:21 +03:00
Avamander
40a643d203 Renamed Components/ to components/ 2020-10-02 21:44:27 +03:00
Avamander
455d8319e4 Reformatted the CMakeLists for consistency 2020-10-02 21:43:30 +03:00
JF
f3728c41bb Add Immediate Alert Service, needed by the "Find Me" profile from BLE spec. 2020-09-27 20:59:06 +02:00
JF
5d3a974493 Add BatteryInformationService to expose the battery level to BLE host. 2020-09-27 20:02:47 +02:00
JF
6f92356873 Call SpiNorFlash::WakeUp() during initialization to ensure that the chip is not is sleep mode. 2020-09-20 14:31:26 +02:00
JF
d45cf23611 Rename Pinetime-JF -> InfiniTime 2020-09-20 11:09:50 +02:00
JF
20f5b0ffba Fix race conditions during sleep/wakeup, where SPI/TWI could be disabled while transaction were in progress (https://github.com/JF002/Pinetime/issues/60). 2020-09-13 21:26:44 +02:00
JF
d757344f1b Docker post build : generate post build script with versions from the CMake project. 2020-09-08 22:15:10 +02:00
JF
4e8e52bf6e Fix constness and set version to 0.8.1. 2020-09-02 21:36:13 +02:00
JF
1aa5b0a440 Fix firmware version reported by Device Information Service on BLE. It was previously hard-coded, it is now set by CMake accoridng to the project version.
Fix Manufacturer name, model number, sw revision according to https://wiki.pine64.org/index.php?title=Firmware_versioning_for_companion_apps.
2020-09-02 21:31:31 +02:00
JF
754918fda6 Fix bad formatting in SystemInfo. 2020-08-22 20:43:14 +02:00
JF
f7e40b1b58 Re-implement sleep/wakeup for touch panel, display, NOR Flash, SPI and TWI. 2020-08-22 17:59:59 +02:00
JF
ecbbeb6283 Fix Infinipaint that would crash when started. 2020-08-22 16:42:53 +02:00
JF
a664dec07f Add paint application. 2020-08-21 11:55:59 +02:00
JF
7d3af600bd Add TouchModes : in Gestures mode, only 1 event is processed for each touchevent. This allows to recognize gesture and handle them in Screens or in DisplayApp.
In Polling mode, X/Y positions are sent continuously to lvgl, allowing to scroll inside a dropdown menu for example.
2020-08-20 21:09:45 +02:00
JF
e6a1aff6ce Docker build : split build.sh into 2 scripts : build.sh that always exists and post_build.sh that is generated by cmake build.sh 2020-08-20 09:38:10 +02:00
JF
f197a3fe88 All output files (bin, hex, image, dfu) contain the version of the project in their filename.
Update Docker build script accordingly.
Also fix permission issue with docker build (all files belonged to root).
2020-08-19 21:52:46 +02:00
JF
1e1bb1c6b7 Build lvgl, nimble and nrf sdk as static libs. This allows to specify custom build param and to remove warnings from these libs.
This also speeds up the build of the whole project as those libs are now built once for the 3 targets.
2020-08-17 16:48:12 +02:00
JF
83f6d7d81b Fix most of the warnings. Remaining warnings come from nimble source code. 2020-08-17 16:31:00 +02:00
JF
41c36d3a42 Re-order apps in application menu on 2 pages.
Add firmware validation app.
2020-08-14 20:47:21 +02:00
JF
e6f5ab7b91 Merge develop and fix conflicts. 2020-08-14 19:54:43 +02:00
JF
6c678e872d Screens::Label is now a subclass of Screen. 2020-08-14 10:05:44 +02:00
JF
f5328ec9eb Refactor ScreenList to make it more generic : it can now contain any Screen type.
Integrate this new ScreenList in SystemInfo.

Add ApplicationList, which is a ScreenList of Tile. This allows to display a menu of more than 6 applications.
2020-08-14 09:46:37 +02:00
JF
bbfc20c3ff Add new screen that allows the user to manually validate the new firmware he's just OTA'ed.
Still need to find a way to display this screen when needed.
2020-08-11 17:50:00 +02:00
JF002
3f72af1030
Merge pull request #40 from piggz/music
Music
2020-07-25 15:03:29 +02:00
frederic lesur LESUR Frederic
a9f0459626 correct include header 2020-07-21 08:56:12 +09:00
frederic lesur LESUR Frederic
504c2b3d5c correct bad including of sdk files
(cherry picked from commit 8510e4436f6a2ac7b53fe8cb5010acb840c743b8)
2020-07-21 08:47:19 +09:00
Adam Pigg
5713eac104 Fully implement music app and service
SystemTask can return a reference to the nimbleController
The nimbleController can return a reference to the musicService
The musicService get a connection handle from the nimbleController
The musicApp communicated directly with the musicService
2020-07-20 21:28:21 +01:00
JF
6af5bbcbc8 New implementation of the I²C/TWI driver.
Fix reset timing and add dummy reading in Cst816S to fix init error on some devices.
2020-07-19 20:30:44 +02:00
Adam Pigg
686e826f4e Rework characteristic handling 2020-07-15 10:02:01 +01:00
Adam Pigg
306aa25aad Initial code for music app screena and service 2020-07-13 12:40:39 +01:00
Adam Pigg
789e06fdb7 Merge branch 'develop' of https://github.com/JF002/Pinetime into music 2020-07-11 21:41:20 +01:00
Adam Pigg
7a1e6e6e5b Add start of music appliction 2020-07-11 21:37:28 +01:00
JF
6309719a62 Set version to 0.7.0 2020-07-11 20:53:04 +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
62de76ba99 Automatically switch the display on when receiving a notification 2020-07-04 18:10:30 +02:00
JF
4abbd7d0cf Add doc : how to add new symbols. 2020-07-04 14:14:31 +02:00
JF
da39f402e5 Replace bitmap icons by font icons (provided by AwesomeFont and LVGL). These icons are smaller in memory and quicker to draw.
BLE and battery icon replaced in Clock screen.
Added heartbeat and step icons in Clock screen.
Replace all labels in Menu by icons.

Add doc to generate new font.
2020-07-04 13:58:15 +02:00
JF
bb11891b6e Remove custom styles in Screens and define default style and "Big style" in LittleVgl during the initialization of LVGL. 2020-07-03 21:37:40 +02:00
JF
ca549bcfd8 Add doc about memory usage analysis. 2020-07-03 14:45:01 +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
89e7033830 Fix buffer overflow opportunities in AlertNotificationService & AlertNotificationClient. 2020-06-28 11:59:14 +02:00
JF
4f9adb2372 Re-enable watchdog 2020-06-27 16:11:42 +02:00
JF
f8ffb405a2 Merge branch 'nimble_1_3_0' into develop 2020-06-27 16:10:17 +02:00
JF002
e86991284f
Merge pull request #37 from darnel/fix-include
Fix #include to relative paths
2020-06-20 16:36:36 +02:00
JF
3dfba0b90d Update BLE status when BLE is connected. 2020-06-19 22:20:12 +02:00
JF
b8f9d70667 Use PRIMASK instead of BASEPRI for critical sections in FreeRTOS. This is needed by NimBLE to be able to mask radio interrupt (which has priority 0). 2020-06-19 22:11:21 +02:00
JF
238cda0b90 Apply fix for errata 87 (FPU issue). 2020-06-19 22:10:30 +02:00
JF
a0b5cbbc1c Disable all logging 2020-06-19 22:10:01 +02:00
Vojtěch Jirkovský
34fd4c5cf3 Fix link error because of missing file "nrf_common.ld" 2020-06-17 23:32:56 +02:00
Vojtěch Jirkovský
064e77f05a Fix #include to relative paths 2020-06-17 09:04:15 +02:00
JF
73e6cbde79 Fix builds that do not specify CMAKE_BUILD_TYPE during CMake generation. Apply Release by default. 2020-06-16 21:02:03 +02:00
JF
f133d1e9ea Fix #include that were pointing to my own FS instead of relative paths to the SDK. 2020-06-16 20:44:11 +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
fab220d0b9 Fix idle timer bug that would prevent the screen from waking up. 2020-06-13 17:33:49 +02:00
JF
47851fb3b4 Display BLE MAC address in sysinfo Screen. 2020-06-08 21:51:34 +02:00
JF
9115c49bba Fix reset reason (it returns the actual reset reason instead of hard coded 'hard reset' value). 2020-06-07 20:31:13 +02:00
JF
421af9625b Add build date and time in sysinfo screen. 2020-06-07 20:16:39 +02:00
JF
81a0ad73d9 Set idle timeout to 15s before going to sleep. 2020-06-07 20:05:04 +02:00
JF
e22c0609b5 Add uptime counter in DateTimeController and display it in SystemInfo screen. 2020-06-07 20:04:43 +02:00
JF
dbdb26ae1f DfuService : fix Magic number : incorrect values were written in memory. 2020-06-07 14:10:17 +02:00
JF
46b8bf9fc1 Add new target (pinetime-graphics) that flash the bootloader logo into the spi flash memory. 2020-06-06 19:28:01 +02:00
JF
e7723598a6 Automatically go to sleep after 5 sec of inactivity.
Advertise for  3 minutes at startup and on wake-up. Disable automatic continuous StartAdvertising.
2020-06-01 20:40:11 +02:00
JF
de822cc3a2 Encapsulate DFU Image buffering and writing into spi flash in DfuImage.
Add some const in SPI driver.
2020-06-01 18:32:46 +02:00
JF
f6aa41c214 Encapsulate notification send (sync/async) into DfuService::NotificationManager; 2020-06-01 17:35:28 +02:00
JF
07f74cee63 DFU : add timeout detection : abort dfu procedure after 10s without any data from the host. 2020-06-01 16:30:24 +02:00
JF
dca559aad5 Improve DFU procedure :
- correctly write all bytes to flash
 - check CRC
 - Fix bug in notification : they cannot be sent from the control point handler (because it seems you cannot send a notification and a write acknowledge at the same time) using a timer (quick'n'dirty implementation to be improved)
 - Improve dfu screen
 - Reset if dfu image is correctly copied into flash and crc is ok.
2020-06-01 09:22:54 +02:00
JF
4717cf0a1d Add driver for writing into the internal flash.
Write the OK flag for mcuboot using this driver.
2020-05-24 20:30:06 +02:00
JF
4154dae01a Fix race condition in SpiMaster.cpp. 2020-05-24 17:46:43 +02:00
JF
073717980f Merge develop 2020-05-24 16:51:50 +02:00
JF
331481cd0c Refactor CMake files to allow building 2 binaries : one standalone and one compatible with mcuboot bootloader (the offset in memory is different).
Add documentation about mcuboot image generation and OTA.

Re-enable watchdog
2020-05-24 16:36:04 +02:00
JF
3cc76d7673 Working demo of OTA using MCUBoot https://github.com/lupyuen/pinetime-rust-mynewt/releases/tag/v4.1.4 2020-05-24 09:15:59 +02:00
JF
ce32863693 Fix offset issues in OTA procedure.
CRC verification : work in progress (not fully working for now).
2020-05-20 18:39:25 +02:00
JF
be1ad9b070 Disable logging once again... 2020-05-17 10:25:42 +02:00
JF
79131f4fe3 Improve SPI driver (use a mutex to prevent race conditions). 2020-05-17 09:35:01 +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
JF
d6c6ac4cf5 Remove reference to NRF Softdevice in CMake and documentation.
Update documentation.
Remove Asserts when starting advertising to prevent crash (known bug).
Set version 0.5.0.
2020-05-16 16:13:22 +02:00
JF
56fba1c242 Merge branch 'nimble' of git.proxmox3:JF/PineTime into nimble 2020-05-16 15:30:54 +02:00
JF
ee05577dd6 Fix race conditions on SPI and integrate the SPI NOR Flash driver into DFUService (WIP) 2020-05-11 18:50:37 +02:00
Adam Pigg
ca0ef77368 TODO is done 2020-05-07 20:06:50 +01:00
JF
0b8e6c3fa2 Add SPI NOR Flash driver, WIP. 2020-05-07 19:53:51 +02:00
Adam Pigg
b4e82dd11f Add support for reading the current time 2020-05-05 20:58:15 +01:00
Adam Pigg
206bdbf5eb Move PinetimeService to CurrentTimeService witha view to implement CTS
for time handling
2020-05-05 20:58:15 +01:00
Adam Pigg
d33be52bc9 Run the alert notification service and simplify trhe pinetime service
initialization
2020-05-05 20:58:15 +01:00
Adam Pigg
49a9a93cef Add a very basic alert nofification service 2020-05-05 20:58:15 +01:00
Adam Pigg
b760b3f98c Add a simple service to allow setting the time from a controlling
application
2020-05-05 20:58:15 +01:00
JF
f96c048deb Read and log info from Start and Ini packets. 2020-05-03 15:48:42 +02:00