Commit graph

596 commits

Author SHA1 Message Date
Jonathan Vander Mey 4217a8cb65 Make MusicService UUID objects static constexpr 2021-07-02 17:47:14 +02:00
Jonathan Vander Mey e28516002b Eliminate reinterpret_casting 2021-07-02 17:47:14 +02:00
Bryton Hall 4e435e93e0
and metronome icon (#439)
* add drum icon for metronome app
2021-07-02 17:34:32 +02:00
Riku Isokoski 38f40034b0
Float voltage to int (#444)
* Change voltage float to millivolt integer
* Explain the ADC to milliVolts conversion
2021-07-02 17:30:32 +02:00
Riku Isokoski 7075b7f264 Fix call notification button alignment 2021-07-02 17:20:58 +02:00
Avamander bdb5965f1a static_cast cleanup 2021-07-02 16:27:41 +02:00
Avamander 2f479e5fc7 Fixed a bunch of format specifiers 2021-07-02 16:27:16 +02:00
Kieran Cawthray 2edf41be8e Fix bad merge 2021-06-29 21:15:39 +02:00
Kieran Cawthray 9bd180896e Replace font file 2021-06-29 21:12:39 +02:00
Kieran Cawthray 4f21748aa2 Merge remote-tracking branch 'upstream/develop' into pinetimestyle-colorpicker 2021-06-29 21:10:36 +02: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
Kieran Cawthray 660a8597f6 Add reset button, reduce button opacity 2021-06-27 15:24:17 +02:00
Neil O'Fix 0045fb16b6
SPI flash sleep if bootloader >= 1.0.0 (#322)
* Retrieve and display bootloader version
- Display bootloader version on System Info screen
- Enable SPI flash sleep mode if bootloader version >= 1.0.0
* Wait for SPI flash to wakeup before starting OTA DFU
2021-06-26 20:53:32 +02:00
Kieran Cawthray 6889cf1ed8 Fix the fix, whoops 2021-06-25 21:55:51 +02:00
Kieran Cawthray 800daecf90 Add a check to set default colors if all colors are white 2021-06-25 21:36:55 +02:00
Kieran Cawthray f3b40cb7a6 Make it loop around when you get to the end of the list of colors 2021-06-25 19:04:29 +02:00
Kieran Cawthray be22a9b1b8 Fix off-by-one error, reduce step gauge needle width 2021-06-25 15:09:18 +02:00
Kieran Cawthray 878dd1a776 Use colors from settings for PineTimeStyle watchface 2021-06-25 14:58:45 +02:00
Kieran Cawthray 50b92e5dd6 Move array to member variable, retrieve colors from settings for display 2021-06-25 14:47:56 +02:00
Kieran Cawthray d5d8438b60 Merge remote-tracking branch 'upstream/develop' into pinetimestyle-colorpicker 2021-06-25 08:48:16 +02:00
Kieran Cawthray 8f16574992 PineTimeStyle color picker tidying 2021-06-24 21:51:23 +02:00
Kieran Cawthray 7edfc53481 PineTimeStyle color picker add settings integration 2021-06-24 21:49:04 +02:00
Kieran Cawthray 38ab0add48 PineTimeStyle color picker initial commit 2021-06-24 19:15:23 +02:00
Kieran Cawthray 14721e8f1e Move static needle_colors array to member variable 2021-06-23 22:14:34 +02:00
Kieran Cawthray c3f854ba65 Add font source file 2021-06-22 21:32:27 +02:00
Florian 883700fca1
update main font to keep diffs for future changes small (#420)
* update font with jetbrains mono v2.225 and the current converter
* added the tff file for JetBrains Mono to ensure everybody is using the same version

Co-authored-by: Florian <florian@florian-thinkpad.local>
2021-06-22 20:56:49 +02:00
Jonathan Vander Mey ef999e8dd3
Fix typo in variable names (#430) 2021-06-22 20:34:46 +02:00
Avamander 572be3e857
Removed an illogical comparison from SystemInfo and St7789 driver (#449)
* Removed an illogical comparison
2021-06-22 20:31:31 +02:00
Kieran Cawthray be505fc15f Set step gauge outer to be white when step goal is reached 2021-06-21 20:06:47 +02:00
Kieran Cawthray 266573deff Enable 12/24h functionality 2021-06-20 21:57:28 +02:00
Kieran Cawthray 607af27ba8 Add step count gauge - replaces heartrate in sidebar 2021-06-20 21:53:09 +02:00
Kieran Cawthray b130ffa39c Merge remote-tracking branch 'upstream/develop' into pinetimestyle 2021-06-20 21:46:51 +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
hassless 84a6c88e98
Merge branch 'JF002:develop' into improve-battery-percentage-to-battery-icon-mapping 2021-06-18 17:17:26 +02:00
Kieran Cawthray f5d756928f Merge remote-tracking branch 'upstream/develop' into pinetimestyle 2021-06-16 16:33:34 +02:00
Jonathan Vander Mey e90e8c7426 Fix signed/unsigned comparison warning
Changed type of encodedBufferIndex to size_t to eliminate warning. It is
fine as a size_t as its only ever compared to another size_t and used as
an array index.
2021-06-12 20:04:19 +02:00
Jonathan Vander Mey 006771699f Remove infinitime-nb.c from source list
Was causing compiler warning for unused constant variable when being
compiled. This feel is directly included where it's needed so it doesn't
need to be separately compiled anyways.
2021-06-12 20:04:19 +02:00
Jean-François Milants dbc2d23405 Add Init() in DummyuLittleVgl to fix recovery firmware 2021-06-12 18:00:42 +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
JF002 58a8507b3d
Merge pull request #405 from Riksu9000/improve_stopwatch
Improve stopwatch
2021-06-12 14:27:51 +02:00
Jean-François Milants d7962617e4 Clock : initialize the actual clockface in initialization list instead of in the core of the ctro(). 2021-06-12 14:21:29 +02:00
JF002 17c6583937
Merge pull request #425 from Raupinger/remove-watch-tap
Remove tap to switch Watchfaces
2021-06-12 14:15:32 +02:00
JF002 a1b3537e9e
Merge pull request #359 from Avamander/patch-2
Used a macro for UUID generation, switched from C-style casts to reinterpret_cast, renamed callback
2021-06-12 13:18:12 +02:00
Avamander 314a8ebba0
Changed the namespace of SystemInfo::sortById to avoid a name conflict (#360) 2021-06-12 11:18:19 +02:00
Riku Isokoski bf906bd573
Fix scrollbar (#382) 2021-06-12 11:12:39 +02:00
Jonathan Vander Mey 4d1626e3b6
Fix fallthrough on case statement (#403) 2021-06-12 11:07:23 +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 239b5547ea Fix another regression 2021-06-11 14:55:37 +03: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
Florian 049174bd35 replace ScreenList with a single screen in Clock. This removes the tap to switch feature 2021-06-11 01:15:32 +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
hassless d0df278b0b
Update BatteryIcon.cpp
Improvement to the mapping of battery percentage to the battery icon to be displayed.
2021-06-09 13:47:22 +02:00
Jean-François Milants ff00873f97 Fix build for recovery firmware. 2021-06-06 20:20:55 +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
Kieran Cawthray f2d01166c3 Merge remote-tracking branch 'upstream/develop' into pinetimestyle 2021-06-04 08:57:40 +02:00
JF002 79f0fcb07a
Add the maximum memory used by LVGL in SystemInfo app. This will help the developers to size the memory buffer allocated to lvgl. (#408) 2021-06-01 21:03:29 +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
JF002 c0b0f8cb73
Remove debug defines (DEBUG & DEBUG_NRF_USER) from the build. These debug can be useful for debugging purposes but not in production (release). (#400)
This reduces the size of the binary by about 6KB!
This also removes filepath that were embedded into the binary (.bin) file.
2021-06-01 21:02:15 +02:00
JF002 287399f993
Navigation app: reduce memory usage (#362)
* Navigation app:
 - Renaming and reformatting according to coding conventions
 - declare iconMap as constexpr and use char* instead of std::string

This reduces the flash usage from 424644B to 419344B (-5300B)!
2021-06-01 21:01:32 +02:00
Riku Isokoski c6969268fc Keep button visible, but disabled 2021-05-26 16:13:40 +03:00
Riku Isokoski b393105082 improve ui and optimize code 2021-05-26 15:15:10 +03:00
Kieran Cawthray 565601ef50 Merge remote-tracking branch 'upstream/develop' into pinetimestyle 2021-05-21 14:34:25 +02:00
Jean-François Milants f88c0f41fa Fix recovery DisplayApp. 2021-05-21 11:56:50 +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 8c3b250dbf
removed an empty assignment that caused a compiler warning (#372) 2021-05-20 20:34:21 +02:00
Kieran Cawthray 5c413016a7 Move GPL license header 2021-05-19 17:27:42 +02:00
Kieran Cawthray 249b6db6f5 Remove newline modifications 2021-05-19 17:05:33 +02:00
Kieran Cawthray 5daaa5cf75 Tidying/formatting fixes 2021-05-19 11:03:33 +02:00
Kieran Cawthray 108bbc3642 Fix it again.. 2021-05-18 18:03:26 +02:00
Kieran Cawthray 6a92529272 Revert "Reset"
This reverts commit 378fa6b401.
2021-05-18 17:45:16 +02:00
Kieran Cawthray a4968b5029 PineTimeStyle 2021-05-18 15:33:25 +02:00
Kieran Cawthray 378fa6b401 Reset 2021-05-18 15:33:25 +02:00
Jean-François Milants 9ab298c09e Fix wrong initialization of 'pinPowerPresent' pin that would prevent the touchpanel from working correctly when the device boots while connected to the charger. 2021-05-17 09:52:31 +02:00
Avamander 8568b5f31b Updated license header year 2021-05-17 02:16:50 +03:00
Avamander f6f28a95f6 Used a macro for UUID generation, switched from C-style casts to reinterpret_cast, renamed callback 2021-05-17 02:08:12 +03:00
David Ventura 9342d62a44
Emit event on power-present toggle (#320)
* Emit event on power-present toggle

* clang-format on changes

* also update battery status on any event

* update comments; remove double battery update

* Fix formatting

* Vibrate shortly on charging event

* debounce charge event
2021-05-16 21:13:22 +02:00
JF002 5b2472c4bc
Merge pull request #347 from jedi2light/feature-show-git-commit-hash-short
Feature: Store and show git short ref on PineTime alongside other firmware information
2021-05-16 11:37:39 +02:00
Florian Kraupa 2627ef760e better handling of long notification titles 2021-05-16 00:16:33 +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
Stoian Minaiev a4de61e1f5 git: show git short ref hash on SystemInfo(first screen) and FirmwareValidation screen alongside other information 2021-05-14 01:09:40 +03:00
Stoian Minaiev e04c8ee95e git: store git short ref hash on build stage to Version.h 2021-05-14 01:08:37 +03:00
Stoian Minaiev 9a8824c35a
SystemInfo app screen
First screen. Let the build date and build time string be centered as well as the others
2021-05-10 15:13:33 +03:00
Martin Ashby 3a938236d4
Fix a possible double free in StopWatch::Refresh.
The lv_obj_del is called on btnStopLap  when transitioning to the
initial state, however the variable isn't then set to null. A subsequent
call to Refresh would attempt to delete the already freed object. This
could be triggered by stopping the stop watch, then pressing the
physical button on the watch.

Fixes https://github.com/JF002/InfiniTime/issues/315
2021-05-03 08:11:58 +01:00
JF002 e3ead332b9
Merge pull request #319 from DavidVentura/use-byte-for-ppg
Use int8_t for PPG data array
2021-05-02 14:55:43 +02:00
JF002 65e4fe0310
Merge pull request #314 from eivindm/improved_heartbeat_in_watchface
Improve design of heartbeat data in digital watchface
2021-05-02 14:41:19 +02:00
Eivind Mork 3355afbbd1 Show heartbeat icon in watchface in gray if data is missing 2021-05-02 12:30:33 +02:00
JF002 9f15fd1820
Merge pull request #301 from petterhs/vib
Short vibration when enabling it in quick settings menu
2021-05-02 11:58:48 +02:00
petter 6e1726d1d0 short vibration when enabling it 2021-05-02 11:48:05 +02:00
JF002 d141888b82
Merge pull request #275 from panos/navigation-text
Changed text in Navigation
2021-05-02 11:45:08 +02:00
JF002 9af0eb04c2
Merge pull request #318 from Kozova1/TypoFix
Fix typo in src/displayapp/fonts/README.md
2021-05-02 11:43:35 +02:00
JF002 cd902e3670
Merge pull request #308 from joaquimorg/LVGL-Update
Update LVGL
2021-05-02 11:41:45 +02:00