Innehållsförteckning:

1975 Hitachi Pi Info-TV: 13 steg (med bilder)
1975 Hitachi Pi Info-TV: 13 steg (med bilder)

Video: 1975 Hitachi Pi Info-TV: 13 steg (med bilder)

Video: 1975 Hitachi Pi Info-TV: 13 steg (med bilder)
Video: Веб-программирование – информатика для руководителей бизнеса 2016 2024, November
Anonim
Image
Image
1975 Hitachi Pi Info-TV
1975 Hitachi Pi Info-TV
1975 Hitachi Pi Info-TV
1975 Hitachi Pi Info-TV
1975 Hitachi Pi Info-TV
1975 Hitachi Pi Info-TV

Detta är en söt liten Hitachi I-89-311 bärbar tv som jag har konverterat till en retro väggmonterad informationsstation! Den visar användbart innehåll i en serie Chrome-flikar i helskärmsläge och vrider inställningsratten mellan sidorna, precis som du ursprungligen skulle byta TV-kanaler. Volymknappen styr rullning, på / av-knappen uppdaterar sidan och den har en PIR-rörelsessensor så att skärmen stängs av när du går därifrån.

Den använder en Pimoroni 8 4: 3-skärm och en Raspberry Pi 3 för att visa innehållet, och några specialtillverkade switchar gör att alla de ursprungliga TV-kontrollerna kan användas.

Om du inte kan se den inbäddade videon finns den på:

Steg 1: Demontering och beslut

Demontering och beslut
Demontering och beslut
Demontering och beslut
Demontering och beslut
Demontering och beslut
Demontering och beslut

Den här TV: n kostade mig hela £ 5 vid en försäljning under sommaren, och jag kunde inte vänta med att komma hem och demontera den. Jag tänkte helt enkelt ta isär den, hugga ner den, byta ut skärmen mot min gamla 10 surfplatta och hänga den på väggen - ett trevligt snabbt projekt! Nedrivningen gick säkert bra, allt gick sönder väldigt rent och tack vare en nya magnetiska delar fack Jag tappade inte någon av skruvarna för en gångs skull. När jag väl höll surfplattan upp mot det avskalade fodralet var det dock uppenbart att det aldrig skulle passa, ramen runt skärmen var alldeles för tjock för att passa i fodralet.

Jag hade föreställt mig att bara anpassa en Android -startskärm med widgets för att visa kommande kalendermöten, väder, nyheter och så vidare, men med det från fönstret vände jag mig till Raspberry Pi -alternativ. Jag började titta på programvara för att visa instrumentpaneler först, eftersom det verkade vara ungefär vad jag var ute efter. Jag försökte dashing.io efter rekommendationer men tyckte att det var lite klumpigt att ställa in och konfigurera. Många av de andra alternativen var mer affärsinriktade så mindre sannolikt att ha funktioner som att visa ett live CCTV-webbkameraflöde. Efter ett tag bestämde jag mig ganska mycket för att bygga en egen webbsida för att bara visa det innehåll jag ville ha - men då slog tanken, varför inte ha flera webbsidor och kunna bläddra mellan dem med hjälp av TV -kontrollerna? Detta skulle innebära färre kompromisser kring vad som skulle passa på den lilla skärmen, och skulle göra det väldigt enkelt att lägga till eller ta bort element. Efter detta "Eureka" -moment var det bara att få det att hända - och det var inte för komplicerat.

Steg 2: Kromkod

Kromkod
Kromkod

För att webbsidans idé skulle fungera var det första jag behövde göra för att ta reda på hur jag öppnar Chromium -webbläsaren i helskärm vid start med flera fördefinierade flikar. Tack vare flexibiliteten hos Pi och Chromium var det faktiskt ganska lätt att uppnå, bara ett fall av redigering av autostart -filen:

sudo nano.config/lxsession/LXDE-pi/autostart

… och lägger till

@chromium-browser --noerrdialogs --start-fullscreen https:// url1 https:// url2 https:// url3

… till slutet av filen, spara ändringarna.

Därefter var jag tvungen att hitta ett sätt att på något sätt använda TV: ns knappar för att styra webbläsarflikarna. Jag planerade att ha ett separat trådlöst tangentbord och en muskombination i närheten så använde inte kioskläge och var inte intresserad av musrörelser eller klick, men jag ville kunna göra den grundläggande informationen om "jag är på jobbet" -grab bara med de ursprungliga TV -kontrollerna. Jag visste att jag sannolikt skulle ansluta switcharna till Pi: s GPIO och styra dem i Python, så letade runt efter någon kod som skulle efterlikna knapptryckningar, så att jag kunde utnyttja ett skript för att skicka dessa via ingången från en fysisk switch.

Efter lite trålning stötte jag på xdotool, vilket var perfekt för jobbet, eftersom det låter dig simulera tangenttryckningar med hjälp av kod som enkelt kan bäddas in i Python. Först installerade jag det …

sudo apt-get install xdotool

… använder sedan terminalen ett kommando för att byta flikar i Chrome, efterlikna tangentbordsgenvägen CTRL-TAB:

xdotool sökning -endast synlig -klass "krom" fönsterfokus && xdotool nyckel ctrl+Tab

Jag gjorde sedan samma sak för att skapa en kodbit för att utföra åtgärden "Uppdatera", efterlikna en F5 -knapptryckning:

xdotool sökning -endast synlig -klass "krom" fönsterfokus && xdotool nyckel F5

Nu när jag hade de grundläggande kodbitarna som fungerade var nästa jobb att reda ut de fysiska knapparna, koppla dem till GPIO och skapa ett Python -skript för att få dem att styra webbläsaren.

Steg 3: TV -kontroller

TV -kontroller
TV -kontroller
TV -kontroller
TV -kontroller
TV -kontroller
TV -kontroller

Showens stjärna knappmässigt var den härliga stora inställningsratten, så jag arbetade med det först. Jag behövde rattens roterande åtgärd för att översätta till GPIO-aktiverade knapptryckningar för att aktivera webbläsarens flikomkopplare, så att vridning skulle ändra "kanal". Jag hade bekvämt gjort något liknande tidigare för mitt Neon Infinity Television -projekt, så jag bestämde mig för att använda samma metod.

Till att börja med tog jag en 12-polig vridomkopplare med ett kast och lödde alternativa terminaler till varandra, så att 6 av dem var anslutna till en enda tråd. Den andra ledningen var ansluten till omkopplarens nod, så att varje roterande klick skulle flytta den mellan ett öppet och stängt tillstånd. Detta innebar att varje kanalbyte skulle ta 2 "klick", ett för att klicka på knappen "stängd" och ett för att öppna det igen.

Efter att ha testat den med en multimeter gick jag vidare till nästa knapp (På/Av)-jag ville bara att detta skulle "uppdatera" sidan så jag använde en vanlig tryck-och-göra-omkopplare.

Med båda dessa färdiga lödde jag dem till en liten bit av protoboard tillsammans med en hopparhuvud, så att ledningarna skulle bli enklare. Därefter kopplade jag dem till Pi (GPIO6, GPIO26 och 3v) och satte ihop ett Python -skript för att översätta deras fysiska rörelser till knapptryckningar för att styra webbläsarfönstret. Skriptet jag använde är ganska enkelt och finns på GitHub. När det fungerade helt satte jag det på autostart genom att lägga till i raden …

@sudo python /home/pi/tabswitch.py

… till autostart-filen, precis där jag hade lagt till kommandot @chromium-browser tidigare.

Så det var två knappar nere, en kvar!

Steg 4: Bläddra runt

Scrollar runt
Scrollar runt

Jag ville verkligen att den tredje knappen (volym) skulle rulla webbläsarens sida upp och ner för att skanna rubriker och väderutsikter - det var ett bra koncept men svårt att uppnå! Jag undersökte olika alternativ men kom tillbaka till en av mina favoriter - billiga USB -möss. En resa till bilens bagageutrymme gav fyra gamla squeakers i olika tillstånd (cirka 50p vardera), och jag hoppades att en av dem skulle ha ett kränkbart kretskort som jag bara kunde släppa in i fodralet och ansluta rullhjulet till volymknappen och USB -kabel till Pi.

Det var dock inte så lätt, eftersom alla möss hade sitt rullhjul fixerat i 90 grader mot kretskortet, vilket är perfekt för en mus men är inte bra för att passa i ett tätt TV -fodral! För att göra saker mer flexibla klippte jag av den roterande kontrollen från en mus och kopplade den in i kretskortet på en sekund och lämnade kablar emellan så att jag kunde fixa den i vilken vinkel jag ville. Även om mössen var från olika tillverkare fungerade det bra!

Steg 5: Sova och vakna

Sova och vakna
Sova och vakna
Sova och vakna
Sova och vakna

Jag visste att TV: n skulle stå på väggen i korridoren, så jag ville inte att den skulle slås på 24/7, men samtidigt ville jag kunna titta på den i förbifarten och inte behöva tryck på en knapp för att slå på skärmen. Jag bestämde mig för att använda en PIR -sensor för att upptäcka rörelse i närheten, så att skärmen skulle stanna (eller åtminstone på en tom skärmsläckare) om inte någon var framför den.

Jag hade inte använt en PIR -sensor med Pi tidigare, så följde med den utmärkta föräldradetektorn och fick koden jag behövde fungera ganska snabbt, åtminstone i terminalen.

PIR -sensorn var enkel att koppla in till Pi: s GPIO (5v, GND och GPIO4) men tog lite experimenterande med de jobbiga "trimpotsna" för att få fördröjningen och känsligheten helt rätt.

Nästa steg var att få skärmen att tändas när rörelse detekterades. Återigen finns det olika alternativ för detta, men jag bestämde mig för att göra det så att rörelse som upptäcktes av PIR -sensorn bara skulle stänga av skärmsläckaren. Jag hade antagit att jag skulle kunna använda xdotool igen för att skicka en gammal knapptryckning och det skulle väcka skärmen, men tyvärr fungerade det inte.

För att ge mig mer kontroll över skärmsläckartypen och alternativen installerade jag xscreensaver:

sudo apt-get install xscreensaver

Det här var perfekt, eftersom jag nu helt kunde styra skärmsläckarens fördröjningstid via menyn Inställningar - det som var ännu mer praktiskt är att xscreensaver har många kommandoradsalternativ, vilket innebär att jag kan använda koden …

xscreensaver -command -deactivate

… för att väcka skärmen. Jag lade till det här kommandot i PIR -skriptet (även på GitHub) och när det fungerade läggs det till i …

@sudo python /home/pi/PIR.py

… till autostart -filen, strax under de tidigare posterna för Chromium- och tabswitch -kommandon.

Så nu var det mesta av Pi -arbetet färdigt, och med PIR -sensor, tryckknapp, vridomkopplare och slaktad USB -mus alla anslutna flyttade jag till den knepiga delen - vilket fick det att fungera med en liten skärm och passa allt i fodralet.

Steg 6: Skärmtid

Skärmtid
Skärmtid
Skärmtid
Skärmtid
Skärmtid
Skärmtid

Att hitta en lämplig skärm för det här projektet skulle alltid vara svårt, eftersom "hålet" var både en besvärlig storlek på 9-10 tum och även i 4: 3-format.

Efter en period av fruktlös fyndjakt bestämde jag mig för att köpa nytt - främst av den anledningen att jag ville att det här skulle vara ett praktiskt tillägg till mitt hem, och så jag behövde ha förtroende för att det skulle vara anslutet för det mesta. Jag började äntligen söka efter 800x600 och 1024x768 LCD -paneler och vände upp Pimoroni 8 -skärmen. Detta var det idealiska alternativet eftersom jag gillade återförsäljaren, skärmen var välrenoverad och den perfekta formen - den enda kompromissen var att den var något mindre än jag skulle ha velat, men det påverkade inte riktigt det slutliga bygget.

Skärmkitet levererades med ett eget förarkort och menyknappar, och dessa kopplades enkelt upp för ett test på arbetsbänken. Jag skulle läsa till min glädje att skärmen kunde drivas från själva Pi, så startade den och - ingenting! Jag försökte olika USB -portar för ström, sedan olika HDMI -kablar men det kom bara inte. Efter mycket huvudskrapa hittade jag lösningen online - eftersom den drivs av Pi: s USB visade den sig inte som "närvarande" tillräckligt tidigt i startprocessen för att Pi skulle inse att den var där. Allt jag behövde göra var att redigera filen

/boot/config.txt

och avmarkera alternativet

hdmi_force_hotplug = 1

och Hej Presto! Det fungerade direkt. Det förvånar mig alltid hur enkla vissa lösningar kan vara, jag var övertygad om att jag hade stekt skärmen på något sätt men en liten tweak gjorde skillnad. Nu när det hela fungerade på bänken behövde jag bara passa in det i fodralet och på något sätt hålla det igång.

Även om det var den perfekta storleken fanns det ett par problem - LCD -panelens ram var glänsande silver, och det fanns också luckor som visade runt utsidan där det ursprungliga TV -röret hade böjts. Jag tänkte först på att måla ramen svart, speciellt eftersom den fortfarande hade sitt skärmskydd på plats, vilket hade varit perfekt maskering. Efter lite eftertanke lyckades jag döda två fåglar i en smäll och lade till remsor av tjock svart självhäftande filt runt skärmkanterna, som täckte silverremsorna och överlappade tillräckligt för att fylla luckorna.

Steg 7: Genomskinliga mallar

Genomskinliga mallar
Genomskinliga mallar
Genomskinliga mallar
Genomskinliga mallar
Genomskinliga mallar
Genomskinliga mallar
Genomskinliga mallar
Genomskinliga mallar

Med skärmen på plats var knapparna, Pi och kablar nästa!

För att säkra skärmen skulle jag klippa ut en del av genomskinlig plast från locket på en gammal förvaringslåda, med hjälp av de ursprungliga TV-skruvarna och skruvstolparna för att fixa den ordentligt på plats, så bestämde mig för att göra samma sak för att hålla knapparna. Det fina med att göra fästen med den här typen av plast är att du kan placera den över fodralet och se igenom det för att markera exakt var skruvhålen måste vara!

Jag klippte ut en liten plastdel för att hålla tv -kontrollerna och markerade och borrade först hålen för att fästa den på TV: ns originalfästen. Därefter skruvades det fast på fodralet. Jag markerade mitten av knapphålen från utsidan för att se till att de skulle justeras ordentligt när de petade igenom fodralet. Detta gick ganska smidigt för omkopplarna och tryckknapparna, jag var bara tvungen att ta till det heta limet för att sätta "mushjulet" på precis rätt plats.

Därefter byggde jag ytterligare ett "däck" för att sitta ovanför omkopplarna och hålla Raspberry Pi, med samma metod som tidigare och mer av de ursprungliga skruvstolparna. Detta fungerade bra men tyvärr fastnade baksidan av vridomkopplaren för högt, så jag var tvungen att lödda om den efter att ha böjt terminalerna plant med basen. Slutligen limmade jag lätt PIR -sensorn på plats bakom en ventil, fortfarande osäker på om den skulle fungera utan att bli helt exponerad.

Nu när alla delar var fixerade i sina "slutliga" positioner var jag tvungen att lägga till i kontrollknapparna. Vridomkopplaren var enkel eftersom de är en standardform och den behövde bara en trim för att passa ratten. För på/av -omkopplaren använde jag en del av originalspindeln från TV: n och överlimmade den till tryckknappen. Mushjulet var lite knepigare, igen använde jag en originalspindel från TV: n, ansluten till mushjulsspindeln med en "manschett" av plast.

Steg 8: Fler knappar

Fler knappar
Fler knappar
Fler knappar
Fler knappar

Du skulle tro att det skulle ha varit tillräckligt mycket krångel med knappar, men det fanns mer att komma! LCD -skärmen hade en egen uppsättning med 5 mikrobrytare på ett bräde för att styra ljusstyrka, färg etc så jag ville att dessa skulle vara tillgängliga utan att behöva ta av TV: n från väggen.

Med lite lätt hackning fanns det tillräckligt med utrymme för att passa brädan vid kanten av det "inre" fodralet, allt jag behövde göra då var att klippa hål i det "yttre" fodralet för att göra mikrobrytarna tillgängliga. Jag behövde också hitta någon form av fysiska knappar för att sticka igenom fodralet och ställa upp med mikrobrytarna. Tidigare har jag använt silver "pennklickare" för detta men hade ingen tur att hitta billiga den här gången. Till slut klippte jag av benen från några gamla lysdioder och monterade dem i hålen som jag hade borrat i fodralet - dessa var perfekta eftersom LED -lampans utsvängda bas hindrade dem från att glida ut och de hade precis rätt form och storlek. Utan mer borrning tog jag ett djupt andetag och gick vidare till det "stora snittet".

Steg 9: Hacka fodralet

Hackar fallet
Hackar fallet
Hackar fallet
Hackar fallet
Hackar fallet
Hackar fallet

Med alla kort, skärm och switchar installerade kunde jag nu se exakt hur djupt tv: ns ytterhölje behövde vara, eller snarare hur tunn jag kunde göra det. När jag lämnade ett par centimeter mellanrum mellan kretskorten och vad som skulle bli väggen, markerade jag höljet och huggade ner det med ett roterande verktyg. Detta var det överlägset mest nervkittlande ögonblicket eftersom det var mycket bullrigt och en glid kunde ha förstört fallet. Det sista snittet var dock ganska bra och bara behövde lite slipning och trimning runt kanterna för att avsluta det innan målning - TV: n "baksidan" var ursprungligen vit men hade gulnat med åren.

Steg 10: Ett hängande handtag

Ett hängande handtag
Ett hängande handtag
Ett hängande handtag
Ett hängande handtag
Ett hängande handtag
Ett hängande handtag
Ett hängande handtag
Ett hängande handtag

Nästa problem var hur man hänger TV: n på väggen, så att den var jämn och säker men samtidigt lätt att ta bort för underhåll. Jag hade läst om att använda "franska klossar" eller "Z -fästen" för att hänga stora bilder tidigare men hade aldrig provat dem, så beställde några från Amazon - de visade sig vara helt perfekta! Paketet kom till och med med sin egen lilla vattenpass.

Det var enkelt att fixa väggfästet, jag skruvade fast det i verkstadsväggen för att testa inom några minuter, därefter fick jag ta reda på hur det skulle passa sitt motsatta nummer till TV: n. Ytterhöljet skulle skruvas fast på TV: ns främre del på fyra ställen så det var ganska stabilt, jag bestämde mig för att detta skulle vara det bästa stället för fästet. Svårigheten var att fixera fästet på rätt plats, så att det inte skulle störa brädorna eller trådarna. Jag ville inte heller att bultar skulle visa sig genom höljet.

Vid något tillfälle kom min hjärna på att jag kunde återanvända tv: ns originalhandtag, göra en funktion av den och även använda den för att hålla konsolen på precis rätt plats. Efter noggrann mätning borrade jag nya hål för handtaget och monterade det sedan på z-fästet med ett par små rätvinkliga fästen och ett snitt av trägolv, alla bultade fast ihop.

