news 2026/2/4 14:38:35

esp32c3的at固件,开启了tcp服务器和透传模式。设备连接tcp后关闭wifi后没有断开tcp连接

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
esp32c3的at固件,开启了tcp服务器和透传模式。设备连接tcp后关闭wifi后没有断开tcp连接

可以的,ESP-AT 里有两条路能解决你这个“客户端把 Wi-Fi 关了但没走 FIN/RST,服务端连接一直占着”的问题:


方案 A:用TCP Server 空闲超时(应用层“无数据就踢”)

ESP-AT 做 TCP 服务器时,可以设置在一段时间内“没有任何通信数据”就断开该客户端

AT+CIPSTO=<time>
  • <time>:0~7200 秒

  • 机制:ESP32 作为 TCP server 时,会断开“到超时仍未与其通信”的客户端;AT+CIPSTO=0则永不超时(不推荐) (Espressif Docs)

举例(30 秒无数据就断开):

AT+CIPMUX=1 AT+CIPSERVER=1,1234 AT+CIPSTO=30

适合你的“透传模式”:因为你只要让客户端每 10~20 秒发一次很小的心跳数据(比如 1 字节),就能同时实现“活着就不断、死了就踢”。


方案 B:用Socket 层 TCP KeepAlive(真正的 TCP 探测)

ESP-AT 提供了AT+CIPTCPOPT,可以对**每一路 TCP 连接(linkID)**设置 socket 选项,其中<keep_alive>会开启SO_KEEPALIVE,单位秒,范围 0~7200: (Espressif Systems)

AT+CIPTCPOPT=<linkID>,[<so_linger>],[<tcp_nodelay>],[<so_sndtimeo>][,<keep_alive>]

只改 keepalive(其余留空)一般这样写(注意逗号占位):

AT+CIPTCPOPT=0,,,,60

含义:对 linkID=0 的连接开启 keepalive,空闲 60 秒后开始探测。

另外,在 ESP32C3 的 ESP-AT 文档里说明:<keep alive>最终会配置到TCP_KEEPIDLE,并且TCP_KEEPINTVL默认 1 秒、TCP_KEEPCNT默认 3 次。(Espressif Docs)
也就是大致keep_alive + 3*1s这一量级内(对端完全不回应时)就能被判定掉线并释放连接。


你这个场景我建议怎么配

  1. 先开 CIPSTO(最稳、最直观):比如 30~120 秒

  2. 再开 keepalive(兜底,处理“没有业务数据但要检测死链”)

如果你在透传模式里没法随时发 AT 命令:

  • 先在进入透传前把CIPSTO/CIPTCPOPT配好;或

  • 需要时用+++退出透传再配置(ESP-AT 透传支持+++退出)。(Espressif Docs)


小提醒(很关键)

  • TCP keepalive 不是“客户端发心跳包”,而是本端协议栈发探测;对端 Wi-Fi 直接关掉通常不会优雅断开,所以你现在才会看到“连接占用”。keepalive/超时就是用来回收这种半死连接的。

  • 如果你希望“几秒级”断开:CIPSTO更像“无数据就踢”,通常比 TCP keepalive 更快、更可控。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/4 22:25:03

GPT-OSS与Llama3对比评测:开源推理性能谁更强?

GPT-OSS与Llama3对比评测&#xff1a;开源推理性能谁更强&#xff1f; 在当前大模型快速发展的背景下&#xff0c;开源社区涌现出越来越多高性能的推理模型。其中&#xff0c;GPT-OSS 和 Llama3 作为两个备受关注的代表&#xff0c;分别展现了不同的技术路径和性能特点。本文将…

作者头像 李华
网站建设 2026/2/3 20:07:25

面部遮挡影响评估:unet人像卡通化识别能力测试

面部遮挡影响评估&#xff1a;unet人像卡通化识别能力测试 1. 功能概述 本工具基于阿里达摩院 ModelScope 的 DCT-Net 模型&#xff0c;支持将真人照片转换为卡通风格。该模型采用 UNET 架构进行特征提取与重建&#xff0c;在保留人物结构的同时实现艺术化迁移。项目由“科哥…

作者头像 李华
网站建设 2026/2/4 18:46:24

AI办公提效新姿势:Speech Seaco Paraformer会议记录自动化部署教程

AI办公提效新姿势&#xff1a;Speech Seaco Paraformer会议记录自动化部署教程 1. 让会议记录不再痛苦&#xff1a;用AI自动转写语音 你有没有这样的经历&#xff1f;开完一场两小时的会议&#xff0c;桌上堆着录音笔、手机、笔记本&#xff0c;接下来最头疼的不是整理议题&a…

作者头像 李华
网站建设 2026/2/4 7:22:07

Qwen3-Embedding-0.6B实战入门:Jupyter Notebook调用示例详解

Qwen3-Embedding-0.6B实战入门&#xff1a;Jupyter Notebook调用示例详解 1. Qwen3-Embedding-0.6B 介绍 Qwen3 Embedding 模型系列是 Qwen 家族的最新专有模型&#xff0c;专门设计用于文本嵌入和排序任务。基于 Qwen3 系列的密集基础模型&#xff0c;它提供了从 0.6B 到 8B…

作者头像 李华
网站建设 2026/2/3 13:04:10

fft npainting lama一键部署教程:Docker镜像免配置上线

fft npainting lama一键部署教程&#xff1a;Docker镜像免配置上线 1. 快速上手&#xff1a;三步完成图像修复系统部署 你是不是也遇到过这样的问题&#xff1a;想用AI修复图片、移除不需要的物体&#xff0c;但一看到复杂的环境配置就头疼&#xff1f;编译依赖、安装库、调试…

作者头像 李华
网站建设 2026/2/4 6:25:16

GPEN如何集成到Web应用?Flask接口封装实战教程

GPEN如何集成到Web应用&#xff1f;Flask接口封装实战教程 你是否已经用过GPEN人像修复增强模型&#xff0c;但还停留在命令行运行阶段&#xff1f;想不想让你的AI能力被更多人使用&#xff0c;甚至嵌入到网页或App里&#xff1f;今天我们就来干一件更酷的事——把GPEN模型封装…

作者头像 李华