Innholdsfortegnelse:

E-Ink YouTube-teller fra 1970-tallet: 7 trinn (med bilder)
E-Ink YouTube-teller fra 1970-tallet: 7 trinn (med bilder)

Video: E-Ink YouTube-teller fra 1970-tallet: 7 trinn (med bilder)

Video: E-Ink YouTube-teller fra 1970-tallet: 7 trinn (med bilder)
Video: Robert Waldinger: What makes a good life? Lessons from the longest study on happiness | TED 2024, November
Anonim
Image
Image
E-Ink YouTube-teller fra 1970-tallet
E-Ink YouTube-teller fra 1970-tallet
E-Ink YouTube-teller fra 1970-tallet
E-Ink YouTube-teller fra 1970-tallet

Denne ikoniske 1970-tallsklokken har nå et nytt liv som viser YouTube-statistikk, takket være en funky Pimoroni "Inky pHAT" e-blekkdisplay og en Raspberry Pi Zero. Den bruker et enkelt Python -skript for å spørre på YouTube API med jevne mellomrom, og oppdatere skjermen med dataene den henter, og viser den nyeste nettstedstatistikken. Den originale Alarm On/Off -bryteren på baksiden bytter displayet mellom abonnenter og visninger for et bestemt YouTube -nettsted (i dette tilfellet mitt!).

Selve klokken er en Digitron -modell, en ganske tidlig LED -klokke for forbrukermarkedet, solid og stilig i et solid aluminiumskropp.

Hele prosjektvideoen som viser koden og build er på https://www.youtube.com/embed/jKEZ2S3fj38 hvis du ikke kan se den innebygde videoen. Hvis du bare vil se den i aksjon, er det også en kortere sniktitt.

Rekvisita

1970 -tallets Digitron -vekkerklokke

Raspberry Pi Zero / Zero W

Pimoroni Inky pHAT

12 jumperkabler fra hun til mann

Muttere og bolter

Trinn 1: Tilbake i tid for upcycling

Tilbake i tid for upcycling
Tilbake i tid for upcycling
Tilbake i tid for upcycling
Tilbake i tid for upcycling
Tilbake i tid for upcycling
Tilbake i tid for upcycling

Jeg hentet denne klokken på et salg for noen år tilbake, og inntil nylig var den i daglig bruk, gjemt under TV -enheten og hadde god tid. Nylig, selv om vi kom inn i rommet for å finne LED -displayet blinke gal, med en urovekkende summende lyd, og det var åpenbart på tide å trekke seg tilbake til verkstedet.

Jeg hadde først blitt tiltrukket av det av den solide konstruksjonen og stilen - det er ganske mye en solid klump aluminium og veldig tung. Jeg elsket det estetiske så mye at jeg bestemte meg for å bygge om den nå ødelagte klokken til en undervurdert IoT-enhet for å gi passiv informasjon på kontoret mitt.

Demonteringen ga meg en stor pekepinn på hoveddelen - moderne LED -klokker vil ofte ha en "veggvort" -adapter og kjøre på lavspenning, men dette monsteret tok full nettspenning og hadde en stor transformator i selve klokken - som sto for vekten !

Bortsett fra boltene som holdt stativet på plass, ble resten av komponentene festet til enten bak- eller frontpanelene, som var laget av plast. Jeg kastet transformatoren, kretsen og den gamle LED -skjermen, og satt igjen med et solid skall, front- og bakpaneler og noen brytere, som jeg bokset opp og ventet på at den rette ideen skulle komme.

Trinn 2: Kanalbygging

Kanalbygging
Kanalbygging

For omtrent et år siden startet jeg "Old Tech. New Spec." på YouTube - en dedikert kanal for prosjektvideoene mine med et konsistent format og design. Jeg hadde begynt å like å lage prosjektvideoer nesten like mye som prosjektene selv, og dette føltes som det logiske neste trinnet. Det var heller ikke mangel på opptak, da jeg rutinemessig filmer ting som nedrivninger, slik at jeg kan se tilbake senere og se hvordan ting er ment å passe sammen igjen.

Jeg har ikke gitt ut så mange videoer ennå, men jeg lærer noe nytt av hver enkelt. Videoen for den siste "PiNG Video Doorbell" var den morsomste så langt, men var altfor lang - så jeg bestemte meg for at det neste prosjektet ville være en enkel og minimalistisk YouTube -statistikteller, å sitte på skrivebordet mitt og hjelpe meg å holde meg motivert. Nå måtte jeg bare finne ut hvordan jeg får tallene fra YouTube til Pi - hvor vanskelig kan det være?

Trinn 3: Beslaglegge statistikken

Beslaglegger statistikken
Beslaglegger statistikken
Beslaglegger statistikken
Beslaglegger statistikken

Code Video er på:

Jeg startet forskningen min med å følge en guide i MagPi -magasinet, som hentet følgerstatistikk fra en haug med forskjellige sosiale API -er (Application Programming Interfaces), lagret tallene i en MySQL -database og deretter viste dem på et LED -display. Dette fungerte bra, men virket som overkill for dette prosjektet, så jeg lette etter en enklere løsning etter å ha lært noen verdifulle leksjoner om hvordan APIer fungerer.

Jeg oppdaget snart forespørselsmodulen for Python, og etter å ha sett gjennom noen ekstremt nyttige eksempler skjønte jeg at jeg enkelt kunne søke på YouTube API og returnere grunnleggende statistikk for kanalen min.

Hvis du vil gjøre noe lignende, er det første trinnet å logge deg på Google Console og opprette et nytt prosjekt - derfra kan du koble YouTube API til prosjektet ditt og hente legitimasjonene du trenger (kanal -ID og API -nøkkel) for å trekke deg ut statistikken ved hjelp av Python. Jeg fulgte Googles virkelig nyttige guide for å sette opp prosjektet og få API -nøkkelen, og fulgte disse trinnene for å hente kanal -ID.

Python -koden jeg brukte er dokumentert på Github - den er kommentert og ganske grei å bruke for deg selv så lenge du limer inn din egen legitimasjon. Den bruker bare forespørselsmodulen, som allerede er installert som standard på Raspbian, så bortsett fra skjermen er det ingenting annet å installere, med mindre du vil bruke en bestemt skrift. Du er definitivt ikke begrenset til YouTube, men forespørselsmodulen er veldig fleksibel og kan hjelpe deg med å hente data fra tusenvis av kilder. Et eksempel er en daglig skritteller som kobler deg til et trenings -API.

Når jeg var fornøyd med det, satte jeg Python -skriptet til å starte automatisk ved oppstart ved å redigere autostart -filen:

sudo nano/etc/xdg/lxsession/LXDE-pi/autostart

… og legger til i følgende linje nederst:

@python3 /home/pi/YTcounter.py

Nå som jeg var i stand til å hente tallene jeg ønsket fra YouTube, var det neste trinnet å vise dem - på en måte som ville passe til klokkens retrostil.

Trinn 4: Inky -alternativet

Inky -alternativet
Inky -alternativet
Inky -alternativet
Inky -alternativet
Inky -alternativet
Inky -alternativet
Inky -alternativet
Inky -alternativet

Jeg vurderte flere forskjellige visningsalternativer for dette prosjektet, men bestemte meg for Pimoroni Inky pHAT-en liten trefarget e-blekkdisplay for Pi. Jeg hentet en i løpet av vinteren etter å ha hentet en kupong i fjorårets Yarr Booty -utfordring, men kom aldri i gang med å bruke den, så dette virket som en ideell mulighet. Pluss, viktigst av alt, var displayet en nydelig rød nyanse, som passet fint til frontpanelet på den originale klokken.

Programvaren for Inky pHAT ble enkelt installert etter installasjonsinstruksjonene, og på kort tid ville jeg kjøre et av eksemplene på Test Pi for å lage et kult navnemerke. Etter litt mer eksperimentering kunne jeg vise grunntekst ved hjelp av et bestemt skrifttype (som matcher det jeg bruker i YouTube -merkevaren min), og derfra var det enkelt å vise utdataene fra API -forespørselen - kommentarene i Github -koden viser hvordan dette er kodet trinn for trinn.

Inky er designet for å passe på toppen av Pi's 40-pinners GPIO-topptekst, men jeg ville at den skulle fikse den til "skjermen", så jeg bestemte meg for å koble den til Pi via mann-til-hunn-jumperkabler i stedet-dette gjorde sin plassering mer fleksibel og la noen GPIO -pinner stå igjen for å koble til en LED og bryter (mer om dem senere). Jeg fulgte diagrammet på pinout.xyz, bemerket at det var nødvendig med 8 GPIO -pinner, plugget inn kablene, testet det og - ingenting! Jeg hadde ikke innsett at selv om det bare var nødvendig med 8 GPIO -pinner, måtte pHAT også kobles til flere GND -pinner. Når alle disse var knyttet til hoppere (en vanskelig virksomhet), fungerte Inky igjen som planlagt, en stor lettelse.

Da koden fungerte, sto jeg nå overfor den vanlige utfordringen - å passe alle delene i saken.

Trinn 5: Lego, hakking og lim

Lego, hakking og lim
Lego, hakking og lim
Lego, hakking og lim
Lego, hakking og lim
Lego, hakking og lim
Lego, hakking og lim

Fullstendig video er på:

Montering av Pi Zero i saken var først, og for dette falt jeg tilbake på min favoritt konstruksjonsmateriale, Lego. Det er bare perfekt for å montere komponenter sammen, og avgjørende for enkel demontering og montering. Etter å ha boret noen hull i Lego -baseplatene, festet jeg ett til Pi -brettet og ett til klokkehuset med de originale stativboltene, slik at de ville klipses sammen og holdt Pi i riktig posisjon.

Neste var "ansiktet" - den originale røde perspexen foran på klokken var for ugjennomsiktig til at Inky -skjermen kunne vises effektivt, så jeg måtte kutte ut en seksjon for at den skulle titte igjennom. Dette var utvilsomt den vanskeligste delen av konstruksjonen, ettersom hullet måtte kuttes veldig nøyaktig, og hvis jeg skrudde det, var det ikke noe håp om en erstatning, bortsett fra å ha et skreddersydd laserskjær (som jeg undersøkte for sikkerhets skyld!). Ved hjelp av en billig vernier -tykkelse (mitt nye favorittverktøy) klarte jeg å måle og score hullets kontur nøyaktig, som jeg deretter skar ut grovt med et roterende verktøy og ryddet opp med en liten fil. Dette gikk sakte og tok en hel kveld, men det var verdt det!

Inky pHAT ble deretter varmlimt så pent som mulig til den røde perspexen, klar for montering.

Trinn 6: Siste berøringer og montering

Siste berøringer og montering
Siste berøringer og montering
Siste berøringer og montering
Siste berøringer og montering
Siste berøringer og montering
Siste berøringer og montering
Siste berøring og montering
Siste berøring og montering

Når jeg eksperimenterte med svarene fra YouTube API fant jeg ut at jeg kunne returnere to separate "interessante" tall - abonnenter og totalt antall visninger. Med Inky pHAT hadde det vært mulig å vise begge på en gang, men jeg likte den klokkelignende rensligheten til bare et enkelt stort (skriftstørrelse ikke beløp!) Nummer. Med noen justeringer av koden klarte jeg å koble klokkens originale "Alarm On/Off" -bryter til GPIO, slik at displayet kunne byttes mellom abonnenter og visninger - dette var en tilfredsstillende berøring, spesielt ettersom visningsnummeret endres mye oftere enn antallet abonnenter!

Deretter la jeg til en lys hvit LED til GPIO, og kodet den for å lyse like før API -forespørselen ble sendt og slått av etterpå. Jeg hadde allerede skrapt all malingen fra baksiden av den gjennomsiktige røde plasten, så tanken var at klokken skulle lyse litt rødt mens tallene ble oppdatert.

Med alle GPIO -tilkoblinger på forhånd og strømkabelen tilkoblet gikk forsamlingen veldig bra, hovedsakelig takket være at Lego holdt ting på plass. Front- og bakpanelene passet tett, men klippet sammen til slutt - jeg håper bare at jeg ikke trenger å demontere det snart. Sannhetens øyeblikk var den første som ble slått på etter montering, med startkablene som sneg seg rundt i saken og GPIO-tilkoblingene så tett klemt at jeg ikke hadde noen store forhåpninger, men ble glad da skjermen oppdaterte seg etter det som virket som en time lang oppstartsprosess.

Trinn 7: Motiverende figurer

Motiverende figurer
Motiverende figurer
Motiverende figurer
Motiverende figurer

Jeg elsker hvordan dette prosjektet ble, det er absolutt en av de "reneste" jeg noen gang har bygget, takket være den vakre, solide aluminiumsdesignen til den originale klokken. Det har også vært en stor læringsopplevelse. Jeg har fått mye å vite om å jobbe med APIer og e-blekk som jeg vet jeg kommer til å bruke i fremtidige prosjekter.

Det jeg elsker mest er enkelheten og praktisk, den har en jobb, gjør det bra og ser bra ut mens du gjør det. Jeg hadde ikke en tendens til å holde øye med YouTube-statistikken før, men dette har brakt rå online data inn på kontoret mitt, presentert på en attraktiv og ikke-påtrengende måte. Jeg kommer kanskje aldri til å bygge publikum for Old Tech. Ny spesifikasjon til tusenvis, men så lenge det er morsomt, vil jeg fortsette å lage prosjekter og videoer for forhåpentligvis å inspirere flere til å oppgradere sine gamle enheter til noe friskt og nyttig.

Barna og jeg er fascinert av å se hvor mange visninger endres, men litt, det gir oss beskjed om at et sted i verden har noen nettopp sett på en prosjektvideo, og det får oss definitivt til å fortsette å lage og dele.

Hvis du likte dette prosjektet, kan du sjekke ut de andre instruksjonene mine for mer gammel teknisk upcycling, og abonnere på YouTube -kanalen for vanlig videoinnhold.

IoT -utfordring
IoT -utfordring
IoT -utfordring
IoT -utfordring

Førstepremie i IoT Challenge

Anbefalt: