HL7®, FHIR® and the flame Design mark are the registered trademarks of Health Level Seven International and are used with permission.
November 20-22, Amsterdam | @HL7 @FirelyTeam | #fhirdevdays | www.devdays.com
Personal Health Device Data as FHIR in Practice:
Remote Patient Monitoring
Brian Reinhold
The Standards Dream
Ideal
Buy any PHD from any manufacturer and it will work with any PHG from any
manufacturer
PHG will upload PHD data as FHIR resources in such a manner that one does not
have to write a new decoder for a new PHD.
PHDs
PHGs
FHIR Servers
Reader app
PCHA Guidelines: PHD to FHIR Plug
and Play Interoperability
What exists:
PHDs
PHGs
FHIR Servers
Reader app
Continua PHD IG 1:
http://build.fhir.org/ig/HL7/PHD/
Continua PHD Interface
Code For HealthCare
H&FS Interface
Code for HealthCare
Bluetooth Manager
Code For
HealthCare
H&FS
WIP!
Continua PHD IG 2:
http://build.fhir.org/ig/HL7/PHD/
Personal Health Device (PHD)
Implementation Guide
Personal Health
Devices
Personal Health
Gateways
FHIR Server
Remote Patient
Monitoring
1
2
Home
mapping
creating
consuming
Hands on – lets code
Personal Health
Devices
Personal Health
Gateways
FHIR Server
Remote Patient
Monitoring
1
2
IT DOES
YOU DO
WE PROVIDE:
How We Help
FHIR Server
Remote Patient Monitoring,
Alert system,
Diagnostics,
Whatever else you can dream up,
PC, Linux, Android
2
Java Intellij ‘RPM’ Source project:
•MDC dictionary
•Asn1ToHL7 dictionary
•Websockets subscription support
Examples of Observation and Device decoding
WE PROVIDE:
Gateways allow manual data entry so one can
simulate various medical conditions like hypertension.
Gateways are on Android PlayStore - BYOA
FHIR Resources
Coincident Time Stamp
Observation
Patient
PHG
XD
Proprietary # 1
IEEE 20601
Proprietary # 2
Proprietary # 4
Proprietary # 3
Proprietary # 5
Proprietary # 6
Heart Rate
Blood Pressure
Glucometer
Thermometer
Pulse Oximeter
Weight Scale
Proprietary # 7
Proprietary # 8
Proprietary # 10
Proprietary # 9
Proprietary # 11
Proprietary # 12
Special
code for
each
device
Personal Health Gateway
(PHG)
PHDs
Each arrow represents
suffering for the PHG
implementer.
The Weak Link:
Device communications
Continua Design Guidelines
PHG
XD
Proprietary # 1
IEEE 20601
Proprietary # 2
Proprietary # 4
Proprietary # 3
Proprietary # 5
Proprietary # 6
Heart Rate
Blood Pressure
Glucometer
Thermometer
Pulse Oximeter
Weight Scale
Proprietary # 7
Proprietary # 8
Proprietary # 10
Proprietary # 9
Proprietary # 11
Proprietary # 12
PHD Implementation Guide Part 1
Special
code for
each
device
PHDs
Personal Health Gateway
(PHG)
Again, each arrow represents suffering
for the PHG implementer.
•The 20601 arrow represents the
mapping to FHIR as in IG part 1
•The BTLE arrows are done by mapping to
the IEEE 20601 standard.
•The dashed arrows are done by mapping
to the IEEE 20601 but may not be
possible
Continua Design Guidelines
PHG
XD
Proprietary # 1
IEEE 20601
Proprietary # 2
Proprietary # 4
Proprietary # 3
Proprietary # 5
Proprietary # 6
Heart Rate
Blood Pressure
Glucometer
Thermometer
Pulse Oximeter
Weight Scale
Proprietary # 7
Proprietary # 8
Proprietary # 10
Proprietary # 9
Proprietary # 11
Proprietary # 12
PHD Implementation Guide Part 1
FHIR Resources
FHIR Server
Oauth Token Server
FHIR
reader
Special
code for
each
device
PHD
Device
PHG
Device
Patient
Observation n
Personal Health Gateway (PHG)
PHDs
PHD Implementation Guide Part 2
Implementing a PHG is hard
need to know binary PHD protocols
need to know FHIR
Continua is developing tools to simplify this task
PHD Data to FHIR and upload exists
PHD to PHG is a work in progress
When these are both completed, we could have
a let’s build session concerning PHG implementation
For Now
We examine the FHIR data
generated by the PHG
To develop applications that USE this data
What data does a PHD provide?
Device Information
(MDS)
Metric Information
(observation, measurement, …)
MDS = Medical Device System
Device Information
•Specialization
•Manufacturer name
•Model number
•Serial number
•Firmware, hardware, software,
protocol, and Continua versions
•Part number
•System Identifier
•Time properties
•Clock type
•Synchronization
•Resolution
•Accuracy
•Regulatory information
•Regulation status
•Certification status
•Current Time
Device Resource
•profile: http://hl7.org/fhir/uv/phd/StructureDefinition/PhdDevice
•type: PHD
•specialization – code, version
•manufacturer
•modelNumber
•serialNumber
•version – code, value
•partNumber
•identifier – code, system, value
•property – code, value (code, quantity)
•property
Coincident Time Stamp
Metric Information:
•Type: what it is. Given by an MDC code.
•Time stamp: when the sensor recording was made.
•Recorded by the sensor
•Recorded by the Gateway (time of reception)
•Value: the quantitative representation; one of six
possible representations
•Optional descriptions:
•Supplemental information
•Duration of recording (such as a cardio session)
•Status (questionable, invalid, in progress, etc.)
•Related metrics (src-handle-references)
•Thresholds, etc.
The 6 Value Representations:
•Single Number (scalars): weight, temperature,
pulse rate, glucose concentration, etc.- units
•Multiple numbers (vectors): blood pressure
{systolic, diastolic, mean), acceleration (x, y, z
components), etc. - units
•Coded: meal context, test method, health
context, etc.
•State and Event: sensor status, patient’s room
status, etc. State example: door opened or closed Event
example: finger poorly placed
•Waveforms (periodic scalars): ecg trace, pleth
wave, spirometry flow rates, etc. - units
•String: human readable message
PHDs and PoCDs
Personal Health Devices (PHD) Point of Care Devices (PoCD)
Consumer device Not for the average pocketbook
Measurements taken by patient Run by medical professionals
Used in the home or on patient Used in acute care environments
Portability, power consumption,
simplicity important
Accuracy, reliability, mission-
critical operation important
Quantity vs Quality Quality vs Quantity
How different?
Result:
•http://hl7.org/fhir/uv/phd/StructureDefinition/PhdNumericObservation
•temperature, glucose concentration, weight, height, SpO
2, pulse rate, steps,
calories burned, RR-interval, the vast majority of measurements fall into this
category
•http://hl7.org/fhir/uv/phd/StructureDefinition/PhdCompoundNumericObservation
•blood pressure, acceleration, AMM feedback – rare except for BP
•http://hl7.org/fhir/uv/phd/StructureDefinition/PhdCodedEnumerationObservation
•Glucose meal context, glucose health context, insulin delivery context,
medication acting context
•http://hl7.org/fhir/uv/phd/StructureDefinition/PhdBitsEnumerationObservation
•device sensor status, independent living states
•http://hl7.org/fhir/uv/phd/StructureDefinition/PhdStringEnumerationObservation
•exercise program name
•http://hl7.org/fhir/uv/phd/StructureDefinition/PhdRtsaObservation
•ecg trace, spirometry flow traces, sleep apnea breathing rates, other waveforms
The Metric Mapping approach
is likely the single most important
take away -
Generic Mapping:
Very different than having to write a
different decoder for every
measurement type
Devices on FHIR
PHD/PoCD Harmonization
An SpO
2 measurement from a PoCD
should be expressed in FHIR in the same way as
an SpO
2 measurement from a PHD
At the same time we will want to be able
to tell that the measurement came from
a PoCD or a PHD
Result - PoCD:
•http://hl7.org/fhir/uv/pocd/StructureDefinition/NumericObservation
•temperature, SpO
2, pulse rate, RR-interval, the vast majority of measurements
fall into this category
•http://hl7.org/fhir/uv/pocd/StructureDefinition/CompoundNumericObservation
•blood pressure
Note that your code ONLY needs to change the profile to read
measurement Observation resources from PoCDs
Patient
•PHD gives no
patient data
•meta.profile
http://hl7.org/fhir/uv/phd/StructureD
efinition/PhdPatient
•Identifier*
*In the PHD profile, the identifier MUST
uniquely identify the patient
Coincident Time Stamp
It’s a measure of the current time of the PHD at the current time of the PHG
code - Type of PHD time stamp
effectiveDateTime - Current Time of PHG
valueDatetime -
valueQuantity -
dataAbsentReason -
Current Time of PHD
PHG corrects measurement time stamps and provides
local time plus offset to UTC
Metric Special Observation
•Optional descriptions
•status
•Have an IHE or FHIR Patient Care Plan profile that has
patients taking measurements at home
•Want to write a monitoring application for a physician
•Want to write an application that detects certain medical
conditions (pre eclampsia, edema in recovering heart
patients, etc.)
Why would you want PHD Data?