Hi Sunil,
Thanks for then information, If are going to use the MK20DX256VLL10 MCU then yes, you can port the bootloader from the MK22F12810 MCU. Please notice that if you are going to use the USB bootloader then you will have to configure the device to run from the External oscillator, this is because the K20 MCU does not have a high-precision internal reference clock (IRC), also make sure to update the Bootloader memory map configuration.
Regarding the blhost linux utility hanging, I have been able to reproduce the issue and have reported it to the developers. I got it working by unplugging and plugging back again the board when it got hanging, then after sending the commands 2 more times it worked:
tics-01@tics01-desktop:~/Downloads/FSL_Kinetis_Bootloader_1_2_0/bin/linux$ sudo ./blhost_i386 -p /dev/ttyACM0 -- get-property 1
Error: Initial ping failure: No response received for ping command.tics-01@tics01-desktop:~/Downloads/FSL_Kinetis_Bootloader_1_2_0/bin/linux$
tics-01@tics01-desktop:~/Downloads/FSL_Kinetis_Bootloader_1_2_0/bin/linux$ sudo ./blhost_i386 -p /dev/ttyACM0 -- get-property 1
Ping responded in 1 attempt(s)
Error: Initial ping failure: Invalid packet type.
tics-01@tics01-desktop:~/Downloads/FSL_Kinetis_Bootloader_1_2_0/bin/linux$ sudo ./blhost_i386 -p /dev/ttyACM0 -- get-property 1
Ping responded in 1 attempt(s)
Error: Initial ping failure: Invalid packet type.
tics-01@tics01-desktop:~/Downloads/FSL_Kinetis_Bootloader_1_2_0/bin/linux$ sudo ./blhost_i386 -p /dev/ttyACM0 -- get-property 1
Ping responded in 1 attempt(s)
Inject command 'get-property'
Response status = 0 (0x0) Success.
Response word 1 = 1258358017 (0x4b010501)
Current Version = K1.5.1
Hope it helps!
Best Regards,
Carlos Mendoza
Technical Support Engineer