Table des matières:
2025 Auteur: John Day | [email protected]. Dernière modifié: 2025-01-23 14:46
Cette horloge numérique emblématique des années 1970 a maintenant une nouvelle vie en affichant les statistiques de YouTube, grâce à un écran e-ink génial Pimoroni "Inky pHAT" et à un Raspberry Pi Zero. Il utilise un simple script Python pour interroger régulièrement l'API Youtube, actualisant l'affichage avec les données qu'il récupère, affichant les toutes dernières statistiques du site. L'interrupteur marche/arrêt d'alarme d'origine à l'arrière bascule l'affichage entre les abonnés et les vues pour un site YouTube spécifique (dans ce cas le mien !).
L'horloge elle-même est un modèle Digitron, une horloge LED assez ancienne pour le marché grand public, solidement et élégamment logée dans un corps en aluminium robuste.
La vidéo complète du projet montrant le code et la construction est sur https://www.youtube.com/embed/jKEZ2S3fj38 au cas où vous ne pourriez pas voir la vidéo intégrée, si vous voulez juste la voir en action, il y a aussi un aperçu plus court.
Fournitures
Réveil Digitron des années 1970
Raspberry Pi Zéro / Zéro W
Pimoroni Inky pHAT
12 câbles de démarrage femelle à mâle
Écrous et boulons
Étape 1: Retour dans le temps pour l'upcycling
J'ai acheté cette horloge lors d'une vente il y a quelques années et jusqu'à récemment, elle était utilisée quotidiennement, nichée sous l'unité de télévision et permettant de garder l'heure. Récemment, cependant, nous sommes entrés dans la pièce pour trouver l'affichage à LED clignotant follement, avec un bourdonnement inquiétant, et il était évidemment temps qu'il se retire dans l'atelier.
J'avais d'abord été attiré par sa construction et son style solides - c'est à peu près un morceau d'aluminium solide et très lourd. J'ai tellement aimé l'esthétique que j'ai décidé de reconstruire l'horloge maintenant cassée en un appareil IoT discret pour fournir des informations passives dans mon bureau.
Le démontage m'a donné un gros indice sur son encombrement - les horloges LED modernes auront souvent un adaptateur "verrue murale" et fonctionneront à basse tension, mais ce monstre a pris la pleine tension du secteur et avait un gros transformateur dans l'horloge elle-même - ce qui explique son poids !
Mis à part les boulons maintenant le support en place, le reste des composants était fixé aux panneaux arrière ou avant, qui étaient en plastique. J'ai jeté le transformateur, le circuit et l'ancien écran LED, et je me suis retrouvé avec une coque solide, des panneaux avant et arrière et quelques commutateurs, que j'ai mis en boîte en attendant que la bonne idée se présente.
Étape 2: Création de canaux
Il y a environ un an, j'ai commencé "Old Tech. New Spec." sur YouTube - une chaîne dédiée aux vidéos de mon projet avec un format et un design cohérents. J'avais commencé à aimer faire des vidéos de projets presque autant que les projets eux-mêmes et cela semblait être la prochaine étape logique. Les séquences ne manquaient pas non plus, car je vidéo régulièrement des choses comme des démontages afin que je puisse regarder en arrière plus tard et voir comment les choses sont censées s'emboîter.
Je n'ai pas encore sorti beaucoup de vidéos mais j'apprends quelque chose de nouveau de chacune. La vidéo de la récente "PiNG Video Doorbell" était la plus amusante jusqu'à présent, mais elle était beaucoup trop longue - j'ai donc décidé que le prochain projet serait un compteur de statistiques YouTube simple et minimaliste, pour m'asseoir sur mon bureau et m'aider à rester motivé. Maintenant, je devais juste comprendre comment obtenir les chiffres de YouTube sur le Pi - à quel point cela pouvait-il être difficile ?
Étape 3: Saisir les statistiques
La vidéo de code est à:
J'ai commencé mes recherches en suivant un guide du magazine MagPi, qui récupérait les statistiques des abonnés à partir d'un tas d'API sociales différentes (interfaces de programmation d'applications), stockait les nombres dans une base de données MySQL, puis les affichait sur un écran LED. Cela a bien fonctionné mais semblait exagéré pour ce projet, j'ai donc cherché une solution plus simple, ayant encore appris de précieuses leçons sur le fonctionnement des API.
J'ai rapidement découvert le module Requests pour Python, et après avoir parcouru quelques exemples extrêmement utiles, j'ai réalisé que je pouvais facilement interroger l'API YouTube et renvoyer des statistiques de base pour ma chaîne.
Si vous souhaitez faire quelque chose de similaire, la première étape consiste à vous connecter à la console Google et à créer un nouveau projet. À partir de là, vous pouvez lier l'API YouTube à votre projet et récupérer les informations d'identification dont vous avez besoin (identifiant de canal et clé API) à retirer. les statistiques à l'aide de Python. J'ai suivi le guide très utile de Google pour configurer le projet et obtenir la clé API, et j'ai suivi ces étapes pour récupérer l'ID de canal.
Le code Python que j'ai utilisé est documenté sur Github - il est commenté et assez simple à utiliser pour vous-même tant que vous collez vos propres informations d'identification. Il utilise uniquement le module Requests, qui est déjà installé par défaut sur Raspbian, donc à part l'affichage, il n'y a rien d'autre à installer, sauf si vous souhaitez utiliser une police spécifique. Cependant, vous n'êtes certainement pas limité à YouTube, le module Requests est très flexible et peut vous aider à récupérer des données à partir de milliers de sources, un exemple serait un compteur de pas quotidien, se connectant à une API de fitness.
Une fois que j'étais satisfait, j'ai configuré le script Python pour qu'il démarre automatiquement au démarrage en modifiant le fichier de démarrage automatique:
sudo nano /etc/xdg/lxsession/LXDE-pi/autostart
…et en ajoutant la ligne suivante en bas:
@python3 /home/pi/YTcounter.py
Maintenant que j'ai pu récupérer les chiffres que je voulais sur YouTube, l'étape suivante consistait à les afficher - d'une manière qui correspondrait au style rétro de l'horloge.
Étape 4: L'option Inky
J'ai envisagé plusieurs options d'affichage différentes pour ce projet, mais j'ai opté pour le Pimoroni Inky pHAT - un petit écran e-ink tricolore pour le Pi. J'en ai acheté un au cours de l'hiver après avoir récupéré un bon lors du défi Yarr Booty de l'année dernière, mais je n'ai jamais eu le temps de l'utiliser, donc cela semblait être l'opportunité idéale. De plus, le plus important, l'affichage était d'une belle nuance de rouge, parfaitement assortie au panneau avant de l'horloge d'origine.
Le logiciel pour l'Inky pHAT a été facilement installé en suivant les instructions de configuration et en un rien de temps, j'ai exécuté l'un des exemples sur mon Test Pi pour créer un badge nominatif sympa. Après quelques essais supplémentaires, j'ai pu afficher du texte de base à l'aide d'une police de caractères spécifique (correspondant à celle que j'utilise dans ma marque YouTube), et à partir de là, il était simple d'afficher la sortie de la demande d'API - les commentaires dans le code Github montrent comment ceci est codé étape par étape.
L'Inky est conçu pour s'adapter au-dessus de l'en-tête GPIO à 40 broches du Pi, mais je voulais qu'il le fixe à "l'écran", alors j'ai décidé de le connecter au Pi via des câbles de raccordement mâle-femelle à la place - cela a fait son placement plus flexible et a laissé quelques broches GPIO de rechange pour connecter une LED et un commutateur (plus sur celles-ci plus tard). J'ai suivi le schéma sur pinout.xyz, noté que 8 broches GPIO étaient nécessaires, branché les câbles, testé et - rien ! Je n'avais pas réalisé que même si seulement 8 broches GPIO étaient nécessaires, le pHAT devait également être connecté à plusieurs broches GND. Une fois que tout cela a été connecté avec des cavaliers (une affaire délicate), l'Inky a de nouveau fonctionné comme prévu, un grand soulagement.
Avec le code qui fonctionnait, je faisais maintenant face au défi habituel - insérer toutes les pièces dans le boîtier.
Étape 5: Lego, découper et coller
La vidéo complète de la construction est sur:
Le montage du Pi Zero dans le boîtier était le premier, et pour cela je me suis rabattu sur mon matériau de construction préféré, Lego. Il est tout simplement parfait pour assembler des composants et permet surtout un démontage et un assemblage faciles. Après avoir percé quelques trous dans les plaques de base Lego, j'en ai fixé un sur la carte Pi et un sur le corps de l'horloge avec ses boulons de support d'origine, afin qu'ils se clipsent et maintiennent le Pi dans la bonne position.
Ensuite, il y avait le "visage" - le plexiglas rouge d'origine à l'avant de l'horloge était trop opaque pour que l'écran Inky s'affiche efficacement, j'ai donc dû découper une section pour qu'il puisse regarder à travers. C'était sans aucun doute la partie la plus difficile de la construction, car le trou devait être coupé très précisément et si je le bousillais, il n'y avait aucun espoir de remplacement, sauf d'en avoir un sur mesure découpé au laser (que j'ai recherché juste au cas où !). À l'aide d'un pied à coulisse bon marché (mon nouvel outil préféré), j'ai pu mesurer et marquer avec précision le contour du trou, que j'ai ensuite découpé grossièrement avec un outil rotatif et rangé avec une petite lime. C'était lent et a pris toute une soirée mais en valait la peine!
L'Inky pHAT a ensuite été collé à chaud aussi soigneusement que possible sur le plexiglas rouge, prêt à être assemblé.
Étape 6: Touches finales et assemblage
En expérimentant les réponses de l'API YouTube, j'ai découvert que je pouvais renvoyer deux nombres "intéressants" distincts: les abonnés et le nombre total de vues. Avec l'Inky pHAT, il aurait été possible d'afficher les deux à la fois, mais j'ai vraiment aimé la propreté d'une horloge d'un seul grand nombre (taille de la police pas le montant !). Avec quelques ajustements au code, j'ai pu câbler le commutateur "Alarm On/Off" d'origine de l'horloge au GPIO, afin que l'affichage puisse être basculé entre les abonnés et les vues - c'était une touche satisfaisante, d'autant plus que le nombre de vues change bien plus souvent que le nombre d'abonnés !
Ensuite, j'ai ajouté une LED blanche brillante au GPIO, en la codant pour qu'elle s'allume juste avant l'envoi de la demande d'API et s'éteigne ensuite. J'avais déjà gratté toute la peinture à l'arrière du plastique rouge translucide, donc l'idée était que l'horloge brillerait un peu en rouge pendant que les chiffres étaient actualisés.
Avec toutes les connexions GPIO faites à l'avance et le câble d'alimentation connecté, l'assemblage s'est très bien passé, en grande partie grâce au Lego qui maintient les choses en place. Les panneaux avant et arrière étaient bien ajustés par friction, mais se sont finalement clipsés - j'espère juste que je n'aurai pas à le démonter de si tôt. Le moment de vérité a été le premier allumage après l'assemblage, avec les câbles de démarrage qui serpentaient à l'intérieur du boîtier et les connexions GPIO si serrées que je n'avais pas de grands espoirs, mais j'ai été ravi lorsque l'écran s'est rafraîchi après ce qui semblait être une heure processus de démarrage.
Étape 7: Chiffres de motivation
J'adore le résultat de ce projet, c'est certainement l'un des "plus propres" que j'ai jamais construits, grâce au magnifique design en aluminium massif de l'horloge d'origine. Cela a également été une excellente expérience d'apprentissage, j'ai appris beaucoup de choses sur le travail avec les API et l'encre électronique que je sais que j'utiliserai dans de futurs projets.
Ce que j'aime le plus, c'est la simplicité et la praticité, il a un seul travail, le fait bien et a fière allure tout en le faisant. Je n'avais pas tendance à garder un œil sur les statistiques de YouTube auparavant, mais cela a apporté des données en ligne brutes dans mon bureau, présentées de manière attrayante et non intrusive. Je ne pourrai peut-être jamais construire le public pour Old Tech. Nouvelle spéc. des milliers, mais tant que c'est amusant, je continuerai à faire des projets et des vidéos pour, espérons-le, inspirer plus de gens à recycler leurs anciens appareils en quelque chose de nouveau et d'utile.
Les enfants et moi sommes fascinés de voir le nombre de vues changer, même légèrement, cela nous permet de savoir que quelque part dans le monde, quelqu'un vient de visionner une vidéo de projet, et cela nous incite définitivement à continuer à créer et à partager.
Si vous avez aimé ce projet, veuillez consulter mes autres Instructables pour un recyclage plus ancien de la technologie et abonnez-vous à la chaîne YouTube pour un contenu vidéo régulier.
Premier prix du challenge IoT
Conseillé:
Scooter Cylon LED - Scanner Larson des années 80 : 5 étapes (avec photos)
Scooter Cylon LED - Scanner Larson des années 80 : Ce projet est une mise à niveau des années 80 vers un scooter des années 80. soudure. Le circuit et le code sont remixés à partir de
Conversion USB du joystick des années 1980 : 7 étapes (avec photos)
Conversion USB du joystick des années 1980 : ce joystick original Cheetah 125 des années 1980 a été converti avec amour avec de nouveaux micro-interrupteurs brillants, des boutons d'arcade et une carte contrôleur Pimoroni Player X. Il dispose désormais de quatre "feu" indépendants; boutons et se connecte via USB, prêt pour
La radio Philips des années 50 sauvée de la tombe : 7 étapes (avec photos)
La radio Philips des années 50 sauvée de la tombe : Après mes boombox de valise, je voulais continuer à utiliser des enceintes d'enceintes intéressantes. Cette fois, j'ai utilisé une enceinte qui est en fait destinée à abriter des haut-parleurs et tous les composants supplémentaires. J'ai trouvé un t Philips des années 50 endommagé et ne fonctionnant pas
PiDP-11 : Réplique du PDP-11/70 des années 1970 : 4 étapes
PiDP-11 : Réplique du PDP-11/70 des années 1970 : Le PDP-11 était probablement l'ordinateur le plus influent de tous les temps. Il définissait ce que nous considérons comme normal, c'était la première machine pour laquelle vous pouviez obtenir Unix, et Windows peut retracer ses racines jusqu'à l'autre système d'exploitation coûteux du PDP-11, RSX-11. En 1975, le
Télévision Neon Infinity des années 1970 : 7 étapes (avec photos)
Télévision Neon Infinity des années 1970 : Il s'agit d'une télévision Ferguson Courier du début des années 1970 que j'ai convertie en un miroir à l'infini, avec un néon moderne « Open » signe brillant à l'intérieur. La fonction On / Off / Flash est contrôlée en tournant la molette de réglage du téléviseur - c'est ce que nous utilisons