RAK4630 issue with flash bootloader

Issue: RAK4630 unable to flash WisCore_RAK4631_Board_Bootloader.zip

Setup: RAK4630 with WisBlock Base RAK19007

Details:

  • RAK4630 is detected by mac, linux, windows
  • double pressing the reset, it doesn’t show disk drive
  • For the first time, I was able to flash the device using this command without any problems.: ./adafruit-nrfutil --verbose dfu serial --package rui3_nrf52840_bootloader_latest.zip --port /dev/cu.usbmodem1101 -b 115200 --singlebank --touch 1200
  • then installed Firmware over WisToolBox (version is now: AT+VER=RUI_4.1.0_RAK4631)

My goal is flash Meshtastic or Meshcore firmware on this device

Question:
How can flash bootloader version WisCore_RAK4631_Board_Bootloader.zip ?

How I’m trying now flashing:

  1. connect WisBlock over USB and i see /dev/cu.usbmodemF8D312EC0ED91
  2. I go to WisToolBox and enter the command: AT+BOOT
  3. The device tells me that it disconnected and reconnected.
  4. And i see now again the device /dev/cu.usbmodemF8D312EC0ED91
  5. then I’ll call the command: ./adafruit-nrfutil-macos --verbose dfu serial --package WisCore_RAK4631_Board_Bootloader.zip -p /dev/cu.usbmodemF8D312EC0ED91 -b 115200 --singlebank
  6. After a moment, the following list displays
    Upgrading target on /dev/cu.usbmodemF8D312EC0ED91 with DFU package /Users/donald/Downloads/RAK/WisCore_RAK4631_Board_Bootloader.zip. Flow control is disabled, Single bank, Touch disabled
    Opened serial port /dev/cu.usbmodemF8D312EC0ED91
    Starting DFU upgrade of type 3, SoftDevice size: 151016, bootloader size: 39000, application size: 0
    Sending DFU start packet
    Timed out waiting for acknowledgement from device.
    Sending DFU init packet

Failed to upgrade target. Error is: Attempting to use a port that is not open
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 203, in _dfu_send_image
File “dfu/dfu_transport_serial.py”, line 155, in send_init_packet
File “dfu/dfu_transport_serial.py”, line 241, in send_packet
File “serial/serialposix.py”, line 615, in write
serial.serialutil.PortNotOpenError: Attempting to use a port that is not open

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.

Welcome to RAK forum @Donald ,

It appears that the RAK4631 module you have is actually a RAK4631-R variant. It will not work in meshtastic and double click on reset will have no effect since it has different bootloader. You have to convert it first.

You can follow these steps to convert it via USB connection. Else you will need external tool like Jlink or RAKDAP1 to upload the bootloader.