cancel
Showing results for 
Search instead for 
Did you mean: 

PSoC 5, 3 & 1 MCU

Contributor

Hi,

My product has an i2c connection (Vcc, Gnd, Sda, Scl) which is easy accessable. Programming connection are inside the product and difficult to access.

Until now I use a bootloader which waits 2 seconds for i2c bootloader trigger and after that it starts the normal application with the possibility to skip this waiting time by i2c command

It works but makes startup procedures and bootloading pretty complex to start [not only using the I2C Bootloading Application].

Now I was thinking why not trigger the bootloader by applying 5V0 to the Vcc ? My application always uses 3V3 so if I let the bootloader start as soon as 5V0 is applied it would make life much easier.

Before rewriting this part of my project I would like to know does anyone use this same concept ? Am I overlooking something ?

Thanks

Patrick

0 Likes
Reply
1 Solution
Contributor

I finished my bootloader and here is my result, in case someone else also needs this.

Bootloader starts (for 2 seconds) only when Vdd=5V. In normal application supply is 3V3 so bootloader is skipped.

I used 2 pins to select an i2c adress for the bootloader because I have more identical modules on the same pcb.

By using my MiniProg3 I can select the voltage for testing.

See attachment for the finished bootloader project

I used AN60317 (I2C Bootloader) and the Bootloader and Bootloadable components PDF

View solution in original post

0 Likes
Reply
3 Replies
Employee

Hello Patrick,

It is technically feasible. You can configure Low /High Voltage interrupt and make use of the ISR. For details on configuring LVD interrupt please have a look at the application note: http://www.cypress.com/documentation/application-notes/an54460-psocr-3-and-psoc-5lp-interrupts

Can you please look into this example. Please let us know if you have any further questions.

Thanks,

Hima

Contributor

Thanks for the remark, I didnt know there was an interrupt for it.

I finished the project now and used the ADC to measure the Vdd and start or skip the bootloader accordingly. I only need to check at startup (bootloader) and not in my bootloadable.

0 Likes
Reply
Contributor

I finished my bootloader and here is my result, in case someone else also needs this.

Bootloader starts (for 2 seconds) only when Vdd=5V. In normal application supply is 3V3 so bootloader is skipped.

I used 2 pins to select an i2c adress for the bootloader because I have more identical modules on the same pcb.

By using my MiniProg3 I can select the voltage for testing.

See attachment for the finished bootloader project

I used AN60317 (I2C Bootloader) and the Bootloader and Bootloadable components PDF

View solution in original post

0 Likes
Reply