1981 Portable VCR Raspberry PI Media Centre (5 / 12 steg)
Steg 5: Knappar och burop
Jag gillar alltid att använda de ursprungliga kontrollerna i mina projekt så långt som möjligt, och med pinsamt av knappar att välja mellan på denna video jag såg fram emot möjligheterna. Jag började med att ta bort de två knapp kretsarna från fallet, då med en 5v LED och skärbräda kartlagt som tråd var som märkning dem när jag gick. Detta var stor hjälp av styrelser är väl kommenterade, visar både switch namnen och sträckningen av kabeln på ovansidan. Kretsarna var enkel nog, i princip bara en kabel för varje knapp och en delad negativa anslutning.
Detta handlade om när problemet började! Jag ville använda så många knappar som möjligt, för media kontroll (spela upp/pausa etc), Raspbmc navigering och andra funktioner som TV, EL tråd, lysdioder etc. För att göra detta jag tänkte jag kunde bara kannibalisera en gammal USB-tangentbord, kabel upp kontakterna och bort skulle jag gå - fungerade det verkligen inte på det viset.
För det första skivade jag upp en gammal flexibla USB-tangentbord, fastställande knappen kablarna till kontakter som oftast berör när du trycker på en tangent så att knapparna VCR skulle skicka tangenttryckningar till Pi, som kan då vara mappade till styrfunktioner. Den här arbetat upp till en punkt, men antalet anslutningar (16 knappar, 32 kablar) innebar det tog evigheter att sätta ihop. Efter att ha testat det med en dator jag hittade att anslutningarna inte var lika tillförlitliga som jag hade hoppats (jag försökte allt från häftning, hål peta, Gem och Varmlimma geomag magneter för att ansluta till tangentbordet!). Jag gav på tangentbordet som alltför komplicerat i slutet - för mycket för att gå fel - och istället hade tanken att kanske jag kunde använda en arduino uno att imitera ett tangentbord. Den tanken och har undersökt lite insåg jag att Pi själv har en uppsättning GPIO stift, som potentiellt skulle kunna användas för att kommunicera direkt med knapparna VCR.
Jag tillbringade ganska en även experimentera med olika alternativ, fick veta mycket om GPIO stift, pull-up motstånd och andra grejer och kom mycket nära en lösning med vissa Pi kod som kallas Pikeyd, men slå lite av en tegelvägg med det i slutändan. Nästa jag försökte en Adafruit fasad, en teeny tiny mikrokontroller, men efter en hel del tid spenderat knorra det visade sig egentligen bara erbjuda ett par input knappar. Jag hade liknande tur med USB gamepads jag hade liggande. Nu flera veckor hade gått och resten av projektet, fallet, TV etc nästan färdigt, så jag bestämde mig för det var make-or-break för knapparna!
Tänka om den färdiga produkten och med andra komponenter nästan klar jag tog ett steg tillbaka och insåg att rymden skulle vara mycket säkrare inne i det än vad jag hade tänkt. Också att det faktiskt skulle vara av begränsad nytta att ha en full uppsättning av navigering och kontrollknappar på videon, eftersom när du tittar på skärmen knapparna skulle vara vänd bort från dig! Jag beslutade om ett sista försök att rädda vissa grundläggande funktioner (spela upp/pausa, spola tillbaka och snabbspola framåt) och fick detta arbetar med kretsen av en av den lowliest varelser på jorden - en USB-mus från £1 butik.
Musen demonterades mycket lätt och jag fast i växlarna för vänster, höger och mitten Klicka till VCR knapparna. Allt jag behövde göra då var att redigera en XML-fil på Pi-kallas keymaps.xml - säger detta Pi vilka uppgifter att utföra, till exempel jag mappade LeftClick till funktionen Raspbmc för Rewind, MiddleClick till spela upp/pausa och högerklicka för att FastForward. Jag lämnade alla sladdar till de andra knapparna märkta upp och undangömt i fallet så att jag kan se över andra alternativ vid en senare tidpunkt om jag behöver.
Få knappar sorterade var den mest tidskrävande och frustrerande del av denna bygga, och till slut gjorde jag en kompromiss för att gå framåt och hålla det roligt. Jag lyckades göra VCR knapparna styr EL tråd, lysdioder, mata ut och TV på/av, så i slutändan är jag nöjd med hur det fungerat.