Help with RAK4631 going into DFU mode when pluggin in USB on Linux

Please include the following information, in order for us to help you as effectively as possible.

  • What product do you wish to discuss? RAK4631

  • What firmware are you using? (RUI3 or Arduino BSP or other IDE (e.g. STM32CubeIDE)? I have flashed the following firmware: WisBlock/bootloader/RAK4630/Latest/wiscore_rak4631_board_bootloader-0.4.3_s140_6.1.1.zip at master · RAKWireless/WisBlock · GitHub

  • What firmware version? Can it be obtained with AT+VER=?
    it cannot as the serial interface doesn’t seem to respond.

  • Computer OS? Linux

  • What Computer OS version? The latest Raspberry Pi os (6.6.31+rpt-rpi-v8 #1 SMP PREEMPT Debian 1:6.6.31-1+rpt1 (2024-05-29) aarch64 GNU/Linux)

  • How often does the problem happen? Every time

  • How can we replicate the problem?
    I plug in the RAK to a USB port on my Raspberry pi 4. It powers on and appears as /dev/ttyACM0 my user is in the dialout group which has read and write permission to the device in question and I have rebooted it several times in this configuration as well as I have attempted to unplug the usb cable to cycle power. No battery is connected, the device is configured and shows up as a neighbor on my other nodes. when attempting to use the meshtastic CLI I consistently get timeouts and the device mounts /media/username/RAK4361 as a drive. I assume this indicates its booting into DFU mode. I have been able to connect to the device with BLE on my phone and have setup all the basics, node name, mode Router-Client and of course my region US.

  • Provide source code if custom firmware is used or link to example if RAKwireless example code is used.

meshtastic --port /dev/ttyACM0
Traceback (most recent call last):
File “/home/k2exe/.local/bin/meshtastic”, line 8, in
sys.exit(main())
^^^^^^
File “/home/k2exe/.local/pipx/venvs/meshtastic/lib/python3.11/site-packages/meshtastic/main.py”, line 1519, in main
common()
File “/home/k2exe/.local/pipx/venvs/meshtastic/lib/python3.11/site-packages/meshtastic/main.py”, line 1052, in common
client = meshtastic.serial_interface.SerialInterface(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/home/k2exe/.local/pipx/venvs/meshtastic/lib/python3.11/site-packages/meshtastic/serial_interface.py”, line 64, in init
StreamInterface.init(
File “/home/k2exe/.local/pipx/venvs/meshtastic/lib/python3.11/site-packages/meshtastic/stream_interface.py”, line 50, in init
self.connect()
File “/home/k2exe/.local/pipx/venvs/meshtastic/lib/python3.11/site-packages/meshtastic/stream_interface.py”, line 74, in connect
self._waitConnected()
File “/home/k2exe/.local/pipx/venvs/meshtastic/lib/python3.11/site-packages/meshtastic/mesh_interface.py”, line 653, in _waitConnected
raise MeshInterface.MeshInterfaceError(“Timed out waiting for connection completion”)
meshtastic.mesh_interface.MeshInterface.MeshInterfaceError: Timed out waiting for connection completion

I have unmounted the media device as well and have the same issue attempting to connect to the device.

If I try meshtastic --noproto the following output occurs and it hangs like nothing is happening.

meshtastic --noproto
WARNING file:mesh_interface.py _sendToRadio line:737 Not sending packet because protocol use is disabled by noProto
Connected to radio
WARNING file:mesh_interface.py _sendPacket line:579 Not sending packet because protocol use is disabled by noProto

I resolved this issue, after updating the bootloader firmware I needed to flash the meshtastic version again, hence it forcing into DFU mode (silly mistake).

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.