This is an old revision of the document!


Sniffer și Transmitator de Coduri IR folosind ESP32

Introducere

Proiectul “IR Sniffer cu Transmitere” este un dispozitiv construit în jurul plăcii ESP32, capabil să intercepteze semnale IR provenite de la telecomenzi, să le afişeze pe un ecran LCD și să le stocheze pentru utilizări ulterioare. Utilizatorul poate naviga între codurile salvate folosind butoane și le poate retransmite folosind un LED infraroșu. Dispozitivul este portabil, fiind alimentat din baterii, și oferă un exemplu solid de integrare a funcțiilor de captare semnal, afișare, memorie persistentă și acțiune controlată manual. Proiectul acoperă utilizarea întreruperilor, comunicației I2C, scrierea în flash și procesarea semnalelor.

Descriere generală

Sistemul se bazează pe placa ESP32, care gestionează captarea semnalelor IR, memorarea acestora în flash și transmiterea lor ulterioară. Informațiile sunt afișate pe un LCD 1602 cu interfață I2C. Trei butoane sunt utilizate pentru salvarea unui cod nou, schimbarea codului selectat și transmiterea codului selectat. LED-ul IR este folosit pentru transmitere, iar senzorul CHQ1838 pentru recepție. Alimentarea se face fie prin USB, fie prin 4 baterii AA, conectate pe pinul de 5V.

Hardware Design

🔹 Componente utilizate:

  • ESP32 DevKit
  • LCD 1602 cu interfață I2C (0x27)
  • Receptor IR CHQ1838
  • LED IR 5mm, 940nm
  • Rezistor 220Ω (pentru LED)
  • 3 butoane tactile 6x6mm (pentru SAVE, SCROLL, SEND)
  • Rezistori 4.7kΩ pentru pull-down
  • Breadboard HQ (400 puncte)
  • Fire jumper Mamă-Mamă și Mamă-Tată
  • Suport 4xR6 (AA)

🔹 Conexiuni:

  • GPIO 35 → Receptor IR
  • GPIO 32 → LED IR prin rezistor
  • GPIO 34 → Buton SEND
  • GPIO 33 → Buton SCROLL
  • GPIO 25 → Buton DELETE
  • GPIO 21, 22 → LCD I2C (SDA, SCL)

 Schema conexiuni IR Sniffer

Software Design

🔹 Mediu de dezvoltare:

  • Arduino IDE cu suport ESP32

🔹 Biblioteci utilizate:

  • IRremoteESP8266 – pentru recepție și transmitere coduri IR
  • LiquidCrystal_I2C – pentru afișajul LCD
  • Preferences – pentru stocare coduri (opțional)

🔹 Funcționalități implementate:

  • Recepție cod IR și afișare protocol + cod HEX pe LCD
  • Verificare cod duplicat înainte de salvare
  • Navigare între coduri prin scroll
  • Retransmitere coduri salvate
  • Ștergere totală coduri
  • Afișare stare și index curent pe LCD

Exemplu logică afișare cod: - Protocol: NEC - Cod HEX: e01fbf40 - Pe LCD: `NEC e01fbf40` (rând 1), `Cod 5/5` (rând 2)

Rezultate obținute

Dispozitivul a interceptat cu succes semnale IR de la diverse telecomenzi (TV, aer condiționat), afișând codurile corect pe LCD. Navigarea între coduri a funcționat stabil, iar transmiterea a fost realizată cu succes prin LED-ul IR. Codurile salvate nu s-au pierdut în timpul rulării și au fost vizibile corect. Sistemul a funcționat stabil atât pe USB cât și pe alimentare cu baterii AA. Interfața a fost clară și intuitivă.

 Montaj final IR Sniffer - funcționare LCD și LED IR

Download

Fişierele proiectului includ:

  • Cod sursă (`ir_sniffer.ino`)
  • Schema conexiuni (PNG și Fritzing)
  • README explicativ
  • Set coduri test IR (dacă este cazul)

Namespace recomandat pentru fişiere: :pm:prj2025:ac:galeseanu_razvan

Jurnal

🗓 10.05.2025 – Testare receptor CHQ1838 cu diverse telecomenzi 🗓 11.05.2025 – Implementare scroll și trimitere coduri 🗓 12.05.2025 – Integrare funcție ștergere + test general 🗓 13.05.2025 – Finalizare proiect și validare funcționalități

Bibliografie / Resurse

🔹 Resurse Software:

🔹 Resurse Hardware:

  • Datasheet ESP32 DevKit
  • Datasheet CHQ1838 IR Receiver
  • Forumuri Arduino + YouTube (ex: Techiesms, Andreas Spiess)

Export to PDF

pm/prj2025/vradulescu/razvan.galeseanu.1748176365.txt.gz · Last modified: 2025/05/25 15:32 by razvan.galeseanu
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