Skip to content
Last updated

Continuous Glucose Monitor (CGM) Settings (cgmSettings): Dexcom (dexcom)

Quick Summary

annotationsArray of Annotation (object) or Blood Glucose Out of Range (object)(Annotation Array)[ 0 .. 100 ] itemsunique

An array of annotations.

archivedTimestring(date-time)(Date/Time)read-only
Example: "2017-02-06T02:37:46Z"
archivedDatasetIdstring(Data Set ID)[ 17 .. 37 ] characters^(upid_[0-9a-f]{12}|upid_[0-9a-f]{32}|[0-9a-f...
Example: "ce8cc5f7595575945f91fc6710db6fef"
associationsArray of Association (blob) (object) or Association (datum) (object) or Association (image) (object) or Association (url) (object)(Association Array)

An array of associations for the resource.

clockDriftOffsetinteger(int64)(Clock Drift Offset)[ -86400000 .. 86400000 ]

Clock drift offset, expressed as milliseconds.

Example: 0
conversionOffsetinteger(int64)(Conversion Offset)

Conversion offset, expressed as milliseconds.

Example: 0
createdTimestring(date-time)(Date/Time)
Example: "2017-02-06T02:37:46Z"
createdUserIdstring(Tidepool User ID)^([0-9a-f]{10}|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-...read-only

String representation of a Tidepool User ID. Old style IDs are 10-digit strings consisting of only hexadeximcal digits. New style IDs are 36-digit UUID v4

deduplicatorobject(Deduplicator Descriptor)
deletedTimestring(date-time)(Date/Time)
Example: "2017-02-06T02:37:46Z"
deletedUserIdstring(Tidepool User ID)^([0-9a-f]{10}|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-...read-only

String representation of a Tidepool User ID. Old style IDs are 10-digit strings consisting of only hexadeximcal digits. New style IDs are 36-digit UUID v4

deviceIdstring(Device ID)non-empty

Globally unique to device and repeatable with each upload, e.g. device make and model with serial number

Example: "MMT-1711:12345678"
deviceTimestring(Date/Time without Timezone)^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}$
Example: "2017-02-06T02:37:46"
historyArray of objects(Event History [Proposed])

Revision history of the event

idstring(Data Set ID)[ 17 .. 37 ] characters^(upid_[0-9a-f]{12}|upid_[0-9a-f]{32}|[0-9a-f...required
Example: "ce8cc5f7595575945f91fc6710db6fef"
locationobject(Location)

Location information associated with the resource. One or both of name and gps must be specified.

modifiedTimestring(date-time)(Date/Time)
Example: "2017-02-06T02:37:46Z"
modifiedUserIdstring(Tidepool User ID)^([0-9a-f]{10}|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-...read-only

String representation of a Tidepool User ID. Old style IDs are 10-digit strings consisting of only hexadeximcal digits. New style IDs are 36-digit UUID v4

notesArray of strings(Note Array)[ 1 .. 100 ] items

An array of 1 to 100 notes.

originobject(Origin)

External origin information for the source of the resource.

payloadobject(Payload)

Grab bag field for data that isn't yet part of the data model. The maximum size is 4K bytes.

sourcestring
Value"carelink"
tagsArray of strings(Tag Array)

An array of tags.

timestring(date-time)(Date/Time)required
Example: "2017-02-06T02:37:46Z"
timezonestring(Time Zone)
Example: "Europe/London"
timezoneOffsetinteger(int32)(Time Zone offset)[ -10080 .. 10080 ]

Time zone offset, expressed as positive or negative number of minutes from UTC.

Example: -420
typestring(Tidepool Data Type)required

Data type

Enum"cgmSettings""alert""basal""bloodKetone""bolus""cbg""controllerSettings""controllerStatus""deviceEvent""deviceStatus"
Example: "upload"
uploadIdstring(Upload ID)[ 17 .. 32 ] characters^([0-9a-f]{32}|upid_[0-9a-f]{12})$

An upload identifier; this field should be the uploadId of the corresponding upload record

Example: "0d92d5c1c22117a18f3620b9e24d3c06"
firmwareVersionstring[ 1 .. 100 ] characters
Example: "1.2"
hardwareVersionstring[ 1 .. 100 ] characters
Example: "2.3r45"
highAlertsobject
lowAlertsobject
manufacturersArray of strings[ 1 .. 10 ] characters
Example: ["Acme"]
modelstring[ 1 .. 100 ] characters
Example: "Turbo CGM III"
namestring[ 1 .. 100 ] characters
Example: "My CGM"
outOfRangeAlertsobject
rateOfChangeAlertobject
serialNumberstring[ 1 .. 100 ] characters
Example: "1234567890"
softwareVersionstring[ 1 .. 100 ] characters
Example: "3.4.5"
transmitterIdstring
Example: "G8X568"
unitsstring
Enum"mg/dL""mmol/L"
guidstringDeprecated

A string ID. Added to each event during data processing in the Tidepool Uploader or upon ingestion by the platform data ingestion service.


Overview

This is the Tidepool data type representing the settings on a continuous glucose monitor (CGM). A CGM consists of a sensor inserted into subcutaneous tissue, attached to a transmitter clipped into the sensor's cradle, then attached to the surface of the skin with adhesive tape.

Every five minutes, the transmitter sends a blood glucose reading to a receiving device, which can be: an insulin pump with receiving capabilities; a dedicated hardware receiver; or an iPhone with a companion app capable of receiving sensor transmissions via Bluetooth. Retrospective data collection from CGM systems happens via one of these receiving devices.

A CGM system can also be configured to alert the user about glucose values that fall outside a user-selected range.

Platform does not currently accept deduplicate data, meaning if a user uploads the same data from both a pump and a receiver, Tidepool Uploader will reject one device's data and the deduplicate data will not appear.

Currently, Tidepool only supports CGM settings (not to be confused with CGM devices) from Dexcom. However, we plan to offer support for CGM settings from other manufacturers in the future.


Type (type)

This is the Tidepool data type to represent CGM settings at a given point in time — usually the time of a data upload from the device. Most CGM-receiving devices do not, unfortunately, keep a historical record of all CGM settings whenever a settings change is made. The safest assumption is that the time on each CGM settings object represents a time when the settings were read by the device, not the first moment when the settings became effective.


Firmware Version (firmwareVersion)

The firmware version of the CGM, if known.


Hardware Version (hardwareVersion)

The hardware version of the CGM, if known.


High Alerts (highAlerts)

The high alerts object encodes the user’s preferences for receiving alerts about high blood glucose events (hyperglycemia).

Contains the following:

  • Enabled
  • Level: Threshold for high BG alerts
  • Snooze: Allows the user to configure how often the alert should repeat if the person with diabetes' blood glucose remains above the threshold value. A common value is two hours

Low Alerts (lowAlerts)

The low alerts object encodes the user’s preferences for receiving alerts about low blood glucose events (hypoglycemia).

Contains the following:

  • Enabled
  • Level: Threshold for low BG alerts
  • Snooze: Allows the user to configure how often the alert should repeat if the person with diabetes' blood glucose remains below the threshold value. A common value is 15 minutes

Manufacturers (manufacturers)

The manufacturer(s) of the CGM. An array of strings.


Model (model)

The model of the CGM, if known.


Name (name)

The name of the CGM, if known.


Out Of Range Alerts (outOfRangeAlerts)

The out of range alerts object encodes the user's settings for receiving alerts from the receiver if the connection between the transmitter and the receiver has been disrupted. (This is typically due to the transmitter being situated physically out of range of the receiver.)

Contains the following:

  • Enabled
  • Snooze

This value is not like the snooze on high alerts and low alerts. More specifically, the time value in an out of range alerts object is not a setting for time between alerts but rather the amount of time (counted by the receiver), that the receiver's data connection with the transmitter has been broken. We plan to migrate to the term "threshold" in the future for maximum clarity.


Rate Of Change Alerts (rateOfChangeAlerts)

The rate of change alerts object encodes the user's preferences for receiving alerts when the person with diabetes' blood glucose is changing rapidly — either rising or falling.

Contains the following:

  • Enabled
  • Rate: The rate of change triggers the alert

For the fall rate, the rate of change must be specified as a negative value. Like all blood glucose-related values in the Tidepool data model, both the fall rate and rise rate may be specified in either mg/dL or mmol/L, but will be translated to mmol/L upon ingestion.


Serial Number (serialNumber)

The serial number of the CGM, if known.


Software Version (softwareVersion)

The software version of the CGM, if known.


Transmitter ID (transmitterId)

The transmitter ID of the CGM, if known.


Units (units)

The unit of the CGM, if known. One of mg/dL or mmol/L.


Examples

Example (client)
{
    "type": "cgmSettings",
    "firmwareVersion": "1.2",
    "hardwareVersion": "2.3r45",
    "highAlerts": {
        "enabled": true,
        "level": 10.82395858253879,
        "snooze": 4500000
    },
    "lowAlerts": {
        "enabled": true,
        "level": 3.33044879462732,
        "snooze": 1800000
    },
    "manufacturers": [
        "Acme"
    ],
    "model": "Turbo CGM III",
    "name": "My CGM",
    "outOfRangeAlerts": {
        "enabled": false,
        "snooze": 1800000
    },
    "rateOfChangeAlerts": {
        "fallRate": {
            "enabled": true,
            "rate": -0.055507479910455335
        },
        "riseRate": {
            "enabled": false,
            "rate": 0.055507479910455335
        }
    },
    "serialNumber": "1234567890",
    "softwareVersion": "3.4.5",
    "transmitterId": "C8E65",
    "units": "mmol/L",
    "clockDriftOffset": 0,
    "conversionOffset": 0,
    "deviceId": "DevId0987654321",
    "deviceTime": "2018-05-14T18:17:07",
    "guid": "6d15f48c-3734-4ad1-8f39-9b374f1d127f",
    "id": "02ccebd2affc472d9b296d4f1f800dfd",
    "time": "2018-05-14T08:17:07.560Z",
    "timezoneOffset": 600,
    "uploadId": "SampleUploadId"
}
Example (ingestion)
{
    "type": "cgmSettings",
    "firmwareVersion": "1.2",
    "hardwareVersion": "2.3r45",
    "highAlerts": {
        "enabled": true,
        "level": 185,
        "snooze": 2700000
    },
    "lowAlerts": {
        "enabled": true,
        "level": 85,
        "snooze": 900000
    },
    "manufacturers": [
        "Acme"
    ],
    "model": "Turbo CGM III",
    "name": "My CGM",
    "outOfRangeAlerts": {
        "enabled": false,
        "snooze": 3600000
    },
    "rateOfChangeAlerts": {
        "fallRate": {
            "enabled": true,
            "rate": -2
        },
        "riseRate": {
            "enabled": false,
            "rate": 2
        }
    },
    "serialNumber": "1234567890",
    "softwareVersion": "3.4.5",
    "transmitterId": "BE61A",
    "units": "mg/dL",
    "clockDriftOffset": 0,
    "conversionOffset": 0,
    "deviceId": "DevId0987654321",
    "deviceTime": "2018-05-14T18:17:07",
    "time": "2018-05-14T08:17:07.561Z",
    "timezoneOffset": 600,
    "uploadId": "SampleUploadId"
}
Example (storage)
{
    "type": "cgmSettings",
    "firmwareVersion": "1.2",
    "hardwareVersion": "2.3r45",
    "highAlerts": {
        "enabled": true,
        "level": 10.268883783434237,
        "snooze": 4500000
    },
    "lowAlerts": {
        "enabled": true,
        "level": 3.8855235937318735,
        "snooze": 1800000
    },
    "manufacturers": [
        "Acme"
    ],
    "model": "Turbo CGM III",
    "name": "My CGM",
    "outOfRangeAlerts": {
        "enabled": false,
        "snooze": 3600000
    },
    "rateOfChangeAlerts": {
        "fallRate": {
            "enabled": false,
            "rate": -0.11101495982091067
        },
        "riseRate": {
            "enabled": false,
            "rate": 0.16652243973136602
        }
    },
    "serialNumber": "1234567890",
    "softwareVersion": "3.4.5",
    "transmitterId": "E3250",
    "units": "mmol/L",
    "_active": true,
    "_groupId": "abcdef",
    "_schemaVersion": 0,
    "_version": 0,
    "clockDriftOffset": 0,
    "conversionOffset": 0,
    "createdTime": "2018-05-14T08:17:12.561Z",
    "deviceId": "DevId0987654321",
    "deviceTime": "2018-05-14T18:17:07",
    "guid": "393c9563-705a-4832-b935-cbf23d759f77",
    "id": "7cb8be46bb9447de8b4f5f90d1bd5486",
    "time": "2018-05-14T08:17:07.561Z",
    "timezoneOffset": 600,
    "uploadId": "SampleUploadId"
}

Keep Reading