Compare commits

...

112 commits

Author SHA1 Message Date
Eve1374 5c94702160
Merge de119b569e into 8598142c27 2024-10-16 16:08:54 +00:00
Eve C de119b569e merged from main, fixed WatchFaceCasio after merge mess, fix my Infineat modifications according to new alarmcontroller 2024-10-16 18:08:41 +02:00
Eve C c71d64393b merge from main 2024-10-16 17:41:26 +02:00
Eve C 6f9df084d9 Merge branch 'main' of github.com:InfiniTimeOrg/InfiniTime 2024-10-16 17:38:14 +02:00
Eve C cdf86dab6a Merge branch 'alarm-status-on-infineat' of github.com:Eve1374/InfiniTime into alarm-status-on-infineat 2024-10-16 17:32:56 +02:00
Eve C e16c8f8bab correcitons 2024-10-16 17:01:53 +02:00
NeroBurner 8598142c27
Remove unused submodule QCBOR (#2138)
Some checks failed
CI / build-firmware (push) Successful in 5m57s
CI / build-simulator (push) Failing after 3s
CI / get-base-ref-size (push) Has been skipped
CI / Compare build size (push) Has been skipped
The submodule isn't used anymore. Remove the submodule reference
completely.
2024-10-09 20:26:08 +02:00
Eve C 39241889be corrections 2024-10-02 15:39:45 +02:00
Eve C e2ca5393a6 corrections 2024-10-02 15:35:10 +02:00
Eve C a18190e37f corrections 2024-10-02 15:09:19 +02:00
Eve C 9ff835bb89 corrections 2024-10-02 15:06:20 +02:00
Eve C b7b68f6362 merge ?? 2024-10-02 12:28:03 +02:00
Eve1374 66278426e7
Merge branch 'main' into alarm-status-on-infineat 2024-09-03 11:30:58 +02:00
Eve C e940593803 Merge branch 'main' of github.com:InfiniTimeOrg/InfiniTime
Your branch and 'github_orig/main' have diverged,
 and have 3 and 21 different commits each, respectively.
 Changes to be committed:
	modified:   README.md
2024-08-26 11:21:48 +02:00
Eve C b7263ed795 start to add timer info on WatchFaceMeow 2024-07-25 17:27:10 +02:00
Eve C 5e19e042c0 new file: doc/lvgl_align.png add ref for alignment names in lvgl
modified:   src/displayapp/apps/CMakeLists.txt uncomment wome watchfaces
	modified:   src/displayapp/screens/WatchFaceCasioStyleG7710.cpp add alarm, overlaps with heartbeat
	modified:   src/displayapp/screens/WatchFaceCasioStyleG7710.h
	new file:   todo.log
2024-07-16 08:36:01 +02:00
Eve C 6ce316dc06 hide alarm depending on option status 2024-07-15 16:39:17 +02:00
Eve C 59f9a5eaff Changes to be committed:
modified:   src/displayapp/screens/Calendar.cpp
	modified:   src/libs/lv_conf.h
week start on monday with LV_CALENDAR_WEEK_STARTS_MONDAY
 Changes not staged for commit:
	modified:   src/libs/lvgl (modified content)
2024-07-10 17:20:52 +02:00
Eve C 2a762f62ad On branch my-custom-infinitime
modified:   package-lock.json : ???
	modified:   package.json : ???
	modified:   src/displayapp/screens/AlarmIcon.cpp : put bell /
not bell in this file to keep infineat as in the PR I submit
	modified:   src/displayapp/screens/WatchFaceMeow.cpp : don't
refer to alarmIcon.cpp to change the icon, instead do it in this file
directly to have different icons
	modified:   src/libs/QCBOR  : reverted to match original repo's
version (git submodule status : compare commit id in this repo and a
freshly cloned repo)
	modified:   src/libs/arduinoFFT : reverted
	modified:   src/libs/littlefs : reverted
2024-07-10 11:48:09 +02:00
Eve C e4d6014d88 updated WatchFaceMeow to match alignment, settings, AMPM compatibility of Infineat. also files that seemed to have been modified by submodules update. 2024-07-10 10:34:37 +02:00
Eve C 164a21218f faire en sorte que watchfacemeow et watchface infineat soient compatibles, en cours 2024-07-09 12:05:06 +02:00
Eve C 8ed1d22a48 Merge branch 'main' into my-custom-infinitime
Conflicts:
	.gitignore
	README.md
somehow when I compile it adds a nodemodules folder, that is not in the
original (from Infinitime) .gitignore file. So I added it.
I also modified the readme to list the branches in this project and my
modifications.

These are the changes from main that I didn't have yet in this branch
 Changes to be committed:
	modified:   README.md
	new file:   doc/ui/infineat_settings.png
	modified:   src/components/ble/SimpleWeatherService.cpp
	modified:   src/components/ble/SimpleWeatherService.h
	modified:   src/components/datetime/DateTimeController.cpp
	modified:   src/components/datetime/DateTimeController.h
	new file:   src/components/datetime/TODO.md
	modified:   src/displayapp/DisplayApp.cpp
	modified:   src/displayapp/screens/WatchFaceAnalog.h
	modified:   src/drivers/Bma421.cpp
	modified:   src/drivers/St7789.cpp
	modified:   src/drivers/St7789.h
	modified:   src/systemtask/SystemTask.cpp
2024-07-08 17:12:29 +02:00
Eve C f42ef49a40 Merge branch 'testcalendar' into my-custom-infinitime
Conflicts:
	src/displayapp/apps/CMakeLists.txt
	src/displayapp/fonts/fonts.json
	src/displayapp/screens/Symbols.h

 On branch my-custom-infinitime
 All conflicts fixed but you are still merging.
 Changes to be committed:
	modified:   src/CMakeLists.txt
	modified:   src/displayapp/DisplayApp.cpp
	modified:   src/displayapp/InfiniTimeTheme.h
	modified:   src/displayapp/apps/Apps.h.in
	modified:   src/displayapp/apps/CMakeLists.txt
	modified:   src/displayapp/fonts/fonts.json
	new file:   src/displayapp/screens/Calendar.cpp
	new file:   src/displayapp/screens/Calendar.h
	modified:   src/displayapp/screens/Symbols.h
merge conflicts were mainly symbols, so I gathered the most complete
list of symbols from the merge conflict
2024-07-08 17:05:53 +02:00
Eve C d78e60329e sync with main from infinitime 2024-06-26 17:49:42 +02:00
Eve C 3133adaba9 remove apps and wf from cmake 2024-05-30 17:12:03 +02:00
Eve C 3f214a2f84 cleaned CMAKELISTS 2024-05-30 16:22:49 +02:00
Eve C 6602a1d7c0 update fonts with calendar symbols, rebase failed 2024-05-30 16:08:27 +02:00
Eve C acbcd531b5 cat as battery icon : modified the lines of infineat and position of picture 2024-05-30 15:54:40 +02:00
ecarlett e2056f6420 revert meow to pine icon, rework on cat later 2024-05-30 15:54:40 +02:00
ecarlett 5d261f579d modified the battery icon in Meow to be a cat face. add pictures accordingly. doesnt work on pt 2024-05-30 15:54:40 +02:00
ecarlett f7333c66bd copied a memo I made with files to modify when ADDING a watchface. may be incomplete.. 2024-05-30 15:54:40 +02:00
ecarlett 9437a8d125 now there is my watchface in pink and stuff adn the Infineat watchface with alarm status but the icons are not the same as on branch alarm-on-infineat 2024-05-30 15:54:40 +02:00
ecarlett 5dfdec4ee2 fixing mess again after merge mess 2024-05-30 15:54:40 +02:00
ecarlett 7bab4a66aa fix Apps.h.in and src/components/settings/Settings.h after merge mess 2024-05-30 15:54:40 +02:00
ecarlett 055b9a93c4 fix AlarmIcon.cpp and WatchFaceInfineat.cpp after merge mess 2024-05-30 15:54:40 +02:00
ecarlett e8b1b94507 fix src/displayapp/screens/settings/SettingWatchFace.h after merge mess 2024-05-30 15:54:40 +02:00
ecarlett dbc1dcfbdf fix src/displayapp/UserApps.h
after merge mess
2024-05-30 15:54:40 +02:00
Eve C d1c00370d1 combiner calendar et meow 2024-05-30 15:54:21 +02:00
ecarlett 99d223b4d1 fix src/CMakeLists.txt after merge mess 2024-05-30 15:53:52 +02:00
ecarlett ad19b9e798 fix src/displayapp/apps/CMakeLists.txt after merge mess 2024-05-30 15:53:52 +02:00
ecarlett bbbc9d9910 now I have the Meow Watchface AND the Infineat Watchface with alarm display
interactive rebase in progress; onto b7a353cf
 Last commands done (3 commands done):
    pick 9d04c32f recovering manually changes to original Infineat
    pick 70f9025f now I have the Meow Watchface AND the Infineat Watchface with alarm display
 No commands remaining.
 You are currently rebasing branch 'my-custom-infinitime' on 'b7a353cf'.

 Changes to be committed:
	modified:   src/components/settings/Settings.h
2024-05-30 15:53:52 +02:00
ecarlett 6cb3b6060e test combiner tout 2024-05-30 15:53:47 +02:00
ecarlett ee99e554f0 copy :( files from gitlab repo
interactive rebase in progress; onto b7a353cf
 Last command done (1 command done):
    pick 504f5774 copy :( files from gitlab repo
 Next commands to do (2 remaining commands):
    pick 9d04c32f recovering manually changes to original Infineat
    pick 70f9025f now I have the Meow Watchface AND the Infineat Watchface with alarm display
 You are currently rebasing branch 'my-custom-infinitime' on 'b7a353cf'.

 Changes to be committed:
	modified:   src/CMakeLists.txt
	modified:   src/displayapp/apps/Apps.h.in
	modified:   src/displayapp/apps/CMakeLists.txt
	modified:   src/displayapp/screens/Symbols.h
2024-05-30 15:53:04 +02:00
ecarlett ad5a472b4b modified: .gitignore 2024-05-30 15:51:20 +02:00
ecarlett 8929563950 test 2024-05-30 15:51:20 +02:00
ecarlett d6a6bda6ba start cat icon 2024-05-30 15:51:20 +02:00
ecarlett ecea195533 Add pictures in readme 2024-05-30 15:51:20 +02:00
ecarlett 55866d4470 InfiniTime firmware for pinetime with a new watchface. Note that some other watchfaces are disabled from compilation to save memory space, in case. The WatchFaceMeow, named Meow in the interface, displays the status of the alarm on the screen 2024-05-30 15:51:20 +02:00
ecarlett 91fb716ea3 c'est mieux aligné 2024-05-30 15:51:20 +02:00
Eve C 6494faa249 try to rebase scottcalendar into this testbranch 2024-05-30 15:50:41 +02:00
ecarlett 5cd1bcf460 add WatchFaceInfineatColors that has different color sets than infineat 2024-05-30 15:48:38 +02:00
ecarlett b588241207 compile sans avoir modifié de code ok 2024-05-30 15:48:38 +02:00
ecarlett e8a1b12e17 fixed that label ampm stays shown when alarm status is hidden 2024-05-30 15:48:38 +02:00
ecarlett 194b061e19 update settings of watchfaceInifineat with alarm settings so it looks better 2024-05-30 15:48:38 +02:00
ecarlett 8ca3888540 AMPM for alarm seems to work - but overloads the screen, of course. check tomorrow all cases 2024-05-30 15:48:38 +02:00
ecarlett f366354e28 fixed alarm status reappearing when alarm changed, even if not set to be displayed. TODO : clean comments related to this, and add am/pm format for alarm 2024-05-30 15:48:38 +02:00
ecarlett feb7631f45 added option to show or hide alarm status 2024-05-30 15:48:38 +02:00
ecarlett b55c9d256c initial commit, with already alarm added. TODO : add possibility to disable alarm status, and make it work on 12hrs format
pick 0dcfb2ed Fix erratum 58 workaround
    pick 1162fdbf initial commit, with already alarm added. TODO : add possibility to disable alarm status, and make it work on 12hrs format
 Next commands to do (30 remaining commands):
    pick ab901b89 added option to show or hide alarm status
    pick 1af813a2 fixed alarm status reappearing when alarm changed, even if not set to be displayed. TODO : clean comments related to this, and add am/pm format for alarm
 You are currently rebasing branch 'testcalendar' on '577dfd5b'.
2024-05-30 15:47:49 +02:00
mark9064 1246d77781 Fix erratum 58 workaround 2024-05-30 15:45:33 +02:00
mark9064 5c93cbd552 Include task header (Fixes sim) 2024-05-30 15:45:33 +02:00
mark9064 b8fe20b71a Move includes back 2024-05-30 15:45:33 +02:00
mark9064 32dfaa82d6 Apply display driver datasheet delays 2024-05-30 15:45:33 +02:00
mark9064 cad3de46b0 Use FreeRTOS delay instead of spinning the CPU 2024-05-30 15:45:33 +02:00
mark9064 7c8e5c2144 Rename to pre-transaction hook 2024-05-30 15:45:33 +02:00
mark9064 7e8a4d32ee Avoid storing lambda 2024-05-30 15:45:33 +02:00
mark9064 1a379c80bf Refactor lambdas 2024-05-30 15:45:33 +02:00
mark9064 0d77cf9189 Use functional abstraction for hooks 2024-05-30 15:45:33 +02:00
mark9064 7739ecf900 Refactor display WriteToRam 2024-05-30 15:45:33 +02:00
mark9064 e579b83201 Remove task to notify 2024-05-30 15:45:33 +02:00
mark9064 2c9444d67a SPI transaction hooks 2024-05-30 15:45:33 +02:00
John Crawford 80b4da8197 fix: heartrate app displays --- instead of 000 (#1887) 2024-05-30 15:45:33 +02:00
BloodStainedCrow c7a74adb13 Unify docker devcontainer with dockerfile used for CI (#1587)
* Only use one Dockerfile and build.sh script for both docker and devcontainer
* Remove all now unneccessary tasks and scripts
* Update to clang-format-14
* Move devcontainer.json into root folder
* Fix conditional statements in Dockerfile
* Move .devcontainer/README into doc/usingDevcontainers
* Remove obsolete VSCode Task
* Change standard compiler path to the correct compiler
* Set GDB Path for debugging
* Hide broken buttons from CMake Extension
* Refactor .devcontainer
* Remove unneccessary postBuildCommand
* Add devcontainer dependencies to all docker images
* Add Devcontainer Debug launch config
* Add an additional c_cpp_properties config as a fallback for devcontainer
* Remove obsolete Docker Argument
* Fix wrong C/Cpp versions
* Fix silent fail of gdb, add libncurses5
2024-05-30 15:45:33 +02:00
Victor Kareh db947fa97c WatchFaceDigital: Remove unused variables 2024-05-30 15:45:33 +02:00
JF cbc16cd683 Emit the message BleRadioEnableToggle to DisplayApp only if the enable state of the radio has actually changed. (#2037)
This fixes an issue where the BLE connected logo would disappear when opening and closing the BLE setting (without changing it) while InfiniTime was already connected to a companion app.

Co-authored-by: JustScott <development@justscott.me>
2024-05-30 15:45:33 +02:00
Eve C a0c9b4d5fc cat as battery icon : modified the lines of infineat and position of picture 2024-05-30 13:23:25 +02:00
Eve C 8657f71d48 The watchface infineat is modified with alarm status and time set shown in the bottom right corner.
This feature can be enabled / disabled using the settings menu that is updated accordingly.
The alarm time is shown in the same time format as the hour.
Doc with screenshots is in doc/alarmStatusOnInfineat/alarmStatusOnInfineat.md
2024-05-30 08:51:53 +02:00
ecarlett d81356c8f7 revert meow to pine icon, rework on cat later 2024-05-29 17:42:59 +02:00
ecarlett 13773a9b25 modified the battery icon in Meow to be a cat face. add pictures accordingly. doesnt work on pt 2024-05-29 17:38:21 +02:00
ecarlett 961c51083e copied a memo I made with files to modify when ADDING a watchface. may be incomplete.. 2024-05-29 16:27:58 +02:00
ecarlett 48f182c25f update README with link to original repo 2024-05-29 16:21:07 +02:00
ecarlett 10c470ef71 update doc of main branch 2024-05-29 16:19:59 +02:00
ecarlett 25e81b159b now there is my watchface in pink and stuff adn the Infineat watchface with alarm status but the icons are not the same as on branch alarm-on-infineat 2024-05-29 15:54:56 +02:00
ecarlett 896f2011b2 fixing mess again after merge mess 2024-05-29 15:48:35 +02:00
ecarlett 3cfe46ec8f fix Apps.h.in and src/components/settings/Settings.h after merge mess 2024-05-29 15:43:30 +02:00
ecarlett a6b932e608 fix AlarmIcon.cpp and WatchFaceInfineat.cpp after merge mess 2024-05-29 15:40:21 +02:00
ecarlett a250fa45ec fix src/displayapp/screens/settings/SettingWatchFace.h after merge mess 2024-05-29 15:37:19 +02:00
ecarlett 6475d6e624 fix src/displayapp/UserApps.h
after merge mess
2024-05-29 15:35:21 +02:00
ecarlett ce13c721be fix fonts after merge mess 2024-05-29 15:33:21 +02:00
ecarlett 5ac1e90040 fix src/CMakeLists.txt after merge mess 2024-05-29 15:26:59 +02:00
ecarlett 9a377f6baf fix src/displayapp/apps/CMakeLists.txt after merge mess 2024-05-29 15:25:05 +02:00
ecarlett 0ecfbee4b7 now I have the Meow Watchface AND the Infineat Watchface with alarm display
interactive rebase in progress; onto b7a353cf
 Last commands done (3 commands done):
    pick 9d04c32f recovering manually changes to original Infineat
    pick 70f9025f now I have the Meow Watchface AND the Infineat Watchface with alarm display
 No commands remaining.
 You are currently rebasing branch 'my-custom-infinitime' on 'b7a353cf'.

 Changes to be committed:
	modified:   src/components/settings/Settings.h
2024-05-29 15:22:55 +02:00
ecarlett 055b75d55d test combiner tout 2024-05-29 15:22:16 +02:00
ecarlett b8f7b65d84 copy :( files from gitlab repo
interactive rebase in progress; onto b7a353cf
 Last command done (1 command done):
    pick 504f5774 copy :( files from gitlab repo
 Next commands to do (2 remaining commands):
    pick 9d04c32f recovering manually changes to original Infineat
    pick 70f9025f now I have the Meow Watchface AND the Infineat Watchface with alarm display
 You are currently rebasing branch 'my-custom-infinitime' on 'b7a353cf'.

 Changes to be committed:
	modified:   src/CMakeLists.txt
	modified:   src/displayapp/apps/Apps.h.in
	modified:   src/displayapp/apps/CMakeLists.txt
	modified:   src/displayapp/screens/Symbols.h
2024-05-29 15:21:12 +02:00
ecarlett b7a353cfb6 modified: .gitignore 2024-05-29 13:00:23 +02:00
ecarlett a4389f63fa test 2024-05-29 13:00:23 +02:00
ecarlett ef59bed954 start cat icon 2024-05-29 13:00:23 +02:00
ecarlett d2fab8d99a Add pictures in readme 2024-05-29 13:00:23 +02:00
ecarlett 82e96cf8d7 InfiniTime firmware for pinetime with a new watchface. Note that some other watchfaces are disabled from compilation to save memory space, in case. The WatchFaceMeow, named Meow in the interface, displays the status of the alarm on the screen 2024-05-29 13:00:23 +02:00
ecarlett 1ec43e27de c'est mieux aligné 2024-05-29 13:00:23 +02:00
ecarlett d7de641b8d added symbols for alarm states, added alarm state and hour to watchface meow, changed steps to paw. Need to align everythign nicely and find where to change release number
modified:   make_pine_mcu.sh
	modified:   src/CMakeLists.txt
	modified:   src/components/settings/Settings.h
	modified:   src/displayapp/UserApps.h
	modified:   src/displayapp/apps/Apps.h.in
	modified:   src/displayapp/apps/CMakeLists.txt
	modified:   src/displayapp/fonts/fonts.json
	modified:   src/displayapp/screens/AlarmIcon.cpp
	new file:   src/displayapp/screens/README.md
	modified:   src/displayapp/screens/Symbols.h
	modified:   src/displayapp/screens/WatchFaceInfineatColors.cpp
	modified:   src/displayapp/screens/WatchFaceInfineatColors.h
	new file:   src/displayapp/screens/WatchFaceMeow.cpp
	new file:   src/displayapp/screens/WatchFaceMeow.h
	modified:   src/displayapp/screens/settings/SettingWatchFace.h
2024-05-29 13:00:07 +02:00
ecarlett b16e13f471 add WatchFaceInfineatColors that has different color sets than infineat 2024-05-29 12:58:46 +02:00
ecarlett a5246941b0 compile sans avoir modifié de code ok 2024-05-29 12:58:46 +02:00
ecarlett edb61e7658 fixed that label ampm stays shown when alarm status is hidden 2024-05-29 12:08:25 +02:00
ecarlett 48cfd48e39 update settings of watchfaceInifineat with alarm settings so it looks better 2024-05-29 11:18:10 +02:00
ecarlett 735083a042 AMPM for alarm seems to work - but overloads the screen, of course. check tomorrow all cases 2024-05-28 17:45:31 +02:00
ecarlett 1af813a2ef fixed alarm status reappearing when alarm changed, even if not set to be displayed. TODO : clean comments related to this, and add am/pm format for alarm 2024-05-28 16:44:33 +02:00
ecarlett ab901b890b added option to show or hide alarm status 2024-05-28 13:40:16 +02:00
ecarlett 1162fdbf14 initial commit, with already alarm added. TODO : add possibility to disable alarm status, and make it work on 12hrs format 2024-05-28 10:39:51 +02:00
JustScott 577dfd5b87 Updated the calendar to use colors from the InfiniTimeTheme.h's Colors namespace 2024-03-15 01:16:39 -05:00
JustScott 0535e93848 Reformatted the code to comply with clang-format. 2024-03-15 01:16:39 -05:00
JustScott 780e68f456 Removed unused variables, some of the commented out code, and added a
license copyright notice to the source and header calendar files.
2024-03-15 01:16:39 -05:00
JustScott d0f776b44c Add a new Calendar App
A basic calendar app that shows all the days dates in the current month along
with the correlating week days, highlights the current day, and allows swiping
left and right to increase and decrease the current month by one.

Co-authored-by: thnikk <thnikk@users.noreply.github.com>
Co-authored-by: Boteium <boteium@users.noreply.github.com>
2024-03-15 01:16:39 -05:00
42 changed files with 295 additions and 13 deletions

View file

@ -3,3 +3,16 @@
autocrlf = input
[apply]
whitespace = fix
[diff]
tool = meld
[difftool]
prompt = false
[difftool "meld"]
cmd = meld "$LOCAL" "$REMOTE"
[merge]
tool = meld
[mergetool "meld"]
# Choose one of these two lines (not both!) explained below.
cmd = meld "$LOCAL" "$MERGED" "$REMOTE" --output "$MERGED"
cmd = meld "$LOCAL" "$BASE" "$REMOTE" --output "$MERGED"

1
.gitignore vendored
View file

@ -12,6 +12,7 @@ Makefile
build
tools
# Resulting binary files
*.a
*.so

3
.gitmodules vendored
View file

@ -4,9 +4,6 @@
[submodule "src/libs/littlefs"]
path = src/libs/littlefs
url = https://github.com/littlefs-project/littlefs.git
[submodule "src/libs/QCBOR"]
path = src/libs/QCBOR
url = https://github.com/laurencelundblade/QCBOR.git
[submodule "src/libs/arduinoFFT"]
path = src/libs/arduinoFFT
url = https://github.com/kosme/arduinoFFT.git

View file

@ -1,9 +1,41 @@
# [InfiniTime](https://github.com/InfiniTimeOrg/InfiniTime)
# [InfiniTime](https://github.com/Eve1374/InfiniTime)
![InfiniTime logo](doc/logo/infinitime-logo-small.jpg "InfiniTime Logo")
Fast open-source firmware for the [PineTime smartwatch](https://pine64.org/devices/pinetime/) with many features, written in modern C++.
## Quick notes on this InfiniTime version
- I copied the source code from this git repo : [InfiniTime](https://github.com/InfiniTimeOrg/InfiniTime)
- I added a watch face "WatchFaceMeow" whose main features are to be pink and have info about the alarm status
- I stored the compile commands in scripts compile.sh to run from InfiniTime/ folder, and make_pine_mcu.sh to build the image must be run from InfiniTime/build/ (compile.sh copies make_pine_mcu.sh to build/
- The file to flash to the pinetime is InfiniTime/build/pinetime-mcuboot-app-dfu-1.14.0.zip : I didn't change the version compared to the one I downloaded from [InfiniTime](https://github.com/InfiniTimeOrg/InfiniTime) so make sure not to keep keep a copy of it
Here are pictures with and without alarm set :
Original repo : [InfiniTime](https://github.com/InfiniTimeOrg/InfiniTime)
- [Getting started with InfiniTime](doc/gettingStarted/gettingStarted-1.0.md)
- [Updating the software](doc/gettingStarted/updating-software.md)
- [About the firmware and bootloader](doc/gettingStarted/about-software.md)
- [Available apps](doc/gettingStarted/Applications.md)
- [Available watch faces](/doc/gettingStarted/Watchfaces.md)
- [PineTimeStyle Watch face](https://pine64.org/documentation/PineTime/Watchfaces/PineTimeStyle)
- [Weather integration](https://pine64.org/documentation/PineTime/Software/InfiniTime_weather/)
## Welcome to my InfiniTime fork ?!
Branches :
- main : shows this doc
- alarm-status-on-infineat : shows the alarm status on infineat, can be enabled or disabled from the settigns menu that is updated accordingly :
![Infineat settings](doc/ui/infineat_settings.png "Infineat settings")
- my-custom-infinitime : branch were I put things that I want for myself, like a watchface with paw instead of shoe icon for steps counter :
## New to InfiniTime?
- [Getting started with InfiniTime](doc/gettingStarted/gettingStarted-1.0.md)
@ -88,3 +120,4 @@ Here are some people I would like to highlight:
- [Atc1441](https://github.com/atc1441/): He works on an Arduino based firmware for the Pinetime and many other smartwatches based on similar hardware. He was of great help when I was implementing support for the BMA421 motion sensor and I²C driver.
- [Koen](https://github.com/bosmoment): Hes working on a firmware based on RiotOS. He integrated similar libs as me: NimBLE, LittleVGL,… His help was invaluable too!
- [Lup Yuen Lee](https://github.com/lupyuen): He is everywhere: he works on a Rust firmware, builds a MCUBoot based bootloader for the Pinetime, designs a Flutter based companion app for smartphones and writes a lot of articles about the Pinetime!
>>>>>>>>> Temporary merge branch 2

8
compile.sh Executable file
View file

@ -0,0 +1,8 @@
#!/bin/bash
rm -r build
cmake -DARM_NONE_EABI_TOOLCHAIN_PATH=/home/eve/Work/gcc-arm-none-eabi-10.3-2021.10 -DNRF5_SDK_PATH=/home/eve/Work/nRF5_SDK_17.1.0_ddde560 -DTARGET_DEVICE=PINETIME -DBUILD_DFU=1 -DBUILD_RESOURCES=1 -B build -DCMAKE_BUILD_TYPE=Release
cp make_pine_mcu.sh build/

View file

@ -0,0 +1,22 @@
# [InfiniTime : show alarm status on infineat watchface](https://github.com/Eve1374/InfiniTime/tree/alarm-status-on-infineat)
- I forked from [InfiniTime](https://github.com/InfiniTimeOrg/InfiniTime) and added a branch alarm-status-on-infineat
- I modified the watchface settings to have the possibility to show alarm status on watchface
Here are pictures with alarm set in 12 and 24hrs format :
![alarm set and shown, 12hrs format](infineat_alarm_set_12hrs.png "alarm set and shown, 12hrs format")
![alarm set and shown, 24hrs format](infineat_alarm_set_24hrs.png "alarm set and shown, 24hrs format")
Alarm not set :
![alarm shown and not set](infineat_alarm_notset.png "alarm shown and not set")
Settings view :
![settings](infineat_settings.png "settings modified with a button to turn on or off alarm display")
## Possible further development :
- Move this setting to the Alarm app and include alarm display in all watchfaces ?

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB

BIN
doc/lvgl_align.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

BIN
doc/palettes.xcf Normal file

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB

BIN
doc/ui/meow_alarmnotset.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

BIN
doc/ui/meow_alarmset.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6 KiB

BIN
draft_pictures/cat.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.8 KiB

BIN
draft_pictures/cat.xcf Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

6
make_pine.sh Executable file
View file

@ -0,0 +1,6 @@
#!/bin/bash
#cp ./displayapp/apps/Apps.h ../src/displayapp/apps/Apps.h
make -j4 pinetime-app

6
make_pine_mcu.sh Executable file
View file

@ -0,0 +1,6 @@
#!/bin/bash
#cp ./displayapp/apps/Apps.h ../src/displayapp/apps/Apps.h
make clean -j4 pinetime-mcuboot-app

View file

@ -371,6 +371,7 @@ list(APPEND SOURCE_FILES
displayapp/screens/StopWatch.cpp
displayapp/screens/BatteryIcon.cpp
displayapp/screens/BleIcon.cpp
displayapp/screens/AlarmIcon.cpp
displayapp/screens/NotificationIcon.cpp
displayapp/screens/SystemInfo.cpp
displayapp/screens/Label.cpp

View file

@ -47,6 +47,7 @@ namespace Pinetime {
struct WatchFaceInfineat {
bool showSideCover = true;
bool showAlarmStatus = true;
int colorIndex = 0;
};
@ -123,6 +124,18 @@ namespace Pinetime {
return settings.watchFaceInfineat.showSideCover;
};
void SetInfineatShowAlarmStatus(bool show) {
if (show != settings.watchFaceInfineat.showAlarmStatus) {
settings.watchFaceInfineat.showAlarmStatus = show;
settingsChanged = true;
}
};
bool GetInfineatShowAlarmStatus() const {
return settings.watchFaceInfineat.showAlarmStatus;
};
void SetInfineatColorIndex(int index) {
if (index != settings.watchFaceInfineat.colorIndex) {
settings.watchFaceInfineat.colorIndex = index;

View file

@ -8,6 +8,7 @@ namespace Colors {
static constexpr lv_color_t green = LV_COLOR_MAKE(0x0, 0xb0, 0x0);
static constexpr lv_color_t blue = LV_COLOR_MAKE(0x0, 0x50, 0xff);
static constexpr lv_color_t lightGray = LV_COLOR_MAKE(0xb0, 0xb0, 0xb0);
static constexpr lv_color_t gray = LV_COLOR_MAKE(0x50, 0x50, 0x50);
static constexpr lv_color_t bg = LV_COLOR_MAKE(0x5d, 0x69, 0x7e);
static constexpr lv_color_t bgAlt = LV_COLOR_MAKE(0x38, 0x38, 0x38);

View file

@ -23,6 +23,7 @@ namespace Pinetime {
Twos,
HeartRate,
Navigation,
Calendar,
StopWatch,
Metronome,
Motion,
@ -51,6 +52,7 @@ namespace Pinetime {
PineTimeStyle,
Terminal,
Infineat,
Meow,
CasioStyleG7710,
};

View file

@ -7,7 +7,7 @@
},
{
"file": "FontAwesome5-Solid+Brands+Regular.woff",
"range": "0xf294, 0xf242, 0xf54b, 0xf21e, 0xf1e6, 0xf017, 0xf129, 0xf03a, 0xf185, 0xf560, 0xf001, 0xf3fd, 0xf1fc, 0xf45d, 0xf59f, 0xf5a0, 0xf027, 0xf028, 0xf6a9, 0xf04b, 0xf04c, 0xf048, 0xf051, 0xf095, 0xf3dd, 0xf04d, 0xf2f2, 0xf024, 0xf252, 0xf569, 0xf06e, 0xf015, 0xf00c, 0xf0f3, 0xf522, 0xf743"
"range": "0xf294, 0xf242, 0xf54b, 0xf21e, 0xf1e6, 0xf017, 0xf129, 0xf03a, 0xf185, 0xf560, 0xf001, 0xf3fd, 0xf1fc, 0xf45d, 0xf59f, 0xf5a0, 0xf027, 0xf028, 0xf6a9, 0xf04b, 0xf04c, 0xf048, 0xf051, 0xf095, 0xf3dd, 0xf04d, 0xf2f2, 0xf024, 0xf252, 0xf569, 0xf06e, 0xf015, 0xf00c, 0xf0f3, 0xf522, 0xf743, 0xf0f3, 0xf1f6"
}
],
"bpp": 1,

View file

@ -0,0 +1,11 @@
#include "displayapp/screens/AlarmIcon.h"
#include "displayapp/screens/Symbols.h"
using namespace Pinetime::Applications::Screens;
const char* AlarmIcon::GetIcon(bool isSet) {
if (isSet) {
return Symbols::bell;
}
return Symbols::notbell;
}

View file

@ -0,0 +1,14 @@
#pragma once
#include "components/alarm/AlarmController.h"
namespace Pinetime {
namespace Applications {
namespace Screens {
class AlarmIcon {
public:
static const char* GetIcon(bool isSet);
};
}
}
}

View file

@ -0,0 +1,10 @@
# Add a new watchface :
## Modify the following files with the names of your source files :
- /src/displayapp/apps/Apps.h.in
- /src/components/settings/Settings.h
- /src/displayapp/UserApps.h
- /src/displayapp/apps/CMakeLists.txt
- CMakelists.txt

View file

@ -12,6 +12,7 @@ namespace Pinetime {
static constexpr const char* shoe = "\xEF\x95\x8B";
static constexpr const char* clock = "\xEF\x80\x97";
static constexpr const char* bell = "\xEF\x83\xB3";
static constexpr const char* notbell = "\xEF\x87\xB6";
static constexpr const char* info = "\xEF\x84\xA9";
static constexpr const char* list = "\xEF\x80\xBA";
static constexpr const char* sun = "\xEF\x86\x85";

View file

@ -4,10 +4,12 @@
#include <cstdio>
#include "displayapp/screens/BatteryIcon.h"
#include "displayapp/screens/BleIcon.h"
#include "displayapp/screens/AlarmIcon.h"
#include "displayapp/screens/NotificationIcon.h"
#include "displayapp/screens/Symbols.h"
#include "components/battery/BatteryController.h"
#include "components/ble/BleController.h"
#include "components/alarm/AlarmController.h"
#include "components/ble/NotificationManager.h"
#include "components/heartrate/HeartRateController.h"
#include "components/motion/MotionController.h"
@ -17,6 +19,7 @@ using namespace Pinetime::Applications::Screens;
WatchFaceCasioStyleG7710::WatchFaceCasioStyleG7710(Controllers::DateTime& dateTimeController,
const Controllers::Battery& batteryController,
const Controllers::Ble& bleController,
Controllers::AlarmController& alarmController,
Controllers::NotificationManager& notificatioManager,
Controllers::Settings& settingsController,
Controllers::HeartRateController& heartRateController,
@ -27,6 +30,7 @@ WatchFaceCasioStyleG7710::WatchFaceCasioStyleG7710(Controllers::DateTime& dateTi
dateTimeController {dateTimeController},
batteryController {batteryController},
bleController {bleController},
alarmController {alarmController},
notificatioManager {notificatioManager},
settingsController {settingsController},
heartRateController {heartRateController},
@ -168,6 +172,23 @@ WatchFaceCasioStyleG7710::WatchFaceCasioStyleG7710(Controllers::DateTime& dateTi
lv_label_set_text_static(stepIcon, Symbols::shoe);
lv_obj_align(stepIcon, stepValue, LV_ALIGN_OUT_LEFT_MID, -5, 0);
alarmIcon = lv_label_create(lv_scr_act(), nullptr);
lv_obj_set_style_local_text_color(alarmIcon, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, color_text);
lv_label_set_text_static(alarmIcon, Symbols::notbell);
lv_obj_align(alarmIcon, lv_scr_act(), LV_ALIGN_IN_BOTTOM_LEFT, 5, -2);
labelAlarm = lv_label_create(lv_scr_act(), nullptr);
lv_obj_set_style_local_text_color(labelAlarm, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, color_text);
// lv_obj_set_style_local_text_font(labelAlarm, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, font_teko);
lv_obj_align(labelAlarm, alarmIcon, LV_ALIGN_OUT_RIGHT_MID, 3, 0);
lv_label_set_text_static(labelAlarm, "00:00");
labelTimeAmPmAlarm = lv_label_create(lv_scr_act(), nullptr);
// lv_obj_set_style_local_text_font(labelTimeAmPmAlarm, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, font_teko);
lv_label_set_text_static(labelTimeAmPmAlarm, "");
lv_obj_set_style_local_text_color(labelTimeAmPmAlarm, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, color_text);
lv_obj_align(labelTimeAmPmAlarm, labelAlarm, LV_ALIGN_OUT_RIGHT_MID, 3, 0);
taskRefresh = lv_task_create(RefreshTaskCallback, LV_DISP_DEF_REFR_PERIOD, LV_TASK_PRIO_MID, this);
Refresh();
}
@ -310,8 +331,6 @@ void WatchFaceCasioStyleG7710::Refresh() {
lv_obj_realign(stepValue);
lv_obj_realign(stepIcon);
}
}
bool WatchFaceCasioStyleG7710::IsAvailable(Pinetime::Controllers::FS& filesystem) {
lfs_file file = {};

View file

@ -4,9 +4,11 @@
#include <cstdio>
#include "displayapp/screens/Symbols.h"
#include "displayapp/screens/BleIcon.h"
#include "displayapp/screens/AlarmIcon.h"
#include "components/settings/Settings.h"
#include "components/battery/BatteryController.h"
#include "components/ble/BleController.h"
#include "components/alarm/AlarmController.h"
#include "components/ble/NotificationManager.h"
#include "components/motion/MotionController.h"
@ -122,6 +124,7 @@ namespace {
WatchFaceInfineat::WatchFaceInfineat(Controllers::DateTime& dateTimeController,
const Controllers::Battery& batteryController,
const Controllers::Ble& bleController,
Controllers::AlarmController& alarmController,
Controllers::NotificationManager& notificationManager,
Controllers::Settings& settingsController,
Controllers::MotionController& motionController,
@ -130,6 +133,7 @@ WatchFaceInfineat::WatchFaceInfineat(Controllers::DateTime& dateTimeController,
dateTimeController {dateTimeController},
batteryController {batteryController},
bleController {bleController},
alarmController {alarmController},
notificationManager {notificationManager},
settingsController {settingsController},
motionController {motionController} {
@ -144,6 +148,7 @@ WatchFaceInfineat::WatchFaceInfineat(Controllers::DateTime& dateTimeController,
font_bebas = lv_font_load("F:/fonts/bebas.bin");
}
// Side Cover
static constexpr lv_point_t linePoints[nLines][2] = {{{30, 25}, {68, -8}},
{{26, 167}, {43, 216}},
@ -230,6 +235,31 @@ WatchFaceInfineat::WatchFaceInfineat(Controllers::DateTime& dateTimeController,
lv_label_set_text_static(bleIcon, Symbols::bluetooth);
lv_obj_align(bleIcon, dateContainer, LV_ALIGN_OUT_BOTTOM_MID, 0, 0);
labelAlarm = lv_label_create(lv_scr_act(), nullptr);
lv_obj_set_style_local_text_color(labelAlarm, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, grayColor);
lv_obj_set_style_local_text_font(labelAlarm, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, font_teko);
lv_obj_align(labelAlarm, dateContainer, LV_ALIGN_OUT_BOTTOM_MID, -10, 0);
lv_obj_align(labelAlarm, lv_scr_act(), LV_ALIGN_IN_BOTTOM_RIGHT, -3, 0);
lv_label_set_text_static(labelAlarm, "00:00");
labelTimeAmPmAlarm = lv_label_create(lv_scr_act(), nullptr);
lv_obj_set_style_local_text_font(labelTimeAmPmAlarm, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, font_teko);
lv_label_set_text_static(labelTimeAmPmAlarm, "");
lv_obj_set_style_local_text_color(labelTimeAmPmAlarm, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, grayColor);
lv_obj_align(labelTimeAmPmAlarm, labelAlarm, LV_ALIGN_OUT_TOP_RIGHT, 0, 0);
alarmIcon = lv_label_create(lv_scr_act(), nullptr);
lv_obj_set_style_local_text_color(alarmIcon, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, grayColor);
lv_label_set_text_static(alarmIcon, Symbols::notbell);
lv_obj_align(alarmIcon, labelAlarm, LV_ALIGN_OUT_LEFT_MID, -3, 0);
// don't show the icons just set if we don't show alarm status
if (!settingsController.GetInfineatShowAlarmStatus()) {
lv_obj_set_hidden(labelAlarm, true);
lv_obj_set_hidden(alarmIcon, true);
lv_obj_set_hidden(labelTimeAmPmAlarm, true);
}
stepValue = lv_label_create(lv_scr_act(), nullptr);
lv_obj_set_style_local_text_color(stepValue, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, grayColor);
lv_obj_set_style_local_text_font(stepValue, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, font_teko);
@ -275,7 +305,7 @@ WatchFaceInfineat::WatchFaceInfineat(Controllers::DateTime& dateTimeController,
btnToggleCover = lv_btn_create(lv_scr_act(), nullptr);
btnToggleCover->user_data = this;
lv_obj_set_size(btnToggleCover, 60, 60);
lv_obj_align(btnToggleCover, lv_scr_act(), LV_ALIGN_CENTER, 0, 80);
lv_obj_align(btnToggleCover, lv_scr_act(), LV_ALIGN_CENTER, 0,0);
lv_obj_set_style_local_bg_opa(btnToggleCover, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, LV_OPA_70);
const char* labelToggle = settingsController.GetInfineatShowSideCover() ? "ON" : "OFF";
lblToggle = lv_label_create(btnToggleCover, nullptr);
@ -283,6 +313,17 @@ WatchFaceInfineat::WatchFaceInfineat(Controllers::DateTime& dateTimeController,
lv_obj_set_event_cb(btnToggleCover, event_handler);
lv_obj_set_hidden(btnToggleCover, true);
btnToggleAlarm = lv_btn_create(lv_scr_act(), nullptr);
btnToggleAlarm->user_data = this;
lv_obj_set_size(btnToggleAlarm, 60, 60);
lv_obj_align(btnToggleAlarm, lv_scr_act(), LV_ALIGN_CENTER, 0, 80);
lv_obj_set_style_local_bg_opa(btnToggleAlarm, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, LV_OPA_70);
const char* labelToggleAlarm = settingsController.GetInfineatShowAlarmStatus() ? Symbols::bell : Symbols::notbell;
lblAlarm = lv_label_create(btnToggleAlarm, nullptr);
lv_label_set_text_static(lblAlarm, labelToggleAlarm);
lv_obj_set_event_cb(btnToggleAlarm, event_handler);
lv_obj_set_hidden(btnToggleAlarm, true);
// Button to access the settings
btnSettings = lv_btn_create(lv_scr_act(), nullptr);
btnSettings->user_data = this;
@ -332,6 +373,7 @@ void WatchFaceInfineat::CloseMenu() {
lv_obj_set_hidden(btnNextColor, true);
lv_obj_set_hidden(btnPrevColor, true);
lv_obj_set_hidden(btnToggleCover, true);
lv_obj_set_hidden(btnToggleAlarm, true);
}
bool WatchFaceInfineat::OnButtonPushed() {
@ -346,6 +388,7 @@ void WatchFaceInfineat::UpdateSelected(lv_obj_t* object, lv_event_t event) {
if (event == LV_EVENT_CLICKED) {
bool showSideCover = settingsController.GetInfineatShowSideCover();
int colorIndex = settingsController.GetInfineatColorIndex();
bool showAlarmStatus = settingsController.GetInfineatShowAlarmStatus();
if (object == btnSettings) {
lv_obj_set_hidden(btnSettings, true);
@ -353,6 +396,7 @@ void WatchFaceInfineat::UpdateSelected(lv_obj_t* object, lv_event_t event) {
lv_obj_set_hidden(btnNextColor, !showSideCover);
lv_obj_set_hidden(btnPrevColor, !showSideCover);
lv_obj_set_hidden(btnToggleCover, false);
lv_obj_set_hidden(btnToggleAlarm, false);
}
if (object == btnClose) {
CloseMenu();
@ -368,6 +412,18 @@ void WatchFaceInfineat::UpdateSelected(lv_obj_t* object, lv_event_t event) {
const char* labelToggle = showSideCover ? "OFF" : "ON";
lv_label_set_text_static(lblToggle, labelToggle);
}
if (object == btnToggleAlarm) {
settingsController.SetInfineatShowAlarmStatus(!showAlarmStatus);
bool newShowAlarmStatus = settingsController.GetInfineatShowAlarmStatus();
lv_obj_set_hidden(labelAlarm, !newShowAlarmStatus);
lv_obj_set_hidden(alarmIcon, !newShowAlarmStatus);
lv_obj_set_hidden(labelTimeAmPmAlarm, !newShowAlarmStatus);
const char* labelToggleAlarm = newShowAlarmStatus ? Symbols::bell : Symbols::notbell;
lv_label_set_text_static(lblAlarm, labelToggleAlarm);
}
if (object == btnNextColor) {
colorIndex = (colorIndex + 1) % nColors;
settingsController.SetInfineatColorIndex(colorIndex);
@ -452,6 +508,43 @@ void WatchFaceInfineat::Refresh() {
lv_obj_align(bleIcon, dateContainer, LV_ALIGN_OUT_BOTTOM_MID, 0, 3);
}
if (settingsController.GetInfineatShowAlarmStatus()) {
isAlarmSet = alarmController.IsEnabled()==true;
// sets the icon as bell or barred bell
lv_label_set_text_static(alarmIcon, AlarmIcon::GetIcon(isAlarmSet.Get()));
//displays the time of the alarm or nothing if the alarm is not set
if (isAlarmSet.Get()) {
uint8_t alarmHours = alarmController.Hours();
uint8_t alarmMinutes = alarmController.Minutes();
//handles the am pm format.
if (settingsController.GetClockType() == Controllers::Settings::ClockType::H12) {
char ampmChar[3] = "AM";
if (alarmHours == 0) {
alarmHours = 12;
} else if (alarmHours == 12) {
ampmChar[0]='P';
} else if (alarmHours > 12) {
alarmHours = alarmHours - 12;
ampmChar[0]='P';
}
lv_label_set_text(labelTimeAmPmAlarm, ampmChar);
lv_obj_set_style_local_text_font(labelTimeAmPmAlarm, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, font_teko);
lv_obj_align(labelTimeAmPmAlarm, labelAlarm, LV_ALIGN_OUT_TOP_RIGHT, 0, 0);
}
lv_label_set_text_fmt(labelAlarm, "%02d:%02d", alarmHours, alarmMinutes);
lv_obj_align(alarmIcon, labelAlarm, LV_ALIGN_OUT_LEFT_MID, -3, 0);
lv_obj_align(labelAlarm, dateContainer, LV_ALIGN_OUT_BOTTOM_MID, -10, 0);
lv_obj_align(labelAlarm, lv_scr_act(), LV_ALIGN_IN_BOTTOM_RIGHT, -3, 0);
}
else {
lv_label_set_text_static(labelAlarm, Symbols::none);
lv_obj_align(alarmIcon, dateContainer, LV_ALIGN_OUT_BOTTOM_MID, 0, 0);
lv_obj_align(alarmIcon, lv_scr_act(), LV_ALIGN_IN_BOTTOM_RIGHT, -3, 0);
}
}
stepCount = motionController.NbSteps();
if (stepCount.IsUpdated()) {
lv_label_set_text_fmt(stepValue, "%lu", stepCount.Get());

View file

@ -28,6 +28,7 @@ namespace Pinetime {
WatchFaceInfineat(Controllers::DateTime& dateTimeController,
const Controllers::Battery& batteryController,
const Controllers::Ble& bleController,
Controllers::AlarmController& alarmController,
Controllers::NotificationManager& notificationManager,
Controllers::Settings& settingsController,
Controllers::MotionController& motionController,
@ -52,6 +53,7 @@ namespace Pinetime {
Utility::DirtyValue<bool> isCharging {};
Utility::DirtyValue<bool> bleState {};
Utility::DirtyValue<bool> bleRadioEnabled {};
Utility::DirtyValue<bool> isAlarmSet{};
Utility::DirtyValue<std::chrono::time_point<std::chrono::system_clock, std::chrono::minutes>> currentDateTime {};
Utility::DirtyValue<uint32_t> stepCount {};
Utility::DirtyValue<bool> notificationState {};
@ -71,22 +73,28 @@ namespace Pinetime {
lv_obj_t* dateContainer;
lv_obj_t* labelDate;
lv_obj_t* bleIcon;
lv_obj_t* labelAlarm;
lv_obj_t* labelTimeAmPmAlarm;
lv_obj_t* alarmIcon;
lv_obj_t* stepIcon;
lv_obj_t* stepValue;
lv_obj_t* notificationIcon;
lv_obj_t* btnClose;
lv_obj_t* btnNextColor;
lv_obj_t* btnToggleCover;
lv_obj_t* btnToggleAlarm;
lv_obj_t* btnPrevColor;
lv_obj_t* btnSettings;
lv_obj_t* labelBtnSettings;
lv_obj_t* lblToggle;
lv_obj_t* lblAlarm;
lv_obj_t* lines[nLines];
Controllers::DateTime& dateTimeController;
const Controllers::Battery& batteryController;
const Controllers::Ble& bleController;
Controllers::AlarmController& alarmController;
Controllers::NotificationManager& notificationManager;
Controllers::Settings& settingsController;
Controllers::MotionController& motionController;
@ -109,6 +117,7 @@ namespace Pinetime {
return new Screens::WatchFaceInfineat(controllers.dateTimeController,
controllers.batteryController,
controllers.bleController,
controllers.alarmController,
controllers.notificationManager,
controllers.settingsController,
controllers.motionController,

View file

@ -0,0 +1,11 @@
# Add a new watchface :
## Modify the following files with the names of your source files :
- /src/displayapp/apps/Apps.h.in
- /src/components/settings/Settings.h
- /src/displayapp/screens/settings/SettingWatchFace.h
- /src/displayapp/UserApps.h
- /src/displayapp/apps/CMakeLists.txt
- CMakelists.txt

View file

@ -12,6 +12,8 @@
#include "displayapp/screens/WatchFaceInfineat.h"
#include "displayapp/screens/WatchFaceCasioStyleG7710.h"
namespace Pinetime {
namespace Applications {

@ -1 +0,0 @@
Subproject commit 56b17bf9f74096774944bcac0829adcd887d391e

View file

@ -589,7 +589,7 @@ typedef void* lv_obj_user_data_t;
/*Calendar (dependencies: -)*/
#define LV_USE_CALENDAR 1
#if LV_USE_CALENDAR
#define LV_CALENDAR_WEEK_STARTS_MONDAY 0
#define LV_CALENDAR_WEEK_STARTS_MONDAY 1
#endif
/*Canvas (dependencies: lv_img)*/

View file

@ -6,6 +6,13 @@
"binary_format": "ARGB8565_RBSWAP",
"target_path": "/images/"
},
"cat_small" : {
"sources": "images/cat_clean.png",
"color_format": "CF_TRUE_COLOR_ALPHA",
"output_format": "bin",
"binary_format": "ARGB8565_RBSWAP",
"target_path": "/images/"
},
"navigation0" : {
"sources": "images/navigation0.png",
"color_format": "CF_INDEXED_1_BIT",

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

3
todo.log Normal file
View file

@ -0,0 +1,3 @@
replace alarm info by timer info when timer is ongoing
add a shortcut for a 1min timer on the right