mirror of
https://github.com/justcallmekoko/ESP32Marauder.git
synced 2025-12-12 15:50:36 -08:00
Generate SSIDs #44
This commit is contained in:
@@ -627,6 +627,8 @@ void MenuFunctions::RunSetup()
|
||||
// Settings stuff
|
||||
shutdownWiFiMenu.list = new LinkedList<MenuNode>();
|
||||
shutdownBLEMenu.list = new LinkedList<MenuNode>();
|
||||
generateSSIDsMenu.list = new LinkedList<MenuNode>();
|
||||
clearSSIDsMenu.list = new LinkedList<MenuNode>();
|
||||
|
||||
// Work menu names
|
||||
mainMenu.name = " ESP32 Marauder ";
|
||||
@@ -648,6 +650,9 @@ void MenuFunctions::RunSetup()
|
||||
bluetoothGeneralMenu.name = " Bluetooth General ";
|
||||
shutdownWiFiMenu.name = " Shutdown WiFi ";
|
||||
shutdownBLEMenu.name = " Shutdown BLE ";
|
||||
generateSSIDsMenu.name = " Generate SSIDs ";
|
||||
clearSSIDsMenu.name = " Clear SSIDs ";
|
||||
|
||||
|
||||
// Build Main Menu
|
||||
mainMenu.parentMenu = NULL;
|
||||
@@ -755,10 +760,18 @@ void MenuFunctions::RunSetup()
|
||||
wifi_scan_obj.StartScan(LV_JOIN_WIFI, TFT_YELLOW);
|
||||
joinWiFiGFX();
|
||||
});
|
||||
addNodes(&wifiGeneralMenu, "Shutdown WiFi", TFT_ORANGE, NULL, SHUTDOWN, [this]() {
|
||||
addNodes(&wifiGeneralMenu, "Shutdown WiFi", TFT_CYAN, NULL, SHUTDOWN, [this]() {
|
||||
changeMenu(&shutdownWiFiMenu);
|
||||
wifi_scan_obj.RunShutdownWiFi();
|
||||
});
|
||||
addNodes(&wifiGeneralMenu, "Generate SSIDs", TFT_SKYBLUE, NULL, GENERAL_APPS, [this]() {
|
||||
changeMenu(&generateSSIDsMenu);
|
||||
wifi_scan_obj.RunGenerateSSIDs();
|
||||
});
|
||||
addNodes(&wifiGeneralMenu, "Clear SSIDs", TFT_SILVER, NULL, GENERAL_APPS, [this]() {
|
||||
changeMenu(&clearSSIDsMenu);
|
||||
wifi_scan_obj.RunClearSSIDs();
|
||||
});
|
||||
|
||||
// Build shutdown wifi menu
|
||||
shutdownWiFiMenu.parentMenu = &wifiGeneralMenu;
|
||||
@@ -766,6 +779,18 @@ void MenuFunctions::RunSetup()
|
||||
changeMenu(shutdownWiFiMenu.parentMenu);
|
||||
});
|
||||
|
||||
// Build generate ssids menu
|
||||
generateSSIDsMenu.parentMenu = &wifiGeneralMenu;
|
||||
addNodes(&generateSSIDsMenu, "Back", TFT_LIGHTGREY, NULL, 0, [this]() {
|
||||
changeMenu(generateSSIDsMenu.parentMenu);
|
||||
});
|
||||
|
||||
// Build clear ssids menu
|
||||
clearSSIDsMenu.parentMenu = &wifiGeneralMenu;
|
||||
addNodes(&clearSSIDsMenu, "Back", TFT_LIGHTGREY, NULL, 0, [this]() {
|
||||
changeMenu(clearSSIDsMenu.parentMenu);
|
||||
});
|
||||
|
||||
|
||||
// Build Bluetooth Menu
|
||||
bluetoothMenu.parentMenu = &mainMenu; // Second Menu is third menu parent
|
||||
|
||||
@@ -138,6 +138,8 @@ class MenuFunctions
|
||||
// Settings things menus
|
||||
Menu shutdownWiFiMenu;
|
||||
Menu shutdownBLEMenu;
|
||||
Menu generateSSIDsMenu;
|
||||
Menu clearSSIDsMenu;
|
||||
|
||||
static void lv_tick_handler();
|
||||
|
||||
|
||||
@@ -129,6 +129,7 @@ WiFiScan::WiFiScan()
|
||||
}
|
||||
|
||||
void WiFiScan::RunSetup() {
|
||||
ssids = new LinkedList<ssid>();
|
||||
BLEDevice::init("");
|
||||
pBLEScan = BLEDevice::getScan(); //create new scan
|
||||
this->ble_initialized = true;
|
||||
@@ -136,6 +137,29 @@ void WiFiScan::RunSetup() {
|
||||
this->shutdownBLE();
|
||||
}
|
||||
|
||||
int WiFiScan::clearSSIDs() {
|
||||
int num_cleared = this->ssids->size();
|
||||
this->ssids->clear();
|
||||
Serial.println("ssids: " + (String)this->ssids->size());
|
||||
return num_cleared;
|
||||
}
|
||||
|
||||
int WiFiScan::generateSSIDs() {
|
||||
uint8_t num_gen = 20;
|
||||
for (uint8_t x = 0; x < num_gen; x++) {
|
||||
String essid = "";
|
||||
|
||||
for (uint8_t i = 0; i < 6; i++)
|
||||
essid.concat(alfa[random(65)]);
|
||||
|
||||
ssid s = {essid, {random(256), random(256), random(256), random(256), random(256), random(256)}};
|
||||
this->ssids->add(s);
|
||||
Serial.println(this->ssids->get(this->ssids->size() - 1).essid);
|
||||
}
|
||||
|
||||
return num_gen;
|
||||
}
|
||||
|
||||
void WiFiScan::joinWiFi(String ssid, String password)
|
||||
{
|
||||
static const char * btns[] ={"Close", ""};
|
||||
@@ -406,6 +430,30 @@ void WiFiScan::RunLvJoinWiFi(uint8_t scan_mode, uint16_t color) {
|
||||
//display_obj.joinWiFiGFX();
|
||||
}
|
||||
|
||||
void WiFiScan::RunClearSSIDs() {
|
||||
display_obj.tft.setTextWrap(false);
|
||||
display_obj.tft.setFreeFont(NULL);
|
||||
display_obj.tft.setCursor(0, 100);
|
||||
display_obj.tft.setTextSize(1);
|
||||
display_obj.tft.setTextColor(TFT_CYAN);
|
||||
|
||||
display_obj.tft.println(F("Clearing SSIDs..."));
|
||||
display_obj.tft.println("SSIDs Cleared: " + (String)this->clearSSIDs());
|
||||
}
|
||||
|
||||
void WiFiScan::RunGenerateSSIDs() {
|
||||
display_obj.tft.setTextWrap(false);
|
||||
display_obj.tft.setFreeFont(NULL);
|
||||
display_obj.tft.setCursor(0, 100);
|
||||
display_obj.tft.setTextSize(1);
|
||||
display_obj.tft.setTextColor(TFT_CYAN);
|
||||
|
||||
display_obj.tft.println(F("Generating SSIDs..."));
|
||||
|
||||
display_obj.tft.println("SSIDs Generated: " + (String)this->generateSSIDs());
|
||||
display_obj.tft.println(" Total SSIDs: " + (String)this->ssids->size());
|
||||
}
|
||||
|
||||
void WiFiScan::RunShutdownWiFi() {
|
||||
display_obj.tft.setTextWrap(false);
|
||||
display_obj.tft.setFreeFont(NULL);
|
||||
|
||||
@@ -55,6 +55,11 @@ extern TemperatureInterface temp_obj;
|
||||
|
||||
esp_err_t esp_wifi_80211_tx(wifi_interface_t ifx, const void *buffer, int len, bool en_sys_seq);
|
||||
|
||||
struct ssid {
|
||||
String essid;
|
||||
int bssid[6];
|
||||
};
|
||||
|
||||
class WiFiScan
|
||||
{
|
||||
private:
|
||||
@@ -154,6 +159,8 @@ class WiFiScan
|
||||
public:
|
||||
WiFiScan();
|
||||
|
||||
LinkedList<ssid>* ssids;
|
||||
|
||||
int set_channel = 1;
|
||||
|
||||
int old_channel = 0;
|
||||
@@ -171,6 +178,8 @@ class WiFiScan
|
||||
wifi_init_config_t cfg = WIFI_INIT_CONFIG_DEFAULT();
|
||||
|
||||
void RunSetup();
|
||||
int clearSSIDs();
|
||||
int generateSSIDs();
|
||||
bool shutdownWiFi();
|
||||
bool shutdownBLE();
|
||||
void joinWiFi(String ssid, String password);
|
||||
@@ -180,6 +189,8 @@ class WiFiScan
|
||||
void RunInfo();
|
||||
void RunShutdownWiFi();
|
||||
void RunShutdownBLE();
|
||||
void RunGenerateSSIDs();
|
||||
void RunClearSSIDs();
|
||||
void channelHop();
|
||||
uint8_t currentScanMode = 0;
|
||||
void main(uint32_t currentTime);
|
||||
|
||||
Reference in New Issue
Block a user