如何使用蜂窝设备在 Zephyr OS 上实施 MQTT?

How to implement MQTT on Zephyr OS with cellular devices?

我是 Zephyr 的初学者 OS,想知道是否可以在 Zephyr OS 上使用通常在 UART 上工作并支持 TCP 的蜂窝设备(如 SIM800 或 Quectel BG96)实现 MQTT作为 MQTT 基础的协议。

我查看了为 Zephyr 提供的 MQTT 示例,该示例是通过 LAN 完成的,但无法弄清楚如何使用蜂窝设备实现相同的示例。

MQTT 本身不需要 TCP 作为传输层,但您可能需要一个传输层。大多数实现都依赖 TCP 作为传输层,例如:

有一种实现仅序列化和反序列化 MQTT 兼容包。但此实现基于 MQTT-SN(传感器网络)标准,需要符合 MQTT-SN 标准的 MQTT 网关或 MQTT 代理。这些包你可以随心所欲地传输:如 UART 流、内存映射 IO 等

此外,检查以实现并向包装两个设备的 AT 命令规范的 MQTT 客户端库提供 TCP/IP 套接字: