Cuprins:

HackerBox 0050: 8 pași
HackerBox 0050: 8 pași

Video: HackerBox 0050: 8 pași

Video: HackerBox 0050: 8 pași
Video: Projects - July 2016 2024, Iulie
Anonim
HackerBox 0050
HackerBox 0050

Salutări hackerilor HackerBox din întreaga lume! Pentru HackerBox 0050, asamblăm și programăm placa de procesor încorporată HB50. HB50 acceptă experimentarea cu microcontrolere ESP32, WiFi IoT încorporat, sunet bit bang, LED-uri RGB, afișaje TFT LCD color, intrări pe ecran tactil, Bluetooth și multe altele. HackerBox 0050 explorează, de asemenea, o soluție de tastatură mică pentru orice proiect încorporat, interfețe I2C, bugetarea energiei și automatele celulare.

Acest ghid conține informații pentru a începe să utilizați HackerBox 0050, care poate fi achiziționat aici până la epuizarea stocurilor. Dacă doriți să primiți o HackerBox ca aceasta chiar în cutia poștală în fiecare lună, vă rugăm să vă abonați la HackerBoxes.com și să vă alăturați revoluției!

HackerBoxes este serviciul de cutie de abonament lunar pentru hackerii hardware și pasionații de electronică și tehnologie informatică. Vino alături de noi în trăirea HACK LIFE.

Pasul 1: Lista de conținut pentru HackerBox 0050

  • Placă de circuite imprimate HB50 exclusivă
  • ESP-WROOM-32 Modul WiFi dual core
  • Afișaj TFT LCD color de 2.4 inch QVGA
  • Ecran tactil cu afișaj integrat cu stylus
  • Șase LED-uri RGB WS2812B
  • Șase butoane Tacile cu montare pe suprafață
  • Piezo Buzzer 12mm SMD
  • AMS1117 3.3V Regulator liniar SOT223
  • Unghiul drept 40 pini antet de rupere
  • Două condensatoare de tantal 22uF 1206 SMD
  • Două rezistențe 10K Ohm 0805 SMD
  • Mini tastatură CardKB
  • Cablu Breakout DuPont de la Grove la Femeie
  • Modul serial USB CP2102
  • Jumperi DuPont Feminin-Feminin 10cm
  • Decalcomanie Hokusai Great Wave PCB
  • Decalcomanie exclusivă HackerBox WireHead
  • Monedă exclusivă HackerBox 50 Challenge

Câteva alte lucruri care vă vor fi de ajutor:

  • Instrument de lipit, lipit și instrumente de lipit de bază
  • Computer pentru rularea instrumentelor software

Cel mai important, veți avea nevoie de un sentiment de aventură, spirit hacker, răbdare și curiozitate. Construirea și experimentarea cu electronice, deși foarte plină de satisfacții, poate fi dificilă, provocatoare și chiar frustrantă uneori. Scopul este progresul, nu perfecțiunea. Când persistați și vă bucurați de aventură, din acest hobby se poate obține o mulțime de satisfacții. Faceți fiecare pas încet, țineți cont de detalii și nu vă fie teamă să cereți ajutor.

Există o mulțime de informații pentru membrii actuali și potențiali în întrebările frecvente despre HackerBoxes. Aproape toate e-mailurile de asistență non-tehnică pe care le primim au primit deja un răspuns acolo, așa că apreciem foarte mult că ați luat câteva minute pentru a citi FAQ.

Pasul 2: Placă de circuite imprimate HB50

Placă de circuite imprimate HB50
Placă de circuite imprimate HB50

Pentru a comemora HackerBox Numărul 0050, am realizat o versiune actualizată a celei mai populare plăci de circuite HackerBox la cerere populară. Trusa de insigne HackerBox 0020 Summer Camp s-a vândut la DEF CON 25 în mai puțin de două ore. Fișierele PCB au fost solicitate frecvent de atunci. Consiliul a fost retipărit cel puțin de câteva ori de către terți. Designul a inspirat o mână de alte ecusoane și proiecte IoT încorporate de care suntem conștienți și, sperăm, mai multe de care nu suntem conștienți.

Actualizările găsite în noul kit PCB HB50 includ schimbarea ESP-32 DEVkitC pentru modulul mai compact ESP-WROOM-32. Cele cinci butoane tactile capacitive au fost înlocuite cu butoane tactile mecanice. Cele cinci LED-uri RGB WS2812 care erau în pachete albe au fost mărite la șase și sunt acum în pachete negre. Buzzer-ul piezo a fost înlocuit cu o versiune de montare pe suprafață mai compactă. Sursa de alimentare a fost simplificată. Afișajul TFT color a fost mărit de la 2,2 inci la 2,4 inci. PCB este mai compact și are chiar și câțiva pini IO rupți pentru plăcerea dvs. de hacking. De pe vremea HackerBox 20, există mult mai multe proiecte, exemple și coduri disponibile pentru ESP32, așa că haideți să ne pregătim să răsunăm …

Caracteristici:

  • Procesor ESP32 Dual Core 160 MHz
  • Afișaj TFT LCD color QVGA de 2,4 inci
  • WiFi 802.11 b / g / n / d / e / i / k / r
  • Bluetooth LE 5.0
  • Cinci butoane tactile (+ unul pentru resetare)
  • Șase LED-uri RGB WS2812
  • Piezo Buzzer
  • Regulator liniar 3.3V
  • Antet de extindere

La fel ca și în cazul predecesorului său, HB50 poate fi purtat pe un șnur, folosit ca dispozitiv portabil, montat pe un perete sau implementat aproape oriunde în nenumărate aplicații wireless și colorate.

Pasul 3: Aduceți placa HB50

Aduceți placa HB50
Aduceți placa HB50

Pentru a minimiza sau cel puțin a izola erorile, vă sugerăm să începeți asamblarea completând doar minimul de componente pe placa HB50 care sunt necesare pentru a programa ESP32. Această abordare minimă viabilă este prezentată în acești pași:

  1. Urmăriți acest videoclip despre modulele de lipire încastrate.
  2. Lipiți modulul ESP-WROOM-32 pe PCB. Nu vă grăbiți. Nu vă faceți griji cu privire la placa de masă centrală de sub modul. Poate fi lipit numai prin reflux și este disponibil doar pentru cuplare termică suplimentară.
  3. Folosiți un multimetru pentru a vă asigura că nu este scurt între 3V3 și GND. Dacă există un scurtcircuit, acesta trebuie identificat și îndepărtat înainte de a pune curent pe tablă sau ar putea ieși monstrul de fum.
  4. Lipiți cele două rezistențe de 10K chiar deasupra butoanelor EN și IO0.
  5. Lipiți butoanele EN și IO0. Celelalte patru butoane pot fi lăsate pentru moment.
  6. Rupeți o bandă de antet cu 16 pini. Introduceți-l din partea CPU a PCB-ului astfel încât pinii să indice cea mai apropiată margine a PCB-ului. Apoi lipiți antetul în poziție din partea butonului PCB.
  7. Verificați din nou că nu există pantaloni scurți între 3V3 și GND.
  8. Utilizați patru fire jumper DuPont pentru a conecta modulul CP2102 așa cum se arată. Rețineți că folosim temporar sursa de alimentare 3V3, deoarece regulatorul liniar nu este încă populat pe PCB.
  9. Dacă computerul dvs. nu are deja instalat ID-ul Arduino, obțineți-l aici.
  10. Configurați suportul ESP32 în IDE-ul Arduino folosind acest ghid.
  11. În IDE, setați unelte> bord pe "ESP32 Wrover Module".
  12. Conectați modulul CP2102 la un port USB de pe computer.
  13. În IDE, setați unelte> port la portul USB corect pentru CP2102.
  14. Dacă nu apare un port nou când este introdus modulul CP2102, instalați un driver USB necesar de la Silicon Labs.
  15. Apucați schița button_demo.
  16. Compilați și încărcați schița.
  17. Când începe încărcarea, țineți apăsate atât butoanele EN, cât și butoanele IO0. EN este practic un buton de resetare, iar IO0 este știftul de legare pentru a forța reprogramarea blițului.
  18. Odată ce punctele și liniuțele apar în IDE, lăsați butonul EN (eliberați resetarea), dar continuați să țineți apăsat butonul IO0 până când începe programarea blițului pentru a vă asigura că știftul de legare este recunoscut la pornire.
  19. Când programarea este finalizată, apăsați din nou butonul EN pentru a reseta și porni codul nou intermitent.
  20. Deschideți Arduino IDE Serial Monitor și setați-l la 115200 baud.
  21. Apăsarea butonului IO0 ar trebui să genereze un mesaj pe monitorul serial.

Pasul 4: Butoane, buzzere și LED-uri, OH MY

Butoane, buzzere și LED-uri, OH MY!
Butoane, buzzere și LED-uri, OH MY!

MAI MULTE BUTOANE

Odată ce pasul inițial de programare este reușit, opriți placa HB50 și lipiți pe cele patru butoane rămase. Aceeași schiță button_demo ar trebui să raporteze acum toate cele cinci butoane (IO0, A, B, C și D) la monitorul serial atunci când sunt apăsate.

BUZZER

Opriți placa HB50 și lipiți soneria pe tampoane. Orientează punctul de pe buzzer pentru a fi cel mai apropiat de pad-ul „+” de pe placa HB50. Programați schița buzzer_demo și resetați (EN) placa pentru a o lăsa să ruleze. Sună bine?

LED-uri RGB WS2812B

Opriți placa HB50 și lipiți cele șase LED-uri pe tampoane. Orientați colțul marcat alb al fiecărui LED pentru a corespunde colțului cu file, așa cum se arată pe serigrafia PCB.

Din instrumentele Arduino IDE> Gestionați bibliotecile, instalați biblioteca FastLED.

Deschideți schița: Fișier> Exemple> FastLED> ColorPalette.

În codul schiței, schimbați LED_PIN la 13, NUM_LEDS la 6 și LED_TYPE la WS2812B.

Încărcați schița și resetați (EN) placa pentru a o lăsa să ruleze. Bucurați-vă de lumini intermitente de orice culoare.

REGUALTOR DE PUTERE LINEARĂ

Cu LED-urile în joc (și mai ales odată ce transmițătorul WiFi este activat) HB50 extrage mult curent din sursa de 3V3. Să îmbunătățim capacitatea de putere de 3,3V prin lipirea regulatorului liniar AMS1117 (pachetul SOT 233). De asemenea, populează cele două condensatoare de filtru 22uF de lângă regulator. Rețineți că o parte a fiecărui serigrafie a condensatorului este dreptunghiulară și cealaltă parte, dacă este octogonală. Condensatoarele ar trebui să fie orientate astfel încât banda întunecată de pe ambalaj să se alinieze la partea de serigrafie octogonală. Regulatorul va transforma acum o parte din sursa de 5V în 3.3V și poate furniza mult mai mult curent decât modulul CP2102 de la sine. Pentru a alimenta acum HB50 prin sursa de 5V, mutați AMBELE SFÂRȘITURI ale jumperului 3V3 DuPont peste 5V. Adică, sursați 5V din modulul CP2102 într-unul dintre pinii de intrare de 5V de pe antetul HB50. Rețineți că pinul de 5V poate fi de fapt furnizat cu orice tensiune cuprinsă între 3,5V și 5V.

Pasul 5: Afișaj LCD TFT color ILI9341 QVGA

Afișaj LCD TFT color ILI9341 QVGA
Afișaj LCD TFT color ILI9341 QVGA

Afișajul MSP2402 (pagina lcdwiki) este un modul de magistrală SPI bazat pe cipul ILI9341. Cipul conduce un ecran color de 2,4 inch care acceptă 65 000 de culori și o rezoluție de 320X240 pixeli (QVGA).

Modulul are, de asemenea, intrare pe ecran tactil și un slot pentru card SD.

PRE-TEST DISPLAY I / O PINS

Dacă ați avut probleme cu lipirea ESP-WROOM-32 până în acest moment, ar putea fi o idee bună să testați în prealabil pinii I / O ai modulului de afișare înainte de a lipi modulul de afișare în poziție. Așa cum se arată mai jos și pe diagrama schematică a PCB-ului, ESP32 IO-urile în joc sunt 19, 23, 18, 5, 22, 21 și 15. Rețineți că acestea sunt numerele IO și nu numerele pin. Pinii pot fi testați scriind un mic program care setează toate IO-urile ca ieșiri și apoi bucle ciclul prin IO-urile pornind și oprind pe rând, cu o secundă sau două întârziere între ele. Un LED simplu cu un rezistor de limitare a curentului atașat poate fi folosit ca o sondă pentru a vă asigura că fiecare pin IO mapat la antetele afișajului (vezi schema) este pornit și oprit corect și că niciunul dintre ele nu este cuplat împreună.

