I am working with Deluge as implemented for Contiki on the TmoteSky platform. I have more or less followed the advice set forth here: My first post about OAP in Contiki.
In writing my first round code, I have noticed that for dissemination to occur (e.g. consider two motes: sender mote A and receiver mote B) mote B has to have a file of the same size and name as the file that is to be distributed by mote A.
I have just finished reading the Deluge publication paper and believe this to be exactly what it is supposed to do.
However, I am looking for an OAP protocol (preferably already implemented in Contiki on TmoteSky) that allows for the receiving mote to NOT have a version of the dissemination file already.
This is so that the receiving mote(s) can be updated with a completely new code base. I.e. so that a file of the same name and size doesn't have to exist already on the receiving mote(s).
My questions are:
1) Assuming I understand the functionality of Deluge theory and its Contiki-TmoteSky implementation correctly, is there something out there that fits my needs?
2) Does anyone know if codeprop for Contiki does this? I am looking into it now, but haven't found any really good documentation or papers on it yet and am struggling with the network protocols used...
3) I have thought about using Deluge with a "smart" code transmission. I.e. using Deluge to send code that tells the mote how to reprogram itself rather than the actual code. However, I haven't yet figured out a good way to meet my needs, since I would basically have to tell code how to code arbitrarily... If anyone has any suggestions using this method I would be happy to hear them.
I may have overlooked some obvious protocols, so please go easy on me.
Thanks