RAK4630 using ble_ota_dfu Problem

Hello, I am using the core of RAK4630 and using the sample code ble_ota_dfu (without making any modifications). The tested mobile phone is iPhone 16 and the software is DFU. After burning the ble_ota_dfu code onto RAK4630, the blue LED flashes. By using the DFU software to perform Bluetooth OTA on RAK4630, the DFU software page shows an error as shown in the figure. The blue LED goes out and the green LED has a breathing light effect.


image

Firmware update over BLE can fail (e.g. connection problem) and then you are stuck in the bootloader.
You have to flash a firmware over USB again.

RAK4631 has a single memory bank system. If an update over BLE fails, the device is stuck without firmware and stays in bootloader mode.

Yes, every time the firmware update via Bluetooth OTA fails, one must use USB to reflash the ble_ota_dfu code. But my problem is that every time the firmware update via Bluetooth OTA fails at the same location.

What iPhone app are you using for the update?
It might be required to adjust some settings, but I am not familiar with iPhone.
On Android with the nRFConnect app I have to change MBR size to 4096 and disable “Packets receipt notification” option.

After modifying the PRN, OTA can be carried out. However, the OTA (Over-the-Air) speed is relatively slow.