Edison gör mig en kopp kaffe (kod) (1 / 3 steg)
Steg 1: Ställa din Intel Edison
skärmen /dev/tty.usbserial-AJ035OK6 115200 - L
Standard Edison inloggning är root. När du är i, konfigurera wifi-nätverk:
configure_edison--wifi
Låt oss lägga till listan källor för att kunna hämta paket från Edison. Öppna den här filen:
roten vi /etc/opkg/base-feeds.conf
Lägga till dessa rader till den (typ "i" för att kunna infoga text i vi-editor):
src/gz alla http://repo.opkg.net/edison/repo/all
src/gz edison http://repo.opkg.net/edison/repo/edison
src/gz core2-32 http://repo.opkg.net/edison/repo/core2-32
Sedan uppdatera källorna och installera nödvändiga bibliotek för vårt projekt:
roten opkg uppdatering
roten opkg installera libmraa0 nano
roten opkg installera python-pip
roten curl https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py | python
roten pip installera ubidots
Gjort! nu är vi redo att koden.
Upptäcker när jag anländer till mitt kontor
Vi använder Scapy packet sniffer för att kunna upptäcka ARP trafik i det lokala wifi-nätverket. Scapy är ett bra verktyg som låter dig hantera nätverkspaket från lättheten av ett Python-skript. Utan den skulle vi tolka massor av binär kod när sniffa nätverkstrafik.
Vårt första skript kommer att se upp för MAC-adresser lagras i en CSV-fil som heter "dictionary.csv" och sedan skicka värdet "1" till en Ubidots variabel, vilket innebär att personen kom. Om MAC-adressen är sett för första gången, sedan skapar skriptet automatiskt en Ubidots variabel för att lagra data.
Obs linjen:
vädra (prn = arp_count, filter = "arp", lagra = 0)
som utlöser funktionen "arp_count(pkt)" varje gång ett ARP-paket är vädrade. Det är där vi eld flera processer att uppdatera variabeln Ubidots.
Anledningen jag använde Multiprocessing är eftersom jag behövde en parallell funktion så att, om två användare anländer samtidigt, sedan båda paketen kan snusas och uppdateras i Ubidots.
Alternativet "spara = 0" är mycket viktigt för annars paketen skulle börja fylla i Edisons RAM och Swap minne och det skulle frysa efter några timmar.
https://halckemy.S3.amazonaws.com/uploads/Document/File/46958/Dictionary.csv
https://halckemy.S3.amazonaws.com/uploads/Document/File/46543/wifi_sniff.py