cannot use blhost on K64

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

cannot use blhost on K64

1,561 Views
roymessinger
Contributor V

I've tried to use the blhost.exe for the first time according to the manual and I'm receiving:

Error: Initial ping failure: No response received for ping command.

when I click:

blost -p COM8 -- get-property 1

I've tried both bootloaders of mbed and Jlink.

What am I doing wrong?

0 Kudos
Reply
9 Replies

1,093 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi Roy Messinger,

  As you know, K64 don't have the ROM bootloader, so you it should use the flash bootloader.

  You need to download the according flash bootloader to your K64 at first.About the code, you can find it from KBOOT2.0:

NXP_Kinetis_Bootloader_2_0_0\NXP_Kinetis_Bootloader_2_0_0\targets\MK64F12

 Then, check your K64 according UART port, whether it is COM8, you can find it in the PC device manager.

If the above points is correct, you will can connect the COM port with the blhost.

Wish it helps you!

If you still have question, please let me know!

Have a great day,
Kerry

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos
Reply

1,093 Views
roymessinger
Contributor V

Sorry, but I don't follow...

My design is based on the FRDM K64 board, in the meantime I'm using the bluetooth UART connection.

I have 2 UARTs on board. One is the K20 Open SDA UART, the second is an RS485 to UART I've connected to J199 (bluetooth UART) - which works fine.

When I ping COM8 - which is the K20 Open SDA - I get the error.

My questions:

1. What I don't understand is - I have an MBED or JLINK bootloader installed. Isn't it enough?

2. Regarding KBOOT2.0, which code do I need? I've downloaded the NXP_Kinetis_Bootloader_2_0_0 zip file. in there, under \targets\MK64F12 I've found few projects, under KDS (I work with KDS): flashloader, flashloader_loader, freedom_bootloader & tower_bootloader. What is the difference between them? Do I embed one of them in my code? which one do I need?

3. As my design is a board with K64 component, how do I burn a flash loader without the K20 open SDA? In my board I do not have a K20 (In the meantime I'm using the FRDM board...).

Thanks!

0 Kudos
Reply

1,093 Views
mjbcswitzerland
Specialist V

Roy

3. You program the K64 using a programmer (JTAG/SWD) or EzPort.
If you have no budget for tools you can also use the OpenSDA part on your FRDM-K64F (with a cable connected to its JTAG as described in many on-line blogs) to program it via the FRDM-K64F board (as you program the K64 processor it it now).
Also EzPort cloning is possible;
http://www.utasker.com/docs/uTasker/uTaskerEzPortCloner.pdf
This has also been discussed last year as you asked a similar question then: https://community.nxp.com/message/863537?commentID=863537#comment-863537?q=uTaskerEzPortCloner


Regards

Mark

0 Kudos
Reply

1,093 Views
roymessinger
Contributor V

Hi Mark, Thanks for No.3. I was referring to burning together with the boot loader (if there's any difference).

More important for me are answers for No.1 & No. 2.

Thanks.

0 Kudos
Reply

1,093 Views
mjbcswitzerland
Specialist V

Roy

1. Are you putting a second chip on your board in order to program the first (like a development board)? This would be very unusual for a product since it is expensive, adds size and current consumption to do what can be done with any programmer connected. The MBED, P&E, Segger boot loaders don't allow communicating with KBOOT.

2. The KBOOT package comes with examples for the K64 so you should be able to build it for your board. (I think that it has binaries as well - if not you can experiment with the FRDM-K64F binary at http://www.utasker.com/kinetis/FRDM-K64F.html) You then need to program it to the K64 using a programmer (or on the development board using the OpenSDA loader/debugger), after which you can then connect to it via UART or USB.

Regards

Mark

0 Kudos
Reply

1,093 Views
roymessinger
Contributor V

Thanks, Mark, for your thorough answers.

1. I'm not placing a second chip on my board, only the K64 chip. I've just realized (after many readings) that the MBED & Segger don't communicate with KBOOT. Thanks for pointing that out. I've also understood I'm looking to place a bootloader and not a flash loader in my board.

2. I've looked in your site and also in the KBOOT folder I've downloaded:

    a. in your site, the bin files are specific for the implementation, right? meaning, if my UART is 1 and not 0, I cannot use the specific bin. Is that true?

    b. in the KBOOT folder I've compiled the KDS project of 'freedom_bootloader' and now I have an ELF file (will it work only on FRDM K64 board or also at my board with K64 chip?).

Maybe I'm totally wrong here, but if I will burn this elf file (with Jlink, for example?), so afterword, how will I burn my application? using the blhost.exe? or am I missing something here...

After burning this ELF file, will it replace the bootloader of Jlink or Mbed? What will I see in the device manager? (currently working with the FRDM K64 board with Jlink bootloader which shows me a COM port in the device manager).

I feel like I'm a bit mixed up with this issue. Can you clarify?

Thank you again,

Roy

0 Kudos
Reply

1,093 Views
mjbcswitzerland
Specialist V

Roy

>>2. I've looked in your site and also in the KBOOT folder I've downloaded:

>>    a. in your site, the bin files are specific for the implementation, right? meaning, if my UART is 1 and not 0, I cannot use the specific bin. Is that true?

The binary works on UART 0 and USB - the USB will work on any board but of course it won't work on UART 1.

To build the project for UART 1 one changes
#define LOADER_UART           0
to

#define LOADER_UART           1

 >>   b. in the KBOOT folder I've compiled the KDS project of 'freedom_bootloader' and now I have an ELF file (will it work only on FRDM K64 board or also at my board with K64 chip?).

Same answer as for the binary file.

>>Maybe I'm totally wrong here, but if I will burn this elf file (with Jlink, for example?), so afterword, how will I burn my application? using the blhost.exe? or am I missing something here...

Once the boot loader is installed it is use for programming new applications. blhost.exe is used for KBOOT mode - either USB-HID or UART.
No tools are needed for USB-MSD (in the uTasker version) which makes it easier to use, much faster and not platform dependent.

>>After burning this ELF file, will it replace the bootloader of Jlink or Mbed?

No.

>>What will I see in the device manager? (currently working with the FRDM K64 board with Jlink bootloader which shows me a COM port in the device manager).

The device manager sees USB. If you use UART it sees nothing.

Regards

Mark

0 Kudos
Reply

1,093 Views
roymessinger
Contributor V

Thanks, Mark.

I've now opened another discussion in the specific forum of KBOOT (with additional questions).

Thank you very much so far. You're a great help.

0 Kudos
Reply

1,093 Views
mjbcswitzerland
Specialist V

Roy

For more flexibility, K64 bootloaders are available here:
http://www.utasker.com/kinetis/FRDM-K64F.html
http://www.utasker.com/kinetis/TWR-K64F120M.html

Documentation: http://www.utasker.com/docs/uTasker/uTaskerSerialLoader.PDF

You can choose from USB-MSD, USB-CDC, USB-HID (eg. Kboot), USB-memory stick, SD card, Ethernet or UART (SREC, IHEX, KBOOT, developer's loader) and mix several if desired.
Also allows swap block operations.

Regards

Mark

0 Kudos
Reply