+ERRNO:0x70 这个在 ESP-AT 里本质上是底层 socket/lwIP 返回的错误,不是单纯 AT 语法错误;0x70 = 112,对应 EHOSTDOWN,意思就是目标主机/链路当前不可达。也就是你在建 UDP 的那一刻,网络栈判断对端或路由还没准备好,所以会出现"有时成功,有时失败"。
结合你这个现象,最可能不是 UDP 本身有问题,而是时序/网络状态问题 :比如还没真正到 WIFI GOT IP 就发 AT+CIPSTART,刚连上 AP 但 ARP/DNS/路由还没稳定,对端实际不在线,或者前一次 UDP/socket 还没完全释放就马上重建。ESP-AT 文档也说明了网络连接相关状态和 WIFI GOT IP 事件。
你可以直接这么处理:
-
必须等
WIFI GOT IP后,再延时 200~500 ms 再建 UDP。 -
先用固定 IP 测试,先别用域名,排除 DNS 问题。
-
失败后先
AT+CIPCLOSE,再隔 500 ms~1 s 重试。 -
检查路由器兼容性、RSSI、电源是否稳。
-
尽量升级到较新的 ESP32-C2 对应 ESP-AT 固件。
一句话判断:0x70 就是"当下网络不可达",重点查建连时机、Wi-Fi 是否真正稳定、以及前后 socket 重建节奏。