InfiniTimeOrg/InfiniTime
FreeFirmware for Pinetime smartwatch written in C++ and based on FreeRTOS
FreeFree tier
About InfiniTimeOrg/InfiniTime
InfiniTime is an open-source firmware for the PineTime smartwatch, built with modern C++ and FreeRTOS. It offers a rich set of features including multiple applications, customizable watch faces, weather integration, and support for various companion apps like Gadgetbridge and Amazfish. The firmware uses LittleVGL/LVGL for its UI, NimBLE for BLE connectivity, and supports over-the-air (OTA) updates. It is actively maintained by a community of developers and provides extensive documentation for building, flashing, and developing new applications.
Key Features
Multiple built-in apps (e.g., timer, heart rate, music, navigation)
Customizable watch faces including PineTimeStyle
Weather integration
BLE connectivity via NimBLE stack
UI powered by LittleVGL/LVGL
Over-the-air (OTA) firmware updates
Support for companion apps (Gadgetbridge, Amazfish, Siglo, InfiniLink, ITD, WatchMate, InfiniTimeExplorer)
Active community development and contribution
Well-documented build and flash processes
InfiniTime simulator for development
Pros & Cons
Pros
- Completely open-source under GPLv3 license
- Active and responsive community with regular updates
- Rich feature set with many pre-installed apps
- Supports multiple companion apps across platforms
- Well-documented codebase and development guides
- Simulator available for testing without hardware
Cons
- Limited to PineTime hardware (requires PineTime smartwatch)
- Initial installation may require technical knowledge and tools
- Some companion apps (e.g., InfiniTimeExplorer) require WebBLE-capable browsers
- No official native fitness or health tracking features beyond basic sensors
Best For
Replacing proprietary firmware on PineTime smartwatchCustomizing the wearable experience with apps and watch facesDeveloping and testing new smartwatch applicationsEnabling weather and notification display on PineTimeIntegrating with open-source companion apps for Android, iOS, and Linux
FAQ
How do I get started with InfiniTime?
The project provides a 'Getting started' guide covering how to build, flash, and use the firmware. It also includes instructions for updating software and details about bootloader and OTA updates.
What apps are available on InfiniTime?
InfiniTime includes multiple applications such as timer, heart rate monitor, music control, navigation, and more. It also features customizable watch faces like PineTimeStyle.
Which companion apps are supported?
InfiniTime supports Gadgetbridge (Android), Amazfish (SailfishOS, Ubuntu Touch, Flatpak), Siglo (Linux), InfiniLink (iOS), ITD (Linux), WatchMate (Linux), and InfiniTimeExplorer (Web BLE).
How can I contribute to InfiniTime?
Contributions are welcome via pull requests. The repository includes a CONTRIBUTING.md file and coding conventions. There is also a maintainer's guide for project management.
What is the license for InfiniTime?
InfiniTime is released under the GNU General Public License version 3 (GPLv3). It integrates FreeRTOS (MIT), LittleVGL/LVGL (MIT), NimBLE (Apache 2.0), and Jetbrains Mono (Apache 2.0).