Steg 11: Touch-ups och montering

Touch-ups och montering
Touch-ups och montering
Touch-ups och montering
Touch-ups och montering
Touch-ups och montering
Touch-ups och montering

För den sista handen slipade jag och spraymålade ytterhöljet och handtaget, gjorde det senare i rött för kontrast och som en nick till Hallon inuti. När färgen hade härdat alla bitarna snyggt monterade knopparna och "Solid State" -märkt skärmkåpa senast på plats. Skärmkåpan var lite rökt men efter en justering av ljusstyrkan och kontrasten (glad att jag inkluderade de LCD -knapparna) såg skärmen lika ljus ut som tidigare.

Steg 12: Platsval

Platsval
Platsval
Platsval
Platsval

Snart flyttade jag z-fästet från verkstadsväggen till sitt "sista" hem i korridoren och hängde upp TV: n och lade till en tunn plaströr för att städa upp Pi: s strömkabel. Nu när den installerades kom den roliga delen - att bestämma vilka webbsidor som ska visas!

När jag undersökte instrumentpanelsalternativ stötte jag på Dakboard - en webbaserad instrumentpanel som du kan länka till din online -kalender för att visa möten, ett nyhetsflöde och vädret. Jag diskonterade det som för enkelt då, men det här var perfekt för en av mina sidor. Min favorit sak med det är att kunna visa mitt eget Google fotoalbum - särskilt eftersom det gärna visar animerade-g.webp

Nästa par flikbeslut var ganska förutsägbara, BBC News och BBC Weather, båda viktiga att kontrollera innan de lämnar huset.

Därefter lade jag till i en länk till liveflödet från en av mina Pi Zero -kameror - detta har redan visat sig vara användbart för att hålla utkik efter brevbäraren eller shoppa leveranser.

Slutligen lade jag till i vår Google Shopping List - vi har ganska för vana att använda Google Pi Intercom för att lägga till objekt i listan så det är väl värt att kolla innan vi ger oss ut.

Jag samlade URL: erna från den bärbara datorn till ett anteckningsblock och kopierade detta till Pi och lade dem sedan till @Chromium -raden i autostart -filen (se steg 2 ovan).

Steg 13: Sista tankarna

Slutgiltiga tankar
Slutgiltiga tankar
Slutgiltiga tankar
Slutgiltiga tankar
Slutgiltiga tankar
Slutgiltiga tankar

Jag gillade verkligen den här konstruktionen, vilket gör att något jag vet att jag kommer att använda dagligen hindrar mig verkligen från att klippa hörn - även om det tar mycket längre tid. Min favorit sak är den stora ratten för att byta kanal, det är verkligen tillfredsställande att använda den ursprungliga mekanismen.

Det som gick mycket bättre än väntat var PIR -sensorn, som jag var övertygad om att inte skulle fungera inbäddad i en väska - jag ville inte riktigt avslöja hela sensorn så jag är verkligen glad att det löste sig. Det är ganska känsligt och vi tycker alla om att försöka krypa förbi det utan att skärmen slås på. Det visade sig dock vara riktigt utmanande att fotografera, det rökta skärmomslaget är så reflekterande!

Jag älskar utseendet på det i korridoren och det fungerar precis som jag hade hoppats - några klick fram och tillbaka och lite rullning brukar räcka för att få mig ut genom dörren på morgonen med all information jag behöver.

Om du gillar det här projektet och vill se mer kan du kolla in min webbplats för pågående projektuppdateringar på bit.ly/OldTechNewSpec, gå med på Twitter @OldTechNewSpec eller prenumerera på den växande YouTube -kanalen på bit.ly/oldtechtube - ge några av dina Old Tech en ny specifikation!

Rekommenderad: