Как реализовать MQTT на ОС Zephyr с сотовыми устройствами?
Я новичок в ОС Zephyr и хотел знать, возможно ли реализовать MQTT в ОС Zephyr с сотовыми устройствами, такими как SIM800 или Quectel BG96, которые обычно работают на UART и поддерживают протокол TCP, который является основой MQTT.
Я просмотрел пример для MQTT, приведенный для Zephyr, который делается по локальной сети, но не смог понять, как реализовать то же самое с сотовым устройством.
1 ответ
Сам MQTT не требует TCP в качестве транспортного уровня, но вам может понадобиться один транспортный уровень. Большая часть реализации полагается на TCP в качестве транспортного уровня, например:
Существует реализация, которая только сериализует и десериализует пакеты, совместимые с MQTT. Но эта реализация основана на стандарте MQTT-SN (сеть датчиков) и требует MQTT-SN-совместимого MQTT-шлюза или MQTT-Broker. Тезисы вы можете передавать по своему усмотрению: как поток UART, IO карты памяти и т. Д.
Кроме того, проверьте, чтобы внедрить и предоставить сокет TCP/IP для клиентской библиотеки MQTT, которая включает спецификацию AT-команд обоих устройств: