Bootloader Design

Thread Starter

Talguy

Joined Aug 17, 2009
14
I have thought a good idea to learn about PIC microcontrollers would be to design my own bootloader. I want to create a ethernet based bootloader based on a PIC32 MCU. What would I need to know to create my own bootloader.
 

n9352527

Joined Oct 14, 2005
1,198
It is available from Microchip, for free. But should you feel you need to roll your own, then you need to understand the TCP/IP stack (also available from Microchip), ethernet interface (if your PIC32 doesn't have any), how to send data through the TCP/IP and information on how to write to the PIC32 flash program memory. You will also need to know the format of the hex file output from the compiler and need to write a program on the PC to handle all required operations.
 

BMorse

Joined Sep 26, 2009
2,675
there is a different hex format between compilers. HI-TECH vs C32 output a different format?
Coding syntax is a bit different, but a hex file for and mcu is a hex file, most compilers that are compiling for a certain uc will have the hex output compatible with that device, so if HI-TECH C supports this device and so does C32 (Which they both do) the hex files they output would be identical.... If the hex file is compiled for a different uc, then it would not be compatible (but that is just common sense I guess:))....

My .02
 

BMorse

Joined Sep 26, 2009
2,675
I have thought a good idea to learn about PIC microcontrollers would be to design my own bootloader. I want to create a ethernet based bootloader based on a PIC32 MCU. What would I need to know to create my own bootloader.

There is a lot of info on Microchips site, including code samples and file stacks and libraries for the Pic32MX uc, and also check out http://www.MyPic32.com under resources tab, to see more info and references for the PIC32MX uc and links to Microchips TCP/IP stacks with SSL and TCP/IP Stacks using BSD sockets....

It is possible you could read through their info to learn how to proceed in making your own ..... also check out some RTOS (Real Time Operating System) for PIC32 such as the Stick OS and uC/OS II real time kernel......

The UBW32 module (Based on the Pic32MX with USB OTG) , uses Microchips USB Bootloader app, check that out for more info on PIC32 bootloaders....

My .02
 
Top