RAK7249 payload

Hi guys,

I have an arduino and a gps module to be interfaced with RAK811. I would get the GPS coordinates with the GPS module and send it to the gateway through RAK811 wisnode. My question is, would I need to encode my GPS data into hexString payload format before giving it to the RAK811? ( as I have noticed that using the AT command, at+send=lora:1:123456, β€˜123456’ is already in the hexString format)?

Moreover, when I received the node data at my RAK7249 gateway, how can I decode it, back to its original data? Btw, i am using the RAK7249 built in server and already change the Decode/Encode format to hexString.

Thank you

You can use HTTP integration and process the data(decode it) somewhere else. Yes it will be good to use HEX data. If you want to use base64 you have to decoded it to hex to use it.

Thanks for the @velev.

On the RAK811, if I want to send the GPS data from my GPS module, I should encode the GPS data into hexString format, then put it the hexString data into the AT command for the loRa transmission. Is this right?

Basically the format of the payload should be hexadecimal, so if you do not use any other characters :slight_smile: you can send it. The easy way is with AT commands the more sophisticated is to use RUI API and to add this in the code.

Noted @velev.

For example:
From my gps module, GPS.altitude=110m;
To send this data, I would convert 110 to hex, which is 79. Using at command, at+send=lora:1:79 ? Then after receiving by the gateway, decode this at an application to 110 again? Is this right?

Sorry I am new to all of this

If you sent at+send=lora:2:0110 you will receive in Built-in server exactly 0110 (0 in front 110 is for make the byte format). If you want to save airtime you can code data to hex( , you will receive it and the have to decode it from hex to what you want in external decoder. In general if you want to send only plain numbers - no need for conversion, just sent it. If you want to sent text, comma separated values etc - you have to code them in hex.
If i was not clear, please feel free to ask.

Alright @velev . So if I want to send the string β€˜LAT’, i need to sent at+send=lora:1:4C4154? Since L=4C, A = 41, and T=54 in Hex. Then will just decode this at the application?

Yes. You will see 4C4154 in payload in application. Then you can make http integration and decode this to text somewhere.

Noted. Thanks @velev. Is there a limit to the number of bytes/hex be sent per transmission?

Yes there is. It depends on many things. So please read this for better understanding https://lora-alliance.org/sites/default/files/2018-04/lorawantm_regional_parameters_v1.1rb_-_final.pdf

Thank you for this @velev. If i may ask, is there a HTTP integration site that would you recommend? I am also planning to get the metadata of all of my node transmissions, is there a way for this? Thank you

Am… i will suggest you to build yours, hosted on AWS or at your local Appache server. There are some services like Thingsboard.io and Ubidots that you can check.
If you want to just view what the HTTP integration will make as output, you can try this https://webhook.site

1 Like

Hello @velev

Can you point me to any tutorial /document for http integration. I want to connect gateway 7258 to thingsboard, it is on private network.

Hi . For now the easyest way :wink: is to use the ChirpStack integration on local deployment https://www.chirpstack.io/guides/thingsboard/
HTTP and and MQTT are …lets say not so easy. You have to make topics matching.
For now no easy way, but we are working on it :slight_smile:

Hi Velev,

Should we install Chripstak on the same thingsboard instance or it need to be separate ?

It is better to use the Docker images and in one instance. If you want to install it alongside ChirpStack, without docker, you have to setup the MQTT brocker ports, GUI port etc.
So better use docker on same instance.

So Docker has everything in it and I just need to add my thingsboard PE license after installation of docker, right ?
Do you foresee any issue with bandwidth or cpu/memory load when we install Chripstack and Thingsboard together , or there is no impact technically ? How much memory, CPU chirstack consume ?

Am if you plan to do this on RPi - it is not good idea for load :slight_smile: Docker images are for comunity edition. I am not familiar with PE one.