注释
您是否尝试过通过 SD 卡或 USB/串行端口运行相同的文件?那会帮助我调试。 |
从 USB 工作正常。 |
我今天在类似的事情上花了几个小时,我在 delphi 中编写了自己的程序,用于通过 telnet 进行通信。我每 15 毫秒发送一次 gcode 行(每秒大约 65 行)(BLOCK_BUFFER_SIZE = 1024,有一些代码更改 uint8_t!= Uint16_t)。与 esp 的通信从几分钟到一个小时不等,而且… ping 是 esp,通信消失了,大约 10 秒后返回了对 usb/uart 的响应。结果是: 在 #define WIFI_CLIENT_MAX_WRITE_RETRY (1) 一切都很好,我可以更快地发送 gcode: D 命令 我的软件看起来像这样: |
@rafik84毫无疑问,您发送速度更快,因为减少重试/超时次数会减少传输时间,但数据完整性呢?因为如果出现问题就会重试,忽略它可能会产生后果。 问题:你们是否进行数据完整性检查以验证所有内容都已收到并与已发送的相同? |
是的,我通过 N0000 控制线 gcode .. X 添加到发送线并且 everiting 很好,减少重试次数它可能从 ESP 丢失数据接收但是。我作为 AP 连接到 esp 然后我在 1ms < 3ms 之间有 ping(当我在站模式下连接时,最糟糕的是,ping 是高到稳定的 TCP/IP 通信),我使用 2 个 telnet 服务器/在不同的端口和任务(我有 4 个任务线到 mcp23017,rs485 控制 Vfd,串行从这段代码,最后到 2 个 tcpServer),一个发送 gcode 行并从解析器接收 OK(这工作正常)和 2 个接收/发送命令系统(报告,ovr)到分离层系统/gcode 解析器,在报告我总是控制缓冲区规划器的状态,当我失去来自 report_real 的响应时,不要越过 < 100 |
最新固件版本。
问题是不变的。
我在我的激光二极管 CNC 上使用了斑马铣测试,程序测试了 bCNC(Telnet)、laserGrbl(telnet)、UGS(Windows 虚拟端口 – 非常慢),cnc 在 9502 线上停止。
https://drive.google.com/file/d/1_zLdfeZSLuprQjtclKEfZDW82WkD_uqC/view?usp=sharing