Hello everyone!
I'm working on the new DZ60 uC, and what I'm searching is a way to remotely update its firmware.
I've made some research on the net and in the forum, and I've found something interesting about it (AN2140, TN228, TN235; I attached them for your convenience).
From what I know at the moment, it's possible to run a routine in Ram in order to erase or reprogram the flash, but my ideas are still a little confused.
What I have in mind is to update the firmware (i.e. reprogram it in part or entirely), "downloading" the new firmware by CAN.
I have a system composed by many different parts connected on a CAN bus; the goal is to permit the update of any part simply plugging an SD card, containing the firmware files, into the motherboard. The motherboard reads the data on the SD and transfer them to the appropriate target device on the CAN bus. At this point the target should be able to read the data and auto-update its firmware... and that's the crucial point!
- If I complete the transfer of the new firmware, copy it in ram, and then erase/reprogram the flash I don't need to move in Ram the code to use the Mscan and to manage the interrupts on CAN receive, but I think that probably the entire firmware won't fit into the Ram.
- If I move in Ram the code to manage Mscan I won't have the last problem since the firmware is received and written 8 bytes at the time, but there is the backside that if for some reason there is a problem on the CAN transmission, the process will stop and my device will be lost.
Do you have any idea or suggestion?
Simone
Hi Simone,
Would be possible you send me by email the source code. For I am programming the exact same thing, the CAN bootloader for DZ60.
My e-mail is: rcardoso@stara.com.br
Thank you
Hi Simone,
I am very interested in your CAN bootloader. Is it possible that you could email the source code.
Thanks
Kasper
Hi Simone,
I'm interesting in the bootloader for the CAN can you please post or send me via mail the source code?
Thanks Shuky
Hello Simone,
I have never attempted making a bootloader, so I am planning to give your project a try.
Since it has been a few years, do you have any updates or changes?
TIA,
David
Error : C5200: non_bank.sgm file not foundStart08.c line 31 Error : Compile failed
#if defined (__BANKED__)#pragma CODE_SEG __NEAR_SEG NON_BANKED#endif