Merge from upstream
This commit is contained in:
parent
6a5aea2919
commit
3d6e8c3beb
6 changed files with 25 additions and 11 deletions
|
@ -24,7 +24,8 @@ The goal of this project is to design an open-source firmware for the Pinetime s
|
||||||
|
|
||||||
## Overview
|
## Overview
|
||||||
|
|
||||||
![Pinetime screens](images/0.7.0/montage.jpg "PinetimeScreens")
|
![Pinetime screens](images/0.14.0/collage1.png "PinetimeScreens")
|
||||||
|
![Pinetime screens](images/0.14.0/collage2.png "PinetimeScreens")
|
||||||
|
|
||||||
As of now, here is the list of achievements of this project:
|
As of now, here is the list of achievements of this project:
|
||||||
|
|
||||||
|
@ -46,6 +47,7 @@ As of now, here is the list of achievements of this project:
|
||||||
- Supported by 2 companion apps (development is in progress):
|
- Supported by 2 companion apps (development is in progress):
|
||||||
* [Gadgetbridge](https://codeberg.org/Freeyourgadget/Gadgetbridge/) (on Android)
|
* [Gadgetbridge](https://codeberg.org/Freeyourgadget/Gadgetbridge/) (on Android)
|
||||||
* [Amazfish](https://openrepos.net/content/piggz/amazfish) (on SailfishOS and Linux)
|
* [Amazfish](https://openrepos.net/content/piggz/amazfish) (on SailfishOS and Linux)
|
||||||
|
* **[Experimental]** [WebBLEWatch](https://hubmartin.github.io/WebBLEWatch/) Synchronize time directly from your web browser. [video](https://youtu.be/IakiuhVDdrY)
|
||||||
- **[Experimental]** OTA (Over-the-air) update via BLE
|
- **[Experimental]** OTA (Over-the-air) update via BLE
|
||||||
- **[Experimental]** Bootloader based on [MCUBoot](https://juullabs-oss.github.io/mcuboot/)
|
- **[Experimental]** Bootloader based on [MCUBoot](https://juullabs-oss.github.io/mcuboot/)
|
||||||
|
|
||||||
|
|
BIN
images/0.14.0/collage1.png
Normal file
BIN
images/0.14.0/collage1.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 607 KiB |
BIN
images/0.14.0/collage2.png
Normal file
BIN
images/0.14.0/collage2.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 625 KiB |
BIN
images/infinitime-logo-github.jpg
Normal file
BIN
images/infinitime-logo-github.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 37 KiB |
|
@ -2,6 +2,17 @@ cmake_minimum_required(VERSION 3.10)
|
||||||
|
|
||||||
project(pinetime-app C CXX ASM)
|
project(pinetime-app C CXX ASM)
|
||||||
|
|
||||||
|
|
||||||
|
set(CMAKE_C_STANDARD 99)
|
||||||
|
set(CMAKE_CXX_STANDARD 14)
|
||||||
|
|
||||||
|
# set(CMAKE_GENERATOR "Unix Makefiles")
|
||||||
|
set(CMAKE_C_EXTENSIONS OFF)
|
||||||
|
set(CMAKE_C_STANDARD_REQUIRED ON)
|
||||||
|
set(CMAKE_CXX_EXTENSIONS OFF)
|
||||||
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||||
|
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
||||||
|
|
||||||
# define some variables just for this example to determine file locations
|
# define some variables just for this example to determine file locations
|
||||||
set(NRF_PROJECT_NAME pinetime-app)
|
set(NRF_PROJECT_NAME pinetime-app)
|
||||||
set(NRF_BOARD pca10040)
|
set(NRF_BOARD pca10040)
|
||||||
|
@ -760,7 +771,7 @@ target_compile_options(nrf-sdk PRIVATE
|
||||||
$<$<AND:$<COMPILE_LANGUAGE:C>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -O3>
|
$<$<AND:$<COMPILE_LANGUAGE:C>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -O3>
|
||||||
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:DEBUG>>: ${COMMON_FLAGS} -O0>
|
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:DEBUG>>: ${COMMON_FLAGS} -O0>
|
||||||
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -O3>
|
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -O3>
|
||||||
$<$<COMPILE_LANGUAGE:ASM>: -MP -MD -std=c99 -x assembler-with-cpp>
|
$<$<COMPILE_LANGUAGE:ASM>: -MP -MD -x assembler-with-cpp>
|
||||||
)
|
)
|
||||||
|
|
||||||
# NimBLE
|
# NimBLE
|
||||||
|
@ -772,7 +783,7 @@ target_compile_options(nimble PRIVATE
|
||||||
$<$<AND:$<COMPILE_LANGUAGE:C>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -O3 -Wno-unused-but-set-variable -Wno-maybe-uninitialized>
|
$<$<AND:$<COMPILE_LANGUAGE:C>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -O3 -Wno-unused-but-set-variable -Wno-maybe-uninitialized>
|
||||||
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:DEBUG>>: ${COMMON_FLAGS} -O0 -g3 -Wno-unused-but-set-variable -Wno-maybe-uninitialized>
|
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:DEBUG>>: ${COMMON_FLAGS} -O0 -g3 -Wno-unused-but-set-variable -Wno-maybe-uninitialized>
|
||||||
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -O3 -Wno-unused-but-set-variable -Wno-maybe-uninitialized>
|
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -O3 -Wno-unused-but-set-variable -Wno-maybe-uninitialized>
|
||||||
$<$<COMPILE_LANGUAGE:ASM>: -MP -MD -std=c99 -x assembler-with-cpp>
|
$<$<COMPILE_LANGUAGE:ASM>: -MP -MD -x assembler-with-cpp>
|
||||||
)
|
)
|
||||||
|
|
||||||
# lvgl
|
# lvgl
|
||||||
|
@ -784,7 +795,7 @@ target_compile_options(lvgl PRIVATE
|
||||||
$<$<AND:$<COMPILE_LANGUAGE:C>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -O3>
|
$<$<AND:$<COMPILE_LANGUAGE:C>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -O3>
|
||||||
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:DEBUG>>: ${COMMON_FLAGS} -O0 -g3>
|
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:DEBUG>>: ${COMMON_FLAGS} -O0 -g3>
|
||||||
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -O3>
|
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -O3>
|
||||||
$<$<COMPILE_LANGUAGE:ASM>: -MP -MD -std=c99 -x assembler-with-cpp>
|
$<$<COMPILE_LANGUAGE:ASM>: -MP -MD -x assembler-with-cpp>
|
||||||
)
|
)
|
||||||
|
|
||||||
# Build autonomous binary (without support for bootloader)
|
# Build autonomous binary (without support for bootloader)
|
||||||
|
@ -799,12 +810,12 @@ target_compile_options(${EXECUTABLE_NAME} PUBLIC
|
||||||
$<$<AND:$<COMPILE_LANGUAGE:C>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -O3>
|
$<$<AND:$<COMPILE_LANGUAGE:C>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -O3>
|
||||||
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:DEBUG>>: ${COMMON_FLAGS} -O0 -g3>
|
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:DEBUG>>: ${COMMON_FLAGS} -O0 -g3>
|
||||||
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -O3>
|
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -O3>
|
||||||
$<$<COMPILE_LANGUAGE:ASM>: -MP -MD -std=c99 -x assembler-with-cpp>
|
$<$<COMPILE_LANGUAGE:ASM>: -MP -MD -x assembler-with-cpp>
|
||||||
)
|
)
|
||||||
|
|
||||||
set_target_properties(${EXECUTABLE_NAME} PROPERTIES
|
set_target_properties(${EXECUTABLE_NAME} PROPERTIES
|
||||||
SUFFIX ".out"
|
SUFFIX ".out"
|
||||||
LINK_FLAGS "-mthumb -mabi=aapcs -std=gnu++98 -std=c99 -L ${NRF5_SDK_PATH}/modules/nrfx/mdk -T${NRF5_LINKER_SCRIPT} -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -Wl,--gc-sections --specs=nano.specs -lc -lnosys -lm -Wl,-Map=${EXECUTABLE_FILE_NAME}.map"
|
LINK_FLAGS "-mthumb -mabi=aapcs -L ${NRF5_SDK_PATH}/modules/nrfx/mdk -T${NRF5_LINKER_SCRIPT} -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -Wl,--gc-sections --specs=nano.specs -lc -lnosys -lm -Wl,-Map=${EXECUTABLE_FILE_NAME}.map"
|
||||||
CXX_STANDARD 11
|
CXX_STANDARD 11
|
||||||
C_STANDARD 99
|
C_STANDARD 99
|
||||||
)
|
)
|
||||||
|
@ -831,12 +842,12 @@ target_compile_options(${EXECUTABLE_MCUBOOT_NAME} PUBLIC
|
||||||
$<$<AND:$<COMPILE_LANGUAGE:C>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -O3>
|
$<$<AND:$<COMPILE_LANGUAGE:C>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -O3>
|
||||||
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:DEBUG>>: ${COMMON_FLAGS} -O0 -g3>
|
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:DEBUG>>: ${COMMON_FLAGS} -O0 -g3>
|
||||||
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -O3>
|
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -O3>
|
||||||
$<$<COMPILE_LANGUAGE:ASM>: -MP -MD -std=c99 -x assembler-with-cpp>
|
$<$<COMPILE_LANGUAGE:ASM>: -MP -MD -x assembler-with-cpp>
|
||||||
)
|
)
|
||||||
|
|
||||||
set_target_properties(${EXECUTABLE_MCUBOOT_NAME} PROPERTIES
|
set_target_properties(${EXECUTABLE_MCUBOOT_NAME} PROPERTIES
|
||||||
SUFFIX ".out"
|
SUFFIX ".out"
|
||||||
LINK_FLAGS "-mthumb -mabi=aapcs -std=gnu++98 -std=c99 -L ${NRF5_SDK_PATH}/modules/nrfx/mdk -T${NRF5_LINKER_SCRIPT_MCUBOOT} -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -Wl,--gc-sections --specs=nano.specs -lc -lnosys -lm -Wl,-Map=${EXECUTABLE_MCUBOOT_FILE_NAME}.map"
|
LINK_FLAGS "-mthumb -mabi=aapcs -L ${NRF5_SDK_PATH}/modules/nrfx/mdk -T${NRF5_LINKER_SCRIPT_MCUBOOT} -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -Wl,--gc-sections --specs=nano.specs -lc -lnosys -lm -Wl,-Map=${EXECUTABLE_MCUBOOT_FILE_NAME}.map"
|
||||||
CXX_STANDARD 11
|
CXX_STANDARD 11
|
||||||
C_STANDARD 99
|
C_STANDARD 99
|
||||||
)
|
)
|
||||||
|
@ -860,12 +871,12 @@ target_compile_options(${EXECUTABLE_GRAPHICS_NAME} PUBLIC
|
||||||
$<$<AND:$<COMPILE_LANGUAGE:C>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -O3>
|
$<$<AND:$<COMPILE_LANGUAGE:C>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -O3>
|
||||||
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:DEBUG>>: ${COMMON_FLAGS} -O0 -g3>
|
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:DEBUG>>: ${COMMON_FLAGS} -O0 -g3>
|
||||||
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -O3>
|
$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:RELEASE>>: ${COMMON_FLAGS} -O3>
|
||||||
$<$<COMPILE_LANGUAGE:ASM>: -MP -MD -std=c99 -x assembler-with-cpp>
|
$<$<COMPILE_LANGUAGE:ASM>: -MP -MD -x assembler-with-cpp>
|
||||||
)
|
)
|
||||||
|
|
||||||
set_target_properties(${EXECUTABLE_GRAPHICS_NAME} PROPERTIES
|
set_target_properties(${EXECUTABLE_GRAPHICS_NAME} PROPERTIES
|
||||||
SUFFIX ".out"
|
SUFFIX ".out"
|
||||||
LINK_FLAGS "-mthumb -mabi=aapcs -std=gnu++98 -std=c99 -L ${NRF5_SDK_PATH}/modules/nrfx/mdk -T${NRF5_LINKER_SCRIPT} -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -Wl,--gc-sections --specs=nano.specs -lc -lnosys -lm -Wl,-Map=${EXECUTABLE_GRAPHICS_FILE_NAME}.map"
|
LINK_FLAGS "-mthumb -mabi=aapcs -L ${NRF5_SDK_PATH}/modules/nrfx/mdk -T${NRF5_LINKER_SCRIPT} -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -Wl,--gc-sections --specs=nano.specs -lc -lnosys -lm -Wl,-Map=${EXECUTABLE_GRAPHICS_FILE_NAME}.map"
|
||||||
CXX_STANDARD 11
|
CXX_STANDARD 11
|
||||||
C_STANDARD 99
|
C_STANDARD 99
|
||||||
)
|
)
|
||||||
|
|
|
@ -33,6 +33,7 @@ Clock::Clock(DisplayApp* app,
|
||||||
{
|
{
|
||||||
[this]() -> std::unique_ptr<Screen> { return WatchFaceDigitalScreen(); },
|
[this]() -> std::unique_ptr<Screen> { return WatchFaceDigitalScreen(); },
|
||||||
[this]() -> std::unique_ptr<Screen> { return WatchFaceAnalogScreen(); },
|
[this]() -> std::unique_ptr<Screen> { return WatchFaceAnalogScreen(); },
|
||||||
|
// Examples for more watch faces
|
||||||
//[this]() -> std::unique_ptr<Screen> { return WatchFaceMinimalScreen(); },
|
//[this]() -> std::unique_ptr<Screen> { return WatchFaceMinimalScreen(); },
|
||||||
//[this]() -> std::unique_ptr<Screen> { return WatchFaceCustomScreen(); }
|
//[this]() -> std::unique_ptr<Screen> { return WatchFaceCustomScreen(); }
|
||||||
},
|
},
|
||||||
|
@ -71,7 +72,7 @@ std::unique_ptr<Screen> Clock::WatchFaceAnalogScreen() {
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
// examples
|
// Examples for more watch faces
|
||||||
std::unique_ptr<Screen> Clock::WatchFaceMinimalScreen() {
|
std::unique_ptr<Screen> Clock::WatchFaceMinimalScreen() {
|
||||||
return std::unique_ptr<Screen>(new Screens::WatchFaceMinimal(app, dateTimeController, batteryController, bleController, notificatioManager, settingsController));
|
return std::unique_ptr<Screen>(new Screens::WatchFaceMinimal(app, dateTimeController, batteryController, bleController, notificatioManager, settingsController));
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue