Table des matières:

Scroller Cassette Pi IoT : 7 étapes (avec photos)
Scroller Cassette Pi IoT : 7 étapes (avec photos)

Vidéo: Scroller Cassette Pi IoT : 7 étapes (avec photos)

Vidéo: Scroller Cassette Pi IoT : 7 étapes (avec photos)
Vidéo: Аномально вкусно‼️ ЧЕХОСЛОВАЦКИЙ СУП ИЗ ФАРША. Жена Липована в шоке. 2024, Novembre
Anonim
Image
Image
Défilement Cassette Pi IoT
Défilement Cassette Pi IoT
Défilement Cassette Pi IoT
Défilement Cassette Pi IoT

La Cassette Pi est un scroller de notification en temps réel autonome, le tout soigneusement logé à l'intérieur d'une cassette transparente. Un Raspberry Pi Zero est pris en sandwich entre les deux bobines de bande, récupérant toutes sortes de notifications Internet des objets du fabuleux service IFTTT (If This, Then That), livré presque instantanément au Pi via un flux Adafruit. IO et un script Python. Toute la cassette vibre pour vous avertir de la notification entrante, et le texte défile ensuite clairement sur un écran LED Pimoroni 11x7.

Tout est alimenté par une batterie LiPo de 150 mAh, connectée au Pi via une cale LiPo - également dans la cassette se trouve un Adafruit Micro Lipo donc lorsque la batterie est faible, il peut être branché directement sur une source d'alimentation Micro USB pour récupérer du jus.

La partie la plus amusante est que grâce à un certain rognage du Pi lui-même, la cassette peut toujours tenir dans n'importe quel lecteur de cassettes vintage, transformant ce vieil ornement en un appareil Internet des objets fonctionnel et élégant.

La Cassette Pi est également parfaite pour être utilisée comme badge de conférence, suspendue à un cordon et faisant défiler votre nom ou un message personnalisé.

Au cas où vous ne pourriez pas voir la vidéo intégrée, vous pouvez la trouver sur https://www.youtube.com/embed/kgY40e9mi8w- ça vaut le coup d'oeil pour voir ce petit scroller en action !

Fournitures

Cassette

Raspberry Pi Zero W

Cale LiPo Pimoroni

Déploiement LED Pimoroni 11x7

Adafruit Micro LiPo

Batterie LiPo 150mAh

1x interrupteur à glissière DPDT 6 bornes

Patience

Étape 1: Inspiration et planification

Inspiration et planification
Inspiration et planification
Inspiration et planification
Inspiration et planification
Inspiration et planification
Inspiration et planification
Inspiration et planification
Inspiration et planification

J'ai été inspiré pour construire la Cassette Pi par la tendance "Clear Tech" des années 80 et 90, lorsque les appareils ont commencé à être commercialisés en versions transparentes, avec tous les composants exposés. J'étais également fasciné de voir s'il était possible d'insérer tout un projet Pi autonome dans une cassette, ce qui en ferait un appareil tactile et utile qui tiendrait toujours dans les vieilles machines à bande.

Le point de départ était l'ensemble de composants pour l'alimentation, utilisant une batterie LiPo, LiPo Shim et Micro Lipo, connectés via un interrupteur à glissière DPDT (Double Pole Double Throw) - j'ai utilisé une configuration similaire dans le projet Flirt Pi Radio et c'est avéré être une combinaison fiable. Le commutateur bascule entre deux états, connectant alternativement la petite batterie au Pi ou au chargeur Micro USB, idéal pour un si petit projet.

Ensuite est venu l'écran - j'ai utilisé un écran LED Pimoroni 11x7 car il est si fin et léger, ce qui le rend parfait pour cette construction. C'est aussi commodément la même taille qu'une "fenêtre" de cassette, ce qui m'a vraiment attiré. Enfin, j'ai récupéré une demi-douzaine de minuscules vibrateurs 3v sur eBay, pour ajouter des commentaires haptiques. Rassembler toutes les pièces était simple, il ne me restait plus qu'à les insérer dans le ruban !

Étape 2: soudure

Soudure
Soudure
Soudure
Soudure
Soudure
Soudure

J'ai commencé par disposer les composants d'alimentation à l'intérieur d'une cassette démontée, en mesurant et en acheminant les câbles entre eux afin qu'ils soient exactement de la bonne longueur sans bloquer les bobines de cassette ou s'entasser trop épais. L'intérieur d'une cassette n'est que d'environ 4-5 mm donc cela a pris beaucoup d'essais et d'erreurs !

Les cartes de calage Micro LiPo et LiPo sont livrées complètes avec des connecteurs JST à 2 broches, mais ceux-ci étaient bien trop épais pour tenir à l'intérieur et devaient être limés à la moitié de leur hauteur. J'ai pu les connecter directement entre eux.

Ensuite, j'ai soigneusement soudé le Pi lui-même, en le reliant au LiPo Shim et en ajoutant des câbles pour l'écran. Enfin, j'ai soudé le petit vibreur au GPIO.

