- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
We are using PSoC Creator 4.1 and converted our test application to bootloadable.
When we flash over JTAG either app_1.hex or app_2.hex the bootloader checksum verification fails for both apps.
If we flash the combined app.hex, the bootloader detects that both applications have good checksums and it runs the first one.
Why do the single application packages fail?
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Bootloader_Start() transfer control to one of the applications based on active and valid characteristics of each apps. The Switching Logic Table is available in Bootloader datasheet.
Please change Bootloader_Start() to Bootloader_Exit(Bootloader_EXIT_TO_BTLDB_1), if you are programming Bootloadable_1.hex or vice versa to test this behavior. It will validate and load single application right away.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Bootloader_Start() transfer control to one of the applications based on active and valid characteristics of each apps. The Switching Logic Table is available in Bootloader datasheet.
Please change Bootloader_Start() to Bootloader_Exit(Bootloader_EXIT_TO_BTLDB_1), if you are programming Bootloadable_1.hex or vice versa to test this behavior. It will validate and load single application right away.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
When I call the Bootloader_Exit() API it works as I would have expected.
App_1.hex will boot when Bootloader_EXIT_TO_BTLDB_1 is used, and not boot when Bootloader_EXIT_TO_BTLDB_2 is used.
App_2.hex will boot when Bootloader_EXIT_TO_BTLDB_2 is used, and not boot when Bootloader_EXIT_TO_BTLDB_1 is used.
So, it appears that the bootloader switching logic is not able to handle the single app bootloadable hex packages in a dual app boot configuration.
From what I can see when cyelftool -B app_1.elf is called the generated hex file is complete.
Is the elf merge step (cyelftool -M) necessary for creating a valid dual app hex file?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Yes. Both applications needs to be valid and present in the bootloadable.hex file.