XIAO RA4MI Cannot upload via USB

I have tried to upload the Blink program to a new XIAO RA4MI, but always get the error message “the selected serial port No DFU capable USB device does not exist on your board or your board is not connected”.

The RA4M1 package loaded without problems and the board is recognised on COM7. Board info is also reported back by the IDE as:-
BN: XIAO RA4M1
VID: 2886
PID: 0049
SN: 3015191536313939B8FE33324B572D23

The board runs a program to cycle through the colours on the RGB Led on power up, and the user LED is lit.

I have tried 2 different Windows 10 computers, 2 different USB cables and both the new and older versions of the Arduino IDE. All the above hardware combinations worked fine with a normal Arduino Uno when set to Uno on the same com port. I have also tried both boot workaround methods on the WIKI without success, and resetting with the reset button (which does appear to restart the onboard program)

Any help would be appreciated

Hi there,
and welcome here,
So what happens if you put it in bootloader mode? and try
GL :slight_smile: PJ

I have tried all three methods detailed by Seeed in the Wiki to enter bootloader mode, but still get the same error.
( I have ordered a second board in case this is a hardware fault. The board is ideal for a particular applicarion i have, so I really want to make it work )

Second board is exactly the same. I Tried uploading using the programmer and receied the following error message:
Arduino: 1.8.19 (Windows 10), Board: “XIAO RA4M1”

Sketch uses 38784 bytes (14%) of program storage space. Maximum is 262144 bytes.

Global variables use 5140 bytes (15%) of dynamic memory, leaving 27628 bytes for local variables. Maximum is 32768 bytes.

" Error while uploading: missing ‘program.params.quiet’ configuration parameter "

I understand you’re using Windows, but I had a similar problem in Linux. It turns out that there is a ‘rules.d’ file which contains the Renesas Vendor ID, and Mode values" (as installed by Arduino board manager in file “60-arduino-renesas.rules”):

#Renesas based Arduino Santiago/Portenta H33 bootloader mode UDEV rules
SUBSYSTEMS==“usb”, ATTRS{idVendor}==“2341”, MODE:=“0666”

The following should be in a file called “60-arduino-dfu.rules”:
SUBSYSTEM==“usb”, ATTRS{idVendor}==“2886”, ATTRS{idProduct}==“0049”, MODE=“0666”

After adding that file, it worked perfectly. Not sure what the equivalent file is in Windows, but you should be able to search for the original Arduino-installed contents, and add the lines, or another file containing them.

Finding this took me a couple of days of intense searching, and I still couldn’t get it. My terminal program, Warp Terminal, has an AI function, and it figured it out after several dead ends, in about 20 minutes!

I know this is not a complete answer to your situation, but hopefully it will point you in the right direction. Please post back if you have any luck, so the Windows solution may help the next guy.

Good luck.

Having the same issues! Is there a fix to get the Xiao RA4M1 to work on the Arduino IDE? I get:

Cannot open DFU device 2886:0049 found on devnum 5 (LIBUSB_ERROR_NOT_FOUND)
No DFU capable USB device available
Failed uploading: uploading error: exit status 74

When trying to upload any sketch even in boot load mode!
All suggestions on this page did not work or I did not understand them correctly.

Any help please

Hi there…

So if it goes into bootloader mode and the bootloader is not corrupt,
why not just Drag and drop?

The Seeed XIAO RA4M1 board uses the UF2 bootloader developed by Adafruit, customized for the Renesas RA4M1 chip. It allows:

  • Drag-and-drop programming via USB (mounts as a mass storage device)
  • Arduino/PlatformIO compatibility
  • Double-tap reset to enter bootloader mode

Bootloader Highlights:

Feature Description
Type UF2 Bootloader (mass storage + serial)
Chip Renesas RA4M1 (Arm Cortex-M4, 48 MHz)
Flashing Method UF2 file over USB (drag & drop) or via SWD/debugger
Boot Mode Entered by double-pressing reset or holding BOOT button while powering
Source Based on Adafruit’s UF2 bootloader, maintained in Seeed’s fork or BSP repo

If you’re flashing it from scratch (e.g., after a full erase), you’ll need a debug programmer like a J-Link or DAPLink, and Seeed provides the precompiled .uf2 bootloader file on their GitHub or wiki pages.

HTH
GL :slight_smile: PJ :v:

Summary: In normal situations, use a quick double-tap of RESET to access the UF2/DFU bootloader (the board will show up as a firmware-upload port in Arduino IDE, e.g. “XIAO RA4M1 Firmware Upgrade”​github.com). If that fails (e.g. bootloader is corrupted), use the BOOT button + reset/power to invoke the chip’s internal DFU for emergency recovery.

After a day of trying this is what I did:
Download: https://zadig.akeo.ie/ Wiki: Home · pbatard/libwdi Wiki · GitHub

  1. once opened connect your RA4M1 to usb
  2. In the first drop down in Zadig choose “DFU-RT Port”
  3. You will see a green arrow in the next field choose: “libusbK”
  4. Choose “Replace Driver”

Restart Arduino and everything should work as expected. If not try again but first tap reset two times, then follow step two above.

Hi there,

Will it Enter boot loader mode ?, i.e. does the double reset work? Y/N ?
Start with the basics, instead of the whole kitchen sink approach :grin:

GL :slight_smile: PJ :v:

Thanks, what I did in my last post worked. Now I have to find out how to use the RX9 and TX9 D11, D12 on the back with “DY-SV5W” and GitHub - SnijderC/dyplayer: Abstracton for DY-XXXX mp3 player modules over UART.

If anyone has any ideas, please let me know