Can you please attach the project
Can you please mention the application of Bootloader_App1 and Bootloader_App2 components in your design
The workspace is a test app.
Application 1 and two simply blink an different led.
App1 blinks LED1 and App2 blink led2.
When I think Pin 3/3 is pulled low, the bootloader is started.
in order to change or repair any metadata rows, the PSoC Bootloader component v1.50 calls the SetActiveAppInMetadata() function after each reset (near the end of the Bootloader_Start() function).
This function then calls ...SetFlashByte(), which will call CySysFlashWriteRow() (in Flash.c, see code location pictures in attachment).
In most cases the active app (and all the other metadata content) would stay the same, because it only changes when uploading a new firmware through the bootloader.The above mentioned calls are performed even if the content of the metadata row does not see any change
The current component implementation is done in this format.
If you want to modify the component, first have to create a component library, then you will be able to import an existing component into your library.
File->New->Project, then click the "Other" tab, and select "PSoc Library"
In the workspace explorer, you can then click on the components tab, then right click and import component.
Change the source library to the PSoC creator one, and choose your component.This document should be helpful http://www.cypress.com/file/137436/download
I understand about the bootloader.
But a similar call also exists in the bootloadable component - to update metadata.
This is what I was trying. This call fails with error 9.
Are you saying that just to make the current active app to set the NonActive app as active I will have to create a new component?
That area of flash isn't locked, so why can't I write to that row?
My requirement is to switch the active app only.