Proiecte IoT / Hobby DIY

LineCode WebOS System

Acest cod oferă un sistem de operare web pentru modulul ESP8266. Este un proiect complet pentru gestionarea funcțiilor modulului ESP8266 printr-o interfață web și WebSocket. Mai jos sunt principalele caracteristici ale acestui cod:

Caracteristici principale:

  1. Conectare WiFi:

    • Conectează ESP8266 la o rețea WiFi specificată.
    • Afișează adresa IP a dispozitivului.
  2. Server Web și WebSocket:

    • Server web pe portul 80 pentru gestionarea paginii HTML.
    • Server WebSocket pe portul 81 pentru comunicații în timp real.
  3. Pagini și comenzi implementate:

    • Scan WiFi: Scanează rețelele WiFi din apropiere și afișează lista acestora cu puterea semnalului.
    • System Info: Afișează informații despre firmware, memorie liberă, frecvența CPU, dimensiunea și viteza cipului flash.
    • Restart: Repornește modulul ESP8266.
    • WiFi Status: Afișează detalii despre conexiunea WiFi curentă (SSID, IP, puterea semnalului).
    • Memory Info: Furnizează informații despre starea memoriei (heap liber, fragmentare, blocuri libere).
    • Uptime: Afișează timpul total de funcționare al dispozitivului în secunde.
    • GPIO Control: Permite comutarea pinurilor GPIO folosind comenzi trimise prin WebSocket.
  4. Interfață Web:

    • Oferă o pagină HTML interactivă unde utilizatorii pot trimite comenzi, vizualiza informații și controla pinurile GPIO.
    • Design curat și responsiv, utilizând stiluri CSS inline.
  5. Evenimente WebSocket:

    • Gestionează mesaje primite și trimite răspunsuri utilizatorilor în timp real.

Detalii tehnice:

  • Biblioteci utilizate:

    • ESP8266WiFi.h pentru conectivitate WiFi.
    • ESP8266WebServer.h pentru serverul web.
    • WebSocketsServer.h pentru comunicarea WebSocket.
  • Organizare funcționalități:

    • Funcțiile handleRoot, handleScanWifi, handleSysInfo etc. sunt utilizate pentru a răspunde la cereri HTTP și WebSocket.
    • Funcția webSocketEvent gestionează toate evenimentele de la WebSocket.
  • Structura HTML:

    • Include butoane pentru fiecare funcție (Scan WiFi, SysInfo, Restart etc.).
    • Terminal pentru afișarea mesajelor de ieșire în timp real.
  • Licență și credit:

    • Proiect dezvoltat de B. Alin Gabriel sub licență MIT.
    • Pagina HTML și codul sunt create cu o abordare simplă și clară pentru dezvoltatorii IoT ;)