Hello everyone.
I am trying to connect my GPS Oyster LoRaWan tracker to the chirpstack server. I did install server on raseberrypi4 also as i have separate gateway (raspberry pi 3 with RAK 2245 hat). everything works fine on TTN however with Chirspastack I did encounter difficulties- my oysters do not provide correct data and produce error message. I read on the site it might be config issue however i cannot find which one . Thank you for your help
I found the reason on why I got error message and fixed it , however the gps data is still incorrect. Anyone might know the reason why???
Hi @serg,
The Lat and Long values in the above picture are from the gateway and not from the end-device.
If the end-device is capable of sending the lat and Long values as LoRaWAN uplink, you will find it in “objectJSON”.
As I could see on the picture that “objectJSON” is empty, I would expect that you are not returning a valid object from Decode function.
BR,
Chay
Hi Chay,
Thank you for you response. I left JSON object empty as I am using base64 encoded instead as I do not have a lot of coding experience. So, to get the value from the end-device,do I have to write the code or can I do something else?
Hi @serg,
In general, I request the device manufacturer for a payload decoder, if it is not available, I will develop it after looking at the payload description.
In your case, if necessary, I can provide you a function that converts uplink from base 64 to hexadecimal bytes. And you need to program further in Javascript to read out the Lat and Long values from the end-device.
BR,
Chay
Chay,
If you can it would be great.
Thank you so much !
BR,
Serg.
Chay,
If you can it would be great.
Thank you so much !
BR,
Serg.
HI Chay,
I found a documentation with code example
put it into my device profile under codec custom javascript functions. however my data is still emty
Any suggestions?
Thank you
Hi @serg,
Your decoder does return an empty object. Reason for this is the name of the function. Chirpstack Decoder should have " function Decode(fPort, bytes)" in it.
Please rename your function with Decode(fPort, bytes). If this doesn’t work well, include the below lines after your decoder function.
function Decode(fPort, bytes){
return Decoder(bytes, port)
}
Please let me know, if it worked?
BR,
Chay
Hi Chay , thank you for you advise,
after playing around with the code a little , I made it work.
Hi Serg, what changes did you make to the DIgital Matter example code to integrate the Oyster to Chirpstack properly?
Thank you
Kind regards
Advaith