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, as well as bringing such interventions to populations that have no access to traditional health care. 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.

+NameCreatorLatest releaseLatest release dateSoftware licenseOpen sourceProgramming languageData backendAWAREWeb dashboard and Android client: Denzil Ferreira (Community Instrumentation & Awareness, University of Oulu); Mac OSX and iOS clients: Yuuki Nishiyama (Tokuda Laboratory, SFC, Keio University)4.0.836 (Android); 1.14.12 (iOS)2023 (Android and iOS)Web dashboard: PHP, HTML, JavaScript; Android client: Java & Kotlin; Mac OSX and iOS clients: Objective-C & SwiftMySQLBeiwe Research PlatformHSPH Onnela Lab2.0.4 (iOS) 3.1.4 (Android)Aug 31, 2021 iOS July 22, 2021 AndroidWeb dashboard: HTML, JavaScript; back-end and data analysis pipeline: Python, R, JavaScript; Android client: Java; iOS client: Swift, Objective-CAmazon Web ServicesCenceMeSmartphone Sensing Group, Dartmouth College1.2.0 (iOS)July 27, 2009 (iOS)Python, Perl, PHP, BashMySQLContext Sensing SDKIntelv1.0-beta2 (Windows Mobile); v1.8 (Android)March 18, 2016 (Android)Intel Discontinued this productAndroid: Java; Windows Mobile: C#EARSKsana HealthAndroid 2.038; iOS 2.1.5August 2023Android: Java; iOS: SwiftAmazon Web ServicesEmpathDepartment of Computer Science, University of Virginia2011MySQLExpimetricsLouis Tay, Purdue UniversityEmotion SenseDepartment of Psychology, University of CambridgeApril 25, 2017JavaSQLiteFunf Open Sensing FrameworkOriginally at MIT Media Lab, now maintained by Behavio (Google)v0.5.0RC1September 4, 2015JavaSQLitem-Path Sensem-Path (KU Leuven)2.8.0 (iOS and Android)July 4, 2023proprietaryNoApp: Flutter (Dart), Dashboard: PHP, JavaScriptMySQLmindLAMP PlatformDivision of Digital Psychiatry @ Beth Israel Deaconess Medical Centerv2.0May 2, 2023BSD-3TypeScript, Python, R, Swift, KotlinFlexible (noSQL)mEMAIllumivu IncMetricwireMetricwire IncMobile Sensing PlatformCogito CorporationmovisensXSMovisens GmbH1.1.1January 5, 2017Java, KotlinMurmurasUniversity of Bonn spin-off Murmuras (based on the Menthal project)2.2.1August 24, 2020Android: Java, Kotlin; Web: Python, R, JavaScriptPostgreSQLPassive Data KitAudacious SoftwareSummer 2017iOS: Objective-C, Android: Java, Web: JavaScript/Python/HTMLSQLitePsychlogInstituto Auxologico Italiano and National Research Council of ItalyApril 11, 2013License-free softwareC#MySQLPsyt ResearchPsychological Technologies (PSYT Ltd)2.1June 2017Native iOS (Objective-C), native Android (Java), JavaScriptHosted (backed by PostgreSQL)Purple RobotCBITS, Northwestern University2.0.8November 3, 2015JavaPostgreSQLRadar-CNSKing's College and Janssen Pharmaceutica NV2.0.3-beta (dashboard); 0.1-alpha.2 (Android)June 23, 2017 (dashboard); April 13, 2017 (Android)Android: Java, Web: TypeScriptMongoDBRealLife expLifeData LLCResearchKitApple1.5June 7, 2017Objective-C, SwiftResearch StackCornell Tech's Small Data Lab and open mHealth1.1.1November 18, 2016JavaSensingKitQueen Mary University of London0.5.1 (iOS), 0.2.0 (Android)September 20, 2018 (iOS) July 29, 2015 (Android)Objective-C, Swift, JavaSocialiseBlack Dog Institutev0.2June 16, 2017iOS: Objective-C, Android: JavaStudyRunSelby Labs Pty Ltd1.3 (Android and iOS)2026 (Android and iOS)Mobile clients: Kotlin (Kotlin Multiplatform) and Swift; Web dashboard: TypeScript; Back-end: PythonPostgreSQL (TimescaleDB)unforgettable.meUnforgettable Research Services0.9.6 (Android)December 5, 2017Java, Python, JavaScriptAmazon Web Services

Target audience 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 audienceNameDevelopersResearchersIndividualsAWAREBeiwe Research PlatformCencemeContext sensing SDKEARSEmpathExpimetricsEmotion SenseFunfm-Path SensemindLAMP PlatformmEMAMetricwireMobile Sensing PlatformMovisensXSMurmurasPassive Data KitPsychlogPsytPurple RobotRadar-CNSRealLife ExpResearchKitResearch StackSensingKitSocialiseStudyRununforgettable.me

Mobile OS support The following table shows the type of mobile phone on which each software package can be deployed. +Supported OSNameAndroidiOSWindows mobileNokiaAWAREBeiwe Research PlatformCencemeContext sensingEARSEmpathExpimetricsEmotion senseFunfm-Path SensemindLAMP PlatformmEMAMetricwireMobile Sensing PlatformMovisensXSMurmurasPassive Data KitPsychlogPsytPurple RobotRadar-CNSRealLife ExpResearchKitResearch StackSensingKitSocialiseStudyRununforgettable.me

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 requirementsNameServer platform (operating system or web)Web server requiredAWAREWebBeiwe Research PlatformWebCencemeWebContext sensingWeb / Windows / MacEARSWebEmpathWebExpimetricsEmotion senseWebFunfWebm-Path SenseWebmindLAMP PlatformWebmEMAWebMetricwireWebMobile Sensing PlatformMovisensXSWebMurmurasWebPsychlogPsytWebPurple RobotWebRadar-CNSFrontend dashboard appRealLife ExpWebResearchKitWeb serverResearch StackWeb serverSensingKitWeb serverSocialiseWeb serverStudyRunWebunforgettable.meWeb 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). +Supported sensors and dataNameAccelerometerBarometerBatteryBluetoothECGGravityGyroscopeLightMagnetometerWifiAWARE (Android only)Beiwe Research Platform (Android only) (iOS only) (iOS only)CencemeContext sensingEARS (Android only)Empathcolspan=10 ExpimetricsEmotion senseFunfm-Path SensemindLAMP PlatformmEMAMetricwirecolspan=10 Mobile Sensing PlatformMovisensXSMurmurasPassive Data KitPsychlogPsytPurple RobotRadar-CNSRealLife ExpResearchKitResearch Stackcolspan=10 SensingKitSocialiseStudyRun (Android only)

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. +Supported sensors and dataNameLinear accelerometerLocationAudioPressure sensorProximityRotationSurveysTemperatureNetwork reachabilityAWARE (Android only) (Android only)Beiwe Research Platform (iOS only)CencemeContext sensingEARSEmpathcolspan=9 ExpimetricsEmotion senseFunfm-Path SensemindLAMP PlatformmEMAMetricwireMobile Sensing PlatformMovisensXSMurmurasPassive Data KitPsychlogPsytPurple RobotRadar-CNSRealLife ExpResearchKitResearch Stackcolspan=9 SensingKitSocialiseStudyRun (Android only)

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 featuresNameHow 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?AWARESensor data is uploaded to an AWARE Server instance (hosted or self-hosted) when online (WiFi only or any available connection)Beiwe Research PlatformWifi or cellularCencemeContext sensingEARSSensor data is uploaded to AWS when connected to Wifi or Mobile Data.EmpathRemote server connectionExpimetricsEmotion senseWifiFunf(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.m-Path SenseSensor data is regularly uploaded to m-Path servers when Wi-Fi is availablemindLAMP PlatformWiFi and Cellular DatamEMAMetricwireMobile Sensing PlatformMovisensXSCell or Wifi. Online and OfflineMurmurasWiFi or cellular.Passive Data KitPsychlogPsytHosted data store; automatic over-the-air background ploadPurple RobotSensor data and user provided information is securely transmitted to custom data warehousesRadar-CNSRealLife ExpResearchKitWi-fi or cellularResearch StackWi-fi or cellularSensingKitSocialiseWi-fi or cellularStudyRunSensor data is buffered locally and uploaded in batches over Wifi or cellular to a hosted or self-hosted server Battery management 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.