Wifi Statistics
Introducere
Proiectul consta intr-un device ce contorizeaza cate device-uri unice trec pe langa el. Pe baza acestor date se putem sa ne dam seama aproximativ cati oameni au trecut pe langa device in perioada in care acesta a stat deschis. Contorizarea se face pe baza probe-urilor trimise se smartphone-uri atunci cand doresc sa se conecteze la un WiFi. Ne vom folosi de adresa MAC a smartphone-urilor pentru a ne da seama daca este un device nou sau a fost numarat deja.
Descriere generală
Microcontrollerul ATMEGA324P care preia date de la modulul wifi si verifica daca un device a mai trecut pe acolo in ultima ora/30 minute. Pentru ca atat memoria SRAM cat si cea EEPROM ale controllerului ATMEGA324P sunt limitate vom folosi si o memorie flash extra.
Memoria flash in care stocam temporar adrese MAC, pe care le stergem la finalizarea unui ciclu de contorizare. Tot aici stocam si numarul de device-uri ce au trecut intr-o perioada de timp prin acea zona.
Cipul WiFi ESP8266 cu ajutorul caruia vom asculta probe-urile de wifi. Pentru ca aceste probe-uri sunt trimise pe toate canalele este suficient sa ascultam pe unul singur
Cipul FT321X va fi folosit pentru debug, poate eventual pentru o mai usoara trasmitere a continului memoriei flash
Hardware Design
Lista de piese:
ATMega 324 - Microcontroller-ul principal
ESP8266 - Modul WiFi
Winbond W25Q64B - Memorie flash de 64MB
FT231XS - Modulul optional FTDI
LE33 - Convertor 3.3V
Software Design
In linii mari logica presupune ca chipul WiFi sa asculte dupa pachete de management din care sa extraga adrese MAC sursa pe care sa le trimita catre ATMEGA324. Odata ajuns aici se pot numara aparitiile unice ale fiecarui MAC sursa si dupa o perioada de timp sa se scrie in memoria flash numarul de MAC-uri unice
Pentru a ne asigura ca prindem toate device-urile care trec prin zona ascultam pe fiecare canal cate 200-300 ms (Beacon-urile wifi-urilor sunt trimise de regula o data la ~100ms). Cum putem sari intre 13 canale ar insemna ca putem trece prin tot spectrul WiFi in 2,6-3.9 secunde. Putem astepta in jur de 10-12 secunde pentru a avea o imagine de ansamblu buna asupra device-urilor din proximitate
Putem memora si fiecare adresa MAC ce a trecut pe langa device-ul nostru pe memoria flash pentru a calcula statistici legate de numarul unic de oameni ce trec pe langa senzor pe mai multe zile
Schema Electrica
Concluzii
Proiectul poate fi folosit impreuna cu un modul GPS pentru a realiza o mapare a WiFi-urilor dintr-o zona - presupunand ca ne miscam cu acest device
ESP8266 nu ofera informatii complete in modul promiscuous - ofera doar o parte din header-ul 802.11 si nimic din date
ESP8266 are suport foarte limitat pentru injectia de pachete
Download
Bibliografie/Resurse