cancel
Showing results for 
Search instead for 
Did you mean: 

[STM32F4] In-Circuit Programming (ICP) vs In-Application Programming (IAP) using USART

wfarid
Associate II
Posted on November 28, 2016 at 23:45

Hi guys,

Why would I update the firmware using the IAP instead of the ICP?

I'm thinking about connecting an STM32F4 uController to a BeagleBone and I want to have the capability to update the firmware on the STM32F4 using an application on the BeagleBone. If I have the STM32F4 pins (BOOT0, BOOT1 and NRST) along with USART1 connected to the BeagleBone, can't I just write an application on BeagleBone which controls those pins and update the STM32F4 flash accordingly?

Thanks!
2 REPLIES 2
Posted on November 29, 2016 at 03:08

The protocol is well enough documented, and can be implemented on an embedded platform, whether that is a BeagleBone, or another STM32

ICP works well for programming blank (new) devices, and ones you've bricked.

IAP allows you to define a protocol that better suits your needs, adding integrity checking, encryption, or whatever.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
wfarid
Associate II
Posted on December 01, 2016 at 21:16

Thanks clive1!