Module for LoRaWAN and P2P

Hey guys,
For an application i need to communicate with a network server and also integrate a peer to peer solution to another End Node to send simple commands to this end node (light on/off,…). This communication to the other End Node has to be independet from the network (so it doesn’t need to be direct peer-to-peer, also via the gateway is possible - but not via the network).

I’m planning to use a RN2483 in both end nodes and a Arduino Nano IOT but didn’t find a lot information about this use case, is this actually possible in my setup?

thanks a lot

How good is your C and LoRaWAN knowledge? What is the gateway you are hoping to use?

So that’s two end nodes and a spare Nano IOT - three devices - which ones are you proposing to use?

I doubt the RN2483 will allow you to save state enough for you to switch to P2P. And the Nano IOT will need a LoRa radio to participate in this mix.

I’d class this as hard but not impossible if you have a few years doing this stuff regularly. Otherwise having two RN2483’s wired together so one can do LW and one can do P2P and they communicate between themselves.

Others can comment in detail, but I believe the RN2483’s firmware uses a fairly old version of LW and there are other modules on the market you can use that provide a similar AT command interface that cost less & are more up to date.

Or, if you want to be an early adopter, you could try the new LW Relay functionality.

How good is your C and LoRaWAN knowledge? What is the gateway you are hoping to use?

I did already some LoRa Thing, but new in LoRaWAN. Gateway is the Mikrotik LTAP LR8.

I think the rest was a little bit confusing sorry:
So every End Node is a Arduino Nano IOT with the RN2483 connected via UART. Actually this project maybe is getting used by a company, so i would like to use modules with CE, and a quite good availability threw Distributors (Mouser and so on). And therefore modules are not so easy to find ;).

Thanks for the Relay input - i’m going to look into it!

Additional question, why does it have to be independent of LW if it’s OK to go via the gateway?

I need the possibility to set some alarm flags (Warning light, sirene, or something like this) independent from an internet connection. If the measured values on the network server are late it’s no big deal - but this thing have to work also in case of network problems.

The second LoRa Modul would be a solution, but i would prefer to do everything with 1 module due to energy consumption.

Take a look at the following LoRa Alliance technical recommendation.

As far as I am aware there is no publicly available implementation of this recommendation.
But, you can try to implement it using an existing open source LoRaWAN stack.

For example Semtech LBM stack which already supports the Relay functionality. Relay functionality is available under branch feature/relay

While completely untested, I expect that this has chance of success by using RadioLib. But, then you would need a radio that is connected with SPI, you cannot use it with UART. So if you can find a microcontroller with direct access to e.g. an SX1262, I think you could get somewhere with reasonable effort.

Not a great fit for LoRaWAN as you still suffer lost packets due to RF interference. Lora with good protocol will be a much more robust solution.

Search wio-e5 or rak3172. Both readily available at for instance Digikey and with CE, FCC and other certifications. The wio-e5 has a sleep current of a few microamps so a second module should not hurt too much.

sounds interesting - will check on this also!

So - you think like this it’s possible to turn of the LoRaWAN and change the mode to P2P, am i right?

So, just that i get you - you would use two modules. One for the LoRaWAN part (send data to a server for longterm analysis) and one LoRa Module to connect the End node with the Alarm End Node?

thanks to all!

Yes. One module for LoRaWAN and one for Lora point to point. Trying to use one module might work but will be complex and result in a lot of development time to get a reliable solution. That is if you are using certified modules. With Radiolib you might be able to do so, however the hardware will not be certified in any way and certification is expensive…

It’s not really ‘turning off’, but more like ‘sending a frame with the LoRaWAN protocol using a LoRaWAN session in memory’ or ‘sending just a LoRa frame’, but yes, your idea is correct.

However, as @kersing says:

so if you care about that, his suggestion looks much more fitting.

Perfect - Thanks a lot for the input! Really great community here, it would have taken me hours to find out that the thing i thought is easy isn’t easy at all…

So, one short (but surely not last) question: So you would prefer one of this thow modules? I searched a little bit and at the first view specially the RAK3172 isn’t really used just as a modem?

Both modules can be programmed and don’t require a separate controller. However both also support AT command based serial interfaces.
The firmware for the RAK module can be reprogrammed if required, then Seeed module is delivered with the AT firmware and once you remove (requires unlocking the flash so not happening by accident) the firmware it is gone.

The Seeed module seems to be easier to obtain, available at both large distributors and ‘local’ suppliers (in the EU).
Because of the availability I’ve got more Seeed based hardware around…

Thanks for the input again! So, i’m just not really clear about the AT commands - are they standardized and the same for all Module with the LoRaWAN Stack? So are there libraries available for the AT ccommands and can all modules understand the same AT commands?

Thanks for the input!

Nope, no standard and there are variations but they mostly say the same thing so it’s clear what you are requesting - and they both have their own Arduino libraries to take care of the abstraction but no, they aren’t standardised.

If you use the Seeed LoRa-E5 you can put the AT code back on if you have the relevant injections, diplomatic passport & are prepared to spend time with STM32CubeIDE.