USB bootloader, program successfully, but did not programmed at all.

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

Hi All,

I'm using a CY8C5868AIX-LP035 with cypress development kit.

I'm having a project with USB-HID working and we want to add a Bootloader feature.

To do so:

0. followed all the steps in this guide:

AN73503 - PSoC® USB HID Bootloader | Cypress Semiconductor

1. Deleted my HID profile and Imported the bootloader HID profile (Bootloader.root.xml)

2. Changed my code so in a specific USB packet this command will start:

                    Bootloader_1_SET_RUN_TYPE(Bootloader_1_START_BTLDR);

                    Bootloader_1_Start();

3. Building another image with minor change, and program the image via the Bootloader Host app,

As you can see, the program success an it can also verify successfully.

But the minor change that i did, is not showing, the image is not programmed at all.

I can email all the project files.

Thanks.

pastedImage_2.png

0 Likes
1 Solution
himam_31
Employee
Employee
50 likes received 25 likes received 10 likes received

Hello Netanel,

I hope this issue is already resolved via the technical support case.

I have verified the video. In the video you are programming a specific Bootloader project (for sending data 3,3) and the whole USB communication is part of Bootloader. Now you are bootloading the bootlodable application .cyacd. Bootload process will only change the "Bootloadable Application " section of the Flash, not the bootloader. The tool was able to bootload the Bootloadable image successfully, but this just changed only the application. The bootloader present in the device is still the same. Even you build the bootloadable application project with the change, the change will not be flashed. You need to reprogram the device with new bootloader.

Thanks,

Hima

View solution in original post

0 Likes
4 Replies
AnkitaS_51
Employee
Employee
100 likes received 50 likes received 25 likes received

Hello,

Have you debugged the code using the debugger.Ideally if it shows success then the device is programmed.Please check the program execution.

Please mention what minor change you did.

0 Likes
Anonymous
Not applicable

Hi,

The minor change does appear hen programming the new compiled version via MiniPorg3.

I recorded my screen and uploaded the entire test:

https://www.youtube.com/watch?v=ESzX3DGuPOQ&feature=youtu.be0

Here is the steps:

1. i show you that the program return 2,2 via USB.

2. i change the code to return 3,3. 3. compiled the main project and the bootloadable project.

4. started the bootloader via usb command.

5. programmed the new version via BOOLOADER HOST app. and verified via the app.

6. pressed the debug test, and it show 2,2 again.

7. then to show you that there is no problem in the code, i programmed the latest compilation via psoc creator (connected via MiniProg3) and the debug string displayed 3,3 as it suppose to be.

Also added screen shot of the bootloader component setup. Please advice.

0 Likes
himam_31
Employee
Employee
50 likes received 25 likes received 10 likes received

Hello Netanel,

I hope this issue is already resolved via the technical support case.

I have verified the video. In the video you are programming a specific Bootloader project (for sending data 3,3) and the whole USB communication is part of Bootloader. Now you are bootloading the bootlodable application .cyacd. Bootload process will only change the "Bootloadable Application " section of the Flash, not the bootloader. The tool was able to bootload the Bootloadable image successfully, but this just changed only the application. The bootloader present in the device is still the same. Even you build the bootloadable application project with the change, the change will not be flashed. You need to reprogram the device with new bootloader.

Thanks,

Hima

0 Likes
Anonymous
Not applicable

Thanks

The problem was that i cunfused between the bootloader and the bootloadable object.

the bootloadeble object sould be placed within the application project while the bootloader is the new project that can only program the bootloadeble app.

Great support!!!

0 Likes