Using the AGILE framework to implement a Quantified Self application: Advantages and Challenges

New biosensors are released daily promising to help us monitor important biosignal parameters.  Until recently, lower priority has been given to interoperability while emphasis has been put on data collection, many times on remote servers without the level of guarantees that the user’s data will not be misused.  The AGILE software stack with the component-based architecture and open source licensing and development model allows for the implementation of a fully-fledged gateway under the user’s control.

The proliferation of a multitude of biosignal sensors and activity trackers to gather user biosignal and wellness attributes poses unique challenges for their effective integration into user-centric applications which will provide valuable insights and promote healthy behaviors. Such sensors include medical sensors for biosignals such as heart-rate, oxygen saturation and weight, b) trackers measuring activity and steps, and c) smartwatches that also incorporate the biosignal or activity measurement functionality.

The architecture of the AGILE Software stack allows for the integration of new sensors increasing the usefulness of the Agile Gateway in many applications. In order to ease access to sensors data the Agile –IoT project has defined a set of REST commands which homogenize access to sensors. Unfortunately, due to the great variance of features and access protocols between devices, great effort is needed to integrate them via the implementation of corresponding device drivers but the architecture of the AGILE software stack aims to ease these difficulties.  AGILE offers two methods of device integration:

  • Protocol-based implementation: Implementation of functionality which converts device communication to Agile compliant protocol primitives.
  • Device based implementation: Implementation of device communication using existing AGILE PAN networking protocols. Bluetooth Low Energy and Zigbee are currently supported.

Sensor values from BLE devices can have various formats depending on the underlying parameter that is being measured.  The values sent to the gateways can be sent as:

  • Single Measurements: The information of the measured parameter is fully described in a single transaction. Devices that send data in this way include blood pressure monitors and glucometers.
  • Multiple Measurements: Information is dependent upon a sequence of measured values in a specific timeframe ranging from seconds to hours. Devices which fall in this category include oximeters and ECGs.
  • Continuous Monitoring: In this case, data is sent to the gateway in real-time or stored continuously on the device until connectivity to the gateway is possible. Wearables (activity trackers and smartwatches) as well as sensors that monitor continuously various biosignals belong to this category.

The Quantified Self Application

The Quantified Self application uses the AGILE software stack to access data from the supported sensors.  The application allows the user to monitor his activity against predefined goals. Sensor-based and cloud-sourced data can be used to quantify the progress.

Figure 1. Activity Summary and User Goals










Figure 2. Sensor and Cloud Activity Visualizations

The application also allows the monitoring of the following biosignals via supported devices

  • Blood Pressure
  • Heart Rate
  • Oxygen Saturation
  • Body Weight

Figure 3. Biosignal Visualizations













*The Quantified-Self application has been developed by BioAssist S.A. in the frame of the respective AGILE Pilot.

AGILE Pilot: Quantified Self

The Quantified Self concept refers to the use of technologies for collecting data about peoples’ daily activities. Smartphone apps, physical activity trackers, biometric sensors and IoT devices allow people to monitor important aspects of their daily lives, such as their physical activity, heart rate and mood, with the aim to learn more about themselves, improve their well-being and adopt a healthier lifestyle. In this context, the user is capable of not only storing their data to a location of their choice, such as their own server or private cloud, but also sharing their data with whomever they choose, such as their social circle or their physician. However, the process of sharing this data remains complex, mainly due to the fact that each vendor uses different communication mechanisms and requires a separate application for the persistent storage and visualization of data.Continue reading