Table des matières:

Compteur YouTube E-Ink des années 1970 : 7 étapes (avec photos)
Compteur YouTube E-Ink des années 1970 : 7 étapes (avec photos)

Vidéo: Compteur YouTube E-Ink des années 1970 : 7 étapes (avec photos)

Vidéo: Compteur YouTube E-Ink des années 1970 : 7 étapes (avec photos)
Vidéo: Elle Était Coincée Donc Ce Policier L'aide 2024, Juillet
Anonim
Image
Image
Compteur YouTube E-Ink des années 1970
Compteur YouTube E-Ink des années 1970
Compteur YouTube E-Ink des années 1970
Compteur YouTube E-Ink des années 1970

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

Retour dans le temps pour l'upcycling
Retour dans le temps pour l'upcycling
Retour dans le temps pour l'upcycling
Retour dans le temps pour l'upcycling
Retour dans le temps pour l'upcycling
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

Construction de canaux
Construction 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

Saisir les statistiques
Saisir les statistiques
Saisir les statistiques
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

L'option d'encre
L'option d'encre
L'option d'encre
L'option d'encre
L'option d'encre
L'option d'encre
L'option d'encre
L'option d'encre

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

Lego, hacher et coller
Lego, hacher et coller
Lego, hacher et coller
Lego, hacher et coller
Lego, hacher et coller
Lego, hacher 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

Touches finales et assemblage
Touches finales et assemblage
Touches finales et assemblage
Touches finales et assemblage
Touches finales et assemblage
Touches finales et assemblage
Touches finales et assemblage
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

Chiffres de motivation
Chiffres de motivation
Chiffres de motivation
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.

Défi IdO
Défi IdO
Défi IdO
Défi IdO

Premier prix du challenge IoT

Conseillé: