- J’ai récemment reçu de Sensor Watch une nouvelle carte logique de remplacement pour la Casio F-91W
- La F-91W est l’une des montres à quartz les plus populaires au monde, avec environ 90 millions d’unités vendues
- La carte Sensor Watch remplace le mouvement à quartz d’origine de la F-91W par un nouveau cerveau basé sur ARM Cortex M0+
- Elle réutilise l’écran LCD d’origine, les boutons et le buzzer piézo, et la carte est programmable
- Le projet Sensor Watch propose des cadrans faciles à modifier et de petites applications utilitaires
- Il n’y a pas de radio Bluetooth, mais le boîtier léger de montre utilitaire, l’autonomie de plusieurs mois et la possibilité de la reconfigurer chez soi sont de sérieux atouts
- En environ une heure, j’ai remplacé la carte logique, configuré les secrets 2FA de mes comptes Google et Github, et pu consulter au poignet les codes OTP que j’utilise souvent
- J’ai aussi écrit un nouveau cadran de compteur de vitesse pouvant servir de stroke meter pour l’aviron ou de cadence meter
- Un émulateur basé sur wasm, facile à tester sur ordinateur, est également fourni
Cadran TOTP
- Ce cadran génère des mots de passe à usage unique basés sur le temps (TOTP), ce qui permet de se connecter en toute sécurité à des sites populaires comme Google et Github
- Appuyez sur le bouton d’alarme pour faire défiler les sites web / secrets TOTP configurés
- Il prend en charge plusieurs sites web / secrets TOTP, et il faut extraire le secret depuis le QR code TOTP pour l’ajouter au code source
Édition de totp_face.c
- Pour supprimer la clé de démonstration et ajouter une clé à la fin de la liste :
- augmentez de un le nombre dans
static const uint8_t num_keys = 2;
- ajoutez des octets hexadécimaux séparés par des virgules dans
static uint8_t keys[] = {}
- ajoutez la taille du secret dans
static const uint8_t key_sizes[] = {}
- ajoutez une entrée
30 dans static const uint32_t timesteps[] = {}
- ajoutez le libellé du secret dans
static const char labels[][2] = {}
Écrire un nouveau cadran – compteur de vitesse
- Tout le code de ce cadran se trouve dans la pull request soumise au projet principal
- L’implémentation se trouve principalement dans une unique fonction de boucle principale
Gestion des principaux événements
- Quand le cadran est activé, il affiche "RA"
- Une pression sur le bouton MODE passe au cadran suivant
- Une pression sur le bouton LIGHT allume l’éclairage
- Une pression sur le bouton ALARM :
- met à jour la vitesse calculée à partir de l’intervalle avec la pression précédente
- réinitialise le compteur de ticks
- demande une période de ticks rapide
- À chaque tick, il affiche la vitesse actuelle, ou "Hi" si elle dépasse 500 par minute, ou "Lo" si elle est inférieure à 1 par minute
- Il incrémente le compteur de ticks
Résumé de GN⁺
- Sensor Watch étend les fonctions de la Casio F-91W avec des cadrans personnalisables et des applications utilitaires
- La nouvelle carte logique basée sur ARM Cortex M0+ est programmable et permet d’ajouter diverses fonctionnalités
- Le cadran TOTP permet de se connecter en toute sécurité à des sites web populaires
- Le nouveau cadran de compteur de vitesse peut être utile comme stroke meter pour l’aviron ou comme cadence meter
- Ce projet offre une opportunité intéressante d’étendre et de personnaliser les fonctions de la montre
1 commentaires
Avis Hacker News
Certains trouvent gênant de saisir une clé secrète TOTP sur une page web
base32etodC'est le genre de contenu attendu sur HN
Les F-91W et A158W ont le même format et sont d'excellentes montres pour leur prix
La GA-B2100-1AJF est l'une des G-Shock les plus stylées et offre beaucoup de fonctionnalités
L'efficacité de l'affichage de la montre est impressionnante
Une personne travaillant chez Nixon aimerait appliquer ce projet aux montres numériques Nixon
Le fait de devoir recompiler puis reflasher la montre peut limiter l'usage du TOTP
Certains aimeraient que les montres calculatrices Casio aient ce genre de fonctionnalité
Il semble que l'émulateur WASM n'émule pas l'easter egg Casio
Quelqu'un utilise ce projet tous les jours et a implémenté une nouvelle interface pour définir les codes TOTP
Certains aimeraient qu'il fonctionne avec les tokens SecurID
D'autres se demandent s'il est vraiment bon pour la sécurité d'afficher le TOTP sur une montre