RAK3172 - Boot Mode Problem

Hello there,

I am encountering a problem programming my RAK3172. I am using my STM32 as an FTDI to communicate with the RAK. Here is the connection:

  • (STM32) 3.3 / (RAK) 3.3
  • (STM32) Gnd / (RAK) Gnd
  • (STM32) TX / (RAK) RX-UART2
  • (STM32) RX / (RAK) TX-UART2

When I use the serial port and try the AT+VER=? command, the console prints: RUI_BOOT_0.7_STM32WLE5CC.

I tried to upgrade the firmware by using STMProgrammer because I got some problems by flashing codes, but I cannot establish the connection:

  • Serial Port tty.usbmodem1203 is successfully opened.
  • Port configuration: parity = even, baudrate = 115200, data-bit = 8, stop-bit = 1.0, flow-control = off
  • Timeout error occurred while waiting for acknowledgment.
  • Error: Activating device: KO. Please verify the boot mode configuration and check the serial port configuration. Reset your device and then try again…

I tried putting the BOOT0 in high mode, but the same problem persists. Perhaps someone here has encountered the same difficulty ?

Welcome to RAK forum @Aquatwix ,

With RUI BOOT loader version reply, it means you are in RUI3 bootloader mode. You basically sent AT+BOOT followed by AT+VER.

image

I want to understand what is the issue.

  1. You cannot upload a customer code via Arduino?
  2. You cannot use STM32CubeProgrammer?

With regards to STM32CubeProgrammer,

  • make sure Boot0 is connected to VDD (high level).
  • after connecting Boot0 to VDD, reset the module.
  • ensure that there are no other application using the port you use for the STM32CubeProgrammer.
  • you can try other USB-Serial converter
  • you can try to different USB port or you can try different machine/PC.

Your USB-Serial converter is working as you see the RUI_BOOT version but as far as I know, there are some USB-Serial chips having issues with STM32CubeProgrammer.

Hello @carlrowan, thanks for your answer.

With RUI BOOT loader version reply, it means you are in RUI3 bootloader mode. You basically sent AT+BOOT followed by AT+VER .

That is correct. However, I can’t send any more AT commands. Yesterday, I used AT+DEVEUI, APPKEY, etc. and got OK. Now I get AT not support.

I want to understand what is the issue.

  1. You cannot upload a customer code via Arduino?
  2. You cannot use STM32CubeProgrammer?

Both. When I try to flash the RAK with an exemple from the RAK board librairie (Arduino-Serial), I receive this error :

With regards to STM32CubeProgrammer,

  • make sure Boot0 is connected to VDD (high level).
  • after connecting Boot0 to VDD, reset the module.
  • ensure that there are no other application using the port you use for the STM32CubeProgrammer.
  • you can try other USB-Serial converter
  • you can try to different USB port or you can try different machine/PC.

I’m going to do some tests with another PC. I always get stuck when I try to connect with STM32CubeProgrammer.

When you put AT+BOOT, you can escape it and run normally if you AT+RUN. This will end bootloader mode. Please take note that this is RUI3 bootloader. You have to make the BOOT0 pin floating at this point, else the RUI3 will not run.

BOOT0 pin is only needed on STM32 UART bootloader and needs the STM32CubeProgrammer.

Hi @carlrowan,

I finally added an LED between 3.3V and GND and noticed that the LED was off. The STM32 used for flashing the RAK3172 was faulty. I replaced it, and now it works.

Thank you for your help ! :slight_smile: