In this work we solve the problem of updating multiple microcontrollers
at the same time, where the devices are in hard to access places. The idea
is to update these devices in the shortest time possible and resume normal
operation. Two communication types are used when updating the devices -
unicast and broadcast. With these two types we can send the new firmware
quickly to all devices while also checking the status for each device. A sepa-
rate program (bootloader) is responsible for the update process. At the same
time it also manages running the main program of the device. The final so-
lution is appropriate since the update process takes the same time for one
and multiple devices. Some problems were encountered with memory space,
but they were solved by sending the firmware in parts.
|