wifi test

This commit is contained in:
Nils Schulte 2025-09-14 19:00:35 +02:00
parent 7e8770f77d
commit a65bd61d4d

View File

@ -1,40 +1,66 @@
#include "Arduino.h"
#include <WiFi.h>
#include "esp_wifi.h"
#include "USB.h"
USBCDC usbserial;
#define Serial usbserial
const char *ssid = "Galaxy S23 BD46";
const char *password = "nvbuxw2kciuztqh";
const char *ssid = "/dev/null";
const char *password = "Wohnzimmerbodenfuge";
// WARNING: This function is called from a separate FreeRTOS task (thread)!
void WiFiEvent(WiFiEvent_t event) {
Serial.printf("[WiFi-event] event: %d\n", event);
void WiFiEvent(WiFiEvent_t event, WiFiEventInfo_t info) {
switch (event) {
case ARDUINO_EVENT_WIFI_STA_DISCONNECTED:
Serial.printf("Disconnected from WiFi, reason: %d\n\r", info.wifi_sta_disconnected.reason);
break;
case ARDUINO_EVENT_WIFI_STA_CONNECTED:
Serial.println("Connected to AP!");
break;
case ARDUINO_EVENT_WIFI_READY: Serial.println("WiFi interface ready"); break;
case ARDUINO_EVENT_WIFI_SCAN_DONE: Serial.println("Completed scan for access points"); break;
case ARDUINO_EVENT_WIFI_STA_START: Serial.println("WiFi client started"); break;
case ARDUINO_EVENT_WIFI_STA_STOP: Serial.println("WiFi clients stopped"); break;
case ARDUINO_EVENT_WIFI_STA_CONNECTED: Serial.println("Connected to access point"); break;
case ARDUINO_EVENT_WIFI_STA_DISCONNECTED: Serial.println("Disconnected from WiFi access point"); break;
case ARDUINO_EVENT_WIFI_STA_AUTHMODE_CHANGE: Serial.println("Authentication mode of access point has changed"); break;
case ARDUINO_EVENT_WIFI_STA_GOT_IP:
Serial.print("Got IP: ");
Serial.print("Obtained IP address: ");
Serial.println(WiFi.localIP());
break;
default:
Serial.printf("WiFi event: %d\n\r", event);
break;
case ARDUINO_EVENT_WIFI_STA_LOST_IP: Serial.println("Lost IP address and IP address is reset to 0"); break;
case ARDUINO_EVENT_WPS_ER_SUCCESS: Serial.println("WiFi Protected Setup (WPS): succeeded in enrollee mode"); break;
case ARDUINO_EVENT_WPS_ER_FAILED: Serial.println("WiFi Protected Setup (WPS): failed in enrollee mode"); break;
case ARDUINO_EVENT_WPS_ER_TIMEOUT: Serial.println("WiFi Protected Setup (WPS): timeout in enrollee mode"); break;
case ARDUINO_EVENT_WPS_ER_PIN: Serial.println("WiFi Protected Setup (WPS): pin code in enrollee mode"); break;
case ARDUINO_EVENT_WIFI_AP_START: Serial.println("WiFi access point started"); break;
case ARDUINO_EVENT_WIFI_AP_STOP: Serial.println("WiFi access point stopped"); break;
case ARDUINO_EVENT_WIFI_AP_STACONNECTED: Serial.println("Client connected"); break;
case ARDUINO_EVENT_WIFI_AP_STADISCONNECTED: Serial.println("Client disconnected"); break;
case ARDUINO_EVENT_WIFI_AP_STAIPASSIGNED: Serial.println("Assigned IP address to client"); break;
case ARDUINO_EVENT_WIFI_AP_PROBEREQRECVED: Serial.println("Received probe request"); break;
case ARDUINO_EVENT_WIFI_AP_GOT_IP6: Serial.println("AP IPv6 is preferred"); break;
case ARDUINO_EVENT_WIFI_STA_GOT_IP6: Serial.println("STA IPv6 is preferred"); break;
case ARDUINO_EVENT_ETH_GOT_IP6: Serial.println("Ethernet IPv6 is preferred"); break;
case ARDUINO_EVENT_ETH_START: Serial.println("Ethernet started"); break;
case ARDUINO_EVENT_ETH_STOP: Serial.println("Ethernet stopped"); break;
case ARDUINO_EVENT_ETH_CONNECTED: Serial.println("Ethernet connected"); break;
case ARDUINO_EVENT_ETH_DISCONNECTED: Serial.println("Ethernet disconnected"); break;
case ARDUINO_EVENT_ETH_GOT_IP: Serial.println("Obtained IP address"); break;
default: break;
}
}
NetworkServer server(80);
void setup() {
Serial.begin();
USB.begin();
Serial.setDebugOutput(true);
Serial.println();
//WiFi.useStaticBuffers(true);
delay(2000);
Serial.println("Scanning for Wi-Fi networks...");
int n = WiFi.scanNetworks();
//WiFi.setTxPower(WIFI_POWER_8_5dBm);
for (int i = 0; i < n; ++i) {
Serial.printf("%d: %s (%d dBm) CH %d Enc %d\n\r",
i + 1, WiFi.SSID(i).c_str(),
@ -42,15 +68,36 @@ void setup() {
WiFi.encryptionType(i));
}
delay(2000);
//Serial.printf("max tx power: %d\r\n", esp_wifi_get_max_tx_power());
WiFi.setTxPower(WIFI_POWER_2dBm);
// You can remove the password parameter if you want the AP to be open.
// a valid password must have more than 7 characters
//if (!WiFi.softAP(ssid, password)) {
// while (1) {
// Serial.println("Soft AP creation failed.");delay(1000);}
//}
//IPAddress myIP = WiFi.softAPIP();
//Serial.print("AP IP address: ");
//Serial.println(myIP);
//server.begin();
//
//return;
WiFi.mode(WIFI_STA);
WiFi.disconnect(true);
delay(100);
WiFi.onEvent(WiFiEvent);
// Register event handler
WiFi.onEvent(WiFiEvent, ARDUINO_EVENT_WIFI_STA_START);
WiFi.onEvent(WiFiEvent, ARDUINO_EVENT_WIFI_STA_CONNECTED);
WiFi.onEvent(WiFiEvent, ARDUINO_EVENT_WIFI_STA_GOT_IP);
WiFi.onEvent(WiFiEvent, ARDUINO_EVENT_WIFI_STA_DISCONNECTED);
WiFi.begin(ssid, password);
}
void loop() {
//WiFi.begin(ssid, password);
delay(1000);
}