1. A wireless network comprising: a control node; a plurality of device nodes in wireless communication with the control node, each of the device nodes having a wireless communication path to the control node that is either a direct path or an indirect path through one or more intermediate device nodes serving as relays, each device node having a corresponding device comprising an embedded microcontroller with a flash memory; wherein the device nodes comprise broadcast nodes that are configured to receive the microcontroller flash memory update via a broadcast transmission, and wherein the device nodes further comprise non-broadcast nodes that are not configured to receive the microcontroller flash memory update via a broadcast transmission, wherein the control node transmits a microcontroller flash memory update to the plurality of broadcast nodes over the wireless network, the microcontroller flash memory update being first transmitted from the control node to each broadcast node with a direct communication path to the control node, the microcontroller flash memory update being then relayed by one or more broadcast nodes to other broadcast nodes until the microcontroller flash memory update is transmitted to each broadcast node in the wireless network, and wherein the control node determines when all of the broadcast nodes have received the microcontroller flash memory update, and, based on this determination, the control node then sends a command to transmit the microcontroller flash memory update from one or more broadcast nodes to each non-broadcast node.