Commit Graph

1196 Commits

Author SHA1 Message Date
Jean-François Milants
a9986e5351 Fix filename of the MCUBoot image and recovery MCUBoot image in CMake files. This will fix the generation of output files at the end of the build process. 2022-07-08 17:59:51 +02:00
Christoph Honal
463355281a Display target build variant in system info screen 2022-07-07 11:23:05 +02:00
Christoph Honal
0f1e510574 Nimble: Compatibility with LFRC calibration
Nimble has to be aware of the low frequency clock
calibration procedure, in order to not interfere with
the usage of the HFCLK. For more info, see
https://github.com/apache/mynewt-nimble/issues/1207
2022-07-07 11:20:56 +02:00
Christoph Honal
33a7a6a095 Nimble: Enable optional debug output via RTT
This allows better debugging of the bluetooth stack.
2022-07-07 11:20:56 +02:00
Christoph Honal
118adb96cf Nimble: Reduce BLE power usage
This configures Nimble to enable the HFCLOCK and other
Bluetooth peripherals only when needed, but 1500 us in advance.
This time is recommended by the Mynewt docs.
2022-07-07 11:20:56 +02:00
Riku Isokoski
9b92861753
Twos code cleanup (#1220) 2022-07-06 11:29:23 +03:00
Riku Isokoski
ec8a845052
Add PageIndicator widget to reduce code duplication (#1218)
* Move PageIndicator widget to its own files to reduce code duplication
* Use uint8_t in PageIndicator
2022-07-05 07:41:09 +02:00
Reinhold Gschweicher
12fad7411d Notifications: no inTransition screen, simple blackbox is enough 2022-06-28 18:50:10 +02:00
Simon Willshire
2c75e7aad8 Dismiss notifications by swiping right
Add a new interface `NotificationManager::Dismiss(id)` to delete a
notification with the specified `id`.

The animate the notification dismiss the `RightAnim` transition to a
black screen is used. After the dismiss the new message is swiped in
from below or above.

If we dismiss the oldest message (when we are at 5/5, or 3/3), then the
new message after a dismiss should appear to come from below.

Otherwise (when we are at 2/3) the new message after a dismiss should
appear to come from above.

Rework the index code to show the index of the currently viewed
notification. Instead of calculating the index relative to the oldest
`id` introduce a new interface `NotificationManager::IndexOf(id)`. This
is done because the `id` of the notifications in the buffer aren't
continuous anymore (as some messages could have been dismissed).

Rework notification ring buffer to have a beginIdx and a size
internally to make the dismissal of notifications easier.

Fixes: https://github.com/InfiniTimeOrg/InfiniTime/issues/176

Co-authored-by: Simon Willshire <me@simonwillshire.com>
Co-authored-by: Reinhold Gschweicher <pyro4hell@gmail.com>
2022-06-28 18:50:10 +02:00
Christoph Honal
e77d47e35c LFCLK: Add compatibility to wasp-os reloader-factory 2022-06-27 08:28:48 +03:00
Christoph Honal
8b0559c481 Add basic hardware configuration options for P8
This enables the configuration of the LFCLK source,
as well as the target hardware board pin configuration.
2022-06-27 08:28:48 +03:00
Christoph Honal
bab86633a0 Font generation: Fix patch binary path 2022-06-25 16:29:39 +02:00
Christoph Honal
91c69d3c5b CMake: Fix indentation 2022-06-19 21:23:59 +02:00
Christoph Honal
e247afaa81 CMake: Extend debug configuration
Enable debug output for InfiniTime, Nimble and the NRF SDK
via SEGGER RTT on debug builds.
2022-06-19 21:23:59 +02:00
Riku Isokoski
61c2d8dbc7 Flashlight default to max brightness and code cleanup 2022-06-19 18:24:36 +02:00
Riku Isokoski
2b2aefcf6a Fix InfiniTime compiler warnings 2022-06-19 13:41:33 +03:00
Riku Isokoski
95ff285991
Remove backup brightness feature (#1180)
This feature is not needed and is probably more likely to cause issues. It's better to just use brightnessController.Set(settingsController.GetBrightness());
2022-06-18 12:54:41 +03:00
Riku Isokoski
9b775c6a91
Automatically create screens for applist and settings (#1153)
Apps and settings are now stored in a single array (two arrays in total).
Replace magic values with appsPerScreen and entriesPerScreen.
2022-06-16 21:41:54 +02:00
Riku Isokoski
10ca036ffb
Patch hole in the letter M in jetbrains_mono_bold_20 (#1175) 2022-06-16 17:05:55 +02:00
Reinhold Gschweicher
ecb3cd3e31 SettingChimes: private Option struct, use std::array for cbOption 2022-06-11 22:46:38 +03:00
Riku Isokoski
d55ec42b17 Simplify SettingChimes code 2022-06-11 22:46:38 +03:00
Diego Miguel Lozano
de62620de1
Remove duplicated value in fonts.json (#1179) 2022-06-11 17:00:26 +03:00
Riku Isokoski
955dda60c5 Use lambda to reduce code duplication 2022-06-06 21:28:03 +02:00
Riku Isokoski
6cfb45e280 Move event handlers to unnamed namespace 2022-06-06 21:28:03 +02:00
Riku Isokoski
c6026aa617 Use static constexpr to force compile time initialization 2022-06-06 21:28:03 +02:00
Riku Isokoski
254c85246e Timer: Replace time label with Counter control hiding functionality 2022-06-06 21:28:03 +02:00
Riku Isokoski
4a40d29279 Counter: add show and hide controls functions 2022-06-06 21:28:03 +02:00
Riku Isokoski
41c461d1f6 Move linePoints to a member variable 2022-06-06 21:28:03 +02:00
Riku Isokoski
17cedd6629 Move bg color to a constexpr variable 2022-06-06 21:28:03 +02:00
Riku Isokoski
1d34e83c97 Use Counter widget in Timer 2022-06-06 21:28:03 +02:00
Riku Isokoski
9e18c23aac Lighten the large font for a more balanced look
Add Jetbrains Mono Light font
2022-06-06 21:28:03 +02:00
Riku Isokoski
12d4bc4139 Add initial counter widget 2022-06-06 21:28:03 +02:00
Riku Isokoski
c2b15b1446 Move basic apps to the top of the app list 2022-06-06 20:47:34 +02:00
Ildar Mulyukov
7bc692eea4 src/CMakeLists.txt: use iHEX format for mcuboot image creation
for better control of addresses used by img/fw
+ fix typo (RECOVERYY)
2022-06-06 19:41:57 +02:00
Ildar Mulyukov
5f28f89df2 fix wrong linker script
introduced in 58a2d000c4
2022-06-06 19:41:57 +02:00
Michele Bini
35dcf8c860
Switch to freertos timers (#1095)
* Use FreeRTOS timer for AlarmController
* Use FreeRTOS timer for MotorController
* Remove app_timer component from compilation as we now solely use
  FreeROTS timer
* Simplify variable and text names for AlarmController and MotorController timers
* Call ScheduleAlarm directly from StopAlerting, for recurring timers

Co-authored-by: Riku Isokoski <riksu9000@gmail.com>
Co-authored-by: NeroBurner <pyro4hell@gmail.com>
2022-06-06 17:47:43 +02:00
mabuch
f95147cf0e
remove unused symbols, free a little bit of space (#1167) 2022-06-05 19:43:49 +02:00
mabuch
91a3e98276
remove unused Meter.cpp and Meter.h (#1171) 2022-06-05 19:35:33 +02:00
mabuch
8a71f2b9e0
remove unused Brightness App (#1170) 2022-06-05 19:34:37 +02:00
mabuch
8999158528
remove old unused bluetooth icons (#1172) 2022-06-05 18:50:36 +02:00
Christoph Honal
977936e8e2 System: Refactor pin and interrupt setup
This should ensure better readability of the pin setup procedure,
as well as allow the configuration of the hardware button enable pin
and the accelerometer interrupt pin via the pin mapping header.
2022-06-05 09:53:22 +03:00
Christoph Honal
03a2059e87 SystemTask: Use "&&" instead of "and" for operators
As per the coding style, only primary spelling should be used for operators.
2022-06-05 09:53:22 +03:00
luz paz
03a510bd18 Fix various typos
Found via `codespell -q 3 -S ./src/libs -L ans,doubleclick,trough`
2022-06-05 09:31:23 +03:00
Finlay Davidson
7f45538eb5 Apply clang-format to all C++ files 2022-06-05 09:15:46 +03:00
Finlay Davidson
718fbdab98 Replace C-style casts with static_cast 2022-06-05 09:15:46 +03:00
Finlay Davidson
0ce4183640 Rename lvgl image files to .c 2022-06-05 09:15:46 +03:00
Ludovic J
87a69fe52d Fix assertion failure in TimerController
0 is not valid for xTimerPeriodInTicks, changing it to 1 to pass the assertion
2022-05-27 22:14:28 +03:00
Reinhold Gschweicher
443408312a fonts: gen.py: clearify missing exe message 2022-05-16 11:59:44 +03:00
Reinhold Gschweicher
db0f909b46 generalize lv-font creation
In https://github.com/InfiniTimeOrg/InfiniTime/pull/1097 new font
generation capabilites were added. Generalize the font creation to
make it possible to reuse the `displayapp/fonts/CMakeLists.txt` file
for `InfiniSim` and just add the new cmake file to the project and
link against the new `infinitime_fonts` target.

In the following a list of changes.

Allow non-global installed `lv_font_conv` executable installed with

```sh
npm install lv_font_conv@1.5.2
```

In CMake we search for `lv_font_conv` executable. Add the found
executable to the python script `generate.py`, to remove the need for
`lv_font_conv` to be in the path.

Search for `python3` executable, if CMake version 3.12 is available.
Otherwise use `python` as hard coded executable.

Instead of adding the generated fonts to `SOURCE_FILES` variable, create
a static library `infinitime_fonts`. Link this library to the
executables instead.

Use `add_custom_target()` together with `add_custom_command()` to
generate the font.c files once (like the original PR does).
2022-05-16 11:59:44 +03:00
Yehoshua Pesach Wallach
4cb07bac53 fontgen: update README.md to remove patch advanced options 2022-05-10 22:20:02 +02:00