You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ESP32-DevKitC-32E驱动SIM7080G CAT-M/NB-IoT通信失败解决方案

故障根因

你现在碰到的乱码、通信失败问题,核心原因是ESP32平台错误使用SoftwareSerial和模块通信,其次是接线、供电细节没处理到位,和你之前怀疑的PWRKEY引脚无关——M5Stack出品的SIM7080G单元已经板载自动上电电路,接好供电就会自动启动,不需要额外接PWRKEY控制。

分步修复方案

1. 弃用SoftwareSerial,改用ESP32硬件串口

ESP32自带3路硬件UART,稳定性、波特率支持能力远好于软件模拟串口。EspSoftwareSerial在ESP32上跑115200波特率时,很容易出现采样偏差、丢字节,你日志里那些乱码(比如+C@REG、残缺的ERRO、+CPIN返回乱码)全是软件串口通信错误导致的。
把你之前改的SoftwareSerial相关代码全部删掉,换成硬件串口配置:

// 直接使用ESP32硬件串口1和模块通信,无需引入SoftwareSerial库
#define SerialAT Serial1
// 串口引脚定义,注意RX/TX要交叉接线
#define MODEM_RX_PIN 16  // ESP32的RX引脚,接模块的TX
#define MODEM_TX_PIN 17  // ESP32的TX引脚,接模块的RX

在setup()初始化阶段加入硬件串口启动代码:

void setup() {
  // 初始化调试用串口
  SerialMon.begin(115200);
  // 初始化和模块通信的硬件串口,波特率匹配模块默认值115200
  SerialAT.begin(115200, SERIAL_8N1, MODEM_RX_PIN, MODEM_TX_PIN);

  // 保留你原有的其他初始化逻辑
}

接线注意:必须交叉连接,ESP32的RX接模块TX、ESP32的TX接模块RX,接反会完全收不到有效数据。

2. 排查供电问题

SIM7080G搜网、信号发射时瞬时电流最高可达2A,如果你直接从ESP32 DevKit板载的3.3V引脚取电给模块供电,会因为供电能力不足导致模块反复重启、串口输出乱码:

  • 给SIM7080G单元单独供5V电(该单元支持5V外部输入或独立USB供电),不要靠ESP32的3.3V引脚供电
  • 必须把模块的GND和ESP32的GND接在一起,两边电平参考不一致也会导致通信乱码

3. 复位引脚配置(可选,通信不稳定时再加)

M5Stack的SIM7080G单元引出了RST引脚,你可以选一个ESP32空闲GPIO(比如GPIO4)接模块RST,初始化Modem时传入引脚号即可,TinyGSM会自动控制引脚完成模块复位,不需要操作PWRKEY:

// 定义复位引脚,没接的话直接设为-1
#define MODEM_RST_PIN 4
// 初始化modem实例
TinyGsm modem(SerialAT, MODEM_RST_PIN);

如果没接RST引脚,把MODEM_RST_PIN的值改成-1就能跳过复位控制,不影响基础通信。

4. 修正TinyGSM兼容配置

在代码最开头、引入TinyGSM库之前加下面的宏定义,避免SIM7080适配问题:

#define TINY_GSM_MODEM_SIM7080
#define TINY_GSM_RX_BUFFER 1024 // 增大接收缓冲区,减少丢包
#include <TinyGSM.h>
#include <ArduinoHttpClient.h>
验证方法
  1. 先只接GND、TX、RX三根线,模块单独供5V,上电后等30秒待模块完全启动
  2. 烧录代码后查看调试串口日志,正常情况下不会再出现乱码的Unhandled提示,会依次输出模块型号、SIM卡状态、驻网成功信息
  3. 如果还是收不到有效数据,把模块的TX引脚直接接USB转TTL的RX,开串口助手设115200波特率,看模块是否正常输出AT响应,先排除模块本身硬件故障

不要在ESP32上用SoftwareSerial连接115200波特率的串口设备,90%的类似乱码问题都是软件串口稳定性差导致的。

内容的提问来源于stack exchange,提问作者Ganessa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 21:54:29