User guide
5 / 13
Flashing iSense Devices Wirelessly User Guide
coalesenses
research to innovate
2. Making Applications support OTAP
Before devices can be flashed wirelessly, they must once be flashed by wire with an application that
supports later wireless programming.
To make your application support OTAP, all you have to do is compile and link your application
against a firmware that supports OTAP. To obtain a firmware supporting OTAP, either use the
standard firmware, or enable the OTAP feature in the configuration of firmware you obtain from the
iSense firmware web configuration interface [5]. To do so, go to the protocols section, and enable
“Over-the-air Programming Protocol”.
Details on how to use the iSense firmware web configuration interface can be found in the
Development Environment Setup User Guide [1].
While stable OTAP protocol only supports single-hop OTAP, there is also an experimental multi-hop
version. However, its use is currently not recommended in production environments. To active multi-
hop OTAP support anyway, also select “Multihop support (experimental)” on the iSense firmware web
configuration interface [5].
Now compile and link your application against the resulting firmware, and it is OTAP-ready.
However, a few issues should be kept in mind.
If you run a larger number of devices with potentially different applications, and you want to flash all
of them wirelessly, it might be difficult to identify which device runs which application. To alleviate
this difficulty, the class isense::Application (that all applications must inherit from) provides
two methods for returning an application id as well as an application revision.
//----------------------------------------------------------------------------
/** This method is used to identify an application.
* If you program devices over the air it eases the selection of the desired