Indholdsfortegnelse:

HackerBox 0057: Sikker tilstand: 9 trin
HackerBox 0057: Sikker tilstand: 9 trin

Video: HackerBox 0057: Sikker tilstand: 9 trin

Video: HackerBox 0057: Sikker tilstand: 9 trin
Video: DEF CON Safe Mode Hardware Hacking Village - Joseph Long - HackerBox 0057 Build 2024, Juli
Anonim
HackerBox 0057: Sikker tilstand
HackerBox 0057: Sikker tilstand

Hilsen til HackerBox Hackere rundt om i verden! HackerBox 0057 bringer en landsby IoT, Wireless, Lockpicking og selvfølgelig Hardware Hacking lige ind i dit hjemmelaboratorium. Vi vil undersøge programmering af mikrokontroller, IoT Wi-Fi-udnyttelser, Bluetooth-interfacing, IR-hacks, Locksports, lyd-/videosignalgenerering og mere.

HackerBoxes er den månedlige abonnementskassetjeneste for entusiaster inden for elektronik og computerteknologi - Hardware Hackers - The Dreamers of Dreams.

Der er et væld af oplysninger til nuværende og potentielle medlemmer i HackerBoxes ofte stillede spørgsmål. Næsten alle de ikke-tekniske support-e-mails, vi modtager, besvares allerede der, så vi sætter stor pris på, at du tager et par minutter på at læse FAQ.

Forbrugsvarer

Denne instruktionsbog indeholder oplysninger om, hvordan du kommer i gang med HackerBox 0057. Den fulde boksindhold er angivet på produktsiden for HackerBox 0057, hvor kassen også kan købes, så længe lager haves. Hvis du automatisk vil modtage en HackerBox som denne direkte i din postkasse med en rabat på $ 15, kan du abonnere på HackerBoxes.com og deltage i revolutionen!

Et loddejern, lodde og grundlæggende loddeværktøjer er generelt nødvendige for at arbejde på den månedlige HackerBox. En computer til at køre softwareværktøjer er normalt også påkrævet.

Vigtigst af alt har du brug for en følelse af eventyr, hackerånd, tålmodighed og nysgerrighed. At bygge og eksperimentere med elektronik, selvom det er meget givende, kan til tider være svært, udfordrende og endda frustrerende. Målet er fremskridt, ikke perfektion. Når du vedvarer og nyder eventyret, kan der opnås stor tilfredshed fra denne hobby. Tag hvert trin langsomt, vær opmærksom på detaljerne, og vær ikke bange for at bede om hjælp.

Trin 1: Start i fejlsikret tilstand med netværk

Starter i fejlsikret tilstand med netværk
Starter i fejlsikret tilstand med netværk

De fleste HackerBox -medlemmer deltager i forskellige hacker -konventioner. Selv dem, der ikke gør det, er sandsynligvis helt bekendt med disse konferencer og den utrolige følelse af fællesskab, de fremkalder gennem netværk, landsbyer, konkurrencer, talere, aktiviteter, traditioner og så videre. I en eller anden sammenhæng kan du nyde denne hackumentary om DEF CON, som er den største hacker -konvention i verden.

Et sjovt aspekt ved hacker -konventioner, især DEF CON, er de badges, der historisk set fungerede som adgangskort for at komme ind og deltage i con. Disse udviklede sig til elektroniske badges. Til sidst begyndte deltagerne at lave deres egne indie -badges, som ikke formelt er en del af konferencen, men er bygget, samlet og slidt af kærlighed til #badgelife. Ja, der er også en hackumentary om at leve badgelife. HackerBox 0057 indeholder et indie -badgesæt, som du kan samle og programmere på egen hånd. Stol på din teknolust.

På grund af COVID-19-pandemien vil DEF CON 28 fra den 6. til den 9. august 2020 starte i fejlsikret tilstand med netværk. Alle aktiviteter vil være virtuelle, online og gratis. Vi håber at se dig der! Temaet for HackerBox 0057 er klart inspireret af DEF CON 28 Safe Mode.

En af DEF CON -landsbyerne er Hardware Hacking Village (HHV) og den tilhørende lodningskvalitetsby (SSV). Af indlysende årsager er HackerBoxers enorme fans og tilhængere af HHV/SSV. Under DEF CON 28 var HHV vært for live video builds med Q&A sessioner til HackerBox 0057 Indie Badge Kit. Videostrømmen er blevet offentliggjort på YouTube, hvis du gik glip af den live eller bare vil se igen.

Trin 2: Låsesport

Locksport
Locksport

Locksport er sport eller rekreation af at besejre låse. Entusiaster lærer en række forskellige færdigheder, herunder låseplukning, låsestød og andre teknikker, der traditionelt bruges af låsesmede og andre sikkerhedsprofessionelle. Locksport -entusiaster nyder udfordringen og spændingen ved at lære at besejre alle former for låse og samles ofte i sportsgrupper for at dele viden, udveksle ideer og deltage i en række fritidsaktiviteter og konkurrencer.

For en god introduktion, tjek MIT Guide to Lock Picking.

Se også denne video og sørg for at tjekke de fremragende links i beskrivelsen af videoen.

TOOOL (The Open Organization Of Lockpickers) er en organisation af enkeltpersoner, der beskæftiger sig med Locksports hobby, samt uddanner dets medlemmer og offentligheden om den sikkerhed (eller mangel på det), som fælles låse giver. "TOOOL's mission er at fremme den almene viden om låse og låsning. Ved at undersøge låse, pengeskabe og andet sådant hardware og ved offentligt at diskutere vores fund håber vi at fjerne mysteriet, som så mange af disse produkter er gennemsyret af."

DEF CON 28 SAFE MODE Lockpick Village (LPV) har arbejdet hårdt på at få nogle gode højttalere og samtaler, som vi kan nyde fra hjemmets sikkerhed. LPV -kalenderen er tilgængelig her.

ETISKE BEMÆRKNINGER: Gennemgå og tag alvorlig inspiration fra TOOOLs strenge etiske kodeks, der er opsummeret i følgende tre regler:

  1. Vælg aldrig eller manipuler aldrig med det formål at åbne en lås, der ikke tilhører dig, medmindre du har fået udtrykkelig tilladelse fra låsens retmæssige ejer.
  2. Spred aldrig viden eller værktøjer til lockpicking til personer, som du kender, eller som har grund til at formode, ville søge at anvende sådanne færdigheder eller udstyr på en kriminel måde.
  3. Vær opmærksom på de relevante love vedrørende låsepinde og tilhørende udstyr i ethvert land, stat eller kommune, hvor du søger at deltage i hobbylåsning eller fritids -låsesport.

Trin 3: ESP32 T-Display-modul

ESP32 T-Display modul
ESP32 T-Display modul

BEMÆRK: For at opbygge tillid, konfigurere vores værktøjer og reducere fejlfindingsvariabler, vil vi i første omgang arbejde med T-Display UDEN at sælge stifterne (eller noget andet) til modulet.

LilyGO TTGO T-display ESP32 er et meget kompakt ESP32-udviklingsbræt med et 1,14 tommer IPS 240x135 fuld-farvedisplay, Wi-Fi, Bluetooth, batteriopladningsgrænseflade, to indbyggede GPIO-knapper og et USB-C-stik.

IPS -farvedisplayet styres af en ST7789V -driverchip, der er forudforbundet til ESP32 -benene vist i diagrammet ovenfor.

  • Tænd for T-Display ved hjælp af et USB-C-kabel
  • Forprogrammeret firmware viser en grafisk demo
  • Installer Arduino IDE
  • Brug Arduino IDE Boards Manager til at tilføje ESP32 Support
  • Vælg i menuen Værktøjer:

    • Board: ESP32 Dev Module
    • Uploadhastighed: 921600
    • CPU -frekvens: 240Mhz (WiFi/BT)
    • Flashfrekvens: 80Mhz
    • Flashtilstand: QIO
    • Flashstørrelse: 4MB (32Mb)
    • Partitionsordning: Standard 4MB med spiffs (1.2MB APP/1.5 SPIFFS)
    • Core Debug Level: Ingen
    • PSRAM: Deaktiveret
    • Port: COM-port, der vises og forsvinder, når T-Display er tilsluttet/afbrudt
  • Formværktøjer> Library Manager, søg efter TFT_eSPI
  • Installer TFT_eSPI -biblioteket fra Bodmer
  • Find den mappe, hvor Arduino Libraries er installeret, og mappen til TFT_eSPI
  • Find og åbn filen User_Setup_Select.h i et tekstredigeringsprogram
  • Kommenter linjen med #include User_Setup.h (standard)
  • Fjern kommentaren fra linjen med #include User_Setups/Setup25_TTGO_T_Display.h
  • Indlæs fil> Eksempler> TFT_eSPI> Test og diagnostik> Farvetest
  • Kompilér og upload farve_test til ESP32 T-Display-modulet

Et nyt program er nu indlæst på ESP32, som vil generere et eksempel på farverig tekstvisning. Dette bekræfter, at vores ESP32 T-Display-modul er fuldt funktionelt, og også at vores værktøjer og biblioteker er korrekt konfigureret.

Referencer:

TTGO-T-Display GitHub-depot

Jeroen Maathuis 'T-Display ESP32 Code Snippets

LCD wiki til modul med 1,14 tommer IPS Display

Trin 4: HackerBox 0057 Indie Badge PCB i fejlsikret tilstand

HackerBox 0057 Indie Badge PCB i fejlsikret tilstand
HackerBox 0057 Indie Badge PCB i fejlsikret tilstand

Fra skematisk kan vi se, hvilke enheder der er forbundet til hvilke IO -ben i ESP32. Disse oplysninger bliver nyttige, når du programmerer kode til badget.

  • IO21 - Taktil knap A
  • IO22 - Taktil knap B
  • IO15 - Joystick op
  • IO27 - Joystick ned
  • IO17 - Joystick til højre
  • IO12 - Joystick til venstre
  • IO13 - Joystick Center (tryk)
  • IO32 - summer
  • IO33 - Infrarød modtager TSOP4838
  • IO02 - Infrarød LED -transmitter
  • IO25 - Composite Video Output (RCA)
  • IO26 - Lydsignaludgang (RCA)

Trin 5: Saml badget

Saml badget
Saml badget

Komponenterne kan loddes på badge -printkortet i henhold til billedet, der viser placering for komponenterne. Alle komponenter går på toppen (sortere side) af printkortet med undtagelse af de fire batterikabler som diskuteret senere.

De tre modstande ser meget ens ud, men de kan ikke udskiftes. Du kan identificere dem ved hjælp af et ohmmeter eller ved at læse de farvede bånd med en lup:

  • 220 Ohm modstand (rød, rød, sort, sort, brun)
  • 330 Ohm modstand (orange, orange, sort, sort, brun)
  • 1K Ohm modstand (brun, sort, sort, brun, brun)

Modstandene og den keramiske kondensator er ikke polariserede og kan indsættes i begge retninger. Flere af de andre komponenter har imidlertid en specifik påkrævet retning:

  • Den lange pin på IR -LED'en skal være tættest på det tilstødende RCA -stik.
  • Joysticket har to små positioneringspinde, der passer ind i printkortet. Hvis det vendes, vil loddepuderne ikke stille op.
  • 2N2222 Transistoren skal orienteres med den flade side mod joysticket.
  • Lydsignalet skal orienteres med prikken tættest på ESP32 T-Display.
  • TSOP4838 IR-modtagerens afrundede overflade skal vende væk fra ESP32 T-Display

Sæt strømafbryderen og batteristikket til side nu. Vi vil behandle disse i et senere trin.

Trin 6: Indlæs noget kode

Indlæs noget kode
Indlæs noget kode

Vi har allerede eksperimenteret med programmering af ESP32 MCU. Nu hvor det lodder ind i badget, kan vi bruge ESP32 til at udøve de forskellige aspekter af badgehardwaren.

Summer output

For vores første trick, lad os summe summeren. Dette kræver kun en pin (IO32), og det skal stadig fungere, selvom displaybiblioteket ikke er korrekt konfigureret. Bare tag filen HB0057_Buzzer.ino og upload den til ESP32.

Joystick og knapindgange

Dernæst kan vi teste brugerinput. Skitsen HB0057_Joystick.ino viser status for joystick- og taktile knapper på IPS -displayet.

Kompositvideo og lydudgang

DawnOfAV-projektet fra den evigt strålende bitluni fungerer ud af boksen, hvis vi simpelthen ændrer ESP32-partitionsordningen til "Huge APP" under Værktøjer i IDE. Denne video forklarer, hvordan han genererer farve PAL/NTSC -signaler.

Emulering Gone Wild

ESP_8_BIT -projektet fra rossumur går på old school for at efterligne Atari 8 -bit computere, NES og SMS -spilkonsoller på ESP32 MCU, der udnytter Composite A/V -output. Tjek denne Hackaday -rapport om projektet.

Vi har brug for at opdatere de tre IO -ben, der bruges af dette projekt, så de matcher badningens ledninger. Disse findes i filen video_out.h:

  • #define VIDEO_PIN 25
  • #define AUDIO_PIN 26
  • #define IR_PIN 33

Yderligere projekter

Der er mange store ESP32 -projekter derude, der kan målrettes til dette badge board ved at ændre IO -pin -tildelingerne og genoverveje videogenerering for at bruge RCA AV -udgange eller det indbyggede IPS -display. Vi får et par af disse op og dokumenteret, så hold øje.

ESPFLIX streaming NETFLIX til ESP32

ESP32 -minikonsol (sammensat AV)

ESP32 håndholdt spilkonsol (LCD)

Marauder Bluetooth og Wi-Fi Pen-test

ArduinoMenu-demo på ESP32 T-Display

MicroPython på T-Display

ESP32 Bluetooth Low Energy (BLE) på Arduino IDE

TV-B-Borte til ESP32

ESP32 Wi-Fi IR fjernbetjening

Trin 7: Batteristrøm til HackerBox 0057 Indie -badge

Batteristrøm til HackerBox 0057 Indie -badge
Batteristrøm til HackerBox 0057 Indie -badge

T-Display ESP32 kan drives af et 3,7V litiumpolymer (LiPo) batteri og kan også oplade batteriet, mens modulet drives af USB-porten. Som vist her giver badge-printkortet en simpel mekanisme til at skifte batteriet ud af kredsløbet uden at skulle tage det ud af T-Display-modulet for at slukke det. Bemærk, at når kontakten er slukket (batterikabel åben), kan batteriet ikke oplades af mærket.

Trin 8: Infrarød kommunikation

Infrarød kommunikation
Infrarød kommunikation

Ifølge Sparkfun IR Communications Tutorial: IR eller infrarød er kommunikation en almindelig, billig og brugervenlig trådløs kommunikationsteknologi. IR -lys ligner meget synligt lys, bortset fra at det har en lidt længere bølgelængde. Det betyder, at IR ikke kan detekteres for det menneskelige øje - perfekt til trådløs kommunikation. For eksempel, når du trykker på en knap på din fjernsyns fjernbetjening, tænder og slukker en IR -LED gentagne gange 38.000 gange i sekundet for at overføre oplysninger (f.eks. Lydstyrke eller kanalkontrol) til en IR -fotosensor på dit tv.

Infrarød pc -fjernbetjening med USB IR -modtager

PC Remote er en infrarød fjernbetjening, der fungerer sammen med den medfølgende USB -modtager til at fungere som en fjernmus og controller til enhver personlig computer. En sådan controller er nyttig til fremstilling af præsentationer og også til styring af lyd- eller videoafspilning på afstand For eksempel i HTPC -applikationer.

Bemærk, at du ikke kan se IR -LED'en lyse inde i pc -fjernbetjeningen. IR -lys er uden for omfanget af menneskelig lysopfattelse. Hvis du vil se LED'en lyse, skal du kigge gennem din smartphones kamera og trykke på en knap på fjernbetjeningen. IR -lys er ikke uden for registreringsområdet for din telefons kamerasensor.

Infrarød badge hacking

HackerBox Safe Mode Indie Badge indeholder en TSOP4838 (datablad) infrarød modtager. Badget indeholder også en 940nm infrarød LED -sender, der drives af et transistorkredsløb for ekstra strøm.

Et IR -bibliotek er nødvendigt for at bruge disse IR -modtagere og transmitterenheder.

I Arduino IDE skal du bruge Værktøjer> Administrer biblioteker til at installere biblioteket IRremoteESP8266.

Biblioteket fungerer også med ESP32'er

Demonstration af TSOP4838 IR -modtager

Åbn Fil> Eksempler> IRremoteESP8266> IRrecvDemo

Rediger koden for at indstille kRecvPin = 33;

Kompiler og upload skitsen.

Åbn den serielle skærm, og indstil den til 115, 200 baud.

Ret PC -fjernbetjeningen (eller en anden IR -fjernbetjening) mod badget, og fyr væk.

Demonstration af 940nm IR LED -sender

Åbn Fil> Eksempler> DumbIRRepeater

Rediger koden for at indstille kRecvPin = 33; og kIrLedPin = 2;

Kompiler og upload skitsen.

Åbn den serielle skærm, og indstil den til 115, 200 baud.

Brug badget som en IR -repeater til at modtage et IR -signal fra pc -fjernbetjeningen og derefter "sprænge" det ind i USB -modtageren.

For en interessant effekt skal du indsætte en ny linje med "forsinkelse (5000);" lige før den første linje, der starter med "irsend". Dette vil placere en forsinkelse på fem sekunder mellem modtagelse og transmission af repeateren. USB -modtageren vil se en knap trykke fra fjernbetjeningen på det tidspunkt, der trykkes på den og derefter igen fem sekunder senere, når den afspilles af DumbIRRepeater.

Referencer

Videoguide til IR -kommunikation til ESP32 og ESP8266.

Adafruit's guide til brug af et infrarødt bibliotek på Arduino

Trin 9: Hack Life

Hack Life
Hack Life

Vi håber, at du nyder denne måneds HackerBox -eventyr inden for elektronik og computerteknologi. Nå ud og del din succes i kommentarerne herunder eller andre sociale medier. Husk også, at du når som helst kan e -maile [email protected], hvis du har et spørgsmål eller har brug for hjælp.

Hvad er det næste? Deltag i revolutionen. Live HackLife. Få en kølig æske med hackbart udstyr leveret direkte til din postkasse hver måned. Surf over til HackerBoxes.com og tilmeld dig dit månedlige HackerBox -abonnement.

Anbefalede: