—Wireless reprogramming is a key functionality in Wireless Sensor Networks (WSNs). In fact, the requirements for the network may change in time, or new parameters might have to be loaded to change the behavior of a given protocol. In large scale WSNs it makes economical as well as practical sense to upload the code with the needed functionalities without human intervention, i.e., by means of efficient over the air reprogramming. This poses several challenges as wireless links are affected by errors, data dissemination has to be 100% reliable, and data transmission and recovery schemes are often called to work with a large number of receivers. State-of-the-art protocols, such as Deluge, implement error recovery through the adaptation of standard Automatic Repeat reQuest (ARQ) techniques. These, however, do not scale well in the presence of channel errors and multiple receivers. In this paper, we present an original reprogramming system for WSNs called SYNAPSE, which we designed to im...