我正在使用网络启用设备(主要是电话)来控制机器人的esp8266库。用户连接到在esp上运行的服务器,并且库使用WebSockets发送有关按钮,操纵杆和/或其他任何内容的更新。
问题在于数据开始延迟,有时消息接收很晚,因为它使用TCP(如果只是不传递那些消息,它将更好地工作)。另外,由于esp的内存不足,因此可能导致崩溃。
在不接收旧邮件的情况下,我如何优化它以使其尽快更新?
像WebRTC这样的东西会更好吗?或者还有其他更适合此目的的东西吗?使用UDP的WebSocket似乎是一个更好的选择,但是显然浏览器无法发送UDP?
应该研究/使用哪种东西?
如果可以的话,这是指向我的library的链接。
感谢您的帮助。
答案 0 :(得分:0)
您需要找到消息延迟的原因。网络不稳定,或者您发送的小消息太多,或者您没有正确使用arduinoWebSockets库?
如果以上所有方法均无济于事,则您不能选择使用网络浏览器,并且需要为手机创建应用程序,以将原始UDP与服务器通信。 除了WebRTC之外,浏览器无法执行UDP,但是在您的情况下,您不能使用WebRTC,因为它根本不会在内存不足的esp上运行。 WebRTC是资源浪费;不适用于DSP。