From 9da0dd42dc59672436e615c9a7b30a7f9a014549 Mon Sep 17 00:00:00 2001 From: Ard Kuijpers Date: Thu, 27 Feb 2020 16:47:26 +0100 Subject: [PATCH] Wifi scanner --- platformio.ini | 2 ++ src/main.cpp | 62 ++++++++++++++++++++++++++++++++++++++++++++++---- 2 files changed, 60 insertions(+), 4 deletions(-) diff --git a/platformio.ini b/platformio.ini index b20e1c0..66acc40 100644 --- a/platformio.ini +++ b/platformio.ini @@ -12,3 +12,5 @@ platform = espressif8266 board = nodemcuv2 framework = arduino +upload_speed = 921600 +monitor_speed = 115200 diff --git a/src/main.cpp b/src/main.cpp index d999c6e..b322e0f 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1,15 +1,65 @@ #include +#include "ESP8266WiFi.h" #define TURN_ON LOW #define TURN_OFF HIGH +#define wifi_ssid "etxean" +#define wifi_password "4300sf08fhln" + +#define mqtt_server "192.168.249.5" +#define mqtt_port "1883" +#define mqtt_user "homedevice" +#define mqtt_password "WNzAb4VazNFUPlpkn0ED" + +void heartbeat(); +void longbeat(); + void setup() { - Serial.begin(9600); + Serial.begin(115200); pinMode(LED_BUILTIN, OUTPUT); + + // Set WiFi to station mode and disconnect from an AP if it was previously connected + WiFi.mode(WIFI_STA); + WiFi.disconnect(); + delay(100); + Serial.println("Setup done"); } void loop() { - Serial.println("beat"); + Serial.println("scan start"); + heartbeat(); + + // WiFi.scanNetworks will return the number of networks found + int n = WiFi.scanNetworks(); + Serial.println("scan done"); + if (n == 0) + Serial.println("no networks found"); + else + { + Serial.print(n); + Serial.println(" networks found"); + for (int i = 0; i < n; ++i) + { + // Print SSID and RSSI for each network found + Serial.print(i + 1); + Serial.print(": "); + Serial.print(WiFi.SSID(i)); + Serial.print(" ("); + Serial.print(WiFi.RSSI(i)); + Serial.print(")"); + Serial.println((WiFi.encryptionType(i) == ENC_TYPE_NONE)?" ":"*"); + delay(10); + } + } + Serial.println(""); + longbeat(); + // Wait a bit before scanning again + delay(5000); +} + +void heartbeat() +{ for (int i=0; i<2; i++) { digitalWrite(LED_BUILTIN, TURN_ON); @@ -17,7 +67,11 @@ void loop() { digitalWrite(LED_BUILTIN, TURN_OFF); delay(100); } - Serial.println("off"); +} + +void longbeat() +{ + digitalWrite(LED_BUILTIN, TURN_ON); + delay(500); digitalWrite(LED_BUILTIN, TURN_OFF); - delay(1500); } \ No newline at end of file