campaignr wm 2008
DESCRIPTION
Campaignr for Windows Mobile 2008 InformationTRANSCRIPT
Campaignr for Windows Mobile 6Open-source, configurable micropublishing for your mobile phone
Center for Embedded Networked SensingTaimur Hassan, Nicolai Munk Petersen
Jeff Burke, Deborah Estrin, Jeff Goldmanwith the help of Peter Capone-Newton, MD, MPH
http://urban.cens.ucla.edu/December 15, 2008
1.Proposal recap
2.Hardware choices
3.CampaignrWM Feature Overview
4.Driver application findings
5.What’s next
Presentation outline
Port Campaignr functionality to Windows Mobile• Configurable micropublishing platform for mobile handsets, supporting
participatory urban sensing• Run data collecting campaigns using mobile phones as a collector• Data uploaded to servers for further analysis• Simple XML configuration• Support for traditional sensors such as accelerometers, GPS as well as for
using camera, microphone, radio features as sensors
Platform• Original for Nokia used native Symbian C++ for S60 3rd Edition• CampaignrWM rewritten in Visual C#, SQL Server Compact Edition
‘Footstep’ driver application• System to encourage sedentary adults to walk more, by showing where
and when they walk
Proposal recap
Specifications•Windows Mobile 6.0•aGPS•3G, EDGE
Software Platforms•Microsoft Compact Framework 3.5•Microsoft Compact SQL server 3.5
Limitations•No WIFI•No accelerometer
Hardware choice: Samsung Blackjack II
Architecture updates from Symbian Campaignr
Upload module is now model-view-controller• Extensible• Dynamic
Global configuration XML• Configurable user interface• Access point preferences• Reduce user interface choices
Module architecture third-party dynamic library• Custom sensors
CampaignrWM Architecture
CampaignrWM Sensor Comparison Matrix
Sensor WM6 S60Time stamp Location - GPS Location - Cell tower Handset IMEI Battery level Audio Image Video Manual only Text - multiple choice Text - freetext entry Text - static Bluetooth scanning Wi-Fi scanning Planned* SMS receive Pedometer Accelerometer – bluetooth* Planned* Accelerometer - internal* Planned* *Feature not available in BlackJack II hardware
CampaignrWM Feature Comparison Matrix
Feature WM6 S60Basic GUI XML configuration Event log Disruption-tolerant upload Concurrent use of phone Extensible sensor architecture Upload - JSON (Perff) Upload - XML (Sensorbase) Upload - Flickr Upload - Twitter Dynamic sensor module loading Bluetooth watchdog Simultaneous automatic and manual upload Planned Over-the-air code and campaignr upgrades Planned Adaptive upload Planned Server feedback Planned
Upload interfaces•Sensorbase.org (XML)•Perff (JSON)•Flickr (new to Campaignr)•Twitter (new to Campaignr)
Sensorbase.org•MySQL webservice enabled database•Accepts XML-RPC/HTTP•Base64 encoded only
Perff•JSON/HTTP enabled upload gateway (Locmux)•Currently support for PostgreSQL DBMS•Base64 encoded text only. No support for binary data.
Upload interfaces
XML Sample (from footstep application)
<?xml version="1.0" encoding="UTF-8"?><campaign name="Footstep" uploadOnStart="true" debug="true"> <automatic> <sensor type="timestamp"/> <sensor type="location"/> <sensor type="imei"/> <sensor type="cellid"/> <sensor type="pedometer" port="com0"/> <upload type="perff" dest="http://urban.cens.ucla.edu/step_upload"> <access_point>MEdiaNet</access_point> </upload> <interval>10</interval> </automatic></campaign>
Public documentation: http://wiki.urban.cens.ucla.edu/index.php/Campaignr#Configuration
XML-based Configuration
Discover and select configuration file Loading sensors, initializing upload Running campaign (console)
Running CampaignrWM
Running campaign (graphical version)
Running CampaignrWM
Functional testing•Unit-testing of critical execution paths•Analysis of log files (remote upload)
Application testing•Usability, performance, battery life, and reliability•Trial group of ~10 individuals running CampaignrWM•Three test campaigns: PEIR, Footstep, and SignSense
Battery challenges•Runs 3 ½ hours on full charge (GSM+GPS+Bluetooth enabled)•Un-successful charging from battery back (APC)
Code Signing challenges•Devices are Mobile2Market locked•Every signing event is manual and costly•TAPI APIs are mostly privileged and requires code testing
Testing
Driver Application: Encouraging Walking
Individually tailored physical activity interventions using objective step-count monitoring feedback.
Motivation:“The US Department of Health and Human Services recognizes the importance of regular physical activity in promoting health and reducing the morbidity and mortality associated with chronic disease.”
Not about fitness oriented people andatheletes. Focus on sedentary adults and children for whom walking is the best opportunity for exercise, as wellas the elderly.
The 10,000 steps/day guideline.
Consolvo, Sunny, Predrag Klasnja, David W. McDonald, Daniel Avrahami, Jon E. Froehlich, Louis LeGrand, Ryan Libby, Keith Mosher and James A. Landay. (2008). "Flowers or a Robot Army? Encouraging Awareness & Activity with Personal, Mobile Display". International Conference on Ubiquitous Computing, 2008.
Frank, LD. 2006. Many Pathways from Land Use to Health: Associations between Neighborhood Walkability and Active Transportation, Body Mass Index, and Air Quality. Journal of the American Planning Association 72 (1): 75-.
Anliker, U. 2004. AMON: a wearable multiparameter medical monitoring and alert system. IEEE transactions on information technology in biomedicine 8 (4): 415-.
Calfas, KJ. (1996). A Controlled Trial of Physician Counseling to Promote the Adoption of Physical Activity. Preventive Medicine, 25(3), 225-.
An active area: Related research
Commercial comparison:
The Fitbit Product•Low-budget Wireless device ($99)•Calorie budget•Social network•Manually log food intake (lookup)•Sleep (start, end, duration, interceptions)•AJAX website
Limitations•No GPS•Minimalist user interface•Yet another thing I need to bring
Example commercial product
Footstep architecture overview
Driver architecture: Footstep
Driver architecture: Footstep
Design Choices
External device• OTS devices• Potential of very high-accuracy• Self-contained w/ power supply• Cons: Locked-down interface
Built-in accelerometer• On-line classification algorithm• Machine learning• Computational demanding• References: Nokia StepCounter
Nike+iPod Piezoelectric Sensor
2.4GHz RF transmitter
Hardware choice: Nike sensor
Specifications
• Bluetooth/TTL enabled
• Non-disclosed protocol
• Self-contained
• Easy-of-use
• Campaignr dynamically loadable sensor module proof-of-concept
Hardware choice: Nike sensor
GPS, IMEI and sensor data sent periodically
when user starts session
SENSORBASE
</p><p>-----------------------</p><strong>timestamp:</strong> 2008-12-01 20:35:22<br /><strong>location:</strong>
{"heading_accuracy":0,"vert_dilution_of_precision":0,"latitude":0,"gps_module_name":"GPS","vertical_accuracy":10,"speed":0,"satellites_used":0,"altitude":0,"satellite_time_dilution_of_precision":0,"longitude":0,"horz_dilution_of_precision":0,"heading":0,"horizontal_accuracy":10,"satellites_in_view":7}<br
/><strong>cellid:</strong> <br /><strong>imei:</strong> 357246012432785<br /><strong>microphone:</strong> <br /
><strong>bluetooth:</strong> <br /><strong>image:</strong> <br />
RSS Feed generated automatically when
location gets updated
Feedback Engine
FLICKREMAIL/MMS with
attached snapshot of Google Earth
Match Google Earth's view to user's current lat/long and
heading
Data overlay using KML files
Step/Calorie overlays on your surroundings
Where do we go next?
Possible contributions
Basic Advanced Experimental
CaloriesSocial Network
Dynamic Sensor Modules
Interactive Map
Goal SettingActivity PatternsExpert Access
Fitness InteractionFood Journaling
Journaling
Nearby DestinationsThings To Do
Hill creditWhere you walk
Server side modelsFeedback Module
RemindersPlace knowledge
Walking and running for a cause has become a part of popular culture in the United States.
Could we create a participatory sensing approach to expand this activity into everyday life, to the fiscal benefit of charities and the health benefit of participants?
•Secure, authenticated walk-blogging to upload your per-day step count;
•Online tools to set goals, compare with friends, contribute your steps to a cause;
•Micropublishing of images, recordings, and text (e.g., using Twitter and Flickr) to lend support to survivors and their families;
•Continue friendly competition and cooperation into event days, where you can meet up with others who you’ve shared with online.
Partnership opportunities: Foundations; atheletic wear companies, media and entertainment.
Application Vision: Walking for A Cause
http://www.aidswalk.net/
http://walk.avonfoundation.org/
http://www.revlonrunwalk.com/
http://www.sportacause.com/
Example Partner / Commercial Application
Determines regions participants can cover based on past mobility patterns
Selects participants based on geographical coverage and distribution of attributes such as demographics
Reviews participant activity & consistency
Research: Mobility-based Recruitment
1.) Organizer posts campaign description and qualifier query.
2.) Interested volunteers run query on their mobility
profile; send results to Recruitment Engine.
4.) Recruitment Engine asks for
mobility data from qualified participants.
6.) Recruitment Engine finds well-suited participants (best
coverage under budget).
9.) Recruitment Engine sends consistency check
query to participants.
10.) Participants run consistency check and
send results to Recruitment Engine.
11.) Recruitment Engine alerts organizer to adjust campaign objectives or participants involved.
3.) Recruitment Engine selects qualified
participants.
5.) Participants send data for spatial,
temporal, and activity block of interest to
Recruitment Engine.
Campaign Executes
Campaign Completed
Qualifier Interview Progress Review
Reddy, Shilton, et al.
Device authentication: Trusting the data • Integration with CENS prototype open-standard Kerberos + PKI approach• Support trusted data gathering applications
Feedback to close the loop of participation• Ability to send user valuable feedback based on the data being sent to server• Currently, SMS is implemented, however other features that can be added include flash and
MMS
More social networking integration• CENS has already explored Facebook integration, which could be used here• Prototype and Flickr, Twitter interfaces can be expanded and combined with existing uses
Simultaneous campaigns• Parallel upload increases demand for performance optimizations• Calls for reduction of upload overheads and redundancies
Great driver for architectural improvements
Adaptive upload to increase battery life• Upload throttling based on available data service (WiFi, 3G) to maximize power savings• Requires analysis of transmission patterns
Energy and Performance Profiling• No common tools makes the work very tricky• General poor documentation of HW and OS energy profiles
Dynamic Processing Libraries• Customizable processing pipeline• Manipulates sensor data (e.g. compresses or analyzes)
Great driver for architectural improvements
Over-the-air provisioning• Model and implement methods to push CampaignrWM code and XML configuration
to the device• Example methods:
• Server based update push• Secure OTA server automatically sends new updates to device application• Application installs the new update and restarts• Notification-based • On startup, user is notified to check a website whenever a new version is
available• User manually downloads a cab file, which then installs new version• On startup, user receives a notice in campaignr• Challenging problems to address in trust and authentication
Need for over-the-air updates and provisioning
Specifications•Windows Mobile 6.1•aGPS•WIFI•3G, EDGE
•Available now
Software Platforms•Microsoft Compact Framework 3.5•Microsoft Compact SQL server 3.5
Limitations•No accelerometer
Next target device: Samsung Epix SGH-i907
Specifications•Windows Mobile 6.1•aGPS•WIFI•3G, EDGE•Accelerometer•High resolution
•Only available as UMTS2100 (EU)
Software Platforms•Microsoft Compact Framework 3.5•Microsoft Compact SQL server 3.5
Next target device: Samsung Omnia
Realize the promise of configurable micropublishing
• Simple Text Message feedback• In-line text messages• Embedded web-browser
• Improved user interface• Flash Lite 2.1/3.0 (Adobe)
• Media streaming support (3.0)• Cross-platform promises• Extensive graphical/3D API
• Silverlight 2.0 (Microsoft)• Excellent integration w/ .NET framework• Cross-platform promises• XAML declarative language support
Transforming the interface
Successfully ported Campaignr to Windows Mobile 6 to create a configurable micropublishing platform on the SamsungBlackJack II.
Developed and tested a personal sensor-supported walking documentation tool using the Nike sensor.
Prototyped new social networking supportfeatures: SMS, Flickr, Twitter.
Created an expanded vision for next stepsof experimental co-development around a high impact public service.
Summary
Campaignr for Windows Mobile 6Open-source, configurable micropublishing for your mobile phone
Center for Embedded Networked SensingTaimur Hassan, Nicolai Munk Petersen
Jeff Burke, Deborah Estrin, Jeff Goldmanwith the help of Peter Capone-Newton, MD, MPH
http://urban.cens.ucla.edu/December 15, 2008