Étape 3: grignotage Pi

Pi grignotage
Pi grignotage
Pi grignotage
Pi grignotage

Installer le Pi Zero entre les bobines de cassette était une évidence, il n'y avait littéralement nulle part ailleurs où il pouvait aller et laisser suffisamment d'espace. Après un certain temps, j'ai réalisé que cela allait causer un problème. Bien que le Pi se soit parfaitement ajusté, dépassant à environ 1 mm du haut et n'obscurant pas les trous de la bobine, je n'avais pas pensé que les lecteurs de bande collaient de fines pointes métalliques à travers la cassette, pour aider à guider la bande. En l'état, ces pointes pénétraient directement dans la carte Pi, ce qui rendait impossible l'insertion à l'intérieur d'un ancien lecteur.

En cherchant des solutions en ligne, je suis tombé sur de fantastiques images radiographiques du Pi Zero par l'utilisateur de flickr UltraPurple (Giles Read) - une inspection minutieuse de l'image a suggéré que je pourrais éventuellement m'en tirer en grignotant une partie de la planche, laissant assez de place pour le pointes embêtantes et laissant toujours le Pi intact sur le plan opérationnel. J'ai agonisé de faire cela car je ne voulais vraiment pas détruire le Pi, mais j'ai pris une profonde inspiration, une perceuse et un petit fichier et je me suis mis au travail. J'ai pu couper les deux coins inférieurs de la planche assez facilement et j'ai été tellement soulagé lorsque le Pi a démarré par la suite.

Étape 4: Découpage du ruban

Découpage du ruban
Découpage du ruban
Découpage du ruban
Découpage du ruban

Bien que la plupart des composants aient été coupés pour les adapter, un rognage était également nécessaire à l'intérieur du corps de la cassette pour leur permettre de s'adapter réellement à l'intérieur. J'ai détruit environ une demi-douzaine de vieilles bandes en expérimentant différents outils et techniques pour cette opération, mais j'ai quand même abordé la version finale "propre" très nerveusement. J'en étais maintenant à ma dernière bande transparente (achetée vierge et non ouverte dans un magasin de charité) et je voulais la garder aussi exempte de rayures que possible.

Pour y parvenir, j'ai collé des autocollants sur les parties vulnérables et j'ai utilisé le support de développé couché pour mon outil rotatif afin d'avoir un meilleur contrôle dessus. Il a probablement fallu environ 2 heures pour grignoter soigneusement les minuscules morceaux de plastique, mais j'ai réussi à ne pas trop le rayer.

Ensuite, j'ai maintenu les circuits imprimés individuels en place, en marquant avec un stylo CD fin où chaque joint soudé irait. La soudure ne dépassait que d'environ 1 mm à l'arrière de la carte, mais même cela était suffisant pour rendre l'assemblage trop épais, donc chaque câble soudé devait avoir un trou percé avec précision pour l'accueillir. C'était extrêmement délicat mais avait un bonus inattendu - avec tout étant si serré que les pièces soudées dans leurs trous maintenaient les composants en place, ce qui signifie qu'ils n'avaient pas besoin d'être collés ou boulonnés.

Étape 5: Le code

Le code
Le code

Le script Cassette Pi récupère le texte de notification à partir d'un flux Adafruit.io, en le vérifiant toutes les quelques secondes pour le nouveau contenu. Ce flux est alimenté par le service IFTTT (IF This, Then That), qui récupère les données de plusieurs services en ligne.

L'utilisation d'un flux Adafruit.io pour récupérer des données est parfaite pour ce type d'application - si vous ne l'avez pas encore essayé, vous pouvez créer un compte gratuit sur https://io.adafruit.com/ - vous recevrez une clé et Nom d'utilisateur dans le cadre de ce processus, tous deux utilisés dans le script Cassette Pi, qui est dérivé des nombreux exemples Python Adafruit. Ce script et de nombreux exemples nécessitent que vous ayez configuré un flux Adafruit.io à l'avance, et ils ont un excellent guide du processus.

Une fois votre flux configuré, vous pouvez installer les modules adafruit.io sur votre Raspberry Pi en tapant simplement…

pip3 installer adafruit-io

..dans une fenêtre de terminal. Avec ces modules installés, vous pouvez désormais utiliser Python pour récupérer facilement les données d'un flux, ainsi que lui envoyer des données depuis votre Pi, par exemple pour remplir un tableau de bord Adafruit.io.

Une fois le flux opérationnel, vous voudrez le connecter à IFTTT, afin de pouvoir lui transmettre des données à partir d'autres services en ligne. Connectez-vous à IFTTT (l'inscription est gratuite) et recherchez Adafruit dans le menu Services. Suivez les étapes pour lier votre compte. Vous pouvez désormais créer des applets pour récupérer les données des services en ligne et les transmettre à votre Pi !

Toutes les connexions de données individuelles pour ce projet sont configurées sur le site Web IFTTT, à l'aide des services suivants:

  • Appareil Android - pour les notifications de batterie et les alertes d'applications spécifiques, par exemple lorsque l'application Amazon indique qu'un colis est à proximité.
  • WebHooks - pour les alertes entrantes provenant d'autres appareils IoT, tels que les mouvements détectés par nos caméras MotionEye ou les numéros d'abonné YouTube alimentés par le compteur YouTube E-Ink.
  • Twitter - pour afficher les tweets de comptes spécifiques, tels que @Raspberry_Pi, @GuardianNews et @FactSoup.
  • Flux RSS - pour m'avertir lorsque de nouveaux épisodes de podcast sont disponibles.
  • Weather Underground - idéal pour les conditions météorologiques changeantes, les alertes de température et de glace.
  • Assistant Google - utile pour dicter des messages vocaux à convertir en texte et à faire défiler par la bande.

Les éléments ci-dessus ne sont qu'un petit échantillon des services qui peuvent être ajoutés à IFTTT en tant que partie « IF This » du lien, tous acheminant les données vers le côté « Then That », qui est lié au flux Adafruit.io. La meilleure partie de ceci est que le texte peut être personnalisé, donc par exemple, lorsque le service Weather Underground dit que ma vitesse du vent local est supérieure à 40 mph, le texte qui est transmis à Adafruit et qui défile est "Hé, il souffle un peu là-bas".

Le script que j'ai utilisé est disponible sur GitHub et pourrait facilement être adapté pour fonctionner avec différents écrans LED / LCD.

Étape 6: Assemblage

Assemblée
Assemblée
Assemblée
Assemblée
Assemblée
Assemblée
Assemblée
Assemblée

L'assemblage final du projet s'est très bien passé - jusqu'à ce que j'essaie d'assembler les deux moitiés de la cassette. Bien que tous les composants aient été bien coupés, il y avait trop de câbles en compétition pour les mêmes quelques mm d'espace, et je ne voulais pas risquer de les écraser trop fort. Je n'avais finalement pas d'autre choix que de dessouder la carte Micro LiPo, en la ressoudant au commutateur avec des câbles plus longs qui pourraient être éloignés des autres. À ce stade, j'avais tellement coupé, coupé et limé que je doutais sérieusement que cela fonctionnerait un jour. J'avais même dû couper soigneusement 1 mm du boîtier de l'interrupteur et 2 mm de métal du port Micro USB du Pi pour les adapter.

Le pire, c'est que je n'ai pas pu le tester au fur et à mesure, car l'écran ne pouvait pas être soudé tant que tout le reste n'était pas assemblé. Le rasage et l'ajustement des bobines en plastique d'origine étaient une partie vraiment amusante vers la fin de la construction, bien que cela en soi ait pris quelques heures délicates avec de petits fichiers et des snippers.

Enfin, tout était confortablement installé, avec tous les composants littéralement maintenus en place les uns par rapport aux autres, et j'ai collé l'écran sur le ruban avant de le souder, scellant efficacement le tout. Ce fut une minute incroyablement nerveuse d'attendre qu'il démarre pour la première fois, mais bien sûr, il a pris vie, avec un énorme soulagement.

Étape 7: Terminé

Fini
Fini
Fini
Fini
Fini
Fini
Fini
Fini

Parfois, les projets peuvent ressembler un peu à du "travail", mais celui-ci était juste amusant jusqu'au bout, je n'ai jamais autant aimé faire quelque chose, et je suis tellement content du résultat final. Quelque chose à propos des mesures vraiment minuscules a vraiment fait flotter mon bateau, ainsi que la question omniprésente de savoir s'il était même possible de tout intégrer.

Les cassettes et le Raspberry Pi sont deux de mes choses préférées au monde, il n'est donc pas surprenant que j'aime tant ce projet. Je me souviens très bien de ma toute première leçon d'informatique à l'école primaire, avec le professeur chargeant un programme à partir d'une cassette sur le micro de la BBC. Le gamin à côté de moi et moi avons plaisanté à l'époque en disant que si vous chargeiez accidentellement une cassette audio, vous verriez les chanteurs apparaître à l'écran. D'une manière ou d'une autre, peu d'années plus tard, vous pouvez désormais installer un ordinateur entier dans l'une de ces bandes, avec une capacité infiniment plus grande.

Même si j'aime ce projet, mon troll intérieur me dit "Ce n'est pas mal, ça a l'air sympa mais ce serait beaucoup plus cool s'il jouait de la musique" - disons simplement que je n'en ai pas encore fini avec le piratage de cassettes.

Merci d'avoir lu!

Mes autres projets Old Tech, New Spec sont tous sur Instructables à

Plus de détails et un formulaire de contact se trouvent sur notre site Web à l'adresse https://bit.ly/OldTechNewSpec. et nous sommes sur Twitter @OldTechNewSpec.

Concours Raspberry Pi 2020
Concours Raspberry Pi 2020
Concours Raspberry Pi 2020
Concours Raspberry Pi 2020

Finaliste du concours Raspberry Pi 2020

Conseillé: