Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2026:atoader:george.simion2005 [2026/05/09 14:35]
george.simion2005 [Descriere generală]
pm:prj2026:atoader:george.simion2005 [2026/05/22 15:11] (current)
george.simion2005
Line 3: Line 3:
 ===== Introducere ===== ===== Introducere =====
  
-Proiectul Flipper One reprezinta ​o **mini-replica ​a dispozitivului Flipper Zero**, ​construita in jurul unei placi de dezvoltare ​cu microcontroller. Dispozitivul este capabil sa **captureze,​ stocheze si retransmita semnale wireless** provenite de la diverse telecomenzi (porti de garaj, prize wireless, sonerii fara fir, etc.), oferind utilizatorului ​un instrument portabil pentru ​analiza si interactiunea cu dispozitivele ​wireless din jur.+Proiectul Flipper One reprezintă ​o **mini-replică ​a dispozitivului Flipper Zero**, ​construită în jurul unei plăci Arduino UNO cu microcontroller ​ATmega328P. Dispozitivul este gândit ca un instrument portabil ​de testare și analiză ​pentru ​comunicații ​wireless ​simple, module RFID/NFC și rețele WiFi din apropiere.
  
-Ideea a pornit de la dorinta de a intelege mai bine cum functioneaza comunicatia wireless si dispozitivele ​de tip "multi-tool" pentru hackeri/​pentesteridar la o scara redusa si la un cost accesibil. Spre deosebire de un Flipper Zero comercial (care costa peste 800 lei), proiectul de fata isi propune sa demonstreze functionalitatile de baza folosind componente standard.+Scopul proiectului este să demonstreze, ​la scară redusă și cu componente accesibile, funcționalități întâlnite în dispozitive ​de tip multi-tool: captură și retransmitere de semnale RFcitire RFID, scanare WiFi, salvare pe card MicroSD și interacțiune printr-un ecran OLED.
  
-Functionalitati principale:​ +Spre deosebire ​de un dispozitiv comercial, Flipper One este realizat ​pe breadboardfolosind module separate și conexiuni expliciteceea ce îl face util pentru înțelegerea modului în care comunică între ele componentele hardware.
-  * captura semnalelor wireless ​de la telecomenzi +
-  * stocarea acestora in memorie +
-  * retransmiterea semnalelor capturate +
-  * navigare printr-un meniu afisat ​pe ecrancontrolat cu butoane +
-  * indicarea starii curente a dispozitivului (idlerecording, replay) printr-un LED RGB+
  
-Optional, sistemul poate fi extins cu un **modul RFID** pentru ​citirea ​si emularea cardurilor, un **modul ESP** pentru ​scanarea ​retelelor ​WiFi din jur, si un **cititor de card SD** pentru stocarea persistenta a semnalelor capturate.+Funcționalități principale:​ 
 +  ​capturarea semnalelor RF 433 MHz de la telecomenzi simple 
 +  ​retransmiterea semnalelor RF capturate 
 +  ​* citirea ​UID-urilor de pe carduri/​tag-uri RFID/NFC folosind PN532 
 +  ​salvarea semnalelor RF și a UID-urilor RFID pe card MicroSD 
 +  ​* scanarea ​rețelelor ​WiFi din jur folosind ESP-01 / ESP8266 
 +  ​afișarea stării sistemului pe ecran OLED 
 +  ​control prin 4 butoane conectate prin expander I2C PCF8574 
 +  ​feedback vizual prin LED RGB
  
-Proiectul este util atat ca instrument educational pentru intelegerea protocoalelor wireless si a microcontrollerelorcat si ca demonstratie practica a conceptelor invatate la laborator: GPIOintreruperitimere si comunicatie SPI.+În stadiul actualpartea RFRFID, OLED, butoane, LED RGB, ESP și MicroSD este funcțională la nivel de testare. Pentru modulul ESP-01capturarea/​listarea rețelelor WiFi din jur funcționează prin comenzi AT.
  
-**Laboratoare folosite**: GPIO (Lab 0), Intreruperi ​(Lab 2), Timere/PWM (Lab 3), SPI (Lab 5).+Work in progress: 
 +  * adăugarea unei analize mai avansate pentru rețelele WiFi detectate, de exemplu afișarea unui grafic simplu cu puterea semnalului sau distribuția pe canale; 
 +  * adăugarea posibilității de conectare la o rețea WiFi cunoscută. 
 + 
 +**Laboratoare folosite**: GPIO (Lab 0), Întreruperi ​(Lab 2), Timere/PWM (Lab 3), SPI (Lab 5), plus comunicatie I2C și UART software.
  
 ===== Descriere generală ===== ===== Descriere generală =====
  
-Sistemul este organizat ​in jurul unei plăci ​de dezvoltare cu microcontroller, care coordoneaza ​toate celelalte moduleInteractiunea ​cu utilizatorul se face printr-un **ecran OLED** ​pe care se afiseaza meniul si informatiile despre semnalele capturateimpreuna cu **butoane** ​pentru navigare si un **LED RGB** care indica starea curenta a dispozitivului.+Sistemul este organizat ​în jurul unei plăci ​**Arduino UNO R3 / ATmega328P**, care coordonează ​toate modulele externeInteracțiunea ​cu utilizatorul se face printr-un **ecran OLED SPI**, un set de **butoane** ​conectate prin PCF8574 și un **LED RGB** folosit pentru feedback vizual.
  
-Partea de captura si retransmitere a semnalelor wireless este realizata cu un **receptor si un emitator de 433 MHz**. La capturaremicrocontrollerul foloseste o intrerupere pe pinul de date al receptorului si masoara duratele pulsurilor, salvandu-le intr-un buffer. La retransmitere,​ pulsurile salvate sunt regenerate prin emitator folosind un timer hardware.+Pentru economisirea pinilor Arduino, butoanele sunt conectate la un **expander I2C PCF8574**, astfel încât toate cele 4 intrări ​de control folosesc doar magistrala I2C formată din A4/SDA și A5/SCL.
  
-Optional, sistemul include: +Partea RF este realizată cu un receptor și un emițător de **433 MHz**. Receptorul este conectat la pinul D2, care permite folosirea întreruperii externe INT0 pentru ​măsurarea precisă ​tranzițiilor semnalului. Semnalul capturat este memorat ca o listă de durate ale pulsurilor, apoi poate fi retransmis prin emițătorul conectat la D8.
-  * un **modul RFID** pe magistrala SPI pentru citirea/​emularea cardurilor +
-  * un **modul ESP** pe interfata UART pentru ​scanarea retelelor WiFi +
-  * un **cititor card SD** pe SPI pentru stocarea persistenta ​semnalelor+
  
-Logica ​de functionare:​+Modulul **PN532 RFID/NFC** este conectat pe I2C, împreună cu PCF8574. Această variantă a fost aleasă pentru stabilitate,​ deoarece separă complet RFID-ul ​de magistrala SPI folosită de OLED și MicroSD. PN532 este folosit pentru citirea UID-urilor cardurilor/​tag-urilor compatibile ISO14443A.
  
-  - **Idle State**: LED-ul RGB este albastruSistemul asteapta input de la utilizator ​prin butoane. +Modulul ​**ESP-01 / ESP8266** este folosit pentru scanarea rețelelor WiFi din jurAcesta comunică cu Arduino ​prin SoftwareSerialESP transmite către Arduino pe D4, iar Arduino transmite către ESP pe D7ESP-ul este alimentat separat la 3.3V prin AMS1117.
-  - **Recording State**LED-ul devine rosu. Receptorul wireless asculta in mod continuu, iar la detectarea unui semnal se masoara si se salveaza duratele pulsurilor. +
-  - **Replay State**: LED-ul devine verde. Semnalul salvat ​este reconstruit pe pinul emitatorului folosind un timer hardware. +
-  - **Menu Navigation**:​ Butoanele permit navigarea ​prin meniu (selectarea modului, vizualizarea semnalelor capturate, optiuni avansate).+
  
-{{:​pm:​prj2026:​atoader:​flipperone_blockdiagram_george.simion2005.png?​500|Schema bloc Flipper One}}+Modulul **MicroSD** este conectat pe magistrala SPI și este folosit pentru stocare persistentă. În implementarea curentă, semnalele RF capturate și UID-urile RFID citite pot fi salvate pe card, pentru a putea fi păstrate după resetarea dispozitivului. 
 + 
 +Logica generală de funcționare:​ 
 +  - **Idle State**: sistemul așteaptă apăsări de buton și afișează starea curentă pe OLED. 
 +  - **RF Capture**: receptorul RF ascultă semnalul și salvează duratele pulsurilor detectate. 
 +  - **RF Replay**: semnalul RF salvat este retransmis prin emițătorul de 433 MHz. 
 +  - **RFID Scan**: PN532 citește UID-ul unui card/tag RFID și îl afișează pe OLED/​Serial. 
 +  - **WiFi Scan**: ESP-01 scanează rețelele WiFi disponibile și transmite lista către Arduino. 
 +  - **MicroSD Save**: datele RF și RFID pot fi salvate pe cardul MicroSD. 
 +  - **LED Feedback**: LED-ul RGB indică diferite stări sau moduri de test. 
 + 
 +{{:​pm:​prj2026:​atoader:​flipperone_blockdiagram_george.simion2005.png?​700|Schema bloc Flipper One}}
  
 ===== Hardware Design ===== ===== Hardware Design =====
  
-Sistemul este centrat in jurul unei plăci de dezvoltare cu microcontroller ATmega328P.+==== Stadiul actual al implementării hardware ====
  
-==== Lista de piese ====+În stadiul actual, proiectul este realizat pe un breadboard **SYB-120**,​ având ca unitate centrală un **Arduino UNO R3 / ATmega328P**. Pe montaj sunt conectate modulele principale pentru interacțiune și comunicație:​ display OLED SPI, receptor RF 433 MHz, emițător RF 433 MHz, LED RGB, expander PCF8574 cu 4 butoane, modul PN532 RFID/NFC, modul ESP-01 și cititor MicroSD.
  
-^ Componenta ^ Descriere ^ Protocol / Pinout ^ +Partea de alimentare este organizată pe magistrale de breadboard: 
-| Arduino UNO R3 (ATmega328P) | Microcontroller principal | - | +  * **5V** ​pentru ​modulele compatibile cu 5VOLEDPN532PCF8574module RFMicroSD; 
-| Display OLED 1.3" 128x64 | Ecran pentru ​meniu si forme de unda | SPISCKMOSICSDCRST | +  * **3.3V** pentru ​ESP-01, generat cu AMS1117; 
-| Receptor RF 433 MHz | Capturarea semnalelor wireless | GPIO INT (pin de date) | +  * **GND comun** pentru ​toate modulele.
-| Emitator RF 433 MHz | Retransmiterea semnalelor wireless | GPIO (pin de date) | +
-| LED RGB KY-016 | Indicarea starii (idle/​recording/​replay) | GPIO PWM x3 | +
-| Butoane push (x4) | Navigare meniu | GPIO INT cu pull-up intern | +
-**Optional:** Modul RFID PN532 | Citire/​emulare carduri | SPI sau I2C | +
-**Optional:​** Modul ESP-01 ​(ESP8266) | Scanare retele WiFi | UART (TX/RX) | +
-**Optional:** Cititor card MicroSD | Stocare persistenta semnale | SPI | +
-| Convertor logic 5V <-> 3.3V | Adaptare nivel logic pentru ​ESP-01 | - | +
-| Regulator de tensiune 3.3V | Alimentare ESP-01 | - | +
-| Breadboard + cabluri DuPont | Prototipare | - |+
  
-==== Schema bloc ====+Modulul PN532 este conectat pe **I2C**, nu pe SPI, pentru a evita conflictele cu OLED-ul și MicroSD-ul. Astfel, magistrala SPI este folosită de OLED și MicroSD, iar magistrala I2C este folosită de PCF8574 și PN532.
  
-{{:​pm:​prj2026:​flipperone_schema_george.simion2005.png?​600|Schema electrica Flipper One}}+Modulul ESP-01 este conectat prin UART softwareÎn montajul curent, Arduino transmite direct către RX-ul ESP-ului pe D7, iar ESP transmite către Arduino pe D4. ESP-ul rămâne alimentat exclusiv la 3.3V prin AMS1117.
  
-==== Detalii ====+MicroSD-ul este inclus funcțional în proiect și este folosit pentru salvarea datelor capturate: semnale RF și UID-uri RFID.
  
-Receptorul si emitatorul de 433 MHz folosesc fiecare cate o **antena externa** (sarma rigida de aproximativ 17 cm) pentru a imbunatati distanta de receptie/​emisie.+{{:​pm:​prj2026:​atoader:​fliiper1_real.jpeg?​900|Schema bloc hardware reală}}
  
-Pentru ​ca modulele SPI (displayRFIDcard SD) sa partajeze aceeasi magistrala, fiecare are un pin **CS (Chip Select)** dedicat, controlat ​de microcontroller.+Pentru ​verificarea conexiunilor punct-cu-punctam inclus și varianta detaliatăcu nodurile/​rândurile ​de breadboard marcate explicit:
  
-Modulul ESP-01 functioneaza la 3.3V si necesita un **convertor de nivel logic** pe liniile TX/RX pentru ​putea comunica in siguranta cu Arduino-ul, care opereaza la 5V.+{{:​pm:​prj2026:​atoader:​schema_flipper1.png?​900|Schema hardware detaliată ​montajului}}
  
-===== Software Design =====+==== Componente folosite și rolul lor în proiect ​====
  
-Mediu de dezvoltare: **PlatformIO** (in VSCode) ​/ **Arduino IDE**.+^ Componentă ^ Rol în proiect ^ Interfață / observații ^ 
 +| **Arduino UNO R3 / ATmega328P** | Microcontroller principal; coordonează modulele și rulează logica ​de test/​captură | GPIO, PWM, SPI, I2C, UART software | 
 +| **Breadboard SYB-120** | Suport de prototipare și distribuție pentru 5V, 3.3V și GND | Conexiuni pe rânduri/​coloane | 
 +| **OLED 1.3''​ 128x64 SPI** | Afișează meniul, starea sistemului și datele citite/​capturate | SPI hardware + pini separați pentru RES, DC, CS | 
 +| **Receptor RF 433 MHz** | Primește semnale wireless de la telecomenzi simple | DATA pe D2, folosit ca pin de întrerupere INT0 | 
 +| **Emițător RF 433 MHz** | Retransmite semnalele RF capturate | DATA pe D8 | 
 +| **LED RGB KY-016** | Indicator vizual pentru starea dispozitivului | PWM pe D3, D5, D6 | 
 +| **PCF8574** | Extinde numărul de pini disponibili pentru butoane | I2C pe A4/A5 | 
 +| **4 butoane tactile** | Controlul funcțiilor principaleRF, RFID, LED, ESP | Intrări P0-P3 pe PCF8574 | 
 +**PN532 RFID/NFC** | Citește UID-uri de carduri/tag-uri RFID/NFC | I2C pe A4/A5, IRQ pe A2, RESET pe A1 | 
 +**ESP-01 / ESP8266** | Scanare/​captură listă rețele WiFi din apropiere | UART software: D4 primește TX ESP, D7 transmite către RX ESP | 
 +| **AMS1117 3.3V** | Alimentare stabilă pentru ESP-01 | VIN din 5V, VOUT pe magistrala de 3.3V | 
 +| **Cititor MicroSD** | Stocare persistentă pentru RF și RFID | SPI hardware, CS pe A3 |
  
-Librarii si surse 3rd-party planificate:​ +==== Maparea pinilor Arduino și justificare ====
-  * **U8g2** - pentru controlul ecranului OLED +
-  * **RCSwitch** - pentru parsarea protocoalelor wireless comune (telecomenzi) +
-  * **MFRC522** / **Adafruit-PN532** - pentru modulul RFID +
-  * **SD** - pentru cardul microSD +
-  * **WiFiEsp** - pentru comunicatia cu modulul ESP-01+
  
-Algoritmi si structuri planificate:​ +^ Pin Arduino ^ Conectat la ^ De ce este folosit aici ^ 
-  masina de stari finite (FSM) pentru ​gestionarea modurilor (idle / recording / replay / menu) +**3.3V** | Neutilizat ca sursă principală ​pentru ​ESP | ESP-ul este alimentat din AMS1117 pentru curent mai stabil | 
-  buffer circular pentru stocarea duratelor pulsurilor capturate +**5V** | Magistrala de 5V: OLED, PN532, RF 433 MHz, PCF8574, MicroSD, VIN AMS1117 | Alimentează modulele compatibile cu 5V și intrarea regulatorului AMS1117 | 
-  folosirea ​**Timer1 in Input Capture** pentru ​masurarea precisa a pulsurilor ​de la receptor +**GND** | Magistrala comună GND | Toate modulele trebuie să aibă aceeași referință electrică | 
-  folosirea unui timer in **Compare Match** pentru ​regenerarea fidela a semnalului +**D2** | DATA receptor RF 433 MHz | D2 este INT0, util pentru ​capturarea tranzițiilor RF | 
-  intrerupere externa ​pe pinii de buton, cu debounce software+| **D3** | LED RGB - canal R | Pin PWM pentru controlul roșului | 
 +| **D4** | ESP-01 TX către Arduino | SoftwareSerial RX; Arduino primește date de la ESP | 
 +**D5** | LED RGB - canal G | Pin PWM pentru controlul verdelui | 
 +**D6** | LED RGB - canal B | Pin PWM pentru controlul albastrului | 
 +| **D7** | ESP-01 RX direct | SoftwareSerial TX; Arduino trimite comenzi AT către ESP | 
 +| **D8** | DATA emițător RF 433 MHz | Pin digital folosit ​pentru ​retransmiterea ​semnalului ​RF | 
 +**D9** | RES OLED | Reset hardware pentru display | 
 +| **D10** | CS OLED | Selectează OLED-ul ​pe magistrala SPI | 
 +| **D11** | MOSI SPI | Linie comună pentru OLED și MicroSD | 
 +| **D12** | MISO SPI | Linie folosită ​de MicroSD | 
 +| **D13** | SCK SPI | Clock SPI pentru OLED și MicroSD | 
 +| **A0** | DC OLED | Selectare comandă/​date pentru OLED | 
 +| **A1** | RESET PN532 | Reset hardware pentru modulul RFID/NFC | 
 +| **A2** | IRQ / R0 PN532 | Linie IRQ pentru PN532 în modul I2C | 
 +| **A3** | CS MicroSD | Chip Select separat pentru cardul SD | 
 +| **A4** | SDA comun: PCF8574 + PN532 | Linia hardware I2C SDA | 
 +| **A5** | SCL comun: PCF8574 + PN532 | Linia hardware I2C SCL |
  
-Functii principale planificate+==== Conexiuni fizice pe breadboard ==== 
-  * ''​startRecording()'' ​''​stopRecording()'' ​activeaza/dezactiveaza captura + 
-  * ''​replaySignal(int index)'' ​retransmite un semnal salvat +=== Alimentare și magistrale === 
-  * ''​renderMenu()'' ​deseneaza meniul curent ​pe OLED + 
-  * ''​onButtonPress(int btn)'' ​handler de intrerupere ​pentru ​butoane +^ Zonă breadboard ^ Conexiune ^ Explicație ^ 
-  * ''​ISR(TIMER1_CAPT_vect)'' ​capteaza durata pulsului de la receptor +| **Coloana/​rândul GND comun** | GND | Masă comună pentru toate modulele | 
-  * ''​saveToSD(int index)''​ / ''​loadFromSD(int index)'' ​stocare persistenta (optional)+| **Rând 59** | 5V | Distribuție 5V pentru modulele compatibile | 
 +| **Rând 49** | 3.3V | Distribuție 3.3V generată de AMS1117 | 
 +| **AMS1117 VIN** | 5V | Intrarea regulatorului 3.3V | 
 +| **AMS1117 GND** | GND comun | Masă regulator | 
 +| **AMS1117 VOUT** | 3.3V / rând 49 | Alimentare ESP-01 | 
 + 
 +=== Expander PCF8574 și butoane === 
 + 
 +^ Conexiune ^ Explicație ^ 
 +| **VCC PCF8574 -> 5V** | Expander alimentat la 5V | 
 +| **GND PCF8574 -> GND** | Masă comună | 
 +| **SDA PCF8574 -> A4** | Date I2C | 
 +| **SCL PCF8574 -> A5** | Clock I2C | 
 +| **P0 -> buton 1** | Funcție RF capture / replay | 
 +| **P1 -> buton 2** | Funcție RFID scan | 
 +| **P2 -> buton 3** | Funcție LED cycle | 
 +| **P3 -> buton 4** | Funcție ESP WiFi scan | 
 +| **P4-P7** | Libere momentan | 
 + 
 +=== LED RGB === 
 + 
 +^ Conexiune ^ Explicație ^ 
 +| **LED R -> D3** | Canal roșu, PWM | 
 +| **LED G -> D5** | Canal verde, PWM | 
 +| **LED B -> D6** | Canal albastru, PWM | 
 +| **LED GND -> GND** | Catod comun la masă | 
 + 
 +=== Module RF 433 MHz === 
 + 
 +^ Modul ^ Conectat la ^ Explicație ^ 
 +| Receptor 433 MHz GND | GND | Masă receptor | 
 +| Receptor 433 MHz VCC | 5V | Alimentare receptor | 
 +| Receptor 433 MHz DATA | D2 | DATA receptor; folosit cu întrerupere externă | 
 +| Emițător 433 MHz GND | GND | Masă emițător | 
 +| Emițător 433 MHz VCC | 5V | Alimentare emițător | 
 +| Emițător 433 MHz DATA | D8 | Semnalul RF retransmis | 
 + 
 +=== Magistrala SPI === 
 + 
 +^ Semnal ^ Pin Arduino ^ Module conectate ^ 
 +| **SCK** | D13 | OLED, MicroSD | 
 +| **MOSI** | D11 | OLED, MicroSD | 
 +| **MISO** | D12 | MicroSD | 
 +| **CS OLED** | D10 | Select display OLED | 
 +| **CS MicroSD** | A3 | Select card SD | 
 + 
 +=== OLED SPI === 
 + 
 +^ Pin OLED ^ Conectat la ^ Explicație ^ 
 +| **GND** | GND | Masă comună | 
 +| **VCC** | 5V | Alimentare display | 
 +| **SCK** | D13 | Clock SPI | 
 +| **SDA / MOSI** | D11 | Date SPI către display | 
 +| **RES** | D9 | Reset display | 
 +| **DC** | A0 | Selectare comandă/​date | 
 +| **CS** | D10 | Chip Select OLED | 
 + 
 +=== PN532 RFID/NFC pe I2C === 
 + 
 +^ Pin PN532 ^ Conectat la ^ Explicație ^ 
 +| **5V** | 5V | Alimentare modul | 
 +| **GND** | GND | Masă comună | 
 +| **MO / SDA / TX** | A4 / SDA comun | Date I2C | 
 +| **NSS / SCL / RX** | A5 / SCL comun | Clock I2C | 
 +| **R0 / IRQ** | A2 | Linie IRQ | 
 +| **RST** | A1 | Reset hardware | 
 +| **SCK** | neconectat | Neutilizat în modul I2C | 
 +| **M / MISO** | neconectat | Neutilizat în modul I2C | 
 + 
 +Switch-uri PN532
 +  * **SET0 -> H** 
 +  * **SET1 -> L** 
 +  * mod de lucru: **I2C** 
 + 
 +=== ESP-01 === 
 + 
 +Pinii ESP-01 sunt notați cu modulul orientat cu antena/zig-zagul în sus: 
 + 
 +<​code>​ 
 +1 2 3 4 
 +5 6 7 8 
 +</code> 
 + 
 +^ Pin ESP-01 ^ Conectat la ^ Explicație ^ 
 +| **1** | GND | Masă | 
 +| **2** | 3.3V | GPIO2 tras HIGH | 
 +| **3** | 3.3V | GPIO0 tras HIGH pentru rulare normală | 
 +| **4** | Arduino D7 direct | RX ESP; primește comenzile AT de la Arduino | 
 +| **5** | Arduino D4 direct | TX ESP către Arduino | 
 +| **6** | 3.3V | CH_PD / EN tras HIGH | 
 +| **7** | 3.3V | RESET tras HIGH | 
 +| **8** | 3.3V | Alimentare ESP-01 | 
 + 
 +Observație:​ ESP-01 este alimentat doar la 3.3V din AMS1117. Linia D7 -> RX ESP este conectată direct în montajul curent. 
 + 
 +=== MicroSD === 
 + 
 +^ Pin MicroSD ^ Conectat la ^ Explicație ^ 
 +| **VCC** | 5V | Alimentare modul MicroSD | 
 +| **GND** | GND | Masă comună | 
 +| **SCK** | D13 | Clock SPI | 
 +| **MOSI** | D11 | Date către card | 
 +| **MISO** | D12 | Date de la card | 
 +| **CS** | A3 | Chip Select MicroSD | 
 + 
 +==== Explicații schema ==== 
 + 
 +Principiul de conectare este următorul: 
 +  * Toate modulele folosesc **GND comun**, deoarece semnalele digitale trebuie să aibă aceeași referință electrică. 
 +  * OLED-ul și MicroSD-ul folosesc magistrala **SPI hardware** a Arduino UNO: D13/SCK, D11/MOSI și D12/MISO. 
 +  * Fiecare modul SPI are propriul pin de selectare: OLED pe D10 și MicroSD pe A3. 
 +  * RFID-ul PN532 este conectat ​pe **I2C**, împreună cu PCF8574, pentru a evita conflictele pe SPI. 
 +  * Receptorul RF este pus pe **D2**, deoarece acest pin are întreruperea externă INT0. 
 +  * Emițătorul RF este pus pe **D8**, pin digital folosit pentru generarea semnalului retransmis. 
 +  * LED-ul RGB este pus pe pini PWM pentru ​a permite controlul culorilor. 
 +  * Butoanele sunt conectate la **PCF8574**,​ pentru a economisi pini pe Arduino. 
 +  * ESP-01 este alimentat din **AMS1117 ​la 3.3V** și comunică prin SoftwareSerial cu Arduino. 
 +  * MicroSD-ul este folosit pentru salvarea persistentă a datelor RF și RFID. 
 + 
 +===== Software Design =====
  
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
Line 111: Line 256:
  
   * [[https://​ww1.microchip.com/​downloads/​en/​DeviceDoc/​Atmel-7810-Automotive-Microcontrollers-ATmega328P_Datasheet.pdf|Datasheet ATmega328P]]   * [[https://​ww1.microchip.com/​downloads/​en/​DeviceDoc/​Atmel-7810-Automotive-Microcontrollers-ATmega328P_Datasheet.pdf|Datasheet ATmega328P]]
-  * [[https://​www.nxp.com/​docs/​en/​data-sheet/​MFRC522.pdf|Datasheet ​MFRC522]]+  * [[https://​www.nxp.com/​docs/​en/​data-sheet/​PCF8574.pdf|Datasheet ​PCF8574]] 
 +  * [[https://​www.nxp.com/​docs/​en/​data-sheet/​PN532_C1.pdf|Datasheet PN532]]
   * [[https://​www.espressif.com/​sites/​default/​files/​documentation/​0a-esp8266ex_datasheet_en.pdf|Datasheet ESP8266]]   * [[https://​www.espressif.com/​sites/​default/​files/​documentation/​0a-esp8266ex_datasheet_en.pdf|Datasheet ESP8266]]
  
Line 118: Line 264:
   * [[https://​github.com/​sui77/​rc-switch|Librarie RCSwitch]]   * [[https://​github.com/​sui77/​rc-switch|Librarie RCSwitch]]
   * [[https://​github.com/​olikraus/​u8g2|Librarie U8g2 OLED]]   * [[https://​github.com/​olikraus/​u8g2|Librarie U8g2 OLED]]
 +  * [[https://​github.com/​RobTillaart/​PCF8574|Librarie PCF8574]]
 +  * [[https://​github.com/​adafruit/​Adafruit-PN532|Librarie Adafruit PN532]]
 +  * [[https://​github.com/​bportaluri/​WiFiEsp|Librarie WiFiEsp]]
   * [[https://​flipperzero.one/​|Flipper Zero - inspiratie]]   * [[https://​flipperzero.one/​|Flipper Zero - inspiratie]]
   * [[https://​ocw.cs.pub.ro/​courses/​pm/​lab/​lab0-2024|PM Lab 0 - GPIO]]   * [[https://​ocw.cs.pub.ro/​courses/​pm/​lab/​lab0-2024|PM Lab 0 - GPIO]]
pm/prj2026/atoader/george.simion2005.1778326545.txt.gz · Last modified: 2026/05/09 14:35 by george.simion2005
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0