[LPWA]SK Telecom LTE Cat.M1을 사용해 보자!(중급편) — MQTT

Becky
WIZnet
Published in
4 min readMay 27, 2020

발행일: 2020.05.27

개요

MQTT(Message Queueing Telemetry Transport) 는 TCP/IP 기반의 소형 디바이스들에 최적화된 메시징 프로토콜입니다. Publisher — Broker — Subscriber 세 가지의 QoS(Quality of Service)레벨 이루어져 있으며 Publish/Subscribe 형태로 데이터를 송/수신합니다. Publisher와 Subscriber 모두 Broker에 연결해야하며, Broker는 Publisher로부터 받은 메시지를 Topic을 통해 구분하여 해당 Topic을 구독하고 있는 Subscriber에게 전달해줍니다.

SK Telecom에서 서비스하고 있는 LPWA(Low Power Wide Area) LTE Cat.M1을 통해 MQTT 통신을 할 수 있습니다. 이때, Cat.M1 모듈은 Publisher 또는 Subscriber 의 역할을 합니다. Global Cat.M1 모듈사인 Quectel의 BG96 모듈을 이용하여 SKT 인증을 받은 앰투앰넷 사의 모듈을 기반으로 설명 드리겠습니다.

이 외의 모듈사 정보는 다음 링크에서 확인 하실 수 있으며, 기본적으로 모듈을 제어할 때에 UART Interface를 사용하기 때문에 제어 방법은 유사합니다. 단, 제어하기 위한 AT command는 모듈 제조사 별로 상이 합니다.

링크: https://www.sktiot.com/iot/introduction/network/networkCatM1Main1

Broker에 접속하기 위해서 어떻게 해야하나요?

BG96모듈에서는 MQTT에 대한 Command를 제공하고 있습니다. 해당 Command들을 이용하면 쉽게 MQTT 통신을 할 수 있습니다. AT+QMTOPEN Command와 AT+QMTCONN Command를 통해 접속합니다. 이때 username과 password는 옵션파라미터로 Broker에 따라 입력합니다.

AT+QMTOPEN=<tcpconnectID>,“<host_name>”,<port>

AT+QMTCONN=<tcpconnectID>,“<clientID>”[,“<username>”[,“<password>”]]

Broker 로부터 어떻게 메시지를 Subscribe(수신)하나요?

Broker에 접속한 이후 AT+QMTSUB Command를 통해 Subscribe topic을 설정할 경우 해당 Topic에대한 메세지를 계속 수신 할 수 있습니다. Command를 여러번 설정할 경우 여러가지 Topic에 대한 메시지를 수신 할 수 있으며, 더이상 수신을 원하지 않을때는 AT+QMTUNS Command를 통해 해당 Topic을 Unsubscribe 합니다.

AT+QMTSUB=<tcpconnectID>,<msgID>,“<topic1>”,<qos1>

AT+QMTUNS=<tcpconnectID>,<msgID>,“<topic1>”

메시지는 어떻게 Publish(전송)하나요?

메시지는 AT+QMTPUB Command를 통해 publish합니다. <topic>에 publish하고자 하는 topic을 설정해주시면 되며, Command를 전송한 후 전송할 메시지를 입력하고 “CTRL+Z”를 치면 메시지가 전송됩니다. 메시지 입력도중 만약 전송을 취소하고 싶다면 “ESC”를 칩니다.

AT+QMTPUB=<tcpconnectID>,<msgID>,<qos>,<retain>,“<topic>”

마치며 . .

SK Telecom가 서비스 중인 LTE Cat.M1을 이용하여 MQTT Command를 사용 방법을 정리하여 포스팅 하였습니다.

--

--