LoraWAN Rak3172 FUOTA

Welcome to RAK forum @Emma_B ,

FUOTA is one of the priority in the RUI3 development now but we do still do not have a projected time when to release it.

If you will configure the device to change some operational functionality, you can probably do that via downlink but for updating the whole firmware directly wirelessly, I don’t think you have a way via LoRa. You can do wireless update via different wireless protocol like BLE or Cellular but those features are not in RAK3172 and will require extra module and R&D development.

Thanks for the quick reply, didn’t see this until now.

I’m aware that our team is exploring the possibility of cellular data transmission, but as far as I’m aware that’s in the early stages. Which radio modules currently support FUOTA? Would it be possible to replace the current radio modules with these models? We’re currently stuck having to manually re-flash our boards in the field whenever we need to push an update.

Thanks again for your help!
Emma

We do not have modules at the moment that supports LoRaWAN FUOTA. But if you just need wireless OTA, RAK4630 supports BLE. But that is not really remote since you need to be near the device to do an update.

Hi Carlrowan,

Now do you have any end node that supports LoRa FOTA ?

Thankyou,
Divya M

Hi @DivyaM ,

It is in our roadmap. The LPWAN module that will support LoRaWAN FUOTA will be RAK4630.

Well then RAK4630 Arduino version will not support LoRa FUOTA ?

FUOTA requires dual bank flash memory organization and the FUOTA is basically controlled by the bootloader.

Open Source Arduino BSP is based on single bank flash memory organization and the bootloader needs significant changes to support FUOTA.

Short answer ==> No.

Why not simply support LoRaWAN FUOTA data package forward to the external MCU over RUI3?

I mean, if i’m using RUI3 interface with a companion processor, i would love to be able to receive the firmware chunk over serial line (buffered by the RAK module in some shape and form)

You are correct @gorni.alberto and there are RUI3 users who do that. However, it is only possible if there is an external MCU. We provide the Y-modem protocol we use (not a direct code but can be used as reference).

RAK3172-Ymodem-PC.zip (284.1 KB)

Is that possible (i mean, listen for FUOTA) with the RUI3 AT commands?

The RUI3 AT commands are not directly supporting FUOTA.

The workflow would be:

  • RAK3172 receives downlink packets which contain the new firmware
  • Host MCU saves these packets in its own memory
  • Once all packets have arrived, the host MCU starts flashing the new firmware with the protocol that Carl shared.

But there are a lot of things to be added before it would work.

Can you clarify?

But there are a lot of things to be added before it would work.

Does the RAK3172 AT firmware not pass through enough for this to work with a host mcu?

I cannot clarify.
The flow I wrote is just an idea how it could work. There is no working example available nor did we ever try to upgrade an ESP32 over LoRaWAN through the RAK3172.

Hi Carl,

Could you please tell me if rak3172 supports FUOTA with RUI3?
Thanks.

Hi @jpa ,

FUOTA in RUI3 is still under development. RAK3172 will support it.

FUOTA roadmap stated it would first be available on 4630, but only see references to 3172 so far. Is the 4630 still planned and any updates on progress ?

FUOTA roadmap changed.
We are testing at the moment FUOTA on RAK3172, RAK4630 and RAK11720.
FUOTA requires different bootloader on all the devices, so it is not possible to just switch from RUI3 V4.2.1 to the new version with FUOTA capability.

OK Thanks. Just that we have hundreds of devices to deploy to remote locations and were hoping this may be available soon. Guessing nothing likely in next few months ?

@beegee @carlrowan could you give an update on the ETA for FUOTA on RAK3172?
I see that Carl posted on LinkedIn that you already have tested it internally and it works.
Is there an alpha/beta version available that supports FUOTA? I would be willing to test it.
Thanks

Our team would like to test it as well.