Forked from Commenter25's InfiniTime25
My edited firmware for the PineTime smartwatch, with changes I mostly bodged in from other forks, and from PRs that haven't made it to main.
- Increase notif vibrate from 35ms to 300ms
- Increase timer vibrate from 35ms to 1500ms
- Change "volts" to "V" in the BatteryInfo app
Stolen from mashuptwice (deleted account and repo)
- Increase alarm timeout from 60s to 3m
- Move Music to right of watch face
- Start Music with volume buttons
Stolen from PrivateGER
- Don't alert while charging
- Add remaining time to Music
- Add swiping indicator to Music
- Swap notif indicator with a bell icon
- Tweak notifs for more text (InfiniTimeOrg#1422)
- Simple calculator (InfiniTimeOrg#1483)
- Cloned the repo with submodule recursion
git clone --recurse-submodules -j8 https://github.com/BeanieBarrow/InfiniTime
- Downloaded the gcc-arm-none-eabi-10.3-2021.10 toolchain
- Downloaded the nRF5_SDK_15.3.0_59ac345 toolchain
- Extracted both to my
/opt
directory. - Ran the commands
export ARM_NONE_EABI_TOOLCHAIN_PATH=/opt/gcc-arm-none-eabi-10.3-2021.10
andexport NRF5_SDK_PATH=/opt/nRF5_SDK_15.3.0_59ac345
. - Ran the command
cmake -DARM_NONE_EABI_TOOLCHAIN_PATH=/opt/gcc-arm-none-eabi-10.3-2021.10/ -DNRF5_SDK_PATH=/opt/nRF5_SDK_15.3.0_59ac345/ -DBUILD_DFU=1
in the root directory of the repo - Ran the command
make -j pinetime-mcuboot-app
- Transferred the firmware (
pinetime-mcuboot-app-dfu-1.13.0.zip
) to my PineTime using WatchMate.
Everything below is the original README, for convenience.
- Gadgetbridge (Android)
- AmazFish (SailfishOS)
- Siglo (Linux)
- InfiniLink (iOS) [Looking for a new maintainer]
- ITD (Linux)
- InfiniTime Vision
- Rough structure of the code
- How to implement an application
- Generate the fonts and symbols
- Tips on designing an app UI
- Bootloader, OTA and DFU
- External resources
- Versioning
- Project branches
- Files included in the release notes
- InfiniTime simulator
- Build the project
- Build the project with Docker
- Build the project with VSCode
- Flash the firmware using OpenOCD and STLinkV2
- Flash the firmware using SWD interface
- Flash the firmware using JLink
- Flash the firmware using GDB
- Stub using NRF52-DK
This project is released under the GNU General Public License version 3 or, at your option, any later version.
It integrates the following projects:
- RTOS : FreeRTOS under the MIT license
- UI : LittleVGL/LVGL under the MIT license
- BLE stack : NimBLE under the Apache 2.0 license
- Font : Jetbrains Mono under the Apache 2.0 license
I’m not working alone on this project. First, many people create PR for this projects. Then, there is the whole #pinetime community : a lot of people all around the world who are hacking, searching, experimenting and programming the Pinetime. We exchange our ideas, experiments and code in the chat rooms and forums.
Here are some people I would like to highlight:
- 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 : He’s working on a firmware based on RiotOS. He integrated similar libs as me : NimBLE, LittleVGL,… His help was invaluable too!
- Lup Yuen Lee : 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!