Innehållsförteckning:

HackerBox 0047: Old School: 12 steg
HackerBox 0047: Old School: 12 steg

Video: HackerBox 0047: Old School: 12 steg

Video: HackerBox 0047: Old School: 12 steg
Video: #83 HackerBox 0047 Old School 2024, Juli
Anonim
HackerBox 0047: Old School
HackerBox 0047: Old School

Hälsningar till HackerBox Hackare runt om i världen! Med HackerBox 0047 experimenterar vi med tangentbordsgränssnitt för mikrokontroller, VGA -videosignalsgenerering, gamla skolor BASIC ROM -datorer, microSD -lagringsenheter, låssportverktyg och startbara Ubuntu Linux USB -minnen.

Denna instruktionsbok innehåller information om hur du kommer igång med HackerBox 0047, som kan köpas här så länge lagret räcker. Om du vill få en sån här HackerBox i din brevlåda varje månad, prenumerera på HackerBoxes.com och gå med i revolutionen!

HackerBoxes är den månatliga prenumerationstjänsten för entusiaster inom elektronik och datorteknik - Hardware Hackers - The Dreamers of Dreams.

Steg 1: Innehållslista för HackerBox 0047

  • Exklusivt Old School VGA PC -kit
  • Två Arduino Nano -moduler 5V 16MHz
  • 200 -delar LED -kit i plastförvaringslåda
  • Aluminium USB -minne 8 GB
  • 6-i-1 ficklåsverktyg för fickor
  • Precision Wire Cutters
  • MicroSD Breakout -modul
  • MicroSD USB -läsare
  • Två 40 -stifts manliga brytningsrubriker
  • Kvinnor-Kvinnor 10 cm DuPont-tröjor
  • Ubuntu Linux dekal

Några andra saker som kommer att vara till hjälp:

  • Lödkolv, löd och grundläggande lödverktyg
  • Dator för att köra mjukvaruverktyg
  • Bärgad VGA -skärm (prova en butik eller gammalt förråd på jobbet)
  • PS/2 -tangentbord (prova en butik eller gammalt förråd på jobbet)

Viktigast av allt, du behöver en känsla av äventyr, hackeranda, tålamod och nyfikenhet. Att bygga och experimentera med elektronik, samtidigt som det är mycket givande, kan vara svårt, utmanande och till och med frustrerande ibland. Målet är framsteg, inte perfektion. När du fortsätter och njuter av äventyret kan du få stor tillfredsställelse från denna hobby. Ta varje steg långsamt, tänk på detaljerna och var inte rädd för att be om hjälp.

Det finns en mängd information för nuvarande och potentiella medlemmar i HackerBoxes FAQ. Nästan alla icke-tekniska support-e-postmeddelanden som vi får besvaras redan där, så vi uppskattar verkligen att du tar några minuter att läsa vanliga frågor.

Steg 2: Låssport

Låssport
Låssport

Locksport är sporten eller rekreationen för att besegra lås. Entusiaster lär sig en mängd olika färdigheter, inklusive låsplukning, låsbumpning och andra tekniker som traditionellt används av låssmeder och andra säkerhetspersonal. Locksportentusiaster njuter av utmaningen och spänningen i att lära sig besegra alla former av lås, och samlas ofta i idrottsgrupper för att dela kunskap, utbyta idéer och delta i en mängd olika fritidsaktiviteter och tävlingar.

För en trevlig introduktion, kolla in MIT Guide to Lock Picking.

Titta också på den här videon och kolla in de fantastiska länkarna i beskrivningen av videon.

TOOOL (The Open Organization Of Lockpickers) är en organisation av individer som ägnar sig åt Locksports hobby, samt utbildar sina medlemmar och allmänheten om säkerheten (eller bristen på det) som tillhandahålls av vanliga lås. "TOOOL: s uppdrag är att främja allmänhetens kunskap om lås och lockplockning. Genom att undersöka lås, kassaskåp och annan sådan hårdvara och genom att offentligt diskutera våra fynd hoppas vi ta bort det mysterium som så många av dessa produkter är genomsyrade av."

ETISKA BETÄNKLIGHETER:

Granska noga och ta seriös inspiration från TOOOLs strikta etiska kod som sammanfattas i följande tre regler:

  1. Välj eller manipulera aldrig i syfte att öppna ett lås som inte tillhör dig, såvida du inte har fått uttryckligt tillstånd av låsets rättmätiga ägare.
  2. Sprid aldrig kunskap eller verktyg för låspickning till personer som du känner eller som har anledning att misstänka skulle försöka använda sådan kompetens eller utrustning på ett kriminellt sätt.
  3. Var uppmärksam på relevanta lagar om låsplockor och tillhörande utrustning i alla länder, stater eller kommuner där du försöker ägna dig åt hobbyplockning eller låssport.

Steg 3: Trimma alla elektroder

Trimma alla spetsar
Trimma alla spetsar

Vid lödning finns det alltid ledningar till trimmer. För att inte tala om att klippa den gröna tråden samtidigt som farliga filmrekvisita avaktiveras.

Använd detta verktyg vid god hälsa. Beakta varningarna från tillverkaren om alltid att bära ögonskydd. De vill inte att du sticker ut dina ögon. Inte vi heller.

Steg 4: Arduino Nano mikrokontrollerplattform

Arduino Nano mikrokontrollerplattform
Arduino Nano mikrokontrollerplattform

Vi älskar alla Arduino Nano och den här månaden kommer vi att behöva två av dem! De medföljande Arduino Nano -skivorna levereras med huvudstift, men de är inte lödda på modulerna. Lämna stiften av för tillfället. Utför dessa första tester på båda Arduino Nano -modulerna före lödning på huvudstiften. Allt som behövs är en microUSB -kabel och båda Arduino Nano -korten precis när de kommer ut ur väskan.

Arduino Nano är ett ytmonterat, brödbrädvänligt, miniatyriserat Arduino-kort med integrerat USB. Det är fantastiskt komplett och lätt att hacka.

Funktioner:

  • Mikrokontroller: Atmel ATmega328P
  • Spänning: 5V
  • Digitala I/O -stift: 14 (6 PWM)
  • Analoga ingångsstift: 8
  • Likström per I/O -stift: 40 mA
  • Flashminne: 32 KB (2KB för bootloader)
  • SRAM: 2 KB
  • EEPROM: 1 KB
  • Klockhastighet: 16 MHz
  • Mått: 17 mm x 43 mm

Denna speciella variant av Arduino Nano är den svarta Robotdyn Nano. Innehåller en inbyggd MicroUSB-port ansluten till ett CH340G USB/Serial bridge-chip. Detaljerad information om CH340 (och drivrutiner, om det behövs) hittar du här.

När du först ansluter Arduino Nano till en USB -port på din dator ska den gröna strömlampan tändas och kort efter ska den blå lysdioden börja blinka långsamt. Detta händer eftersom Nano är förinstallerad med BLINK-programmet, som körs på den helt nya Arduino Nano.

PROGRAMVARA: Om du ännu inte har Arduino IDE installerat kan du ladda ner det från Arduino.cc

Anslut Nano till MicroUSB -kabeln och andra änden av kabeln till en USB -port på datorn. Starta Arduino IDE -programvaran. Välj "Arduino Nano" i IDE under verktyg> kort och "ATmega328P (gammal bootloader)" under verktyg> processor. Välj lämplig USB -port under verktyg> port (det är troligtvis ett namn med "wchusb" i den).

Slutligen ladda upp en del exempelkod: Fil-> Exempel-> Grunder-> Blink

Blink är faktiskt koden som förinstallerades på Nano och borde köras just nu för att långsamt blinka den blå lysdioden. Följaktligen, om vi laddar den här exempelkoden, kommer ingenting att förändras. Låt oss istället ändra koden lite.

När du tittar noga kan du se att programmet tänder lysdioden, väntar 1000 millisekunder (en sekund), släcker lysdioden, väntar ytterligare en sekund och gör sedan allt igen - för alltid.

Ändra koden genom att ändra båda "fördröjning (1000)" -uttalandena till "fördröjning (100)". Denna ändring kommer att leda till att lysdioden blinkar tio gånger snabbare, eller hur?

Låt oss ladda den modifierade koden till Nano genom att klicka på UPLOAD -knappen (pilikonen) strax ovanför den modifierade koden. Titta nedanför koden för statusinformation: "kompilering" och sedan "uppladdning". Så småningom ska IDE indikera "Uppladdning klar" och din lysdiod ska blinka snabbare.

Grattis i så fall! Du har just hackat din första inbäddade kod.

När din snabbblinkade version har laddats och körs, varför inte se om du kan ändra koden igen så att lysdioden blinkar snabbt två gånger och sedan vänta ett par sekunder innan du upprepar? Ge det ett försök! Vad sägs om några andra mönster? När du väl lyckats visualisera ett önskat resultat, koda det och observera att det fungerar som planerat, har du tagit ett enormt steg mot att bli en kompetent hårdvaruhacker.

Innan du lödar något till dem, testa båda Arduino Nano -modulerna genom att ladda ett anpassat program på var och en och se till att det körs korrekt.

Om du vill ha ytterligare introduktionsinformation för arbete i Arduino -ekosystemet föreslår vi att du läser guiden för HackerBoxes Starter Workshop, som innehåller flera exempel och en länk till en PDF -Arduino -lärobok.

Steg 5: Old School VGA PC Kit

Old School VGA PC -kit
Old School VGA PC -kit

Old School VGA PC Kit Innehåll:

  • Old School VGA PC Printed Circuit Board
  • Två Arduino Nano mikrokontroller moduler
  • HD15 VGA -kontakt
  • Mini-DIN PS/2 tangentbordskontakt
  • Två 68 Ohm -resistorer
  • Två 470 ohm motstånd
  • Piezo summer

Under de närmaste stegen kommer du att montera och utforska Old School VGA PC Kit. Uppenbarligen kommer detta att kräva lite lödning. Det finns många bra guider och videor online om lödning (till exempel). Om du känner att du behöver ytterligare hjälp kan du försöka hitta en lokal maker -grupp eller hackerutrymme i ditt område. Amatörradioklubbar är också alltid utmärkta källor till elektronisk expertis.

Några designanmärkningar: Det föreslås att när båda Nanos har installerats ska du bara ansluta en av dem i taget till USB -ström, aldrig båda samtidigt. På samma sätt kan båda Nanos driva summern från deras A0 -stift. Konfigurera bara en av A0 -stiften som en utgång, aldrig båda samtidigt. Det finns en rad med I/O -stift (rubrik J1) strax under de två MCU: erna (se schemat för stifttilldelningar). Den nedre raden (rubrik J2) är bara ett "breadboarding space" och den ansluter inte till någonting inom kretskortet.

Steg 6: Old School PC - PS/2 -tangentbord

Old School PC - PS/2 -tangentbord
Old School PC - PS/2 -tangentbord

För att testa tangentbordets gränssnitt och bibliotek, fyll först bara två objekt på kretskortet:

  1. Huvud MCU (Arduino Nano)
  2. Mini-DIN PS/2-kontakt

Main MCU kräver de två långa svarta rubrikraderna. Sexstiftshuvudet (2x3) används inte.

Installera Paul Stoffregen PS2Keyboard Library för Arduino.

I Arduino IDE öppnar du Arkiv> Exempel> PS2Keyboard> Simple_Test

Från PCB -schemat i föregående steg kan du se att KBCLK är på stift D3 (inte D5 som antaget i exemplet), så se till att stiftets definitioner i exemplen är inställda på:

const int DataPin = 8; const int IRQpin = 3;

Programmera sedan koden till Main MCU, anslut ett PS/2 -tangentbord, öppna Arduino Serial Monitor till 9600 bps och börja skriva.

Tangentbordets skanningskoder avmystifierade

Observera att de flesta äldre USB -tangentbord är kombinerade USB- och PS/2 -tangentbord och kan användas med en adapter eller kopplas om för att ansluta till en PS/2 -port. Dessa tangentbord med dubbla gränssnitt kom vanligtvis med en liten USB-till-PS/2-adapterkontakt. Men nyare USB -tangentbord som inte kom med en PS/2 -adapter ger vanligtvis inte PS/2 -signalerna och fungerar inte med en sådan adapter.

Steg 7: Old School -dator - VGA -videoutgång

Old School PC - VGA -videoutgång
Old School PC - VGA -videoutgång

Löd upp den andra Arduino Nano (VIDEO MCU), de fyra motstånden (observera att det finns två olika värden), summern och VGA -kontakten. Återigen används inte sex (2x3) stifthuvudet för MCU.

Installera Sandro Maffiodos VGAX -bibliotek för Arduino. Anslut en VGA -bildskärm. Njut av exempelfilerna under fil> exempel> VGAX

Git -repo för VGAX -biblioteket har mycket pedagogisk information och använder undervisning om hur den ödmjuka Arduino hackas för att generera en VGA (ish) videosignal.

Steg 8: Old School PC - BASIC Programmeringsspråk

Image
Image

Dessa tangentbord, video och MCU-processblock kan kombineras till en enkel, men ändå elegant, 8-bitars VGA-dator som kan stödja det BASIC-programmeringsspråket. Rekvisita till Rob Cai för att sätta ihop alla dessa bitar.

BASIC (Beginner's All-purpose Symbolic Instruction Code) är ett allmänt ändamål på hög nivå med programmeringsspråk som betonar användarvänlighet. Nästan universellt hade hemdatorer från 1980-talet en ROM-baserad BASIC-tolk, som maskinerna startade in direkt. Dessa gamla skolmikroer innehåller olika typer av Apple II, Commodore, TRS-80, Atari och Sinclair-maskiner. (wikipedia)

De dubbla MCU -designerna använder en första Arduino som MAIN MCU, där TinyBasic Plus och PS2 -tangentbordsbibliotek laddas upp. Den andra VIDEO MCU används som en grafisk displaygenerator som kör VGAX -biblioteket. VIDEO MCU kan generera 4 färger, 10 rader x 24 kolumner med ASCII -tecken.

Arduino I/O kan drivas direkt från BASIC -program. Som visas i den här videon drivs en LED som blinkar av några programrader. BASIC -koden kan till och med sparas i MCU: s EEPROM.

KODEN: Skissad för både MCU: er och olika andra detaljer finns i Rob Cai's Instructable för projektet.

PROGRAMMERING OBS: När man programmerar MCU -modulerna efter att de finns på kretskortet kan det ibland uppstå problem eftersom de seriella gränssnitten är anslutna och kan störa programmeringen. Håll bara återställningsknappen på Main MCU medan USB -kabeln programmerar Video MCU, och vice versa medan USB -kabeln programmerar Main MCU.

Steg 9: Kör Ubuntu Linux via USB Stick

MicroSD TF Breakout -modul
MicroSD TF Breakout -modul

Ubuntu är en gratis och öppen källkod Linux-distribution baserad på Debian. Ubuntu släpps var sjätte månad, med långsiktigt stöd (LTS) släpps vartannat år. Ubuntu är utvecklat av Canonical och användarsamhället. Ubuntu är uppkallat efter den afrikanska filosofin ubuntu, som Canonical översätter till "mänsklighet för andra" eller "jag är vad jag är på grund av vem vi alla är". (wikipedia)

Varför inte testa Ubuntu på ett USB -minne?

  • Installera eller uppgradera Ubuntu
  • Testa Ubuntu -skrivbordsupplevelsen utan att beröra din datorkonfiguration
  • Starta Ubuntu på en lånad maskin eller från ett internetcafé
  • Använd verktyg installerade som standard på USB -minnet för att reparera eller åtgärda en trasig konfiguration

Att skapa ett startbart Ubuntu USB -minne är väldigt enkelt, särskilt från Ubuntu själv. Processen omfattas i några steg här.

VARNING: Vana att aldrig lita på slumpmässiga USB -lagringsenheter. Ja, även den som ingår i denna låda. Låt aldrig någonting AutoRun från en okänd lagringsenhet. De flesta operativsystem tillåter inte AutoRun som en del av vanliga säkerhetsmetoder, men i en Windows -låda bör du inaktivera AutoRun/AutoPlay. Kör inte eller öppna något du hittar på lagringsenheten. Om du vill använda lagringsenheten, torka den och formatera om den.

Steg 10: MicroSD TF Breakout -modul

Vad är skillnaden mellan ett TF -kort och ett MicroSD -kort? (källa)

Den lilla mobila lagringsenheten som kallas MicroSD -kort producerades först av SanDisk Corporation under namnet TransFlash, 2004, och vid den tiden introducerades den som den minsta externa minnesenheten i världen. Efter framgångarna på mobiltelefonmarknaden antogs TransFlash -kortet formellt av den nuvarande myndigheten för digital lagring, SD Card Association, som en del av den tredje kategorin digital lagringsenhet i det officiella Secure Digital -paraplyet. De andra två enheterna är MiniSD och SD -minneskort. Någon gång på vägen ändrade SanDisk Corporation enhetens namn till MicroSD -kort och började producera det vi nu använder som ett standardminneslagringschip, som de flesta mobiltelefoner är utformade för att rymma.

Observera att MicroSD -minnesenheter är 3.3V -enheter, så den enkla brytningsmodulen som visas här bör användas i 3.3V -system. Till exempel med 3,3V mikrokontroller. Du hittar ofta instanser i naturen (exempel ett, exempel två) av projekt som bara stoppar 5V I/O -signaler till MicroSD -kort. Dessa fungerar i allmänhet om du gillar att leva farligt, men de kan vara mindre stabila och kan till och med skada MicroSD -kortet. Mer korrekta/robusta lösningar för användning av MicroSD-kort med 5V mikrokontroller inkluderar nivåskiftare eller spänningsdelare (båda diskuteras här).

Steg 11: Mandelbrot -zoom - fall inte in

Image
Image

Bilder av Mandelbrot-uppsättningen uppvisar en genomarbetad och oändligt komplicerad gräns som avslöjar progressivt allt finare rekursiva detaljer vid ökande förstoringar. "Stilen" för denna upprepande detalj beror på området för uppsättningen som undersöks. Uppsättningens gräns innehåller också mindre versioner av huvudformen, så fraktal egenskapen för självlikhet gäller för hela uppsättningen, och inte bara för dess delar. Mandelbrot -uppsättningen har blivit populär utanför matematiken både för sin estetiska dragningskraft och som ett exempel på en komplex struktur som härrör från tillämpningen av enkla regler. Det är ett av de mest kända exemplen på matematisk visualisering och matematisk skönhet. (wikipedia)

  • manuellt zoomverktyg
  • så mycket kod
  • rekursion: n. se rekursion

Steg 12: HackLife

Vi hoppas att du njuter av månadens HackerBox -äventyr inom elektronik och datorteknik. Nå ut och dela din framgång i kommentarerna nedan eller på HackerBoxes Facebook Group. Kom också ihåg att du kan skicka e -post till [email protected] när som helst om du har en fråga eller behöver hjälp.

Vad kommer härnäst? Gå med i revolutionen. Lev HackLife. Få en cool låda med hackbar utrustning levererad direkt till din brevlåda varje månad. Surfa över till HackerBoxes.com och registrera dig för ditt månatliga HackerBox -abonnemang.

Rekommenderad: