This is an old revision of the document!
În laboratorul de astăzi vom configura smartwatch-ul Hacktorwatch să acceseze internetul prin intermediul Wi-Fi-ului (denumit station mode), iar prin NimBLE (o biblioteca care implementeaza BLE - Bluetooth Low Energy) vom trimite date si alerte legat de starea bateriei catre smartphone.
Plăcile Esp32 încorporează un modul RF (Radio Frequency) prin intermediul căruia dispun de Wi-Fi, Bluetooth și BLE (Bluetooth Low Energy). Deoarece toate cele trei tehnologii funcționează la frecvența de 2.4GHz, nu putem să primim și să trimitem date în același timp și pe Wi-Fi și prin Bluetooth. Pentru a fi posibil acest lucru, se folosește time-division multiplexing, insa momentan acest feature nu este integrat in NuttX.
În comunicația prin Wi-Fi, un device poate să aibă unul dintre rolurile de mai jos:
În NuttX, Esp32 poate rula atât ca un station, cât și ca un access point (software access point - SoftAP - deoarece managementul comunicației se întâmplă în cadrul sistemului de operare, nu în hardware). Cu toate acestea,
Pentru a putea conecta smartwatch-ul la o rețea Wi-Fi existentă identificată prin <myssid>:<mypasswd>, se pot folosi comenzile de mai jos:
ifup wlan0 wapi psk wlan0 <mypasswd> 3 wapi essid wlan0 <myssid> 1 renew wlan0
wapi psk
este folosit pentru a specifica nivelul de securitate minim pe care rețeaua trebuie să îl îndeplinească, precum și algoritmul de criptare - în cazul de față, se folosește WPA2 și algoritmul CCMP. În total, există patru niveluri de securitate, iar în NuttX sunt suportate doar ultimele trei:
Deoarece wapi essid doar setează intern numele rețelei, pentru conectarea efectivă la rețea și obținerea unei adrese IP este nevoie de o comandă explicită - renew wlan0.
O descriere mai detaliată a API-ului expus prin WAPI (de exemplu, wapi show wlan0), precum și cum te poți conecta la o rețea nesecurizată (open network), poate fi consultată aici
1. Conectați smartwatch-ul la rețeaua facultății și testați cu ping 8.8.8.8
că aveți acces la internet.