Den 802.11 ninjan - bärbara 802.11 Hacking enhet (6 / 8 steg)
Steg 6: GPIO stiften på Raspberry Pi
GSI,
Allmänna ändamål Input Output (GPIO) stift är stor för att lägga till lysdioder, tryckknappar och mycket mer. I det här steget lär vi dig hur att lysa en LED och läsa en momentan tryckknapp från Raspbian OS. I bilden ovan tänds lysdioden på sidan av fallet endast medan enheten är framgångsrikt scanning. Tryckknappen stoppar scanning (om det körs) och starta om genomsökningen.
Ingång: Lyssna för en tryckknapp låt oss skriva lyssnar ett litet skript som körs när Raspberry Pi startar upp som ständigt efter en knapptryckning på GPIO 8. Återigen, vi kommer helt enkelt sätta detta skript i /etc/rc.local först, vi måste initiera GPIO PIN-koden för input som,
Upprepa 8 > /sys/class/gpio/export
sedan satt vi det för inmatning, som
ECHO i > /sys/class/gpio/gpio8/direction
Nu om vi kontrollerar värdet på
Cat /sys/class/gpio/gpio8/value
När knappen trycks, vi får värdet "1" och när knappen inte är intryckt, vi borde få värdet av "0" - enkel binärt. Nu låt oss skriva ett skript som gör något enkelt, som pånyttfödd Pi.
#! / bin/bash
medan [1]. göra
om [$(katt /sys/class/gpio/gpio8/value)"- eq"1"]; då pånyttfödd; Fi
gjort;
Detta skript kommer att loop för evigt och fortsätta kontrollera värdet av GPIO stift 8 för en knapptryckning. Om finns, det kommer att starta om Pi. Detta kan användas i många situationer och vi kan vara kreativ så!
Produktion: Belysning en LED låt oss skriva ett skript som slår på och av en LED med GPIO stift 7. Detta är mycket enklare än att skriva ett skript för att lyssna eller tryck på en knapp. I grund och botten vi initiera GPIO stiftet som "ut" i filen riktning efter exporten, sedan upprepa en 1 i filen värde aktivera LED, eller 0 inaktiverar LED.
ECHO 7 > /sys/class/gpio/export
ECHO i > /sys/class/gpio/gpio7/direction
Nu för att slå på LED, gör vi,
ECHO 1 > /sys/class/gpio/gpio8/value
Om du vill inaktivera det tillbaka LED gör vi,
ECHO 0 > /sys/class/gpio/gpio8/value
Detta kan visa sig mycket användbart för statusindikeringar. Till exempel, förblir Blue LED-lampan på sidan av 802.11 Ninja i bilderna ovan tänd medan Airodump-NG är igång. Detta görs genom att skriva samma medan [] Bash slingan som ovan för tryckknapp, men kontroller processen lista kommando "ps aux" för strängen "airodump-ng" Jag har testat det genom att dra ut WiFi-kortet från Pi under genomsökningen och lampan gick som förväntat.