Zephyr Heart Rate Monitor

From IoT
Jump to: navigation, search

Go Up to ThingConnect Devices


Zephyr Heart Rate Monitor is a heart rate monitor device from Zephyr that comes with a strap. Zephyr Heart Rate Monitor has a LED that blinks every 3 seconds to indicate its connection status:

  • 3 times: Zephyr Heart Rate Monitor is connected to another device.
  • 1 time: Zephyr Heart Rate Monitor is available for connection.

Use the TZephyrHeartRateMonitor component to communicate with the Zephyr Heart Rate Monitor.

Demo Location

You can find the sample projects for the Zephyr Heart Rate Monitor in the following IoT demo directories after installing the component:

  • Start | Programs | Embarcadero RAD Studio Berlin | Samples and then navigate to:
    • Delphi: Internet of Things\Object Pascal\Thing Connect\Zephyr
    • C++: Internet of Things\CPP\Thing Connect\Zephyr

Supported Services

The Zephyr Heart Rate Monitor component supports the following Bluetooth LE services and characteristics:

Service Characteristic Property Event Read Subscribe Write
Battery Service Battery Level BatteryLevel OnBatteryLevelUpdate
YesSubscriptionFeature.png
YesSubscriptionFeature.png
Device Information Firmware Revision String FirmwareRevision OnFirmwareRevisionUpdate
YesSubscriptionFeature.png
Hardware Revision String HardwareRevision OnHardwareRevisionUpdate
YesSubscriptionFeature.png
IEEE 11073-20601 Regulatory Certification Data List IEEERegulatory OnIEEERegulatoryUpdate
YesSubscriptionFeature.png
Manufacturer Name String ManufacturerName OnManufacturerNameUpdate
YesSubscriptionFeature.png
Model Number String ModelNumber OnModelNumberUpdate
YesSubscriptionFeature.png
PnP ID PnPID OnPnPIDUpdate
YesSubscriptionFeature.png
Serial Number String SerialNumber OnSerialNumberUpdate
YesSubscriptionFeature.png
Software Revision String SoftwareRevision OnSoftwareRevisionUpdate
YesSubscriptionFeature.png
System ID SystemID OnSystemIDUpdate
YesSubscriptionFeature.png
Heart Rate Body Sensor Location BodySensorLocation OnBodySensorLocationUpdate
YesSubscriptionFeature.png
Heart Rate Measurement OnHeartRateMeasurementUpdate
YesSubscriptionFeature.png

The Zephyr Heart Rate Monitor component supports the following custom services:

Service Property Event Read Subscribe Write Description
Custom Service 1 OnZephyrMeasurementUpdate
YesSubscriptionFeature.png
Returns the TZephyrMeasurement data.
OnZephyrTestModeUpdate
YesSubscriptionFeature.png
Returns the TZephyrTestMode data.

Device Details

  • Device: Zephyr
  • Model: HxM2
  • Firmware: v1.1.2.0/1.0.0.0
  • Technology: Bluetooth LE

Custom Data Types

The Zephyr Heart Rate Monitor defines its custom data types in the following unit:

  • Iot.Device.ZephyrHeartRateMonitorTypes

Custom Zephyr Measurement

The TZephyrMeasurement type returns specific activity and peak acceleration data from the Zephyr Heart Rate Monitor.

  • ActivityFlag: Boolean value for showing the presence of the optional Activity field.
    • 0: Activity Field not included.
    • 1: Activity Field included.
  • PeakAccelerationFlag: Boolean value for showing the presence of the optional PeakAcceleration field.
    • 0: Peak Acceleration Field not included.
    • 1: Peak Acceleration Field included.
  • ActivityField: The current activity level. Valid range is from 0…16 , with 0.01 unit resolution.
  • PeakAcceleration: The highest g-force measured in the last measurement period of 1 second, measured in g. Valid range is from 0…16, with 0.01 unit resolution.

Custom Zephyr Test Mode

The TZephyrTestMode record type returns test mode data to the client device from the Zephyr Heart Rate Monitor. Test mode data includes accelerometer data, ECG, and Flash data.

  • Value: Raw array of bytes received from the device.
    • Flash data information from the device.
      • FlashMemCap (byte [1]): Flash memory capacity. Its value is 0x14.
      • FlashMemType (byte [2]): Flash memory type. Its value is 0x71.
      • FlashManId (byte [3]): Flash manufacturer ID. Its value is 0x20.
    • EcgMaximum (bytes [4-5]): Highest sample over the last 1 second period. Valid range is from 0-1023.
    • EcgMinimum (bytes [6-7]): Lowest sample over the last 1 second period. Valid range is from 0-1023.
    • Accelerometer data: Each axis in accelerometer data is averaged over the last 1 second period to remove noise/vibrations.
      • AccelZ (bytes [7-8]): Valid range is from -2048 ... +2047 , with 1G equal to 83.
      • AccelY (bytes [9-10]): Valid range is from -2048 ... +2047 , with 1G equal to 83.
      • AccelZ (bytes [11-12]): Valid range is from -2048 ... +2047 , with 1G equal to 83.

See Also