Hello everyone,
I was playing a litte bit with the new Kinetis Bootloader v2.0.0 the last days. Everything worked well with the Bootloader and the example user application "led_demo".
But now I wanted to try the bootloader with the KSDK 2.0 example "bubble". But the app doesn't start, I can connect to bootloader with "KinetisFlashTool" without reseting the board.
In my opinion I use the wrong linker settings. But I already replaced the original linker file of the KSDK example with the one of the "led_demo" and I created a customized linker file described in "How to adapt KDS applications for KBOOT bootloader" pdf. All without success....
Can anyone of you give me a hint, how to prepare my own apps, so that they work with KBOOTv2??
Thanks in advance,
Sebastian
I'm doing a similar type of thing as this thread with the FRDM-K22F board.I want to get the bootloader working with the usb connection. I've been following the kinetis bootloader demo application user's guide.
I've done everything up to 4 "The host utility application". I'm plugged into SDA USB port and I see the MBED (E:) and I see the COM33: mbed Serial Port (COM33). I try to run the command "blhost.exe -p COM33 -- get-property 1" and it fails with "Error UartPeripheral() cannot open PC UART port(COM33), speed(57600 Hz)"
When I plug it into the other USB port it registers as a mass storage device "FSL Loader (E:). This FSL Loader comes from me directly flashing the micro using the freedom bootloader project in the Bootloader SDK. I imported and built the project located at "C:\Freescale\NXP_Kinetis_Bootloader_2_0_0\targets\MK522F51212\kds. Then I used the multilink to program the Release version of this project on to the micro. I want to be able to use the bootloader in this chip to update over USB without the USB SDA interface.
Am I doing something wrong? Which USB connection am I supposed to do? What is this FSL Loader?
-Brendan
Hello Brendan Merna,
If you have the question, please create a new post for yourself.
We will reply you in your own new question post, please don't ask the questions follow other customer's post, especially the post which already marked as answered.
Wish it helps you!
Have a great day,
Kerry
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Sorry Kerry! I made a new post. This one just didn't seem solved to me, which is why I posted.
Hello Brendan Merna,
Thank you for your cooperation!
I already take your new post.
I will reply you in your new post directly.
Have a great day,
Kerry
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi Jingjing,
thanks for your answer and sry for replying late.
In your documentation you used the flashloader_loader, which doesn't remain in memory.
I want the bootloader to remain within memory, so I used the freedom_bootloader and added the project specific peripherals I use.
Building and downloading works fine, bootloader remains in flash too.
But with this approach I have to adjust my user application to work with the bootloader.
What I figured out already, I have to use:
- K22FN512xx12_application_0xA000.icf linker file
- Defined symbols: BL_HAS_BOOTLOADER_CONFIG
- startup.c, startup_MK22F51212.s, system_MK22F51212.c from led_example in KBoot folder
- bootloader_core.h, target_config.h from led_example in KBoot folder
With this settings it seems to work fine for me. Now changing question: Is there a more easy way to configure my user app?
Have a nice day,
Sebastian
Hi Sebastian Lenz,
Yes, flashloader_loader is just one time, after your download the application, the bootloader will be overwrite.
But Freedom_bootloader will always in the flash.
These just two types, you can choose freedom_bootloader.
About the user application, just need to modify the link file to change the start address to the according address which is defined in the bootloader, this is already very easy, and it is necessary.
Wish it helps you!
Have a great day,
Kerry
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi Jingjing,
I use the MK22FN512 with the FRDM-K22F board.
It's the freedom_bootloader (flash bootloader) with UART communication I was playing with. The path to the bubble example is the following:
KSDK_2.0.0/boards/frdmk22f/demo_apps/bubble
Greetz!
Hi Sebastian Lenz,
I already tried the bubble code in the KSDK2.0-FRDM-K22F120M, and I can use the Kinetis bootloader 2.0 to download it, now, please follow my step:
1. Download the flashbootloader to FRDM-K22F120M board
open bootloader code in folder:NXP_Kinetis_Bootloader_2_0_0\NXP_Kinetis_Bootloader_2_0_0\targets\MK22F51212
Then build freedom_bootloader, flashloader and flashloader_loader
After you build it, then download the flashload_loader code to your FRDM-K22 board, then press the reset button on the board.
2. Generate the bubble.bin code in the KSDK2.0: SDK_2.0_FRDM-K22F\boards\frdmk22f\demo_apps\bubble\iar
You don't need to modify the link file, just generate the bin is ok, I already attached the bubble.bin
3. open KinetisFlash Tool in the Kinetis bootloader 2.0: NXP_Kinetis_Bootloader_2_0_0\bin\Tools\KinetisFlashTool\win
configure it like the above picture, but the com port you should select your board's com port on your PC.
After configure the Com port and baudrate, then click the connect button, it will have the connected to device successfully.
Then select the image file, just add the bubble.bin, then click the update button, the code will be download to the board, after download is ok, the bubble code will run.
I already check it on my side, it works ok on my side.
Besides the kinetisFlashTool, you also can use the blhost: NXP_Kinetis_Bootloader_2_0_0\bin\Tools\blhost\win
This is my test information:
Take care, each time after you download the app, you need to download the flashbootloader code at first, which you can find in step1.
Wish it helps you!
If you still have question, please contact me!
Have a great day,
Jingjing
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi Sebastian,
Could you please tell me what the kinetis chip you are using? And the board name?
Please also tell me the bubble example path you are using in the NXP Kinetis Bootloader v2.0.0,which bootloader you are using? UART? And flash bootloader or ROM bootloader?
Waiting for your reply!
Jingjing