Unable to Revert to Arduino BSP -Bootloader issue

Good Day,

I purchased 2 RAK 4631’s with the 19007 boards. I have other working devices but I’m having trouble with the new ones. I use Platformio to upload a sketch so do not want RUI3.

I am assuming the 2 new 4631’s came with RUI3 (solid red light and nothing no file folder appears when clicking the reset button twice). The boards that are working show a file when I click the rest button twice.

I tested in WISTOOLBOX it does recognize the devices.

I’ve tried updating the bootloader but continue to get errors. I’m using a Windows PC. I’ve tried both 4631’s and 3 different cables. I’ve verified the port is correct. I’ve tried the AT+BOOT command before trying to update. I do not have a terminal open (terra term) while trying to update.

Here is the error…

C:>adafruit-nrfutil.exe --verbose dfu serial --package WisCore_RAK4631_Board_Bootloader.zip --port COM13 -b 115200 --singlebank --touch 1200
Upgrading target on COM13 with DFU package C:\WisCore_RAK4631_Board_Bootloader.zip. Flow control is disabled, Single bank, Touch 1200

Failed to upgrade target. Error is: Serial port could not be opened on COM13. Reason: could not open port ‘COM13’: FileNotFoundError(2, ‘The system cannot find the file specified.’, None, 2)
Traceback (most recent call last):
File “dfu\dfu_transport_serial.py”, line 99, in open
File “serial\serialwin32.py”, line 33, in init
File “serial\serialutil.py”, line 244, in init
File “serial\serialwin32.py”, line 64, in open
serial.serialutil.SerialException: could not open port ‘COM13’: FileNotFoundError(2, ‘The system cannot find the file specified.’, None, 2)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “main.py”, line 296, in serial
File “dfu\dfu.py”, line 226, in dfu_send_images
File “dfu\dfu.py”, line 157, in _dfu_send_image
File “dfu\dfu_transport_serial.py”, line 101, in open
nordicsemi.exceptions.NordicSemiException: Serial port could not be opened on COM13. Reason: could not open port ‘COM13’: FileNotFoundError(2, ‘The system cannot find the file specified.’, None, 2)

Possible causes:

  • Selected Bootloader version does not match the one on Bluefruit device.
    Please upgrade the Bootloader or select correct version in Tools->Bootloader.
  • Baud rate must be 115200, Flow control must be off.
  • Target is not in DFU mode. Ground DFU pin and RESET and release both to enter DFU mode.

I appreciate any help. Thanks!

FYI - I also tried this…

C:>adafruit-nrfutil --verbose dfu serial --package rak4631_factory_softdevice.zip -p COM13
Upgrading target on COM13 with DFU package C:\rak4631_factory_softdevice.zip. Flow control is disabled, Dual bank, Touch disabled

Failed to upgrade target. Error is: Serial port could not be opened on COM13. Reason: could not open port ‘COM13’: FileNotFoundError(2, ‘The system cannot find the file specified.’, None, 2)
Traceback (most recent call last):
File “dfu\dfu_transport_serial.py”, line 113, in open
File “serial\serialwin32.py”, line 33, in init
File “serial\serialutil.py”, line 244, in init
File “serial\serialwin32.py”, line 64, in open
serial.serialutil.SerialException: could not open port ‘COM13’: FileNotFoundError(2, ‘The system cannot find the file specified.’, None, 2)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “main.py”, line 296, in serial
File “dfu\dfu.py”, line 229, in dfu_send_images
File “dfu\dfu.py”, line 157, in _dfu_send_image
File “dfu\dfu_transport_serial.py”, line 115, in open
nordicsemi.exceptions.NordicSemiException: Serial port could not be opened on COM13. Reason: could not open port ‘COM13’: FileNotFoundError(2, ‘The system cannot find the file specified.’, None, 2)

Possible causes:

  • Selected Bootloader version does not match the one on Bluefruit device.
    Please upgrade the Bootloader or select correct version in Tools->Bootloader.
  • Baud rate must be 115200, Flow control must be off.
  • Target is not in DFU mode. Ground DFU pin and RESET and release both to enter DFU mode.

Are you sure that COM13 is correct? The error messages point all to a wrong port number.

Do you have any other software running that might occupy the COM port. I experienced that CuraMaker is occupying all COM ports while running, searching for attached 3D printers.

Another point I just saw when looking into your logs.
If your RAK4631 really has RUI3 bootloader, you need to use nrfutil to flash, not adafruit_nrfutil.

Thanks Bernd! This issue is resolved. I did try nrfutil yesterday didn’t have success (it was giving a similar error message). I went back to try it again given your advice.

Here what I learned (it was the same process for 2 RAK 4631’s).

Download nrfutil.exe and rak4631_factory_bootloader.zip and place in the same folder.

Run CMD and navigate to the folder your files are in.

BEFORE executing the nrfutil.exe dfu serial… command go to Terra Terminal and connect. Ensure you have the correct COM port, make sure the Serial Port Speed is 115200 (Setup - Serial Port - Speed). Ensure Local Echo is turned on (Setup - terminal - CHECK ‘local Echo’).

This is where I had an issue… Send AT command AT+BOOT. This will give an error message. Send AT+BOOT again. You will get a second error message. Send it one more time and it booted in DFU mode (you will here it reboot). This process worked on both devices.

After that I still had an issue with the bootloader but now when I double clicked the reset button the file folder appeared. To fix this I replaced those files with the working files I had from another RAK4631 (CURRENT, INDEX & INFO_UF2).

Thanks again!