Unable to upload program with self-compiled bootloader

I am using a OM Science Dband V2 board (based on nRF525832). Since the board itself does not officially supports programming with Arduino, I decided to flash a customized bootloader following this blog: How to Flash the Arduino Bootloader to a Custom nRF52832 Design | by Eric Pietrowicz | Medium

I have strictly followed the steps in the blog, including editing the DFU_SERIAL_STARTUP_INTERVAL parameter to 20 seconds, and compiled the edited code under Ubuntu 24.04.2 LTS running on VMWare. Then I flashed the "feather_nrf52832_bootloader-0.9.2-12-ga48e944-dirty_s132_6.1.1.hex" into the board with a JTAG debugger through nRF programmer.

Then I tried to flash the following Arduino code (on PlatformIO):

#include <Arduino.h>

void setup() {
  // put your setup code here, to run once:
  Serial.setPins(11,12);
  Serial.begin(115200);
}

void loop() {
  // put your main code here, to run repeatedly:
}

But the flash is unsuccessful, with error message:

Failed to upgrade target. Error is: No data received on serial port. Not able to proceed.
Timed out waiting for acknowledgement from device.
Traceback (most recent call last):
  File "C:\Users\Kevin\.platformio\packages\tool-adafruit-nrfutil\site-packages\nordicsemi\__main__.py", line 296, in serial
    dfu.dfu_send_images()
  File "C:\Users\Kevin\.platformio\packages\tool-adafruit-nrfutil\site-packages\nordicsemi\dfu\dfu.py", line 235, in dfu_send_images
    self._dfu_send_image(HexType.APPLICATION, self.manifest.application)
  File "C:\Users\Kevin\.platformio\packages\tool-adafruit-nrfutil\site-packages\nordicsemi\dfu\dfu.py", line 199, in _dfu_send_image
    self.dfu_transport.send_start_dfu(program_mode, softdevice_size, bootloader_size,
  File "C:\Users\Kevin\.platformio\packages\tool-adafruit-nrfutil\site-packages\nordicsemi\dfu\dfu_transport_serial.py", line 179, in send_start_dfu
    self.send_packet(packet)
  File "C:\Users\Kevin\.platformio\packages\tool-adafruit-nrfutil\site-packages\nordicsemi\dfu\dfu_transport_serial.py", line 243, in send_packet
    ack = self.get_ack_nr()
          ^^^^^^^^^^^^^^^^^
  File "C:\Users\Kevin\.platformio\packages\tool-adafruit-nrfutil\site-packages\nordicsemi\dfu\dfu_transport_serial.py", line 282, in get_ack_nr
    raise NordicSemiException("No data received on serial port. Not able to proceed.")
nordicsemi.exceptions.NordicSemiException: No data received on serial port. Not able to proceed.

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.

I am sure that all edition made on the bootloader source codes are correct.

Development Environment:
CPU: i7-14650HX
RAM: 64GB DDR5
Bootloader compilation: Ubuntu 24.02.2 LTS on VMWare
Arduino development: Windows 11 Pro Workstation

Could anyone please help me?