I am working with the Rak 4631 dev kit. We have built a C# home rolled MQTT Server, Subscriber and Publisher that can use both the TTN network and the Helium Network.
I understand in most instances when working with LoRa, UNCONFIRMED packets should primarily be used. I understand that these packets just get sent without any requirement for an acknowledgment.
lmh_confirm g_CurrentUnConfirm = LMH_UNCONFIRMED_MSG;
My questions are:
-
Do Join requests need to be acknowledged by the MQTT Server? If so, I assume it needs a receive a base64 message back. Is there a particular json string than needs to be sent back?
-
Do packets sent using LMH_CONFIRMED_MSG need to be acknowledged by the MQTT Server? If so, I assume it needs a receive a base64 message back. Is there a particular json string than needs to be sent back?
Is the WisBlock able to allow a programmer to switch from an UNCONFIRMED packet to a CONFIRMED (that needs an ACK) (every hour/4 hours) to make sure the Server has received messages / is alive?
I’ve been searching and will continue to search for this but the info seems rather sparse / vague / hard to find regarding Helium/MQTT. I will keep on searching and testing this but thought your folks could point me in toe right direction to some documentation somewhere and/or examples?
Thanks folk!