Title: Arduino Bootloader HEX (Arch Mix) not working on i.MX RT1050 EVK (RT1052 MCU)

Hi,

I am trying to use the Arduino bootloader provided for the Seeeduino Arch Mix (i.MX RT1052) on an NXP i.MX RT1050 EVK board, since both boards use the same MCU (RT1052).

What I tried:

  • Converted RT1050 EVK to QSPI (IS25WP064A) by modifying resistors.

  • Flashed the prebuilt Arduino bootloader HEX file (from Arch Mix) into QSPI flash at address 0x60000000.

  • Tried flashing using:

    • NXP MCU Boot Utility

    • J-Flash (with external QSPI loader)

Flashing completes successfully.

Expected behavior:
After switching to QSPI boot and resetting the board, the Arduino bootloader should run and the USB (OTG) should enumerate as a CDC device.

Actual behavior:

My question:

  • Is the Arch Mix Arduino bootloader HEX directly compatible with RT1050 EVK?

  • Even though both use RT1052, are there any board-specific dependencies (USB pins, clock, PHY, etc.) that prevent it from running?

  • Do we need to modify or rebuild the bootloader specifically for RT1050 EVK?

Any guidance would be helpful.

Thanks!

Hi there,

SO, I would not expect the prebuilt Arch Mix Arduino bootloader HEX to be directly compatible with the RT1050 EVK. Even though both use the i.MX RT105x family, the Arch Mix bootloader is part of a BSP :backhand_index_pointing_left: that is specifically for Arch Mix, and its source includes board-specific pin mux and FlexSPI configuration.
The RT1050 EVK also has different default boot hardware: it normally ships with HyperFlash, and QSPI boot requires board modifications and the correct boot switch settings. So writing the HEX successfully to QSPI does not mean the EVK can execute it correctly.
The safest conclusion is that you need to rebuild or port the bootloader for the RT1050 EVK, using EVK-specific pin mux, clocks, FlexSPI flash settings, and USB device setup.

HTH
GL :slight_smile: PJ :v:

The USB not enumerating is exactly what I’d expect when the binary is board-wrong, not just MCU-right.