This is a plethora of small, related research projects. The first one
was a collaborative pilot project with Drs. Rodrigo Romero and Sergio
Cabrera of ECE, entitled HifoCap: A Wearable System for Detecting
High Frequency Oscillations in EEGS of the Human Brain.
The goal of the project was to investigate a wearable system for
automatic detection of scalp high frequency oscillations (HFO). A
wearable HifoCap device (cap) senses cortical signals and processes
them with an embedded system. The main processing steps include
amplification, filtering, and HFO detection. EEG waves containing HFOs
are wirelessly transmitted to a smart phone (or tablet) using a
personal area network protocol such as Bluetooth. An app running on
the smart phone receives EEG waves for recording, time stamping,
plotting, logging, and wireless transmission using a local area
network protocol such as IEEE 802.11 to a cloud storage server. A
future generation of the system may include full raw data acquisition
and storage in a cloud server to support multiple types of off-line
analysis.
Our research team, consisting of Oliver Singayigaya (MSSwE), Javier
Garcia (MSEng), John Ramirez (BS), Brian Adriana Escobar (BS), and
Brain Espinosa (BS), was responsible for developing an Android app for
EEG data visualization and cloud server transfer. We identified many
interesting challenges in developing a data intensive, soft real time
system on non-dedicated Android devices such as smartphones and
tablets. We classified these challenges based on their causes, e.g.,
interrupts such as incoming calls and notifications, lack of control
on app's lifecycle (especially, suspension and destruction), garbage
collection, high communication bandwidth (1.96 Mbps), long and
continuous running, and network coverage outage. We proposed possible
solutions to some of these challenges -- e.g., disabling/removing
unpredictable services, minimizing the garbage collection time,
selective decoding and visualization of EEG samples, optimization of
network I/O, and light UI -- and showed the effectiveness of the
proposed solutions by developing a prototype [Cheon, Romero and Garcia
2017]. We also observed and learned that the best practices for
writing Java programs are not always best practices for Android
applications [Cheon 2016]. They can be sources of memory performance
issues [Escobar and Cheon 2017].
We recently become more interested in applying established software engineering principles, techniques, and methods to mobile application developments [Cheon 2012]. Examples include applications of model-driven development [Cheon and Barua 2018] multiplatform application development [Speicher and Cheon 2018] [Cheon 2019], and code reuse [Cheon, Chavez and Castro 2019].
Last modified: $Id: mobileapp.html,v 1.3 2019/08/17 09:23:44 cheon Exp $