Bootloader in Harmony 3
I developed a medium size project for a PIC32MZ with Harmony 3 that has access to the Internet. Now, I need to implement a reliable mechanism to upgrade the firmware or, in other words, I need a bootloader.
In my previous projects with Harmony 2, the app was responsible for contacting a remote server, downloading the .hex in an external SPI flash, and calculating the checksum. At the same time, the bootloader checks a trigger and performs the update copying the content of the external flash into PIC32MZ's memory. Actually, the bootloader decodes the .hex file and then erases and writes the PIC32's flash. This solution is not efficient in terms of size because .hex is an ASCII file. Moreover, is no longer present in Harmony 3.
In Harmony 3, I saw a change of paradigm in favor of a shrunk .bin file. This solution seems quite good since it reduces the size of the image, but only the UART bootloader is supported at this time.
Since I have to conclude this project asap, I was wondering what is the best solution for adding a bootloader. Should I grab the Harmony 2 solution in the current project or should I wait for/implement the Harmony 3 solution?
What is your experience with Harmony 3 bootloader? Have you never used it?