| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
| |
This new implementation of the weather feature provides a new BLE API and a new weather service.
The API uses a single characteristic that allows companion apps to write the weather conditions (current and forecast for the next 5 days).
The SimpleWeather service exposes those data as std::optional fields.
This new implementation replaces the previous WeahterService.
The API is documented in docs/SimpleWeatherService.md.
|
| |
|
|
| |
Watch faces can now be selected at buid time. It's implemented in a similar way than the selection of user apps, using a list of watch face description that is generated at build time (consteval, constexpr)
|
| |
|
|
|
|
|
| |
Building with a TARGET_DEVICE set to any of the P8 variants' names
caused the build to fail, because they contained hyphens.
The build defines a macro `TARGET_DEVICE_$VARIANT`, which fails if
`$VARIANT` contains a hyphen.
|
| |
|
|
|
|
|
| |
A list of "user applications" is built at compile time. It contains all the info needed to create the application at runtime (ptr to a create() function) and to display the app in the application menu. All applications declare a TypeTrait with these information.
When a new app must be loaded, DisplayApp first check if this app is a System app (in which case it creates it like it did before). If it's not a System app, it looks for the app in the list of User applications and creates it if it found it.
Those changes allow to more easily add new app and to select which app must be built into the firmware.
Switch to C++20 (and fix a few issues in SpiMaster.cpp and Watchdog.cpp.
|
| |
|
|
|
|
| |
These are functions for converting acceleration due to gravity to angles
in degrees, and some statistical analysis including the mean and
variance.
|
| |
|
|
|
|
|
|
|
|
|
| |
* change background image to widgets
This commit removes the background image for the WatchFaceAnalog and replaces it with lvgl widgets. It aims to keep the original look.
* remove comments and background image
---------
Co-authored-by: minacode <minamoto9@web.de>
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
FreeRTOS and heap_4_infinitime.c.
LVGL supports custom implementation of malloc() and free() so using pvPortMalloc() and vPortFree() is just a matter of setting the right variables.
Other libraries (NimBLE, LittleFS) and InfiniTime code (new) call malloc() and free() from stdlib. InfiniTime now provides the file stdlib.c that provides a custom implementation for malloc(), free(), calloc() and realloc(). This ensures that all calls to the standard allocator are redirected to the FreeRTOS memory manager.
Note that realloc() is needed by NimBLE.
|
| |
|
|
| |
InfiniTime project codebase. This will allow to implement custom functionalities that are not available in the original implementation.
|
| |
|
|
|
|
|
| |
change watch face from int to enum
---------
Co-authored-by: minacode <minamoto9@web.de>
|
| |
|
|
|
|
|
| |
New implementation of the heart rate sensor data processing using a frequency based PPG algorithm.
The HRS3300 settings are fine-tuned for better signal to noise at 10Hz.
The measurement delay is now set to 100ms.
Enable and use the ambient light sensor.
FFT implementation based on ArduinoFFT (https://github.com/kosme/arduinoFFT, GPLv3.0).
|
| | |
|
| |
|
|
|
| |
This way warnings will be taken seriously, and will cause PR checks to
fail when they throw warnings.
|
| |
|
|
| |
DateTimeController can provide everything we need.
|
| |\ |
|
| | | |
|
| | |
| |
| |
| |
| |
| | |
Fix warnings.
Some clang-formatting was necessary.
DebugPins is unused and was removed.
|
| | |
| |
| |
| |
| |
| | |
Replace separate SettingSetDate and SettingSetTime with a combined screenlist.
Add DotIndicators. Similar to PageIndicator, but for use when separating screens instead of pages of a list.
Co-authored-by: Riku Isokoski <riksu9000@gmail.com>
|
| | |
| |
| |
| | |
This reverts commit 21f3bd708261ece47096961039e65d5b6f113c73.
|
| | |
| |
| |
| | |
Exclude files from unity build which currently cause compile erros because of redefinitions.
|
| | | |
|
| | |
| |
| |
| |
| |
| | |
Removed/simplified some generator expressions that had more repeated
elements than they needed to. Extracted some repeated sets of options
into separate variables as well.
|
| | |
| |
| |
| |
| | |
Only enable the warning flags when building InfiniTime firmware, not
when building third-party libraries.
|
| |/
|
|
|
| |
Don't enable coding conventions from unrelated projects. Only enable
generic checks.
|
| |\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
github.com:ITCactus/InfiniTime into ITCactus-watchface-casio-digital-G7710
# Conflicts:
# src/components/settings/Settings.h
# src/displayapp/screens/CheckboxList.cpp
# src/displayapp/screens/CheckboxList.h
# src/displayapp/screens/Clock.cpp
# src/displayapp/screens/Clock.h
# src/displayapp/screens/settings/SettingWatchFace.cpp
|
| | |
| |
| |
| | |
number info
|
| |\ \
| | |
| | | |
Infineat Watchface + support for external resources.
|
| | | |
| | |
| | |
| | | |
from the ilesystem
|
| | |\ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
# Conflicts:
# src/displayapp/screens/Symbols.h
# src/displayapp/screens/settings/SettingWatchFace.cpp
# src/displayapp/screens/settings/SettingWatchFace.h
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
| | |/ /
|/| |
| | |
| | | |
the debugging environment (USE_JLINK, USE_OPENOCD and USE_GDB_CLIENT).
|
| | | |
| | |
| | |
| | | |
Add lv_img_conf in Docker image to build resources at build time.
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | | |
A directory has been renamed
|
| | | |
| | |
| | |
| | | |
This will fix the generation of output files at the end of the build process.
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | |/
|/|
| |
| | |
* Move PageIndicator widget to its own files to reduce code duplication
* Use uint8_t in PageIndicator
|
| | |
| |
| |
| |
| | |
This enables the configuration of the LFCLK source,
as well as the target hardware board pin configuration.
|
| | | |
|
| |/
|
|
|
| |
Enable debug output for InfiniTime, Nimble and the NRF SDK
via SEGGER RTT on debug builds.
|
| | |
|
| |
|
|
|
| |
for better control of addresses used by img/fw
+ fix typo (RECOVERYY)
|