MCX E31B stuck in ISP mode after blhost flash via USB

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

MCX E31B stuck in ISP mode after blhost flash via USB

Jump to solution
1,617 Views
blessyvinolin
Contributor II

I am using the FRDM-MCXE31B and I am unable to exit ISP mode after flashing my application via USB using blhost. Even after a successful write and a reset command, the device continues to enumerate as HID 1FC9:0022.

Steps taken:

  1. Put board into ISP mode via USB.

  2. Erased flash: blhost -u 0x1FC9,0x0022 -- flash-erase-all (Success).

  3. Generated a stripped binary (24KB) to ensure no large memory gaps.

  4. Flashed the image to address 0x0: blhost -u 0x1FC9,0x0022 -- write-memory 0x0 led_blinky.bin (Success).

  5. Issued reset: blhost -u 0x1FC9,0x0022 -- reset.

The Issue: Despite the reset and power cycling the board with the ISP jumper/switch removed, the board does not boot the application. It immediately returns to the ROM Bootloader. Steps to get out of ISP mode

Screenshot from 2026-02-10 17-26-25.png

Binary Header Check: A hexdump of the first 16 bytes shows: a5 5a a5 5a 01 00 00 00 00 00 00 00 00 10 40 00 The entry point in the ELF is 0x402231.

 

0 Kudos
Reply
1 Solution
1,539 Views
marek-trmac
NXP Employee
NXP Employee

Hi @blessyvinolin ,

from the screenshot I can see you are installing some old debug probe firmware. I suppose LinkServer 25.12 is available also for Linux. Can you confirm whether you can install and use it?

The old firmware versions are not compatible with the board you have.

Regards,
Marek


NOTE: If you find the answer useful, kindly click on [ACCEPT AS SOLUTION] button

View solution in original post

6 Replies
1,592 Views
marek-trmac
NXP Employee
NXP Employee

Hi @blessyvinolin ,

there is ITCM RAM at address 0.  I suppose after the reset, the RAM is cleared. Consider to write the application into the FLASH.

Here you can find workflow how to do it in Secure Provisioning tool: Processor-specific workflows — Secure Provisioning Tool 25.12

Also please mind, the bootloader on FRDM-MCXE31B is located in flash, not in ROM. 

Also, MCXE3x processor does not contain USB. You communicate with onboard debugger. Not sure what you are trying?

0x1FC9,0x0022 is an identification of LPC55S16 processor used for the onboard debugger.

 

 

Regards,
Marek


NOTE: If you find the answer useful, kindly click on [ACCEPT AS SOLUTION] button
1,553 Views
marek-trmac
NXP Employee
NXP Employee

Hi @blessyvinolin ,

to restore MCU-Link debug probe functionality, use the following steps:

  • Download and install LinkServer 25.12 from NXP web page (latest version)
  • Install JP3 jumper (mind JP3 is located between JP4 and JP5), this sets debug probe processor into ISP mode
  • Connect the board via USB
  • Run c:\nxp\LinkServer_25.12.83\MCU-LINK_installer\scripts\program_CMSIS.cmd + press enter to confirm the installation
  • Check the log whether it was installed successfully
  • Disconnect the USB
  • Remove JP3 jumper
  • Connect the board via USB

After that do not install JP3 jumper unless you want to update firmware in the onboard MCU link debug probe.

Regards,
Marek


NOTE: If you find the answer useful, kindly click on [ACCEPT AS SOLUTION] button
0 Kudos
Reply
1,546 Views
blessyvinolin
Contributor II

Hi Marek,

Thank you for the detailed instructions.

I have followed the steps as suggested:

  • Shorted JP3 (located between JP4 and JP5).

  • Connected the FRDM-MCXE31B board via USB.

  • Executed the program_CMSIS script.

Please note that I am using Ubuntu OS. The script execution completed, and I have attached/shared the log output below for your reference.

After disconnecting the USB and removing the JP3 jumper, I reconnected the board. However, the MCU-Link debug probe is still detected in ISP mode and is not returning to normal CMSIS-DAP mode.

 

Regards,

Blessy

0 Kudos
Reply
1,540 Views
marek-trmac
NXP Employee
NXP Employee

Hi @blessyvinolin ,

from the screenshot I can see you are installing some old debug probe firmware. I suppose LinkServer 25.12 is available also for Linux. Can you confirm whether you can install and use it?

The old firmware versions are not compatible with the board you have.

Regards,
Marek


NOTE: If you find the answer useful, kindly click on [ACCEPT AS SOLUTION] button
1,454 Views
blessyvinolin
Contributor II

Hi Marek,

Yes, I have installed LinkServer 25.12 on Linux and used the MCU-Link installer. After running the program_CMSIS script, the controller successfully switched from ISP mode to normal mode.

Thank you for the support.

 

Regard,

Blessy

 
 
0 Kudos
Reply
1,557 Views
blessyvinolin
Contributor II

Hi Marek,

Thank you for the clarification.

Initially, I flashed the board frdm-MCXE31B through MCU-Link debugger, and it worked correctly.

Later, I tried to enter ISP mode using the following steps:

  • Located jumper JP3 (ISP)

  • Shorted JP3

  • Pressed and released RESET

  • Removed the short from JP3

After entering ISP mode, I used blhost to erase and program the device.

Commands used:

./blhost -u 0x1FC9,0x0022 -j -- flash-erase-all

Response:

{

   "command": "flash-erase-all",

   "status": {

      "description": "0 (0x0) Success.",

      "value": 0

   }

}

Then I programmed the binary:

./blhost -u 0x1FC9,0x0022 -j -- write-memory 0x0 led_blinky.bin

Response:

{

   "command": "write-memory",

   "response": [24532],

   "status": {

      "description": "0 (0x0) Success.",

      "value": 0

   }

}

Finally, 

./blhost -u 0x1FC9,0x0022 -j -- reset

This also returned success.

Before entering ISP mode, lsusb shows:

1fc9:0143  (MCU-Link CMSIS-DAP)

After entering ISP mode, it shows:

1fc9:0022  (LPC55S16 in ISP mode)

Now the board remains in ISP mode, and I am unable to return to normal mode. I also cannot flash through MCU-Link debugger anymore.

Could you please advise how to properly exit ISP mode and restore normal boot operation?

Thank you.

Best regards,
Blessy 

0 Kudos
Reply