Où sommes nous ?

Retour

Montre programmable Lilygo TWatch 2020-v1

Mon coeur de geek en avait rêvé, Lilygo l'a fait : pour une 20e d'€uro, ils nous proposent une montre totalement programmable propulsée par le très connu ESP32 (double coeurs). De base, elle propose donc

Quelques mots pour parler du modèle 2019 : beaucoup moins esthétique car logé dans "un gros boitier", elle offre l'avantage de laisser de la place pour des modules comme le GPS, le LoRa, carte SD ... et de sortir quelques GPIOs pour permettre des extensions externes. Tout ceci n'est plus possible avec le modèle de 2020, faute de place : on ne peut pas tout avoir .

Déballage

Comme ils le disent eux-mêmes, généralement les produits faits pour le DIY ne brillent pas par leur design ... et c'était le cas de la version 2019. Cette TWatch 2020 a au contraire un boitier soigné qui ne dénote pas par rapport aux autres montres intelligentes courantes (évidemment, pas comparable avec les marques qui visent le haut de gamme ... pas le même prix, pas le même usage). Certains semblent le trouver un peu épais (1mm de plus que mon autre montre connectée) mais ça ne choque pas et surtout, ça laisse la place pour des extensions.

A noter aussi que comme la protection de l'écran, il est de bonne facture et résistant aux chocs, rayures et autres agressions.

L'écran de 240x240 pixels est très lisible, très lumineux et donc d'une excellente qualité ; cependant, si on tente l'analogie avec ce qui se fait en téléphonie, il y avait quelques millimètres à gagner en haut et en bas ...

Bref, une montre très très bien finie bien que ce soit un produit visant clairement le DIY, souligné d'ailleurs par un packaging soigné comme on peut le voir sur la photo.

Premier essai

La montre arrive flashée avec un soft qui tient clairement du gadget :

Bref, il ne sert à rien si ce n'est à faire joli.

Comme ils le disent eux-mêmes dans la vidéo de présentation : c'est une montre pour bidouilleur, si vous cherchez un produit fini, passez votre chemin.

L'écran se montre sensible et précis, ce n'est pas le cas de l'unique bouton dont le but est d'allumer/éteindre la montre. Il réagit "quand il veut" ... mais ce n'est pas sa faute : le soft plante régulièrement ... comme le prouve les messages de boot qui s'affichent lorsque la montre est réticente à se réveiller. Une fois flashé avec mon propre code qui ne plante pas, il fonctionne normalement.

Bref, programmons

Développons

Installation de l'IDE

La procédure d'installation de l'IDE est la même qu'avec les ESP8266 : je vous renvoie donc à la page idoine.

Menu > Fichiers > Préférence : il faut ajouter l'URL de définition de l'ESP32

https://dl.espressif.com/dl/package_esp32_index.json
Si comme dans mon cas, vous utilisez aussi des ESP8266, il suffit de mettre les 2 URLs séparées par une virgule
http://arduino.esp8266.com/stable/package_esp8266com_index.json, 
https://dl.espressif.com/dl/package_esp32_index.json

Outils > Type de carte > Gestionnaire de carte : sélectionnez "ESP32 by Espressif Systems" et installer ... patientez.

Ensuite : Outils > Type de carte > Gestionnaire de carte > ESP32 Arduino > TTGO watch

Bibliothèque de la montre

Cette bibliothèque contient tout ce qu'il faut pour accéder au hardware de la montre ... et même plus.

  1. télécharger le zip depuis https://github.com/Xinyuan-LilyGO/TTGO_TWatch_Library
  2. dans l'IDE, Croquis > Inclure une bibliothèque > Ajouter une bibiothèque Zip ... sélectionner le zip que vous avez télécharger.

Les bibliothèques sont stockées dans /home/<utilisateur>/Arduino/libraries

Ca a beau être la méthode recommandée, car la plus simple, j'ai préféré cloner directement le repo dans libraries histoire de pouvoir faire des git pull réguliers pour avoir la dernière version à jour.

A l'usage

Côté hardware, c'est simplement le pied : l'ESP32 est très puissant et le fait qu'il soit double cœur ouvre la porte à un vrai multi-tâches (évidemment impressionnant pour une ... montre). Niveau mémoire, il y a de quoi faire d'autant plus avec la présence de la PS-RAM. Je détaillerai plus bas les autres composants, mais il faut noter quand même la présence du contrôleur d'alimentation, AXP202 (dont nous connaissons déjà le grand frère AXP209 présent dans les BananaPI) qui prend en charge non seulement la batterie, mais aussi permet de désactiver à la demande certains composants. Simplement génial.

Niveau software, c'est de l'Arduino donc ... on a la liberté d'y mettre exactement tout ce que l'on veut, de A à Z.

Le framework préconisé est composé de 3 composants :

Si le premier est correctement documenté ... c'est l'aventure avec les 2 autres.

Pour en faire un objet vraiment utile, il faut y ajouter le « code montre ».  La bibliothèque pointe vers le répo du soft installé par défaut  (lui-même, visiblement basé sur ce vieux projet).
Alors évidemment, on sort du gadget, mais ... pas emballé non plus : plein de trucs totalement redondants avec la librairie (et qui visiblement n'ont plus rien à faire là), un code relativement abscons, parfois mal foutu et surtout STRICTEMENT AUCUN COMMENTAIRE : Etonnant pour un projet "communautaire". Alors, s'il est possible d'y rajouter des modules, mais après avoir décortiqué l'existant pour comprendre comment. De plus, il semblerait qu'il soit d'une stabilité toute relative.

J'ai donc passé mon chemin : Mon but est évidemment d'y mettre le mien sinon, pourquoi fait du DIY

Conclusion

Loin d’être moche, doté d’un écran excellent, c’est vraiment prodigieux d’avoir de telles possibilités a porté de main (c’est le cas de le dire) : total liberté d’y mettre ce que l’on souhaite, la geekitude portée à son paroxysme … les experts en sécurité aimeront sans doute moins.

J’étais un peu dubitatif quant à la tenue de la batterie : avec un simple light_sleep() et Wifi / Bluetooth évidemment déconnectés, je l’ai fait tenir presque une journée (mon autre montre ne fait pas mieux). Je vais m’attaquer aux deep_sleep() pour sans doute d’encore meilleurs résultats.                                                                                          

Bref, je suis simplement EMBALLE par cette montre : vraiment !

Après 2 semaines à jouer avec

Tenue physique

La première impression sur le boitier est confirmée : la montre est de bonne facture et solide. L'écran comme le boitier ne se rayent pas facilement, restent propre.

Autonomie

Je dois avouer que j'avais vraiment peur avec une batterie de seulement 380 mAh ... mais à l'usage "normal" (regarder l'heure de temps en temps) la montre tient environ 2 jours.
Evidemment, les WiFi et Bluetooth sont restés éteints, mais le mode "light sleep" était utilisé ce qui laisse une bonne marge en passant en deep-sleep : à nous de créer un code "intelligent" .

Programmation

Là, j'ai galéré un peu plus :


Visitez :
La liste de nos voyages
Nos sorties Ski et rando
Copyright Laurent Faillie 2001-2020
N'oubliez pas d'entrer le mot de passe pour voir aussi les photos perso.
Contactez moi si vous souhaitez réutiliser ces photos et pour les obtenir avec une plus grande résolution.
Visites durant les 7 derniers jours Nombre de visites au total.

Vous pouvez laissez un commentaire sur cette page.