Odată ce toți pinii sunt verificați, afișajul TFT poate fi lipit la loc folosind atât antetele lungi, cât și cele scurte.

INSTALAȚI ȘI CONFIGURAȚI BIBLIOTECA TFT

Din Arduino IDE: instrumente> Gestionați bibliotecile, instalați biblioteca TFT_eSPI

Accesați folderul Arduino Libraries. Deschideți folderul TFT_eSPI și editați fișierul User_Setup.h pentru a configura cipul driverului modulului, rezoluția pixelilor și pinii IO. Faceți acest lucru asigurându-vă că definițiile sunt (necomentate) așa cum se arată mai jos și setați la valorile așa cum se arată. Puteți verifica dacă acestea corespund conexiunilor din schema PCB.

// Sectiunea 1.

#define ILI9341_DRIVER #define TFT_WIDTH 240 #define TFT_HEIGHT 320 // Secțiunea 2. // Pentru placa ESP32 Dev #define TFT_MISO 19 #define TFT_MOSI 23 #define TFT_SCLK 18 #define TFT_CS 5 #define TFT_DC 22 #define TFT_RST TFT_RST -1 // # define TFT_BL 32 #define TOUCH_CS 15

Deschideți și încărcați schița:

Fișier> Exemple> TFT_eSPI> 320 x 240> Cellular_Automata

Această schiță este o demonstrație vizuală a jocului de viață al lui Conway.

Un planor hacker ar putea evolua în existență … fii atent!

DISPLAY HACKERBOX LOGO PE TFT LCD

Încercați schița BitHeadDemo.

Pasul 6: Ecran tactil Introducere utilizator

Intrare utilizator ecran tactil
Intrare utilizator ecran tactil

Următoarea schiță poate fi utilizată pentru a configura și testa funcționalitatea ecranului tactil:

Fișier> Exemple> TFT_eSPI> 320 x 240> Tastatură_240x320

Butonul „trimite” transmite numărul introdus către monitorul serial la 9600 baud.

Pasul 7: Tastatură CardKB I2C

Tastatură CardKB I2C
Tastatură CardKB I2C

Această placă minusculă implementează o tastatură QWERTY completă, care poate fi utilizată cu aproape orice proiect de microcontroler. Tastatura comunică utilizând un port GROVE A (interfață I2C) pe adresa 0x5F. Combinațiile de butoane (Sym + Key, Shift + Key, Fn + Key) sunt acceptate pentru a afișa valori ale tastelor bogate.

Începeți cu exemplul simplu Schiță CardKB_Serial, care comunică cu tastatura prin GROVE I2C și repetă apăsările de taste către monitorul serial. Schița poate fi rulată pe ESP32 (cum ar fi HB50), Arduino UNO, Arduino Nano sau orice platformă care acceptă I2C.

Rețineți că există două apeluri Wire.begin diferite pentru ESP32 și pentru UNO / Nano. Decomentați una dintre aceste linii corespunzătoare pentru gazda pe care o utilizați. Conectați firele de rupere GROVE galbene și albe la pinii specificați pe acea linie de cod. Conectați firul de rupere GROVE roșu la 5V și firul GROVE negru la GND.

Pagina documentației producătorului. Rețineți că, chiar dacă microcontrolerul integrat CardKB este pre-programat, sursa firmware-ului este disponibilă dacă doriți să spargeti tastatura.

Pasul 8:

Imagine
Imagine

Sperăm că vă veți bucura de aventura HackerBox din această lună în electronică și tehnologie computerizată. Intindeți-vă și împărtășiți-vă succesul în comentariile de mai jos sau pe grupul Facebook HackerBoxes. De asemenea, amintiți-vă că puteți trimite e-mail la [email protected] oricând dacă aveți o întrebare sau aveți nevoie de ajutor.

Ce urmeaza? Alatura-te revolutiei. Trăiește HackLife. Obțineți o cutie grozavă de echipamente care se pot pirata livrate direct în cutia poștală în fiecare lună. Navigați la HackerBoxes.com și înscrieți-vă pentru abonamentul dvs. HackerBox lunar.

Recomandat: