AnsweredAssumed Answered

KL27z getting crash on program booting from ROM(bootloader) using blhost reset command

Question asked by Rafael Toledo on Jun 1, 2016
Latest reply on Aug 30, 2016 by Jeremy Wood


Hi,

 

I'm developing a application to update my firmware using the kinetis blHost.

I'm using the kl27z256, so in my program i have a way to enter in ROM bootloader to update the firmware by the blHost.exe

CODE:

void (*runBootloader)(void * arg);

  uint32_t runBootloaderAddress;

    // Read the function address from the ROM API tree.

  runBootloaderAddress = **(uint32_t **)(0x1c00001c);

  runBootloader = (void (*)(void * arg))runBootloaderAddress;

  // Start the bootloader.

  runBootloader(NULL);

 

This call works fine, I get the uc on ROM bootloader, and can execute the update using the commands from CMD on windows10:

 

blhost.exe -u 0x15a2,0x073 flash-erase-all

blhost.exe -u 0x15a2,0x073 write-memory 0 my_test_program.bin

blhost.exe -u 0x15a2,0x073 reset

 

Note:
I tested the same steps in FRDM-KL27, and got success, my new program (my_test_program.bin version to kl27z64) executes normally.

But on my board using the kl27z256, when i use the command "blhost reset", my new program

(my_test_program.bin version to kl27z256), got stopped after PE_low_level_init(), if I power off and power on the power supply(5V Vcc) to force a reset on my board, the new program works fine.

But I need to jump to program without remove the power supply.

I have enabled:

-UART

-PIT

-LPTMR

-USB HID

-SPI

-ADC

-LPUART

 

all this modules are enabled on my firmware. I'm using KDS 3.0.0, with KSDK 1.2.0. and PEx.

Have any step that I forgot to perform?

Have another way to jump from ROM bootloader to my program using the blhost?

Outcomes