
InfiniTime
Firmware open source rapide pour la montre intelligente PineTime avec de nombreuses fonctionnalités, écrit en C++ moderne.
Vous êtes nouveau sur InfiniTime ?
- Premiers pas avec InfiniTime
- Mise à jour du logiciel
- À propos du firmware et du chargeur de démarrage
- Applications disponibles
- Cadrans de montre disponibles
- Cadran de montre PineTimeStyle
Applications compagnons
- Gadgetbridge (Android)
- Amazfish (SailfishOS, Ubuntu Touch, Flatpak)
- Siglo (Linux)
- InfiniLink (iOS)
- ITD (Linux)
- WatchMate (Linux)
- InfiniTimeExplorer (Web)
InfiniTimeExplorer est uniquement compatible avec les navigateurs Web prenant en charge Web BLE. Les navigateurs actuellement entièrement pris en charge incluent Chrome et Microsoft Edge.
Nous avons supprimé les mentions de NRFConnect car cette application est fermée et les versions récentes ne fonctionnent plus avec InfiniTime (la dernière version connue pour fonctionner est la 4.24.3). Si vous avez utilisé NRFConnect dans le passé, nous vous recommandons de passer à Gadgetbridge.
Développement
- Vision InfiniTime
- Structure approximative du code
- Comment implémenter une application
- Générer les polices et les symboles
- Conseils pour concevoir une interface utilisateur d'application
- Chargeur de démarrage, OTA et DFU
- Ressources externes
Contribuer
- Comment contribuer
- Conventions de codage
Construire, flasher et déboguer
- Simulateur InfiniTime
- Construire le projet
- Construire le projet avec Docker
- Construire le projet avec VSCode
- Flasher le firmware en utilisant OpenOCD et STLinkV2
- Flasher le firmware à l'aide de l'interface SWD
- Flasher le firmware en utilisant JLink
- Flasher le firmware en utilisant GDB
- Stub utilisant NRF52-DK
API
- Implémentation BLE et API
Architecture et sujets techniques
Gestion de projet
- Guide du mainteneur
- Gestion des versions
- Branches du projet
- Fichiers inclus dans les notes de version
- Fichiers nécessaires à l'usine
Licences
Ce projet est publié sous la licence publique générale GNU version 3 ou, à votre choix, toute version ultérieure.
Il intègre les projets suivants :
- RTOS : FreeRTOS sous licence MIT
- UI : LittleVGL/LVGL sous licence MIT
- Pile BLE : NimBLE sous licence Apache 2.0
- Police : Jetbrains Mono sous licence Apache 2.0
Crédits
Je ne travaille pas seul sur ce projet. Premièrement, de nombreuses personnes créent des pull request pour ce projet. Ensuite, il y a toute la communauté #pinetime : de nombreuses personnes partout dans le monde qui piratent, recherchent, expérimentent et programment Pinetime. Nous échangeons nos idées, nos expériences et notre code dans les salons de discussion et les forums.
Voici quelques personnes que je voudrais souligner :
- Atc1441 : Il travaille sur un firmware basé sur Arduino pour la Pinetime et de nombreuses autres montres intelligentes basées sur un matériel similaire. Il m'a été d'une grande aide lors de la mise en œuvre de la prise en charge du capteur de mouvement BMA421 et du pilote I²C.
- Koen : Il travaille sur un firmware basé sur RiotOS. Il a intégré des librairies similaires à moi : NimBLE, LittleVGL,… Son aide a également été inestimable !
- Lup Yuen Lee : Il est partout : il travaille sur un firmware Rust, construit un chargeur de démarrage basé sur MCUBoot pour Pinetime, conçoit une application compagnon basée sur Flutter pour smartphones et écrit de nombreux articles sur Pinetime !