BootLoader

Posted by openPicus | On: Apr 11 2010

We are evaluating some different solution for the Picus bootloader.

The bootloader must be lightweight, flexible and must be of easy implementation for the host program on the pc. At the moment, we are looking at the ds30 bootloader, an opensource solution that supports the PI24Fj serie, that supply not only the bootloader, but also the APIs for developing in .NET or Mono (a custom host program on the PC, check http://www.mono-project.com/Main_Page).

This would be very useful to integrate the bootloader section in a future multi-platform IDE (the objective are Windows and Linux systems).

During our tests we have not found any problem in implementig the bootloader, it’s really easy to use, the .gld file must not be modified, since the code is loaded in the last section of the PIC memory, and all the functionality of the PIC are supported.
We think that this can be the optimal solution, instead of developing our own bootloader.

What do you think about it? Any suggestion/comment?

3 Comments

  1. In my opinion, ds30 and tiny bootloader are good bootloaders and very lean but on my experience on creating bootloaders the worst condition for a bootloader is when it’s power gets interrupted while bootloading (and the first row [containing reset vector] was erased or being erased).

    With this we’ll end up having a corrupted code and no other choice but to reflash using a programmer.

    For safety critical applications, a bootloader must also ensure that it won’t run a bad code after bootloading was interrupted.

    I think many lite bootloaders are not designed for those conditions and is a good to have features so we won’t end up having a dead board(no way to enter bootloading mode).

  2. picus says:

    great post, we’ll consider this very important issue!

  3. picus says:

    This comment has been removed by the author.

Leave a comment