Mobile phone–based sensing software is a class of software for mobile phones that uses the phone's sensors to acquire data about the user. Some applications of this software include mental health and overall wellness monitoring. This class of software is important because it has the potential of providing a practical and low-cost approach to deliver psychological interventions for the prevention of mental health disorders,[1] as well as bringing such interventions to populations that have no access to traditional health care.[2] A number of terms are used for this approach, including "personal sensing", "digital phenotyping", and "context sensing". The term "personal sensing" is used in this article, as it conveys in simple language the aim of sensing personal behaviors, states, and conditions.
General information
This article presents a comparison of mobile phone software that can acquire users' sensor data (in a passive manner without users' explicit intervention) and administer questionnaires (or micro-surveys triggered by sensor events). The software described below helps quantify behaviors known to be related to mental health and wellness. The list below includes both commercial and free software. To be included in this list, a software product must be able to acquire data from at least one phone sensor, and provide a minimum level of security for storage and transmission of acquired data. This list excludes software that focuses solely on collecting participant data from surveys and questionnaires.
Software table
The following table contains general information about each mobile-based sensing software, such as who the developers are, when it was last updated, whether it is open or closed source, and the programming language and database they are based on.
This section's factual accuracy may be compromised due to out-of-date information. Please help update this article to reflect recent events or newly available information.(July 2017)
Web dashboard and Android client: Denzil Ferreira (Community Instrumentation & Awareness, University of Oulu); Mac OSX and iOS clients: Yuuki Nishiyama (Tokuda Laboratory, SFC, Keio University)
The following table shows the target audience for each piece of software included in this article. Software packages that target developers assume a high level of skill in creating code and/or modifying third-party source code. Software packages that target researchers have at least one component that can be used in scientific studies with human subjects. Software packages that target individuals allow at least one component to be downloaded and installed by an end-user with no programming skills. Please note that some packages target more than one type of user.
Target audience
Name
Developers
Researchers
Individuals
AWARE
Yes
Yes
Yes
Beiwe Research Platform
Yes
Yes
Yes
Cenceme
No
No
Yes
Context sensing SDK
Yes
No
No
EARS
No
Yes
Yes
Empath
No
Yes
No
Expimetrics
No
Yes
No
Emotion Sense
Yes
Yes
No
Funf
Yes
Yes
Yes
m-Path Sense
Yes
Yes
Yes
mindLAMP Platform
Yes
Yes
Yes
mEMA
No
Yes
No
Metricwire
No
Yes
No
Mobile Sensing Platform
No
Yes
No
MovisensXS
Yes
Yes
Yes
Murmuras
Yes
Yes
Yes
Passive Data Kit
Yes
Yes
Yes
Psychlog
Yes
Yes
Yes
Psyt
No
Yes
No
Purple Robot
Yes
Yes
Yes
Radar-CNS
No
Yes
No
RealLife Exp
No
Yes
No
ResearchKit
Yes
Yes
Yes
Research Stack
Yes
Yes
Yes
SensingKit
Yes
Yes
Yes
Socialise
Yes
Yes
Yes
unforgettable.me
Yes
Yes
Yes
Mobile OS support
The following table shows the type of mobile phone on which each software package can be deployed.
Supported OS
Name
Android
iOS
Windows mobile
Nokia
AWARE
Yes
Yes
No
No
Beiwe Research Platform
Yes
Yes
No
No
Cenceme
No
Yes
No
Yes
Context sensing
Yes
No
Yes
No
EARS
Yes
Yes
No
No
Empath
No
Yes
No
No
Expimetrics
Yes
Yes
No
No
Emotion sense
Yes
No
No
No
Funf
Yes
No
No
No
m-Path Sense
Yes
Yes
No
No
mindLAMP Platform
Yes
Yes
No
No
mEMA
Yes
Yes
No
No
Metricwire
Yes
Yes
No
No
Mobile Sensing Platform
Yes
No
No
No
MovisensXS
Yes
No
No
No
Murmuras
Yes
No
No
No
Passive Data Kit
Yes
Yes
No
No
Psychlog
No
No
Yes
No
Psyt
Yes
Yes
No
No
Purple Robot
Yes
No
No
No
Radar-CNS
Yes
No
No
No
RealLife Exp
Yes
Yes
No
No
ResearchKit
No
Yes
No
No
Research Stack
Yes
No
No
No
SensingKit
Yes
Yes
No
No
Socialise
Yes
Yes
No
No
unforgettable.me
Yes
No
No
No
Installation
In addition to deploying mobile-based sensing software to smart phones, a control dashboard has to be either installed on a local computer or provided through the web. Some of the packages provide a web server so that one is able to have a remote dashboard. The table below shows the server platform and/or web server required for each piece of software.
Installation requirements
Name
Server platform (operating system or web)
Web server required
AWARE
Web
Aware provides both a server hosted by them or the ability to host dashboard on own server[33]
Beiwe Research Platform
Web
System back-end, web server, data storage on AWS
Cenceme
Web
Yes
Context sensing
Web / Windows / Mac
Depends on application
EARS
Web
Data storage on AWS
Empath
Web
Yes
Expimetrics
Unknown
Unknown
Emotion sense
Web
Depends on configuration
Funf
Web
Yes
m-Path Sense
Web
Not required. m-Path is hosted on KU Leuven servers
mindLAMP Platform
Web
Depends on application
mEMA
Web
Illumivu provides a web server for a fee
Metricwire
Web
Metricwire provides web server for a fee
Mobile Sensing Platform
Unknown
Unknown
MovisensXS
Web
Not required. Server hosted in ISO 27001 certified, German Data Center
Murmuras
Web
Not required. Own hardware servers colocated in Germany.
Psychlog
Unknown
Unknown
Psyt
Web
Not required. Server is hosted by Psyt
Purple Robot
Web
Yes
Radar-CNS
Frontend dashboard app
Yes
RealLife Exp
Web
LifeData provides a web server for a fee
ResearchKit
Web server
Yes
Research Stack
Web server
Yes
SensingKit
Web server
Depends on application
Socialise
Web server
Yes
unforgettable.me
Web
Web server on Amazon EC2, Data storage on Amazon S3, Cloudsearch
Sensor (and other) data that can be captured (part 1)
The following table shows the types of mobile sensors from which each software package is capable of collecting sensor data. Note that the type of data collected depends on availability of the appropriate sensor hardware on a specific smartphone. Some software packages collect raw sensor data (e.g. Beiwe) whereas others collect summaries of such data (e.g. ResearchKit).
Mobile sensor input provided through SensingKit[48] (below)
SensingKit
Yes
Yes, iOS only
Yes
Yes, Android only
No
Yes
Yes
Yes, Android only
Yes
No
Socialise
Yes
No
Yes
Yes
No
No
No
No
No
No
Sensor and data that can be captured (part 2)
The following table shows the types of mobile sensors from which each software package is capable of collecting passive data. Note that the type of data collected depends on availability of the appropriate sensor on the smartphone.
Mobile sensor input provided through SensingKit[48] (below)
SensingKit
Yes
Yes
Yes
No
Yes, only on iOS
Yes
No
No
No
Socialise
No
Yes
No
No
Yes
No
Yes
No
No
Support for behavioral studies
The following table contains information regarding availability of functions, within each software package, that support behavioral experiments for scientific purposes.
Behavioral studies features
Name
How does data get from phone to database?
Can surveys be triggered by phone sensors?
Can surveys be triggered remotely by investigator?
Can sensor data config. be remotely changed?
Can platform monitor data gaps and alert investigator?
Does platform support running scripts on phone?
AWARE
Sensor data is uploaded to an AWARE Server instance (hosted or self-hosted) when online (WiFi only or any available connection)[4]
(1) manual export or Android file transfer service, (2) manual transfer from device's memory card, (3) setting up server and configure funf to upload data to server.[17]
The following table contains information relative to battery management for each software package. As passive data collection from smartphone sensors is a battery-intensive process, methods to maximize battery performance are important for this type of software.
Supported features
Name
Relative drain on battery
Methods of managing battery life
AWARE
Overall battery impact on average: 19.7mA when sensing only; 24.7mA when storing locally; and 138mA when connected to server[4]
Built-in location algorithm that minimizes battery drain.[54] Also uses event based sampling, opportunistic analysis and scheduled synching to reduce battery consumption[4]
Beiwe Research Platform
Internal testing of Beiwe did not result in significant battery drain [5]
Battery drain depends entirely on data collection settings
Cenceme
Unknown
Unknown
Context sensing
Unknown
Unknown
EARS
Rates of battery drainage are affected by which sensors are activated. The EARS Android app drains around 0.38% of the battery of a Samsung Galaxy 7 every hour of collection on all sensors. On newer devices or devices with fewer sensors, a smaller percentage is drained every hour.
Battery drain depends entirely on data collection settings
Empath
Unknown
Unknown
Expimetrics
Unknown
Unknown
Emotion sense
Unknown
To extend battery life, Emotionsense offloads computations to a remote server[55]
The battery drain (in seconds per %) of old uploader plugin was 211 seconds; after introducing a new uploader, the battery drain was 584 seconds[56]
In 2014 purplerobot introduced optimizations that increased battery life 176%[56]
Radar-CNS
Unknown
Unknown
RealLife Exp
Unknown
Unknown
ResearchKit
Depends on implementation
Depends on implementation
Research Stack
Depends on implementation
Depends on implementation
SensingKit
Battery performance was measured on an iPhone 5S running iOS 9.2 and the battery had the following duration performance: idle (51hrs), accelerometer (31hrs), gyroscope (28hrs), magnetometer (34hrs), device motion (21hrs), location (18hrs)[30]
Unknown
Socialise
Battery performance was assessed on participants' own devices. Average battery life was 21.3 hours when app was not scanning and 18.8 hours when GPS, Bluetooth and battery data was collected every 5 minutes[32]
Unknown
Software maintenance and support
The following table contains information relative to maintenance and support for each software package. The information provided in this table gives an idea of the likelihood of a package to be supported in the future.
Software maintenance and support features
Name
Online documentation available
User's forum / technical support
How actively is software maintained?
User base
Support for bugs and updates
Location of source code (GitHub, SourceForge, Bitbucket, Launchpad)?
Intel Context sensing SDK developer's forum at Intel.com[60]
Unknown
Unknown
From May 18, 2016, to July 3, 2017, there were two issues posted the developers forum, one of then had 2 replies from intel and the other one had one reply from intel staff[60]
The sensor manager for Android had 0 commits from the week of July 10, 2016 to July 3, 2017. The Android sensor data manager had 0 commits from the week of July 10, 2016 to July 3, 2017. The iOS survey manager had 0 commits from the week of July 10, 2016 to July 3, 2017. The iOS sensor manager has 0 commits from the week of July 10, 2016 to July 3, 2017.
33 topics at their Google Group's developers forum. From July 3, 2016, to July 3, 2017, there were 5 topics opened, for a total of 11 posts. The forum seems to have gone silent since March 2017.
The developers forum seems to have gone silent since March 2017 and no issues have been raised in the GitHub page in the last year (July 3, 2016 to July 3, 2017).
Funf open sensing framework Android library and 0 commits from week of July 10, 2016 to July 3, 2017. The processing data scripts repository had 0 commits from week of July 10, 2016 to July 3, 2017.
The Funf developers google group has 338 members and a total of 229 topics, the large majority of which were started before the last year (July 3, 2016 to July 3, 2017).[65]
A total of 60 issues were reported on the Funf open sensing framework at GitHub, 52 of which were resolved. No issues have been reported in the last year (July 3, 2016 to July 3, 2017).
In the Passive data kit for Android there have been 64 commits from the week of July 10, 2016 to July 3, 2017. In the passive data kit for iOS there have been 19 commits from the week of July 10, 2016 to July 3, 2017. In the passive data kit online server there have been 75 commits from the week of July 10, 2016 to July 3, 2017
The questionnaire mobile application code had 111 commits from the week of July 10, 2016 to July 3, 2017 (4 contributors). The dashboard source code had 290 commits from the week of July 10, 2016 to July 3, 2017 (4 contributors). The functionality for Android passive plugins had 372 commits from the week of July 10, 2016 to July 3, 2017 (6 contributors). The phone sensor plugin for passive remote monitoring app had 301 commits from the week of July 10, 2016 to July 3, 2017 (6 contributors). The android app source code had 139 commits from the week of July 10, 2016 to July 3, 2017 (5 contributors).
The repositories contained within Radar-CNS GitHub's account have been forked 20 times, which might be an indicator of the user/developer base
Questionnaire source code has a total of 13 open issues and 13 closed issues. The dashboard source code has a total of 25 open issues and 11 issues closed. The functionality for Android passive plugins has a total of 6 issues open and 3 closed. The phone sensor plugin has 0 total issues. The android app code has 13 issues open and 14 closed.
Sensingkit for iOS source code had 282 commits from the week of July 10, 2016 to July 2, 2017 (1 contributor).Sensingkit for Android had no commits from the week of July 10, 2016 to July 2, 2017 (1 contributor). Sensingkit server platform had no commits from the week of July 10, 2016 to July 2, 2017 (1 contributor)
15 forks total in Sensingkit for Android, iOS and server
There was a total of 3 issues open and 6 closed in iOS, Android and server repositories combines, all of the issues occurred within the last year (July 3, 2016 to July 2, 2017).
The following table contains information relative to encryption and secure transfer of data collected from smartphone sensors. This information is very important for a data collection app due to privacy concerns over the handling of phone data.
Security and privacy
Name
Database encryption?
Secure data transfer?
AWARE
Locally protected by application signature and permission; enabled remotely by MySQL server deployment[75]
SHA-256 with a 2048-bit long RSA strong encryption key or encrypted with any SSL certificate[33]
Beiwe Research Platform
All data on phones, on the server, and in-transit use industry-standard encryption techniques. Data on phones and server are encrypted using 2048 bit RSA encryption and AES[35]
Web app to server transmission: synchronous and asynchroonus SSL encryption; mobile app to server transmission: encoded using Base64 and encrypted using AES 256 bit encryption prior to transmission[70]
ResearchKit
Not provided, thus it is the responsibility of the developer
Encrypted communication between app and server not provided
^Prevention of Mental Health Disorders Using Internet- and Mobile-Based Interventions: A Narrative Review and Recommendations for Future Research. Ebert DD, Cuijpers P, Muñoz RF and Baumeister H (2017) Front. Psychiatry 8:116. DOI: 10.3389/fpsyt.2017.00116
^Behavioral intervention technologies: evidence review and recommendations for future research in mental health. Mohr DC, Burns MN, Schueller SM, Clarke G, Klinkman M. General Hospital Psychiatry Volume 35, Issue 4, July–August 2013, Pages 332-338. DOI: 10.1016/j.genhosppsych.2013.03.008
^License(s) stated are only a summary. Some software packages may use libraries under different licenses.
^ abcdeAWARE: mobile context instrumentation framework; Ferreira D, Kostakos V and Dey AK Front. ICT (2015); 2:6; DOI:10.3389/fict.2015.00006
^ abNew Tools for New Research in Psychiatry: A Scalable and Customizable Platform to Empower Data Driven Smartphone Research; Torous J, Kiang MV, Lorme J, Onnela JP; JMIR Ment Health (2016);3(2):e16 DOI:10.2196/mental.5165
^ abcdLind, M. N., Byrne, M. L., Wicks, G., Smidt, A. M., & Allen, N. B. (2018). The Effortless Assessment of Risk States (EARS) Tool: An Interpersonal Approach to Mobile Sensing. JMIR Mental Health, 5(3), e10334–10. [1]
^ abcdEmpath: a continuous remote emotional health monitoring system for depressive illness; Robert F. Dickerson, Eugenia I. Gorlin, John A. Stankovic; WH '11 Proceedings of the 2nd Conference on Wireless Health; Article No. 5; San Diego, California — October 10–13, 2011; DOI: 10.1145/2077546.2077552
^Happier People Live More Active Lives: Using Smartphones to Link Happiness and Physical Activity; Neal Lathia, Gillian M. Sandstrom, Cecilia Mascolo, Peter J. Rentfrow; (2017); PLoS ONE 12(1): e0160589; DOI: 10.1371/journal.pone.0160589
^Social fMRI: Investigating and shaping social mechanisms in the real world; Nadav Aharony, Wei Pan, Cory Ip, Inas Khayal, Alex Pentland; Pervasive and Mobile Computing (2011); DOI:10.1016/j.pmcj.2011.09.004
^ abcBehavioral Indicators on a Mobile Sensing Platform Predict Clinically Validated Psychiatric Symptoms of Mood and Anxiety Disorders; Place S, Blanch-Hartigan D, Rubin C, Gorrostieta C, Mead C, Kane J, Marx BP, Feast J, Deckersbach T, Pentland A, Nierenberg A, Azarbayejani A; J Med Internet Res (2017);19(3):e75 DOI:10.2196/jmir.6678
^An open source mobile platform for psychophysiological self tracking; Gaggioli A, Cipresso P, Serino S, Pioggia G, Tartarisco G, Baldus G, Corda D, Riva G; Stud Health Technol Inform. (2012);173:136-8 DOI:10.3233/978-1-61499-022-2-136
^Purple: A Modular System for Developing and Deploying Behavioral Intervention Technologies; Schueller SM, Begale M, Penedo FJ, Mohr DC; J Med Internet Res 2014;16(7):e181; DOI:10.2196/jmir.3376
^ abcApple’s ResearchKit: smart data collection for the smartphone era?; Jennifer Jardine, Jonathan Fisher, Benjamin Carrick; Journal of the Royal Society of Medicine; Vol 108, Issue 8, pp. 294 - 296 (2015); DOI:10.1177/0141076815600673.
^Poster: SensingKit: a multi-platform mobile sensing framework for large-scale experiments; Kleomenis Katevas, Hamed Haddadi, Laurissa Tokarchuk; Published in: Proceeding MobiCom '14 Proceedings of the 20th annual international conference on Mobile computing and networking; Pages 375-378; Maui, Hawaii, USA — September 07–11, 2014; DOI: 10.1145/2639108.2642910
^ abcUsing Mobile Phone Sensor Technology for Mental Health Research: Integrated Analysis to Identify Hidden Challenges and Potential Solutions. Boonstra TW, Nicholas J, Wong QJ, Shaw F, Townsend S, Christensen H (2018) J Med Internet Res 20(7):e10131. [2]
^ abResearchKit provides data collection in two ways: (1) through predefined macros for detection of active tasks, where each task state is extracted from information obtained through a combination of phone sensors (please refer to table at researchkit.org/docs/docs/ActiveTasks/ActiveTasks.html); and (2) through the iOS HealthKit and CoreMotion (https://developer.apple.com/documentation/coremotion developer.apple.com/documentation/coremotion) APIs.
^Speakersense: Energy efficient unobtrusive speaker identification on Mobile Phones; in Pervasive computing: 9th International Conference, Pervasive (2011) San Francisco; Edited by K Lyons, J Hightower, EM Huang