InfiniTimeOrg/InfiniTime logo

InfiniTimeOrg/InfiniTime

Free

Firmware for Pinetime smartwatch written in C++ and based on FreeRTOS

FreeFree tier
Type
Open Source

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).