Skip to main content

Convert RAK4631-R to RAK4631

The only difference between the RAK4631-R (RUI3) and the RAK4631 (Arduino) is the bootloader it is shipped with - the hardware is the same.

Meshtastic requires the Arduino bootloader on RAK WisBlock nRF52-based boards. The process of converting the bootloader only needs to be performed once.

Here are two ways to flash the bootloader:

USB Device Firmware Upgrade (DFU)

  1. Install Python
  2. Install adafruit-nrfutil
    pip3 install adafruit-nrfutil
  3. Download the required bootloader: WisCore_RAK4631_Board_Bootloader.zip
  4. Connect your RAK device by USB.
  5. Flash the bootloader
    adafruit-nrfutil --verbose dfu serial --package ./WisCore_RAK4631_Board_Bootloader.zip  -p /dev/ttyACM0 -b 115200 --singlebank --touch 1200
    Note: The serial port name (/dev/ttyACM0) may differ depending on your operating system. Make sure to identify the correct port name for your setup.
  6. Continue with the normal flashing instructions

Debugger

This conversion requires the use of either a DAPLink or J-Link. The most reasonably priced and available is the RAKDAP1.

  1. Install Python
  2. Install pyOCD
    pip3 install pyocd
  3. Download the required bootloader: WisCore_RAK4631_Board_Bootloader.hex
  4. Connect the RAKDAP as follows:
  5. Flash the bootloader
    pyocd flash -t nrf52840 .\WisCore_RAK4631_Board_Bootloader.hex
  6. Continue with the normal flashing instructions

Alternate methods of flashing are outlined here.