Ping packet from a Multitech mDot


I’m running an application using a Multitech mDot module with its AT firmware to send LoRa packets. It’s set up and working very well with LoRaServer, this is a wonderful project!

But I do have one difficulty, the mDot’s AT firmware has an AT command called AT+PING which I use to check if the module is joined to the network and can transmit packets. However when I send a ping, the LoRaServer application server software never responds with a ‘pong’. When I use it with the built-in LoRaWAN server on a Multitech gateway, it works fine though. But on LoRaServer, I don’t even see it as an application payload in the UI or MQTT, it only shows it as a raw LoRaWAN event.

Is this because that ping is something proprietary to Multitech and not part of the LoRaWAN standard?

The reason I use this, is to check whether I need to do a JOIN request or not to the gateway. If for some reason the LoRaServer DB gets wiped or needs to talk to another instance or loses its keys. This shouldn’t happen, but I want I want to make sure I have enough information to know when to do a “manual” JOIN from the device if needed.

But maybe there is some better way to accomplish that? Any suggestions are appreciated. Thank you!

I don’t know, but you could be right this is a proprietary payload. Have you checked the mDot manual about this ping command? An other option would be to send a confirmed uplink as LoRa Server will reply to it with an ACK.

You should have a command call LinkCheckReq maybe?

I’ve been using RisingHF modules and you can use the request to check if the signal is strong or even if your are joined to the net:

You’re right, this would be even better to use :slight_smile:

Thank you both, I have checked the mDot manual as well as the source code (they made it open source which is nice) but really could not find much about whether it is standard or not.

Does LinkCheckReq need to be decrypted be be used? If so, that would work nicely; I’d prefer that because then I could tell if the keys are valid or not and if I need to do a JOIN request.

ACK could probably work too. Thank you again for the suggestions.