Chronio : réaliser votre propre smartwatch avec un Arduino -- ou -- comment utiliser un MCP79410 comme oscillateur 1 KHz économe

En furetant sur le net après un chouette projet Impression 3D + Arduino, je suis tombé sur Chronio.
En plus d'offrir une excellente plateforme (que l'on pourra agrémenter), Chronio utilise également un écran SHARP Memory Display, à mi-chemin entre le LCD et l'ePaper, l'affichage est vraiment superbe et très économe en énergie.

Avec son boîtier imprimé (et compatible avec les attaches standard de montre), cette montre peut fonctionner 6 mois avec un simple pile bouton de 160mAh.


Son affichage 96x96 pixels et bouton sur côté en fond un très bel objet de maker.
  • Articulé autour d'un Atmega328p avec bootloader Arduino
  • Horloge temps réel: Maxim DS3231 (déviation inférieure à 2 minutes par an).
  • Afficheur Sharp Memory LS013B4DN04 (96x96 pixels)
  • Pile bouton CR2025 de 160mAh
En vidéo, c'est mieux
Voici une petite vidéo YouTube présentant le projet.
Et pour un projet Atmel328p, il n'a pas a rougir de quoi que ce soit.



Explorer le projet en profondeur
Côté réalisation, la carte est réalisée avec les services OSHpark et permet d'avoir un résultat très compacte.
Carte (sources disponible) réalisé pour Chronio
La programmation se fait par l'intermédiaire des pastilles disponibles à l'avant de la carte (avec l'aide d'un FTDI Friend) dont le connecteur correspond aux broches disponibles sur le FTDI Friend.

Idée MCHobby
Le port série étant disponible, nous pourrions envisager le branchement de modules complémentaires comme un GPS et utiliser l'afficheur de la montre comme interface de sortie. Il serait même possible d'utiliser d'autres projets microcontrôleur communiquant avec le montre par l'intermédiaire de l'interface série... ce serait sympa... même pour le REPL de MicroPython.

Caractéristiques de Chronio:
  • L'ATMega (un 329p) est en mode veille la plupart du temps et ne fonctionne d'une fois par minutes pour rafraîchir l'heure ou vérifier si un bouton est pressé. Cela réduit la consommation a 2µA. 
  • L'afficheur nécessite cependant des impulsions régulières, ce qui nécessite la présence d'une circuit complémentaire.
  • Une interface utilisateur contrôlable avec 3 boutons sur le côté.
    Les boutons (pièces 3D) activent des switchs présents sur la carte.
  • Affiche la date et l'heure grâce à une horloge RTC DS3231.
    Affiche également la température et la tension de la pile bouton.
    Le ds3231 inclus un senseur de température pour compenser la variation de son oscillateur. L'information est simplement récupérée via le bus I2C.
  • Chronomètre
  • Un clone du jeu Flappy Bird
  • Pour sa part, le boîtier est composé de 3 éléments 3D pour une épaisseur max de 0.8mm (moins qu'une Apple Watch).
  • Compatible avec tous les bracelets 22mm
Etant open-source, le schéma est disponible sur GitHub et même très abordable pour les nouveaux venus.


L'oscillateur supplémentaire (MCP79410) pour produire un signal à 1 KHz (1000 oscillation par seconde) sur VCOM pour l'afficheur Sharp.
L'oscillateur 1KHz pour l'afficheur


Grâce à cet oscillateur, il est possible de placer le microcontrôleur Atmel en mode veille.
Il serait effectivement possible de produire le signal 1 Khz avec l'ATMega mais cela serait tellement plus énergivore.
A noter que l'oscillateur est configuré en I2C pour produire des interruptions à 1 KHz (voir la broche int). Celui-ci est couplé à un trigger de Schmitt inverseur  74HC1G14GW pour obtenir des flans montants et descendants plus franc (et inverser le signal).
Cette combinaison permet de réduire la consommation à un tel point qu'un simple pile bouton permet d'alimenter la montre pendant 6 mois!

Ce qui manque
Pas de Bluetooth (ni de WiFi), pas de port I2C accessible (pour ajouter un senseur en plus)... mais le projet est très bien fini et d'une très grande qualité.

A propos de "Sharp Memory Display"
Du coup, nous nous sommes penchés sur les afficheurs Sharp Memory Display et trouvé une référence chez notre fournisseur préféré (Adafruit Industries).
"Sharp Memory Display" d'Adafruit Industries
Ce modèle fait 1.3" (33mm) de diagonale pour une résolution de 168x64. Avec sa technologie entre l'e-paper (eInk) et l'afficheur LCD, ces écrans ont une très faible consommation! D'ailleurs ces écrans ne disposent pas de rétro-éclairage car il propose un excellent contraste permettant la lecture à la lumière naturelle (bon, pour la nuit, il faudra un point lumineux pour pouvoir lire le LCD).
Par ailleurs, l'affichage en noir sur fond gris améliore la confort de lecture.

Ressources

Aucun commentaire