HL7®, FHIR® and the flame Design mark are the registered trademarks of Health Level Seven International and are used with per mission.
November 20-22, Amsterdam | @HL7 @FirelyTeam | #fhirdevdays | www.devdays.com
Let’s Build! - IoMT Data to FHIR
Nate Malubay
Prerequisites
• Create a free Azure account
• https://azure.microsoft.com/free
• Mac with Xcode 11 installed
• https://developer.apple.com/xcode
Nate Malubay
• Software Engineer – Microsoft Health Cloud & Data
• Developing mobile applications for 11 years
• Working with Personal Health Devices and IoMT for 5 years
What is IoMT?
Internet of Medical Things
• A subset of IoT devices
• Devices that provide patient health data that can be:
• Worn
• Used
• Ambient
Internet
of
Medical
Things
Session outline
1. Overview of IoMT end-to-end solution
2. Deployment of cloud services (Azure Cloud Shell)
3. IoMT FHIR Connector for Azure on GitHub
4. HealthKitOnFhir on GitHub
5. Deployment of iOS sample app (Xcode)
6. Test IoMT data pipeline
Clone HealthKitOnFhir
https://github.com/microsoft/healthkit-on-fhir
Overview
Apple HealthKit IoMT Device
HealthDataSync
HealthKitOnFhir
Swift-Smart IomtFhirClient IoMT FHIR
Connector
for Azure
Patient Phone
Azure API
for FHIR
Cloud
Deploy cloud services
• Cloud services will be deployed using a PowerShell script and will take about 10 minutes
• We will run the script using the Azure Cloud Shell accessed in your Azure subscription
• The script will deploy:
• an endpoint for transforming high-frequency health data (IoMT FHIR Connector for Azure)
• a FHIR server (Azure API for FHIR)
Deploy cloud services
Navigate to portal.azure.com and sign into your account.
Deploy cloud services
Navigate to Azure Active Directory.
Deploy cloud services
Open the Azure Cloud Shell by clicking the icon in at the top of the screen.
Deploy cloud services
You may be prompted to select an environment and create a storage account.
Deploy cloud services
Wait for the Cloud Shell to initialize – This will take about 1 minute.
Deploy cloud services
Log into your Azure subscription.
Deploy cloud services
Connect to Azure Active Directory.
Deploy cloud services
Clone the HealthKitOnFhir repository in the Cloud Shell.
Deploy cloud services
Navigate to the “Scripts” directory.
Deploy cloud services
Run the deployment script.
Deploy cloud services
The script will take about 10 minutes to complete.
PowerShell summary
IoMT FHIR Connector for Azure https://github.com/microsoft/iomt-fhir
Normalize Group Transform Persist
Normalizes non FHIR data into a common format
Transforms data into FHIR Observations
Persists Observations into a FHIR Server
Groups data by device, type and time
IoMT FHIR Connector for Azure https://github.com/microsoft/iomt-fhir
• Can output to any* FHIR server
• Can be used with other inputs
• Azure IoT Hub/IoT Central
• Cloud to Cloud
• Direct device connection
• Supports additional outputs for data processing
FHIR Version R4
CRUD for Patient, Device and Observation
OAuth 2.0 identity provider with support for client credentials
*
HealthKitOnFHIR https://github.com/microsoft/healthkit-on-fhir
HealthKitOnFhir is a Swift library that automates the export of Apple HealthKit Data to a FHIR Server.
HealthKitOnFHIR https://github.com/microsoft/healthkit-on-fhir
• Observes changes to HealthKit
data and exports new or updated data to FHIR
• Exports ”historical” HealthKit data
• Simplifies obtaining user permission for HealthKit data
• Extensible and customizable
Apple HealthKit
HealthDataSync
HealthKitOnFhir
Swift-Smart IomtFhirClient
Why is Microsoft releasing IoMT solutions? 1. Simplify sharing IoMT data with
physicians and researchers
2. Promote and bootstrap experimentation and learning
3. Support and Evangelize FHIR
Sample app deployment Open the sample application in Xcode.
Sample app deployment Wait for the Swift Package dependencies to resolve
Sample app deployment Run the application in the
iOS Simulator.
Sample app deployment The application should launch in the simulator. This will take about 2 minutes.
Test the IoMT to FHIR Pipeline
1. Configure the sample application
2. Sign Into the sample application
3. Create a Patient Resource
4. Grant permission to read HealthKit data
5. Start observing changes to HealthKit
6. Add data to the Health app
7. View the Observation in the FHIR server
Configure the application Download the Config.json file.
Configure the application Drag the Config.json file onto the screen of the iOS Simulator.
Sign in Tap “Sign In” and use the credentials created by the deployment to sign into the application.
Sign in
The username can password is generated by the PowerShell script.
Create a Patient Resource Create a test patient (this will create a Patient Resource in the FHIR server) and tap Next.
Grant permission
Grant access to HealthKit data
Start observing HealthKit
Tap “Start Observing” and wait for the operation to complete.
Add data to the Health app Exit the sample application and launch the Apple Health app
Add data to the Health app Tap the “Browse” tab.
Add data to the health app Select the “Heart” cell.
Add data to the Health app Select the “Heart Rate” cell.
Add data to the Health app Tap the “Add Data” button.
Add data to the Health app Enter a heart rate value and tap the “Add” button.
View the Observation
Navigate back to the sample app and wait for the sync to complete.
View the Observation Select the HeartRateMessage cell.
View the Observation Select the Observation date cell.
View the Observation View the Observation JSON.
Summary
1. We used a PowerShell script to deploy the Azure API for FHIR and the IoMT FHIR Connector for Azure
2. Deployed an iOS application that monitors HealthKit and exports data to persist in a FHIR server
3. Added test data to the Apple Health application
4. Verified the data was exported to the FHIR server
Star the repositories
https://github.com/microsoft/healthkit-on-fhir https://github.com/microsoft/iomt-fhir
Contribute to the projects See us in the lounge
Thank you
www.devdays.com
Top Related