thomas@hammoudi:~/dev$

Kindle dashboard : un vieux Kindle en écran permanent

Un vieux Kindle 4 transformé en écran permanent : météo, agenda, tram, dessin du jour, dont le Mac fabrique chaque image.

  • activité: Pour le plaisir
  • état: prod · utilisé
  • mode: comment ça marche
  • mis à jour:
Deux écrans du Kindle 4 : météo et prévisions à gauche, prochains passages de tram et de métro à droite, avec les noms des arrêts masqués.
Deux écrans du Kindle 4 : météo et prévisions à gauche, prochains passages de tram et de métro à droite, avec les noms des arrêts masqués.

Le problème

J’avais un Kindle de 2011 dans un tiroir : un écran d’encre électronique lisible en plein jour, qui ne consomme presque rien à l’arrêt. Dommage de le laisser dormir, et je voulais voir d’un coup d’œil la météo, mon agenda ou le prochain tram sans ouvrir un téléphone.

Ce que ça fait

La liseuse, posée en paysage sur mon bureau, fait défiler une quinzaine d’écrans en style néo-rétro : météo, qualité de l’air, agenda, courrier important, tram et métro en direct, lumière du jour pour la photo, dessin du jour, mot du jour, citation, avions qui passent. Si le Mac se tait, elle affiche d’elle-même un bandeau « hors ligne ».

Comment ça marche

Le Mac fait tout le travail, la liseuse ne fait qu’afficher. Chaque minute, un script rassemble les données, remplit une page HTML et la photographie avec un navigateur à la taille exacte de la dalle, en 16 niveaux de gris. Un petit serveur local tient l’état à jour. La liseuse, jailbreakée et branchée sur secteur, le consulte en wifi toutes les 20 secondes et ne télécharge l’image que si elle a changé. Les mises à jour de ses scripts passent par un contrôle qui refuse tout fichier abîmé.

Qui fait quoi

Qui fait quoi, en un schémakindle-dashboard/schema.svg
Kindle dashboard : qui fait quoiDes sources de données alimentent un script sur le Mac, qui remplit une page HTML, la photographie avec Chromium et la passe en 16 gris. Un petit serveur local sert l'état et les écrans à un vieux Kindle jailbreaké, qui les affiche. Un script de santé contrôle l'ensemble. $ fonctionnement --kindle-dashboard 7 briques · 1 chaîne SOURCES Météo, agenda, courrier, tram et métro, Wikipédia, une table n8n : surtout des API ouvertes. DASHBOARD.PY Rassemble les données et remplit une page HTML néo- rétro. CHROMIUM Photographie la page à la taille exacte de la dalle (Playwright). ÉCRANS 16 GRIS Un PNG par écran, tourné dans le sens de la dalle, refait chaque minute. SERVEUR.PY Sur le Mac, en service permanent : relance le rendu, sert l'état et les écrans. KINDLE 4 Jailbreaké, sur secteur. Lit l'état toutes les 20 s, télécharge l'écran s'il a changé. VERIFIER.PY Santé en une commande : serveur, écrans frais, liseuse vue récemment. données page HTML capture écrans + état wifi local contrôle
Kindle dashboard : qui fait quoiDes sources de données alimentent un script sur le Mac, qui remplit une page HTML, la photographie avec Chromium et la passe en 16 gris. Un petit serveur local sert l'état et les écrans à un vieux Kindle jailbreaké, qui les affiche. Un script de santé contrôle l'ensemble. $ fonctionnement --kindle-dashboard SOURCES Météo, agenda, courrier, tram et métro, Wikipédia, une table n8n : surtout des API ouvertes. données DASHBOARD.PY Rassemble les données et remplit une page HTML néo-rétro. page HTML CHROMIUM Photographie la page à la taille exacte de la dalle (Playwright). capture ÉCRANS 16 GRIS Un PNG par écran, tourné dans le sens de la dalle, refait chaque minute. écrans + état SERVEUR.PY Sur le Mac, en service permanent : relance le rendu, sert l'état et les écrans. wifi local KINDLE 4 Jailbreaké, sur secteur. Lit l'état toutes les 20 s, télécharge l'écran s'il a changé. CONTRÔLE VERIFIER.PY Santé en une commande : serveur, écrans frais, liseuse vue récemment.
le schéma en texte
  • Les sources : surtout des API ouvertes (météo, transports, Wikipédia), plus mon agenda et mon courrier en lecture seule.
  • dashboard.py : rassemble les données et remplit la page.
  • Chromium : photographie la page, écran par écran.
  • Le serveur local : relance le rendu chaque minute et sert l’état et les écrans.
  • Le Kindle : lit l’état, affiche l’image, et se débrouille seul si le Mac disparaît.
  • verifier.py : contrôle de santé en une commande (serveur, écrans frais, liseuse vue récemment).

Ce que vous pouvez récupérer

Le dépôt GitHub est public, avec une démonstration : demo.py fabrique tous les écrans en deux minutes, sans liseuse ni compte, avec un agenda fictif. Le code est sous licence MIT. Le guide d’installation de la liseuse est dans le README. Mes réglages personnels, eux, ne sont jamais publiés.

Ce que j'en retiens

Déporter l’intelligence sur le Mac a tout simplifié : une liseuse de quatorze ans n’a plus qu’à afficher une image. Le plus gros du travail n’est pas l’affichage mais la tenue dans la durée : que faire quand le wifi tombe, que l’horloge dérive ou qu’une mise à jour est abîmée.

tous les projets