Difference between revisions of "Mobile Medical Device Integration"
Chris Tyler (talk | contribs) m (Reverted edits by Chris Tyler (talk) to last revision by Zmhassan) |
|||
(54 intermediate revisions by 8 users not shown) | |||
Line 1: | Line 1: | ||
− | + | ''''' NexJ/MyOSCAR Medical Peripheral Mobile Adapter ''''' | |
− | + | Will be designed to enable NexJ's Mobile Healthcare solutions to interact with Bluetooth/WiFi peripherals. | |
− | [ | + | |
+ | [https://cs.senecac.on.ca/~jordan.anastasiade/ECL/tmp/VideoBP-March30-h200.mp4 <u>'''First Application: Blood Pressure/Weight Scale to Android using Bluetooth protocol'''</u>] | ||
+ | |||
+ | {{TOC limit}} | ||
+ | == Project Status == | ||
+ | '''Goal for March 2014:''' | ||
− | + | [[File:nexj-deliverables.png|thumb|center|600px]] | |
− | ''' | + | '''Not yet completed tasks:''' |
− | + | * MyOscar: Push data to myoscar and pull updates at the end of the day | |
+ | * Dylan: Write guide for downloading, building and using the app | ||
+ | * Dylan: Make sure projects are easily buildable | ||
+ | * Dylan: evaluate Nexj Connected Wellness API | ||
+ | * Using [https://github.com/commonsguy/cwac-wakeful CWAC-Wakeful Service] Schedule a batch process for uploading | ||
+ | workout data to MyOscar. | ||
+ | * Design a robust syncronized integration with MyOscar to update every 24 hours. | ||
+ | * Design a db table for storing metadata of success or failure of syncing. | ||
+ | * After successful syncing to MyOscar you should remove metadata from the phone to save space. | ||
+ | '''Wishlist:''' | ||
+ | * Withings scale support in HealthFirst | ||
+ | <s>* Fitbit support in HealthFirst</s> | ||
+ | * make graph code loose coupled major problem in graph by setting a limit to the graphviewdata. Use linkedlist. | ||
+ | * Created Notification for Errors when synchronizing with MyOscar. | ||
+ | * Dylan: Retrieve blood pressure, pulse and glucose measurements from a Fitbit account. | ||
− | : ''{{ | + | '''Completed tasks:''' |
− | : ''{{ | + | * Wei: Merge Phonega and Native versions of our library |
+ | * Wei: Phonegap implementation of library to retreive data from bluetooth A&D weight scale. | ||
+ | * Wei: Phonegap implementation of library to retreive data from bluetooth A&D blood pressure monitor. | ||
+ | * Wei: Phonegap implementation of library to retreive data from OneTouch glucometer via BluGlu bluetooth dongle. | ||
+ | * Wei: Phonegap implementation of library to retreive data from OneTouch glucometer via Polytel bluetooth dongle. | ||
+ | * Dylan: POC native Android code to connect to FitBit servers and retrieve data uploaded by a FitBit device using their API. | ||
+ | * Dylan: POC native Android code to connect to Withings servers and retrieve data uploaded by a Withings weight scale. | ||
+ | * Dylan: POC native Android code to connect to MyOSCAR and retrieve/upload data. | ||
+ | * Dylan: Port Phonegap library implementation to retrieve data from bluetooth A&D devices to native Android. | ||
+ | * Dylan: Retrieve weight and blood pressure measurements from a Withings account. | ||
+ | * Dylan: Retrieve weight measurements from a Fitbit account. | ||
+ | * Dylan: Retrieve Polytel bluetooth glucometer readings in native Android code. | ||
+ | * Dylan: Package the native library as a .jar file. | ||
+ | * Dylan: Create a common interface between Withings and Fitbit. | ||
+ | * Dylan: Write up explanation for using Withings | ||
+ | * Dylan: Write up explanation and UI for Fitbit | ||
+ | * Dylan: Complete demo app functionality for A&D weight scale | ||
+ | * Dylan: Complete demo app functionality for A&D blood pressure monitor | ||
+ | * Dylan: Complete demo app functionality for polytel dongle | ||
+ | * Dylan: Add MyOscar section | ||
+ | * Dylan: Double-check there aren't any credentials hardcoded in distributable code | ||
+ | * Alek: human-usable version of Phonegap application to work with A&D weight scale, blood pressure monitor, and BluGlu. | ||
+ | * Alek: Rewrite the first screen of the Demo MMDI app in Java (UI and retrieval of paired devices complete). Assumes Bluetooth is already enabled. | ||
+ | * Alek: Make a new list of bluetooth-capable medical devices | ||
+ | * Zak: Proof of concept of integrating heart beat monitor with Android. | ||
+ | * Zak: Design of initial user interface | ||
+ | * Zak: Developing persistence implementation with SQLite | ||
+ | * Zak: Start workout button to connect to device to make sure it recieves data | ||
+ | * Zak: Make sure data is pulled per second to get up to date readings | ||
+ | * Zak: Plot data on graph (5 min range) | ||
+ | * Zak: Put the workout app into mercurial. | ||
+ | * Zak: End workout will do the clean up stuff. | ||
+ | * Zak: Designed java class for aggregating medical reading information into one JSON string to be stored in sqlite and generate object to work with. | ||
+ | * Zak: Display of graph data of a work out that was saved. | ||
+ | * Zak: Listing of workouts saved on phone. | ||
+ | * Zak: Notification code is working on the phone. When error message is clicked it goes to an error page. | ||
+ | * Zak: Designed LinkedList data structure to generate JSON data in SQLite. Using the same principles of [http://martinfowler.com/nosql.html NoSQL]. For every reading we will store the following JSON | ||
+ | { 'Reading' : '[0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0]' , | ||
+ | 'theshold' : '[{'reading' : '0', 'over' : '20.0' },{'reading' : '1', 'over' : '20.0' },{'reading' : '2', 'over' : '20.0' },{'reading' : '3', 'over' : '20.0' },{'reading' : '4', 'over' : '20.0' },{'reading' : '5', 'over' : '20.0' },{'reading' : '6', 'over' : '20.0' },{'reading' : '7', 'over' : '20.0' },{'reading' : '8', 'over' : '20.0' },{'reading' : '9', 'over' : '20.0' }]' } | ||
− | + | == Current Contributors == | |
− | + | * [[User:Wei.song|Wei Song]] | |
+ | * [[User:zmhassan|Zakeria Hassan]] | ||
+ | * [[Dylan Segna]] | ||
+ | * [[Alek Minassian]] | ||
+ | == Past Contributors == | ||
* [[User:Cwdesautels|Carl Desautels]] | * [[User:Cwdesautels|Carl Desautels]] | ||
− | * [[ | + | * [[Edward Hanna]] |
− | === | + | === Blog === |
− | * [http:// | + | * [http://senecahealth.wordpress.com/ Seneca Health Research Projects] |
− | |||
− | |||
− | |||
− | |||
== Problem == | == Problem == | ||
Line 37: | Line 94: | ||
The unified JavaScript API will be developed to utilize PhoneGap's JavaScript API to make native code calls. These native calls will focus on a medical Bluetooth device adapter which also must be implemented. This Bluetooth adapter will be extended for each supported measuring device and implemented on each supported mobile operating system. | The unified JavaScript API will be developed to utilize PhoneGap's JavaScript API to make native code calls. These native calls will focus on a medical Bluetooth device adapter which also must be implemented. This Bluetooth adapter will be extended for each supported measuring device and implemented on each supported mobile operating system. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== Project Repository == | == Project Repository == | ||
+ | * https://cdot.senecacollege.ca/hg | ||
* https://bitbucket.org/nexj/mobile-bluetooth-adapters | * https://bitbucket.org/nexj/mobile-bluetooth-adapters | ||
Line 85: | Line 104: | ||
* [https://developer.mozilla.org/en-US/docs/Mercurial Mozilla Mercurial Docs] | * [https://developer.mozilla.org/en-US/docs/Mercurial Mozilla Mercurial Docs] | ||
− | == | + | ==Introduction== |
− | + | Most of us probably have some relative that may be in and out of hospital or some may have a critically ill relative. Wouldn't it be nice to have some way of monitoring how they are doing? Wouldn't it be great to see all this information on your smart phone? Wouldn't it be great to have not only the information freely available to patients but also that the software is free and open source? I will explain the cutting edge technology/research we are conducting. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | == | + | ==What is MyOscar?== |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | MyOscar is a personal health record system which was created to give patients the freedom to see their medical records. Not only are patients able to see this information but also share this information with family and loved ones. The software is open source. To read more about it visit: | ||
+ | http://myoscar.org/myoscar/about-myoscar | ||
+ | ==Should Patients Have Access To Their Personal Medical Data And Why?== | ||
+ | You may have an elderly parent or grandparent that you may want to monitor if their condition becomes critical while at work or traveling. Or you may have a critically ill loved one that you may be taking care of. We think by having this technology, it would make it possible to help improve peoples lives and relieve worries. | ||
+ | ==Critical Care Patient Monitoring And Can Technology Help?== | ||
− | + | We believe that yes, it could be possible to help a patients for example a critical care patient which would need around the clock monitoring. Perhaps with technology like this patients could leave the hospital and allow their caregivers to monitor them through an application (smart phone). | |
+ | ==Our Efforts At Seneca Center of Development Of Open Source Technology== | ||
− | + | We are researchers, students and professors that believe that it may be possible to improve the healthcare industry through cutting edge technology. We believe that this technology we create should be open source. We have created mobile applications that read wireless via Bluetooth to retrieve accurate medical data. Currently we are working on syncing this data with MyOscar EMR to further improve accessibility of patient data. | |
− | + | [[Category: NexJ_Express]] | |
− | + | [[category: NexJ Current Projects]] | |
− | + | [[category: NexJ Express PhoneGap]] | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− |
Latest revision as of 19:31, 23 April 2018
NexJ/MyOSCAR Medical Peripheral Mobile Adapter Will be designed to enable NexJ's Mobile Healthcare solutions to interact with Bluetooth/WiFi peripherals.
First Application: Blood Pressure/Weight Scale to Android using Bluetooth protocol
Contents
- 1 Project Status
- 2 Current Contributors
- 3 Past Contributors
- 4 Problem
- 5 Project Repository
- 6 Introduction
- 7 What is MyOscar?
- 8 Should Patients Have Access To Their Personal Medical Data And Why?
- 9 Critical Care Patient Monitoring And Can Technology Help?
- 10 Our Efforts At Seneca Center of Development Of Open Source Technology
Project Status
Goal for March 2014:
Not yet completed tasks:
- MyOscar: Push data to myoscar and pull updates at the end of the day
- Dylan: Write guide for downloading, building and using the app
- Dylan: Make sure projects are easily buildable
- Dylan: evaluate Nexj Connected Wellness API
- Using CWAC-Wakeful Service Schedule a batch process for uploading
workout data to MyOscar.
- Design a robust syncronized integration with MyOscar to update every 24 hours.
- Design a db table for storing metadata of success or failure of syncing.
- After successful syncing to MyOscar you should remove metadata from the phone to save space.
Wishlist:
- Withings scale support in HealthFirst
* Fitbit support in HealthFirst
- make graph code loose coupled major problem in graph by setting a limit to the graphviewdata. Use linkedlist.
- Created Notification for Errors when synchronizing with MyOscar.
- Dylan: Retrieve blood pressure, pulse and glucose measurements from a Fitbit account.
Completed tasks:
- Wei: Merge Phonega and Native versions of our library
- Wei: Phonegap implementation of library to retreive data from bluetooth A&D weight scale.
- Wei: Phonegap implementation of library to retreive data from bluetooth A&D blood pressure monitor.
- Wei: Phonegap implementation of library to retreive data from OneTouch glucometer via BluGlu bluetooth dongle.
- Wei: Phonegap implementation of library to retreive data from OneTouch glucometer via Polytel bluetooth dongle.
- Dylan: POC native Android code to connect to FitBit servers and retrieve data uploaded by a FitBit device using their API.
- Dylan: POC native Android code to connect to Withings servers and retrieve data uploaded by a Withings weight scale.
- Dylan: POC native Android code to connect to MyOSCAR and retrieve/upload data.
- Dylan: Port Phonegap library implementation to retrieve data from bluetooth A&D devices to native Android.
- Dylan: Retrieve weight and blood pressure measurements from a Withings account.
- Dylan: Retrieve weight measurements from a Fitbit account.
- Dylan: Retrieve Polytel bluetooth glucometer readings in native Android code.
- Dylan: Package the native library as a .jar file.
- Dylan: Create a common interface between Withings and Fitbit.
- Dylan: Write up explanation for using Withings
- Dylan: Write up explanation and UI for Fitbit
- Dylan: Complete demo app functionality for A&D weight scale
- Dylan: Complete demo app functionality for A&D blood pressure monitor
- Dylan: Complete demo app functionality for polytel dongle
- Dylan: Add MyOscar section
- Dylan: Double-check there aren't any credentials hardcoded in distributable code
- Alek: human-usable version of Phonegap application to work with A&D weight scale, blood pressure monitor, and BluGlu.
- Alek: Rewrite the first screen of the Demo MMDI app in Java (UI and retrieval of paired devices complete). Assumes Bluetooth is already enabled.
- Alek: Make a new list of bluetooth-capable medical devices
- Zak: Proof of concept of integrating heart beat monitor with Android.
- Zak: Design of initial user interface
- Zak: Developing persistence implementation with SQLite
- Zak: Start workout button to connect to device to make sure it recieves data
- Zak: Make sure data is pulled per second to get up to date readings
- Zak: Plot data on graph (5 min range)
- Zak: Put the workout app into mercurial.
- Zak: End workout will do the clean up stuff.
- Zak: Designed java class for aggregating medical reading information into one JSON string to be stored in sqlite and generate object to work with.
- Zak: Display of graph data of a work out that was saved.
- Zak: Listing of workouts saved on phone.
- Zak: Notification code is working on the phone. When error message is clicked it goes to an error page.
- Zak: Designed LinkedList data structure to generate JSON data in SQLite. Using the same principles of NoSQL. For every reading we will store the following JSON
{ 'Reading' : '[0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0]' , 'theshold' : '[{'reading' : '0', 'over' : '20.0' },{'reading' : '1', 'over' : '20.0' },{'reading' : '2', 'over' : '20.0' },{'reading' : '3', 'over' : '20.0' },{'reading' : '4', 'over' : '20.0' },{'reading' : '5', 'over' : '20.0' },{'reading' : '6', 'over' : '20.0' },{'reading' : '7', 'over' : '20.0' },{'reading' : '8', 'over' : '20.0' },{'reading' : '9', 'over' : '20.0' }]' }
Current Contributors
Past Contributors
Blog
Problem
NexJ's mobile health solution requires its smartphone health coach application to have the ability to read medical measurement data from Bluetooth-capable devices, The devices included in the initial project proposal are as follows: blood pressure device, glucose level measuring device and a weight measuring device.
The health coach application will be designed to use PhoneGap, a rising technology that blurs the line between mobile operating systems. Implementing native Bluetooth adapters becomes only part of the solution. The health coach application will interact with a unified API in JavaScript to retrieve data from Bluetooth-capable medical peripherals.
The unified JavaScript API will be developed to utilize PhoneGap's JavaScript API to make native code calls. These native calls will focus on a medical Bluetooth device adapter which also must be implemented. This Bluetooth adapter will be extended for each supported measuring device and implemented on each supported mobile operating system.
Project Repository
Mercurical HowTo
Introduction
Most of us probably have some relative that may be in and out of hospital or some may have a critically ill relative. Wouldn't it be nice to have some way of monitoring how they are doing? Wouldn't it be great to see all this information on your smart phone? Wouldn't it be great to have not only the information freely available to patients but also that the software is free and open source? I will explain the cutting edge technology/research we are conducting.
What is MyOscar?
MyOscar is a personal health record system which was created to give patients the freedom to see their medical records. Not only are patients able to see this information but also share this information with family and loved ones. The software is open source. To read more about it visit:
http://myoscar.org/myoscar/about-myoscar
Should Patients Have Access To Their Personal Medical Data And Why?
You may have an elderly parent or grandparent that you may want to monitor if their condition becomes critical while at work or traveling. Or you may have a critically ill loved one that you may be taking care of. We think by having this technology, it would make it possible to help improve peoples lives and relieve worries.
Critical Care Patient Monitoring And Can Technology Help?
We believe that yes, it could be possible to help a patients for example a critical care patient which would need around the clock monitoring. Perhaps with technology like this patients could leave the hospital and allow their caregivers to monitor them through an application (smart phone).
Our Efforts At Seneca Center of Development Of Open Source Technology
We are researchers, students and professors that believe that it may be possible to improve the healthcare industry through cutting edge technology. We believe that this technology we create should be open source. We have created mobile applications that read wireless via Bluetooth to retrieve accurate medical data. Currently we are working on syncing this data with MyOscar EMR to further improve accessibility of patient data.