55 ===========================================
66*/
77
8+ // Including some libraries we need //
89#include < Arduino.h>
910
1011#include < ESP8266WiFi.h>
1112#include < ESP8266WebServer.h>
1213#include < FS.h>
1314
14- #define resetPin 4 /* <-- comment out or change if you need GPIO 4 for other purposes */
15+
16+ // Settings //
17+
1518#define USE_DISPLAY /* <-- uncomment that if you want to use the display */
19+ #define resetPin 4 /* <-- comment out or change if you need GPIO 4 for other purposes */
1620// #define USE_LED16 /* <-- for the Pocket ESP8266 which has a LED on GPIO 16 to indicate if it's running */
1721
22+
23+ // Including everything for the OLED //
1824#ifdef USE_DISPLAY
1925 #include < Wire.h>
2026
2127 // include the library you need
2228 #include " SSD1306.h"
23- // #include "SH1106.h"
29+ #include " SH1106.h"
2430
2531 // create display(Adr, SDA-pin, SCL-pin)
2632 SSD1306 display (0x3c , 5 , 4 ); // GPIO 5 = D1, GPIO 4 = D2
4248 int curSite = 1 ;
4349 int lrow = 0 ;
4450
51+ int menu = 0 ; // 0 = Main Menu, 1 = APs, 2 = Stations, 3 = Attacks, 4 = Monitor
52+
4553 bool canBtnPress = true ;
4654 int buttonPressed = 0 ; // 0 = UP, 1 = DOWN, 2 = SELECT, 3 = DISPLAY
4755 bool displayOn = true ;
4856#endif
4957
50- String wifiMode = " " ;
51- String attackMode = " " ;
52- String scanMode = " SCAN" ;
53-
54- bool warning = true ;
55-
58+ // More Includes! //
5659extern " C" {
5760 #include " user_interface.h"
5861}
@@ -72,6 +75,13 @@ ESP8266WebServer server(80);
7275const bool debug = true ;
7376/* ========== DEBUG ========== */
7477
78+ // Run-Time Variables //
79+ String wifiMode = " " ;
80+ String attackMode = " " ;
81+ String scanMode = " SCAN" ;
82+
83+ bool warning = true ;
84+
7585NameList nameList;
7686
7787APScan apScan;
@@ -87,13 +97,14 @@ void sniffer(uint8_t *buf, uint16_t len) {
8797#ifdef USE_DISPLAY
8898void drawInterface () {
8999 if (displayOn){
100+
90101 display.clear ();
91102
92103 int _lrow = 0 ;
93104 for (int i = curSite * rowsPerSite - rowsPerSite; i < curSite * rowsPerSite; i++) {
94- if (i == 0 ) display.drawString (3 , i * fontSize, " --> WiFi " + wifiMode);
95- else if (i == 1 ) display.drawString (3 , i * fontSize, " --> " + scanMode);
96- else if (i == 2 ) display.drawString (3 , i * fontSize, " --> " + attackMode + " attack" );
105+ if (i == 0 ) display.drawString (3 , i * fontSize, " -> WiFi " + wifiMode);
106+ else if (i == 1 ) display.drawString (3 , i * fontSize, " -> " + scanMode);
107+ else if (i == 2 ) display.drawString (3 , i * fontSize, " -> " + attackMode + " attack" );
97108 else if (i - 3 < apScan.results ) {
98109 display.drawString (3 , _lrow * fontSize, apScan.getAPName (i - 3 ));
99110 if (apScan.getAPSelected (i - 3 )) {
@@ -625,7 +636,7 @@ void loop() {
625636 // ===== SELECT =====
626637 } else if (buttonPressed == 2 ) {
627638
628- // ===== WiFi on/off =====
639+ // ===== WIFI on/off =====
629640 if (curRow == 0 ) {
630641 if (wifiMode == " ON" ) stopWifi ();
631642 else startWifi ();
@@ -657,4 +668,4 @@ void loop() {
657668 drawInterface ();
658669#endif
659670
660- }
671+ }
0 commit comments