campaignr: configurable mobile sensing

Campaignr is a configurable, multi-modal application, designed for Symbian S60 3rd Ed., which allows for a Nokia smartphone to act as a multi-purpose sensing device.  Recent work on Campaignr has focused on providing a robust application that will continue to function, in the event of arbitrary errors, for durations exceeding 24 hours.
 
All sensors that Campaignr can leverage are completely configurable via an XML configuration file. The campaign creator can specify which sensors to use, how frequently to use them, and whether or not they should be triggered by a user or operate autonomously. In addition to the configurability of pre-existing Campaignr sensors, there will also be support to dynamically add sensors to Campaignr via polymorphic DLLs. The upload destination for the collected data may also be specified in the configuration file.

While Campaignr provides a wide range of configurability of the sensors on the smartphone, there are particular upload formats that must be adhered to.  For those with some experience programming, we seek to provide a platform on which custom-written Python code can be run to allow for complete configuration and customization of the upload process within the sensing application.
 
Windows Mobile Edition is a popular mobile platform.  In order to make urban sensing applications that are portable across platforms, we are currently migrating Campaignr over to the Windows Mobile family of devices.  The newly ported version will be able to take requests from other applications to make use of its sensing capabilities.  It is also our intent to provide functionality that will allow for the user to make use of the smartphone features while CampaignrWM is running in the background. 

tools