Grilled Cheese (0.9+) Features

14 Oct
Guides > Setup Guides > Your Nightscout Website Features > Grilled Cheese (0.9+) Features

14615837_10208643639906650_3627391663675852025_o

The Grilled Cheese (0.9+) update to the Nightscout site brings long-requested new features to Nightscout, including combo boluses (via CarePortal), authentication roles (to help define/manage caregiver access), and sensor age (SAGE). The Grilled Cheese release also includes pump monitoring features for supported pumps and openAPS and Loop integration for openAPS and Loop users.

Updating Your Site to Grilled Cheese

IMPORTANT: Before you can use Grilled Cheese features, you must update your fork and ensure that your website updates to the current version. To update your site code to Grilled Cheese, please follow the steps outlined here.

Deploy to Azure

Grilled Cheese introduces a new Deploy to Azure feature to simplify setup. (Learn more here.)

Important Changes to Note (and Troubleshooting)

If you update your site and have trouble getting data from your uploader, you may need to set a variable in your Azure or Heroku settings. A change in Grilled Cheese may affect users of older uploader apps.

Variable to add: AUTH_DEFAULT_ROLES
Setting: readable devicestatus-upload

If you update your site and find that things you have enabled do not show up properly (like boluscalc), check the following:

  1. Make sure you only have ENABLE one time. Just one. (That means just one time in the ENTIRE settings, including both App Settings and Connection Strings.)
  2. If you have ENABLE in Connection Strings, move it to App Settings instead.

As always, if you make any changes to your variables, be sure and save.

Grilled Cheese Requires a “Profile”

If you did not previously have a “Profile” set up on your site, you will be prompted to create one the first time you open your Grilled Cheese site. You can enter all of your information, or you can enter the timezone only (and edit the profile later). You must authenticate your site before you can save your profile changes. To authenticate, use the link at the bottom of the Profile screen and enter your API SECRET from your site setup. Once authenticated, make your profile changes, and then click “save.” If the profile saves correctly, you will see “Success” at the bottom and in the top right corner. You can now open your site (the profile page will not redirect you to the core site screen).

New Features to Check/Add to Your Nightscout Site

grilleccheese-boxes

Some of the new non-pump-related features available in Nightscout 0.9:

Using “Enable” to Activate Features/Plugins

Like Funnel Cake (0.8.+), Grilled Cheese introduces a number of exciting new site features and plugins. Many of these features have to be turned on (enabled) in your site settings before they can be used and before they will be displayed on your Nightscout site. To use features like Care Portal, Insulin-on-Board (IOB), Carbs-on-Board (COB), Cannula Age (CAGE), Raw Data, Sensor Age (SAGE), Insulin Age (IAGE), and the Bolus Wizard (boluscalc), you must first “ENABLE” them in your site settings (Azure or Heroku).

If you have previously set an “ENABLE” value (if you use Care Portal or raw data, for example), you will modify the existing value for ENABLE to add any additional features you wish to use. If you do not have an ENABLE variable set, add ENABLE in the next blank left-hand box (under Application Settings/App Settings in Azure or in Settings/Config Variables in Heroku) and place selected features from the list below in the value box to its right. You can use choose to enable as many or as few of the plugins as you wish. After you are done, be sure to click “save” to save the settings. Note: you can only have a single ENABLE variable set. All desired features go in the same box as a space delimited list (see examples below).

The following example shows multiple plugins set with ENABLE.

In Azure:
f-enable-azure

In Heroku:
f-enable-heroku

In text form, an enable string might appear as follows, all in the same box:

careportal rawbg iob maker bridge cob bwp cage basal iage sage boluscalc pushover

Features and Options in Grilled Cheese

The following information is from the GitHub readme file for the 0.9 release of the CGM Remote Monitor. Additional information about some of these features and settings can be found in the Funnel Cake documentation.

