[英]ESP32 to ESP32 AP/client WiFi connection problem
嘗試從一個 ESP32 到另一個 ESP32 進行通信,其中一個充當 AP,另一個充當客戶端,但似乎無法將 esp 客戶端連接到 esp AP,但可以使用我的智能手機連接到 AP。抱歉,如果這似乎是一個簡單的問題,我是esp32s和WiFI通信的新手。
接入點代碼
#include <WiFi.h>
const char* ssid = "ESP32-Access-Point";
const char* password = "SyedAhmedAli";
WiFiServer server(80);
void setup() {
Serial.begin(115200);
Serial.println("Setting AP (Access Point)…");
WiFi.softAP(ssid, password);
IPAddress IP = WiFi.softAPIP();
Serial.print("AP IP address: ");
Serial.println(IP);
Serial.print("MAC address: ");
Serial.println(WiFi.softAPmacAddress());
server.begin();
}
void loop(){
WiFiClient client = server.available(); // Listen for incoming clients
if (client)
{ Serial.println("New Client.");
while (client.connected())
{
Serial.println(client.connected());
Serial.println("Client connected.");
Serial.println("");
}
client.stop();
Serial.println("Client disconnected.");
Serial.println("");
}
}
客戶端代碼
#include <WiFi.h>
#include <SPI.h>
const char* ssid = "ESP32-Access-Point";
const char* password = "SyedAhmedAli";
void setup() {
Serial.begin(115200);
WiFi.begin(ssid, password);
scanNetworks();
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.println("Connecting to WiFi..");
}
Serial.println("Connected to the WiFi network");
}
void loop() {
}
void scanNetworks() {
// scan for nearby networks:
Serial.println("** Scan Networks **");
byte numSsid = WiFi.scanNetworks();
// print the list of networks seen:
Serial.print("SSID List:");
Serial.println(numSsid);
// print the network number and name for each network found:
for (int thisNet = 0; thisNet<numSsid; thisNet++) {
Serial.print(thisNet);
Serial.print(") Network: ");
Serial.println(WiFi.SSID(thisNet));
}
}
正如@juraj 提到的,在 ESP32 的 Arduino 代碼中,您無法在嘗試連接到 AP 時啟動掃描。
在嘗試連接之前調用scanNetworks()
(在WiFi.begin(ssid, password);
之前)。
要么
在建立與 AP 的連接后調用scanNetworks()
(在while (WiFi.status() != WL_CONNECTED){}
)。
無論如何,在嘗試連接到已知的 WiFi AP 時,我看不到掃描網絡的任何意義。
ESPnow(參見此處的示例)很容易實現 ESP 到 ESP 的通信。 (還有 ESP8266 等)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.