Air601 UDP通信上报数据只有很小概率可以成功,
同样的UDP代码,在air780模块上通信正常
Air601 UDP通信改为TCP通信,数据包不会丢失,改为UDP后很小概率可以成功。外网服务器和内网服务器都是一样的情况。
UDP小概率丢包可以,内网中也不应该小概率不丢包呀
local txqueue = {}
local taskName = "SOCKET"
sysplus.taskInitEx(sockettask, taskName, netCB, taskName, txqueue)
while 1 do
local result, tp, data = sys.waitUntil("sockettopic", 10000)
if tp == "uplink" then
table.insert(txqueue, data)
sys_send(taskName, socket.EVENT, 0)
log.info("socket", "发送数据", data)
elseif tp == "downlink" then
elseif tp == "connect" then
log.info("连接成功")
local tx = {DEVID = ID}
sys.publish("sockettopic", "uplink", json.encode(tx, "2f"))
end
end
[2024-03-26 14:56:03.153] I/user.socket 发送数据 {"DEVID":"C2C67DAB9A"}
[2024-03-26 14:56:03.153] I/user.libnet wait true true nil
[2024-03-26 14:56:03.153] I/user.libnet 发送数据的结果 true false
LuatOS-SoC_V1022_AIR601.soc