One problem of the current network programming implementation of TinyOS is that it takes much longer than the traditional in-system programming due to the slow radio connection. We extended the network programming implementation of TinyOS 1.1 release so that it can reduce the programming time using the program code history. The host program generates the difference of the two program images using the Rsync algorithm and it sends the difference to the sensor nodes as script messages. The sense nodes rebuild the program image based on the previous program version and the recived script messages. The sensor nodes rebuild the program version and the received script messages. The Rsync algorithm compares the two binary files and finds the matching blocks even though they are located in an arbitrary location within the files. We were able to get speed up of 9.1 for changing a constant and 2.1 to 2.5 for chaning a few lines in the source code.
May 31, 2004
Jeong, J. (2004). Incremental Network Programming for Wireless Sensors: Research Project. United States: University of California, Berkeley.