news 2026/5/22 5:16:30

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/5/20 14:32:59

verl训练效率对比:相同硬件下吞吐量实测数据

verl训练效率对比&#xff1a;相同硬件下吞吐量实测数据 1. verl 介绍 verl 是一个灵活、高效且可用于生产环境的强化学习&#xff08;RL&#xff09;训练框架&#xff0c;专为大型语言模型&#xff08;LLMs&#xff09;的后训练设计。它由字节跳动火山引擎团队开源&#xff…

作者头像 李华
网站建设 2026/5/22 11:30:21

短视频营销全能助手!开源AI智能获客系统源码功能

温馨提示&#xff1a;文末有资源获取方式 多平台账号统一管理功能 该系统支持同时管理多个主流短视频平台账号&#xff0c;包括抖音、今日头条、西瓜视频、快手、小红书、视频号、B站和百家号等。用户可以在单一界面中集中操控所有账号&#xff0c;实现内容发布、数据监控和互动…

作者头像 李华
网站建设 2026/5/21 12:13:11

GPT-OSS部署自动化:CI/CD集成脚本分享

GPT-OSS部署自动化&#xff1a;CI/CD集成脚本分享 1. 引言&#xff1a;为什么需要自动化部署GPT-OSS&#xff1f; 你有没有遇到过这样的场景&#xff1a;每次更新模型配置、调整推理参数&#xff0c;或者切换环境时&#xff0c;都要手动执行一堆命令、检查依赖、重启服务&…

作者头像 李华
网站建设 2026/5/19 19:14:26

Live Avatar性能监控实践:GPU日志记录与分析方法

Live Avatar性能监控实践&#xff1a;GPU日志记录与分析方法 1. 引言&#xff1a;Live Avatar数字人模型的显存挑战 Live Avatar是由阿里联合高校开源的一款先进数字人生成模型&#xff0c;能够基于文本、图像和音频输入生成高质量的动态人物视频。该模型在影视制作、虚拟主播…

作者头像 李华
网站建设 2026/5/21 5:23:52

CosyVoice2-0.5B支持哪些语言?多语种合成实测指南

CosyVoice2-0.5B支持哪些语言&#xff1f;多语种合成实测指南 1. 开篇&#xff1a;为什么你该关心它的语言能力&#xff1f; 你有没有试过——用一段3秒的中文录音&#xff0c;让AI说出流利的日文问候&#xff1f;或者录下自己说“你好”的声音&#xff0c;再让它用同一音色念…

作者头像 李华
网站建设 2026/5/21 11:35:18

Paraformer-large离线部署安全吗?数据隐私保护实战分析

Paraformer-large离线部署安全吗&#xff1f;数据隐私保护实战分析 1. 离线语音识别的隐私优势&#xff1a;为什么选择本地部署&#xff1f; 在当前AI服务普遍依赖云端处理的大背景下&#xff0c;语音识别这类涉及大量个人或敏感信息的技术应用&#xff0c;正面临越来越严峻的…

作者头像 李华