MQTT-SN with LARA-R6, SARA-R5, SARA-R422 and LENA-R8
We are excited to make available support for MQTT Anywhere using a Thingstream SIM and the native MQTT-SN client on the u-blox LARA-R6, SARA-N3, SARA-R5, SARA-R422x and LENA-R8 series modules.
For SARA-N3, firmware version A01.04 or newer is required.
For SARA-R5, "00B" module versions are not supported. "01B" or newer modules with at least firmware version 03.30,A00.01 are needed.
For SARA-R422x, a SARA-R422S or SARA-R422M8S module with firmware version 00.12,A00.00 or newer is needed.
For LENA-R8 series modules firmware version 02.00,A01.40 or newer is recommended.
Please note the following:
MQTT-SN connection duration in seconds will be rounded up to the nearest minute on the broker
The maximum message size that can be sent is 1016 bytes
You can follow the instructions in the AT Commands Manual for how to use the MQTT-SN Client.:
Some simple examples to get you up and running quickly are listed below.
For the fastest network registration on your Thingstream SIM, we suggest to set AT+URAT=9,7. This speeds up the network scan time by disabling NBIoT where there are very few available networks.
Setup
Set ClientID
This needs to be a unique value for your Thingstream domain. We suggest using the Identity value of your SN Thing which you can find on the Thing Details page of the management console.
AT+UMQTTSN=0,"identity:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"Set server IP address and port
AT+UMQTTSN=2,"10.7.0.55",2442Set connection duration (seconds)
AT+UMQTTSN=8,600Save configuration
AT+UMQTTSNNV=2Load configuration
AT+UMQTTSNNV=1
Using the MQTT-SN Client
Once you have completed the MQTT client configuration, you will need to set up the packet switched data configuration to use the TSUDP APN and you can proceed with the MQTT-SN commands.
Connect
AT+UMQTTSNC=1
Expect +UUMQTTSNC: 1,1 as a response to confirm you are connected. You should also see a green dot next to your Thing in the management console.
Register a topic
Before you can publish to a normal topic, you need to register with with the broker and get back a topic ID.
AT+UMQTTSNC=2,"my/publish/topic"
Expect +UUMQTTSNC: 2,1,1 as a response to confirm the registration. The final argument in the response is the topic ID to use when you publish.
Note that topics must be longer than 2 characters. If you try to register a topic that is too short an ID of 0 will be returned indicating an error
AT+UMQTTSNC=2,"my"
Expect +UUMQTTSNC: 2,1,0 as a response to indicate the error in registration.
Publish
AT+UMQTTSNC=4,1,0,0,0,"1","My message"
Expect +UUMQTTSNC: 4,1 as a response to confirm the publish. You will also now see a new device originated message in the activity tab for your Thing in the management console.
To receive messages on your module, you need to subscribe to a topic.
Subscribe
AT+UMQTTSNC=5,1,0,"my/subscribe/topic"
Expect +UUMQTTSNC: 5,1,0,1 as a response to confirm you have subscribed. You will also now see a new subscription in the activity tab for your Thing in the management console.
Now if you publish a message to "my/subscribe/topic " you will see it arrive on the module. You can use the "Send Message" function in the management console to send a test message. Check out the guide here to see how.
Read a received message
When the message arrives, you'll see +UUMQTTSNC: 9,1 in the terminal. You can read the message with the following command.
AT+UMQTTSNC=9,1
In this section
Related content
IoT Communication-as-a-Service plans
Thingstream Management Console
Still need help?
If you need more help or have any questions, please send an email to services-support@u-blox.com.