We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
We are thinking of a machine control system consisting of up to 150 ARM-Cortex-M0 (or M0+) connected to one RS-485 half-duplex bus (two wires only) @38.400 bit/s.
Upgrading firmware in-the-field sequentially (point-to-point) is working, but would last several hours, blocking machine (no production). This is not accepted by customers.
So we need a somewhat 'Broadcast Bootloader' with sequential result control afterwards.
Did someone already face a similar problem (or has ideas how to solve) ? Best regards Juergen
Broadcast the data stream in a loop, minimize the communication of the nodes, perhaps schedule them to respond to a blocknumber % nodecount == nodeid with a completion or indicator of blocks accepted/required
If you didn't provide yourself enough storage to hold the new firmware, run an update loader from RAM