Format used below (and in the readme): VARIABLE name shown in caps with the default value immediately following in () marks. If you make NO change (or do not set this variable yourself), the default is used by your site. (For example, if you do not specify a BG_TARGET_TOP value in your site settings, then 180 will be used, by default.

Edit Mode New!

EDIT_MODE (on) – possible values on or off. When turned “on,” this feature enables an icon that allows you to enter treatments edit mode from the main Nightscout screen.
grilledcheese-edit2

Advanced Plugins

    careportal (Careportal)

    CarePortal allows the entry of treatment and tracking information from a Nightscout site or from the CarePortal app for Pebble. (Note: other setups also use CarePortal to integrate external data.)
    Add to the ENABLE string: careportal
    grilledcheese-careportal

    boluscalc (Bolus Wizard) New!

    Add to the ENABLE string: boluscalc
    grilledcheese-boluscalc

    food (Custom Foods) New!

    Visit https://YOURSITE/food to make entries that will then be available in the Bolus Wizard (boluscalc).

    Raw Data

    Raw data is available for Android uploaders only.
    Add to the ENABLE string: rawbg

    If you want raw data to always show on your site, also use this variable: show_rawBG=”always”. To learn more about raw data, see: Interpreting Raw Dexcom Data.

    IOB and COB

    Add to the ENABLE string: iob cob (either or both, depending on which you plan to use)

    For more information regarding information from the treatment profile that is used to calculate IOB and COB, see the explanatory information in this resource. Note: features like IOB and COB rely on Care Portal entries that provide the Nightscout site with information regarding carb intake and insulin given.

    bwp (Bolus Wizard Preview)

    Add to the ENABLE string: bwp

    The Basal Wizard Preview tool can help you evaluate the relationship between current bg, IOB, and carbs on board. Learn more about BWP.

    Cannula Age (CAGE)

    Add to the ENABLE string: cage
    See Cage

    SAGE (Sensor Age) New!

    Add to the ENABLE string: sage

    The SAGE plugin tracks the number of days and hours since the last CGM Sensor Start and CGM Sensor Insert treatment that was recorded. Nightscout site users can record the CGM Sensor Start or CGM Sensor Insert using CarePortal. The sage information is displayed on the site in the sage “pillbox” if the SAGE plugin is turned on in the browser settings or set to “always” be displayed in the server settings.

    grilledcheese-sage-cp
    grilleccheese-sage

    The following variables allow you to customize warnings and notifications (also used by Pushover) for your SAGE tracking:

    • SAGE_ENABLE_ALERTS (false) – Set to true to enable notifications to remind you of upcoming sensor change.
    • SAGE_INFO (144) – If time since last sensor event matches SAGE_INFO, user will be warned of upcoming sensor change
    • SAGE_WARN (164) – If time since last sensor event matches SAGE_WARN, user will be alarmed to to change/restart the sensor
    • SAGE_URGENT (166) – If time since last sensor event matches SAGE_URGENT, user will be issued a persistent warning of overdue change.

    iage (Insulin Age) New!

    Add to the ENABLE string: iage

    The IAGE plugin tracks the number of days and hours since the last Insulin Change treatment that was recorded. Nightscout site users can record the insulin change (e.g., cartridge change, fill, etc.) using CarePortal. IAGE is displayed on the site in the IAGE “pillbox” if the IAGE plugin is turned on in the browser settings or set to “always” be displayed in the server settings.

    grilledcheese-iage-cp
    grilleccheese-iage

    The following variables allow you to customize warnings and notifications (also used by Pushover) for your IAGE tracking:

    • IAGE_ENABLE_ALERTS (false) – Set to true to enable notifications to remind you of upcoming insulin reservoir change.
    • IAGE_INFO (44) – If time since last Insulin Change matches IAGE_INFO, user will be warned of upcoming insulin reservoir change
    • IAGE_WARN (48) – If time since last Insulin Change matches IAGE_WARN, user will be alarmed to to change the insulin reservoir
    • IAGE_URGENT (72) – If time since last Insulin Change matches IAGE_URGENT, user will be issued a persistent warning of overdue change.

    Basal

    Add to the ENABLE string: basal
    Display current basal rate with pillbox visualization on the site.See Basal. Display basal visualization on the graph, as well as visualization of temp basal settings. See: Basal and Temp Basal in Nightscout.

    Pushover

    Add to the ENABLE string: pushover
    See Pushover information for use with Funnel Cake (and newer).

    IFTTT

    Add to the ENABLE string: maker
    For information about using IFTTT with Funnel Cake (and newer), see this lab.

    treatmentnotify (Treatment Notifications)

    Add to the ENABLE string: treatmentnotify
    Generates notifications when a treatment has been entered and snoozes alarms minutes after a treatment. Default snooze is 10 minutes, and can be set using the TREATMENTNOTIFY_SNOOZE_MINS extended setting.

Alarms

These alarm setting effect all delivery methods (browser, pushover, maker, etc), some settings can be overridden per client (web browser)

ALARM_TYPES (simple if any BG_* ENV’s are set, otherwise predict) – currently 2 alarm types are supported, and can be used independently or combined. The simple alarm type only compares the current BG to BG_ thresholds above, the predict alarm type uses highly tuned formula that forecasts where the BG is going based on it’s trend. predict DOES NOT currently use any of the BG_* ENV’s
BG_HIGH (260) – must be set using mg/dl units; the high BG outside the target range that is considered urgent
BG_TARGET_TOP (180) – must be set using mg/dl units; the top of the target range, also used to draw the line on the chart
BG_TARGET_BOTTOM (80) – must be set using mg/dl units; the bottom of the target range, also used to draw the line on the chart
BG_LOW (55) – must be set using mg/dl units; the low BG outside the target range that is considered urgent
ALARM_URGENT_HIGH (on) – possible values on or off
ALARM_URGENT_HIGH_MINS (30 60 90 120) – Number of minutes to snooze urgent high alarms, space separated for options in browser, first used for pushover
ALARM_HIGH (on) – possible values on or off
ALARM_HIGH_MINS (30 60 90 120) – Number of minutes to snooze high alarms, space separated for options in browser, first used for pushover
ALARM_LOW (on) – possible values on or off
ALARM_LOW_MINS (15 30 45 60) – Number of minutes to snooze low alarms, space separated for options in browser, first used for pushover
ALARM_URGENT_LOW (on) – possible values on or off
ALARM_URGENT_LOW_MINS (15 30 45) – Number of minutes to snooze urgent low alarms, space separated for options in browser, first used for pushover
ALARM_URGENT_MINS (30 60 90 120) – Number of minutes to snooze urgent alarms (that aren’t tagged as high or low), space separated for options in browser, first used for pushover
ALARM_WARN_MINS (30 60 90 120) – Number of minutes to snooze warning alarms (that aren’t tagged as high or low), space separated for options in browser, first used for pushover
Core
ALARM_TIMEAGO_WARN (on) – possible values on or off
ALARM_TIMEAGO_WARN_MINS (15) – minutes since the last reading to trigger a warning
ALARM_TIMEAGO_URGENT (on) – possible values on or off
ALARM_TIMEAGO_URGENT_MINS (30) – minutes since the last reading to trigger a urgent alarm

TIMEAGO_ENABLE_ALERTS (false) – Set to true to enable stale data alarms via Pushover and IFTTT.
ALARM_TIMEAGO_WARN (on) – possible values on or off
ALARM_TIMEAGO_WARN_MINS (15) – minutes since the last reading to trigger a warning
ALARM_TIMEAGO_URGENT (on) – possible values on or off
ALARM_TIMEAGO_URGENT_MINS (30) – minutes since the last reading to trigger a urgent alarm

Default Plugins

These can be disabled by setting the DISABLE env var, for example DISABLE=”direction upbat”

    delta (BG Delta)

    Calculates and displays the change between the last 2 BG values.

    direction (BG Direction)

    Displays the trend direction.

    upbat (Uploader Battery)

    Displays the most recent battery status from the uploader phone. . Use these extended setting to adjust behavior:

    UPBAT_ENABLE_ALERTS (false) – Set to true to enable uploader battery alarms via Pushover and IFTTT.
    UPBAT_WARN (30) – Minimum battery percent to trigger warning.
    UPBAT_URGENT (20) – Minimum battery percent to trigger urgent alarm.

    timeago (Time Ago)

    Displays the time since last CGM entry. Use these extended setting to adjust behavior:

    devicestatus (Device Status)

    Used by upbat and other plugins to display device status info. Supports the DEVICESTATUS_ADVANCED=”true” extended setting to send all device statuses to the client for retrospective use and to support other plugins.

    errorcodes (CGM Error Codes)

    Generates alarms for CGM codes 9 (hourglass) and 10 (???).

    Use extended settings to adjust what errorcodes trigger notifications and alarms:
    ERRORCODES_INFO (1 2 3 4 5 6 7 8) – By default the needs calibration (blood drop) and other codes below 9 generate an info level notification, set to a space separate list of number or off to disable
    ERRORCODES_WARN (off) – By default there are no warning configured, set to a space separate list of numbers or off to disable
    ERRORCODES_URGENT (9 10) – By default the hourglass and ??? generate an urgent alarm, set to a space separate list of numbers or off to disable

    ar2 (AR2 Forecasting)

    Generates alarms based on forecasted values. See Forecasting using AR2 algorithm. Enabled by default if no thresholds are set OR ALARM_TYPES includes predict.

    Use extended settings to adjust AR2 behavior:
    AR2_CONE_FACTOR (2) – to adjust size of cone, use 0 for a single line.

    simplealarms (Simple BG Alarms)

    Uses BG_HIGH, BG_TARGET_TOP, BG_TARGET_BOTTOM, BG_LOW thresholds to generate alarms. Enabled by default if 1 of these thresholds is set OR ALARM_TYPES includes simple.

    profile (Treatment Profile)

    Add link to Profile Editor and allow to enter treatment profile settings. See: Profile Editor

    Also uses the extended setting:
    PROFILE_HISTORY (off) – possible values on or off. Enable/disable NS ability to keep history of your profiles (still experimental)
    PROFILE_MULTIPLE (off) – possible values on or off. Enable/disable NS ability to handle and switch between multiple treatment profiles

Predefined values for your browser settings (optional)

  • SHOW_PLUGINS – enabled plugins that should have their visualizations shown, defaults to all enabled
  • SHOW_FORECAST (ar2) – plugin forecasts that should be shown by default, supports space delimited values such as “ar2 openaps”
  • LANGUAGE (en) – language of Nightscout. If not available english is used
  • TIME_FORMAT (12)- possible values 12 or 24
  • NIGHT_MODE (off) – possible values on or off
  • SHOW_RAWBG (never) – possible values always, never or noise
  • CUSTOM_TITLE (Nightscout) – Usually name of T1
  • THEME (default) – possible values default or colors
  • EDIT_MODE (on) – possible values on or off

  • Linear and Logarithmic Scale Options – see: Linear and Logarithmic Display

Integrated Setups (includes pump-integration)

bridge (Share2Nightscout bridge)

The “bridge” is used by G4 Share and G5 users that are uploading data to the Dexcom servers and pulling that data to Nightscout. Bridge variables are described here (and then bridge setup is further outlined in the linked G4 Share and G5 documents).

mmconnect (MiniMed Connect bridge)

See: MiniMed Connect and Nightscout

pump (Pump Monitoring) New!

Generic Pump Monitoring for OpenAPS, MiniMed Connect, RileyLink, t:slim, with more on the way

Requires DEVICESTATUS_ADVANCED=”true” to be set
PUMP_ENABLE_ALERTS (false) – Set to true to enable notifications for Pump battery and reservoir.
PUMP_FIELDS (reservoir battery) – The fields to display by default. Any of the following fields: reservoir, battery, clock, status, and device
PUMP_RETRO_FIELDS (reservoir battery clock) – The fields to display in retro mode. Any of the above fields.
PUMP_WARN_CLOCK (30) – The number of minutes ago that needs to be exceed before an alert is triggered.
PUMP_URGENT_CLOCK (60) – The number of minutes ago that needs to be exceed before an urgent alarm is triggered.
PUMP_WARN_RES (10) – The number of units remaining, a warning will be triggered when dropping below this threshold.
PUMP_URGENT_RES (5) – The number of units remaining, an urgent alarm will be triggered when dropping below this threshold.
PUMP_WARN_BATT_P (30) – The % of the pump battery remaining, a warning will be triggered when dropping below this threshold.
PUMP_URGENT_BATT_P (20) – The % of the pump battery remaining, an urgent alarm will be triggered when dropping below this threshold.
PUMP_WARN_BATT_V (1.35) – The voltage (if percent isn’t available) of the pump battery, a warning will be triggered when dropping below this threshold.
PUMP_URGENT_BATT_V (1.30) – The voltage (if percent isn’t available) of the pump battery, an urgent alarm will be triggered when dropping below this threshold.

openaps (OpenAPS) New!

Integrated OpenAPS loop monitoring, uses these extended settings:

Requires DEVICESTATUS_ADVANCED=”true” to be set
OPENAPS_ENABLE_ALERTS (false) – Set to true to enable notifications when OpenAPS isn’t looping. If OpenAPS is going to offline for a period of time, you can add an OpenAPS Offline event for the expected duration from Careportal to avoid getting alerts.
OPENAPS_WARN (30) – The number of minutes since the last loop that needs to be exceed before an alert is triggered
OPENAPS_URGENT (60) – The number of minutes since the last loop that needs to be exceed before an urgent alarm is triggered
OPENAPS_FIELDS (status-symbol status-label iob meal-assist rssi) – The fields to display by default. Any of the following fields: status-symbol, status-label, iob, meal-assist, freq, and rssi
OPENAPS_RETRO_FIELDS (status-symbol status-label iob meal-assist rssi) – The fields to display in retro mode. Any of the above fields.

loop (Loop) New!

iOS Loop app monitoring, uses these extended settings:

Requires DEVICESTATUS_ADVANCED=”true” to be set
LOOP_ENABLE_ALERTS (false) – Set to true to enable notifications when Loop isn’t looping.
LOOP_WARN (30) – The number of minutes since the last loop that needs to be exceeded before an alert is triggered
LOOP_URGENT (60) – The number of minutes since the last loop that needs to be exceeded before an urgent alarm is triggered
Add loop to SHOW_FORECAST to show forecasted BG.

Treatment Profile

Some of the plugins make use of a treatment profile that can be edited using the Profile Editor, see the link in the Settings drawer on your site.

Treatment Profile Fields:

timezone (Time Zone) – time zone local to the patient. Should be set.
units (Profile Units) – blood glucose units used in the profile, either “mgdl” or “mmol”
dia (Insulin duration) – value should be the duration of insulin action to use in calculating how much insulin is left active. Defaults to 3 hours.
carbs_hr (Carbs per Hour) – The number of carbs that are processed per hour, for more information see #DIYPS.
carbratio (Carb Ratio) – grams per unit of insulin.
sens (Insulin sensitivity) How much one unit of insulin will normally lower blood glucose.
basal The basal rate set on the pump.
target_high – Upper target for correction boluses.
target_low – Lower target for correction boluses.