避雷淘宝某款ESP32S3开发板,WiFi信号极差,疑似没做阻抗匹配
首先看看正常的表现,这是立创的ESP32S3开发板,905这个WiFi信号强度-54dBm。
接着来看看淘宝买的这款ESP32S3开发板,同样的位置905这个WiFi信号强度只有-77dBm,连不上WiFi。
就下面图片这款,淘宝上买了3家同样款式的这个开发板(为什么坚持买这款?因为这款的宽度可以插面包板,其他的都是更宽的插不了面包板,立创的开发板可以插面包板但原价35略贵,要发朋友圈集赞才能19.9优惠买,淘宝这款是25买的),都是这样的信号表现,应该是某个开源方案,没做阻抗匹配,都是ESP32S3R8芯片,都是陶瓷天线(应该不是天线问题,立创的板也是陶瓷天线,信号表现就没问题)
补充一下,淘宝这款开发板还有一个问题,就是出厂固件好像是有问题的,上电会一直复位重启,按住BOOT键后上电再烧录自己的程序就恢复正常了,我买了三家这款板都是有这个问题!
天线微距图
▶电子/单片机技术交流QQ群: 2169025065
▶eeClub-电子工程师社区: https://bbs.eeclub.top/
WiFi扫描与连接的测试代码(Arduino):
#include <Arduino.h>
#include <WiFi.h>
char* ssid = "905"; // 目标WiFi名称
char* password = "blog.zeruns.com"; // 目标WiFi密码
// 将加密类型数值转换为可读字符串
String getEncryptionTypeString(int encryptionType) {
switch (encryptionType) {
case WIFI_AUTH_OPEN:
return "OPEN (无加密)";
case WIFI_AUTH_WEP:
return "WEP";
case WIFI_AUTH_WPA_PSK:
return "WPA-PSK";
case WIFI_AUTH_WPA2_PSK:
return "WPA2-PSK";
case WIFI_AUTH_WPA_WPA2_PSK:
return "WPA/WPA2-PSK (混合)";
case WIFI_AUTH_WPA3_PSK:
return "WPA3-PSK";
case WIFI_AUTH_WPA2_WPA3_PSK:
return "WPA2/WPA3-PSK (混合)";
default:
return "UNKNOWN (未知)";
}
}
// 扫描WiFi并打印详细列表
void scanAndPrintWiFiNetworks() {
Serial.println(F("\n==================== 开始扫描WiFi ===================="));
// 停止当前WiFi连接(确保扫描不受影响)
WiFi.mode(WIFI_STA);
WiFi.disconnect();
delay(100);
// 扫描周边WiFi网络(返回找到的网络数量)
// 参数1:是否扫描隐藏网络;参数2:是否主动扫描(阻塞式,扫描完成再返回)
int networkCount = WiFi.scanNetworks(false, true);
Serial.print(F("扫描完成!共发现 "));
Serial.print(networkCount);
Serial.println(F(" 个可用WiFi网络\n"));
// 打印列表表头
Serial.println(F("序号 | SSID名称 | MAC地址(BSSID) | 加密类型 | 信号强度(dBm)"));
Serial.println(F("-----|------------------------|----------------------|-------------------|-------------"));
// 遍历所有扫描到的网络,打印详细信息
for (int i = 0; i < networkCount; i++) {
// 格式化打印序号(占3位)
Serial.printf("%3d | ", i + 1);
// SSID(最多显示20个字符,超出截断)
String ssid = WiFi.SSID(i);
if (ssid.length() > 20) {
ssid = ssid.substring(0, 17) + "...";
}
Serial.printf("%-20s | ", ssid.c_str());
// MAC地址(BSSID)
Serial.printf("%-18s | ", WiFi.BSSIDstr(i).c_str());
// 加密类型(转换为可读字符串)
String encType = getEncryptionTypeString(WiFi.encryptionType(i));
Serial.printf("%-17s | ", encType.c_str());
// 信号强度(RSSI,单位dBm,数值越大信号越强,通常-30~-100之间)
int rssi = WiFi.RSSI(i);
Serial.printf("%-11d\n", rssi);
}
Serial.println(F("\n==================== WiFi扫描结束 ====================\n"));
// 释放扫描缓存(节省内存)
WiFi.scanDelete();
}
void setup() {
// 初始化串口波特率
Serial.begin(9600);
// 等待串口初始化完成(避免开机串口打印丢失)
delay(1000); // 延长等待时间,确保串口稳定
Serial.println(F("In Setup function"));
// 初始化LED引脚
pinMode(12, OUTPUT);
pinMode(48, OUTPUT);
// ========== 新增:先扫描并打印WiFi列表 ==========
scanAndPrintWiFiNetworks();
// ========== 原有WiFi连接逻辑 ==========
Serial.print(F("Connecting to target WiFi: "));
Serial.println(ssid);
WiFi.begin(ssid, password);
// 轮询等待WiFi连接,超时10秒
uint32_t wifiTimeout = millis();
while (WiFi.status() != WL_CONNECTED && millis() - wifiTimeout < 10000) {
delay(500);
Serial.print(F("."));
}
// 打印WiFi连接结果
if (WiFi.status() == WL_CONNECTED) {
Serial.println(F(""));
Serial.println(F("WiFi connected successfully!"));
Serial.print(F("IP Address: "));
Serial.println(WiFi.localIP());
} else {
Serial.println(F(""));
Serial.println(F("WiFi connect failed, continue running tasks..."));
}
// 创建FreeRTOS任务
xTaskCreate(MyTask1, "Task1", 2048, NULL, 1, NULL);
xTaskCreate(MyTask2, "Task2", 2048, NULL, 2, NULL);
}
void loop() {
}
// 任务1:控制48号引脚LED,0.5秒闪烁一次
static void MyTask1(void* pvParameters) {
while (1) {
Serial.println(F("Task1"));
digitalWrite(48, !digitalRead(48));
vTaskDelay(500 / portTICK_PERIOD_MS); // 延时0.5秒
}
}
// 任务2:控制12号引脚LED,1秒闪烁一次
static void MyTask2(void* pvParameters) {
while (1) {
Serial.println(F("Task2"));
digitalWrite(12, !digitalRead(12));
vTaskDelay(1000 / portTICK_PERIOD_MS); // 延时1秒
}
}2026.1.22 补充1:
尝试更换天线,无明显变化,更换天线π型电路的电感,用2.2nH的,信号提升明显,但还是有点差,不过比原先好太多了,公司WiFi能有-67dBm了,但还是有点差(我之前在公司做的某款板子用的同款陶瓷天线有-55dBm)
2026.1.22 补充2:
突然发现它这个陶瓷天线和IPEX座是直接并联的,没有用空焊盘来分开做选择(正常一般这么做的),插上外置天线后同一个WiFi信号立马从-67dBm提升到-52dBm,离谱
还有π型电路的器件摆放和走线也非常不合理
2026.1.24 补充3:
插上外置天线,也连不上WiFi,创建AP热点用手机也搜不到信号(同样代码立创的板没问题),疑似因为阻抗不连续导致发射的信号全反射回去了,或者因为反射的信号造成射频发射部分损坏了...
这种设计都能量产出来卖,世界真是个巨大的草台班子啊...
再补充一下,这块板的ESP32S3芯片对比正常的板子发热略大了点,下图是两块板子AP模式(WiFi热点)下运行5分钟后的热成像图,左边是立创的板子,ESP芯片温度48℃,右边是淘宝那款板子,ESP芯片温度60.2℃,明显高不少,应该是射频部分出问题了,功耗也高了0.4瓦左右。
推荐阅读
- 高性价比和便宜的VPS/云服务器推荐: https://blog.vpszj.cn/archives/41.html
- Discourse论坛搭建教程,零基础部署Discourse开源社区论坛网站:https://blog.zeruns.com/archives/919.html
- 【开源】24V3A反激式开关电源(基于UC3842,含电路和变压器参数计算过程):https://blog.zeruns.com/archives/910.html
- 基于STM32的同步整流Buck-Boost数字电源 开源: https://blog.zeruns.com/archives/791.html
- 我的世界一键快速开服教程,支持各个MC版本(forge、fabric、paper、基岩 等等):https://blog.zeruns.com/archives/923.html
当前页面是本站的「Google AMP」版。查看和发表评论请点击:完整版 »