Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Updated about pages, troubleshooting #77

Merged
merged 6 commits into from
Oct 13, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 49 additions & 4 deletions docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

## Introduction

Nightscout (CGM in the Cloud) is an open source, DIY project cloud application, which you can install yourself using free hosting from various cloud service providers. Once installed, Nightscout acts as a central repository of blood glucose and insulin dosing data for a single person, allowing you to view the CGM graph and other data anywhere using a web browser.
Nightscout (CGM in the Cloud) is an open source cloud application, which you can install yourself using free hosting from various cloud service providers. You might also need or prefer to use paid hosting services for your database size needs or to avoid the difficulties in building and maintaining your site. Once setup, Nightscout acts as a central repository of blood glucose and insulin dosing data for a single person, allowing you to view the CGM graph and other data anywhere using a web browser.

The CGM data is sent to Nightscout using an uploader application such as xDrip+, Spike or Medtronic uploader, running on a mobile phone carried by the person being monitored, or directly from your Dexcom or CareLink account. The application you'll need for uploading the data depends on which CGM device you're using.

Expand All @@ -30,7 +30,7 @@ Once you have Nightscout up and running, you'll get a view that looks something

</br>

!!!warning "Important"
!!!warning "IMPORTANT"

Please understand that this project:

Expand All @@ -41,6 +41,17 @@ Once you have Nightscout up and running, you'll get a view that looks something

</br>

!!!warning "SAFETY"

This project requires internet availability and third party cloud services availability.

- Do not rely only on it
- Make sure you're ready to cope with an unexpected failure

**You are building your own Nightscout site and will be sole responsible for its functioning and its use.**

</br>

## Development History

Nightscout was developed by parents of children with Type 1 Diabetes and has continued to be developed, maintained, and supported by volunteers. When first implemented, Nightscout was a solution specifically for remote monitoring of Dexcom G4 CGM data. Today, there are Nightscout solutions available for many CGM sensors. The goal of the project is to allow remote monitoring of a T1D’s glucose level using existing monitoring devices.
Expand All @@ -49,9 +60,17 @@ Nightscout was developed by parents of children with Type 1 Diabetes and has con

## What Does It Cost?

Cost varies based on the setup you will be using.
Cost varies based on the setup you will need.

You can build your Nightscout site and operate it **entirely for free but you might experience some limitations.**

The online services and accounts needed to run a Nightscout site are free for most users.
Keep in mind free hosting services will require you to maintain them.

Free databases like M0 Sandbox provided by Atlas will only hold a limited amount of data (512MB) and you will eventually need to manually cleanup. You can extend the capacity to 2 and 5GB paying an M2 or M5 Shared cluster.

Heroku Free dynos plan will not prevent your app to fall asleep in certain cases and you might need to setup an Uptime robot to prevent this. You can also make it always available upgrading to a Hobby plan.

You can opt for a paid service if you prefer.

</br>

Expand All @@ -61,6 +80,32 @@ A CGM sensor: Dexcom, Medtronic, Libre (plus an additional transmitter) or Evers

An [uploader](./uploader/uploaders.md): a mobile phone with the matching app.

Internet access.

Basic skills in using a computer and following a procedure.

</br>

## Who Will Help Me?

You will find open heart people in many Facebook groups, there are many Nightscout communities and most probably you'll find one in your own country and language.

Main Facebook group: [https://www.facebook.com/groups/cgminthecloud/](https://www.facebook.com/groups/cgminthecloud/)

!!!warning "Regarding support"

This project is DIY and supported by volunteers. Whilst you most probably will find someone ready to help for free, building your own Nightscout site doesn't entitle you to any form of support.

Nightscout developers are busy people and we'd like them to concentrate on maintaining and improving Nightscout, not only supporting users.

</br>

## I would prefer to pay someone else to manage it for me...

Then [T1Pal](https://t1pal.com/) is what you need.

T1Pal has been designed by Ben West, a member of the original CGM in the Cloud team and a an original lead core developer for the Nightscout Project.

</br>

## How to Use These Docs
Expand Down
Binary file modified docs/nightscout/img/NewNS18.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/nightscout/img/NewNS21.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/nightscout/img/bridge-settings.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/nightscout/img/config-vars.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/nightscout/img/heroku-logs.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/nightscout/img/insight01.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/nightscout/img/insight02.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
57 changes: 57 additions & 0 deletions docs/nightscout/insights.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
# Nightscout components

</br>

## GitHub

<img src="https://github.githubassets.com/images/modules/logos_page/GitHub-Mark.png" style="zoom:20%;" />

**[GitHub](https://github.com/about)** is a Git repository hosting service.

It's a place where you can store and share projects: software, hardware, documentation (and virtually anything) and maintain versions of your work. It allows collaboration between developers (anybody can view the complete code of Nightscout: it is open source) and anybody can download it or make a copy of it (a **"fork"**). A GitHub project is available in a repository (also called repo) like the [Apollo 11 source code](https://github.com/chrislgarry/Apollo-11) and Nightscout [https://github.com/nightscout/cgm-remote-monitor](https://github.com/nightscout/cgm-remote-monitor).

</br>

## Heroku

![https://brand.heroku.com/static/media/heroku-logo-stroke.aa0b53be.svg](https://brand.heroku.com/static/media/heroku-logo-stroke.aa0b53be.svg)

[**Heroku**](https://www.heroku.com/about) is a container-based cloud Platform as a Service.

It's an infrastructure where you can run your application (your program) in the cloud, meaning that you don't need to have specific hardware (servers, hardware, infrastructures) and it is available from anywhere when connected to the internet, usually as a web page with an address like https://mynightscoutsite.herokuapp.com. Your Nightscout app will run in the Heroku cloud and will be available to any device connected to the internet and knowing the address. You can also secure it and decide who can see your BG.

</br>

## mongoDB

<img src="https://webassets.mongodb.com/_com_assets/cms/MongoDB_Logo_FullColorBlack_RGB-4td3yuxzjs.png" style="zoom:10%;" />

[**mongoDB**](https://www.mongodb.com/what-is-mongodb) is a document database.

It's a virtual place where you can store your data, in the cloud like Heroku. Nightscout will store all your data in an Atlas database: your BG, insulin sensitivity factors, correction factors, basal profiles, etc... This will allow Nightscout to create reports and much more.

</br>

# Nightscout install

</br>

In order to create a new Nightscout site you'll need to open an account in each of the previous providers.

The **GitHub** account will allow you to copy (fork) the original source code in your own cgm-remote-monitor repository, which includes the install (deploy) and update scripts as well as the rest of the functions that make Nightscout. You can see it as the software code of Nightscout, a set of instructions.

The **Heroku** account creation will require you to provide a valid credit card to certificate you are a physical person and not an automated system. Unless you deliberately choose a paid option (and there is no trap: you won't able to select one by mistake) you will not be billed anything. You can see Heroku as the engine of your Nightscout, the application itself, that's running somewhere on the internet and can be accessed from anywhere.

The **Atlas** account will give you access to a small free database (500MB) that should be more than enough for most users. If uploading from a 600 series pump, or if using a DIY close loop system, it might be small and you'll need regular cleanup.

<img src="..\img\insight01.png" style="zoom:80%;" />

</br>

# Nightscout operation

</br>

During normal operation, your uploader (a device connected to your CGM and the internet) will send data to Nightscout, and Heroku will place them in the database. The values or predicted values might trigger some actions with other devices that are connected to Nightscout (like IFFT). You will be able to access them near real time from any device connected to the internet like a computer, mobile phone with a browser or a follower app, various gadgets connected to internet, smartwatches, ...

<img src="..\img\insight02.png" style="zoom:80%;" />
76 changes: 64 additions & 12 deletions docs/nightscout/new_user.md
Original file line number Diff line number Diff line change
Expand Up @@ -214,13 +214,72 @@ Atlas will create your default cluster, wait until completion… (can take more

</br>

- Modify the connection string:
- Paste the string in the box below:

<input type="text" id="myAtlas" value="" size="100">
</br>

- Enter your new Atlas database password and database name in the boxes below:

Password: <input type="text" id="myPwd" value="soo5ecret" size="20">
Name: <input type="text" id="mydB" value="mycgmic" size="20">
</br>

- Click the `Generate` button:

<button onclick="Generate()">Generate</button>

<p style="font-size:25px" id="result">The connection string will appear here</p>

<script>
var bAtlas;
var sdB, sPwd;
var sFinalString = "Not defined yet";

function Generate()
{
var sString = sFinalString;

bAtlas=0;
var sString = "Looks good!";
var sAtlas = document.getElementById("myAtlas").value;
sPwd = document.getElementById("myPwd").value;
sdB = document.getElementById("mydB").value;
var iAS = sAtlas.search("://");
if(iAS!=11) { sString = "Atlas URI should start with mongodb+srv://"; }
else
{
var iAP = sAtlas.search("<password>");
if(iAP==-1) { sString = "Atlas URI should contain &lt;password&gt;"; }
else
{
var iAD = sAtlas.search("<dbname>");
if(iAD==-1) { sString = "Atlas URI should contain &lt;dbname&gt;"; }
else
{
bAtlas=1;
sString = sAtlas.substring(0,iAP);
sFinalString = sString.concat(sPwd, sAtlas.substring(iAP+10, iAD));
sString = sAtlas.substring(iAP+10, iAD);
sFinalString = sFinalString.concat(sdB, sAtlas.substring(iAD+8));
}
}
}

if(bAtlas) document.getElementById("result").innerHTML = sFinalString;
else document.getElementById("result").innerHTML = sString;
}
</script>

It should be similar to this (`xxxxx` will be different):

`mongodb+srv://nightscout:<password>@cluster0.xxxxx.mongodb.net/<dbname>?retryWrites=true&w=majority`

Keep this string safely aside, it is called your `MONGODB_URI`

`mongodb+srv://nightscout:<password>@cluster0.xxxxx.mongodb.net/<dbname>?retryWrites=true&w=majority`
</br>

**If you didn't manage to get the string with the automated script:** (else proceed to Step 4)

!!!info "Helper page"
Open [this helper page](./stringhelp.html) in another tab and insert the original connection string and both your database password and the name you decided for your database name (not important), then click `Generate` to get the final string (leave the page open).
Expand All @@ -232,8 +291,6 @@ Atlas will create your default cluster, wait until completion… (can take more
!!! note
There are no < and > characters in the final string, neither for password and database name.

Keep this string safely aside, it is called your `MONGODB_URI`

</br></br>


Expand Down Expand Up @@ -272,11 +329,6 @@ Keep this string safely aside, it is called your `MONGODB_URI`

</br>

!!! note "You're getting into the core setup of your site"
Below you'll see the minimum required configuration, you can modify the variables later in Heroku. A more complete list here: [Setup](..\setup_variables)

</br>

- Enter your CGM in the Cloud site name: invent a name you will use to see your BG in the cloud. Check the name is available.

- Don’t change the region.
Expand Down Expand Up @@ -307,6 +359,9 @@ Scroll down and setup the following variables:
!!! note "Password"
*Some people have had problems with their bridge connecting when their Dexcom passwords are entirely numeric. If you have connection issues in that case, try changing your password to something with a mix of numbers and letters.*

!!! info
You need to have at least one follower to use Dexcom Share. See [here](../../uploader/setup/#dexcom).

</br>

- If you want to link your CareLink account as a data source, compile the following lines:
Expand All @@ -327,9 +382,6 @@ Scroll down and setup the following variables:

<img src="..\img\NewNS38.png" style="zoom:80%;" />

!!! note "More on `ENABLE` words"
If you want to know more about them, look here: [Setup](..\setup_variables)

!!! note "More on `ENABLE` words"
If you want to know more about them, look here: [Setup](..\setup_variables)

Expand Down
14 changes: 8 additions & 6 deletions docs/nightscout/setup_variables.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,11 @@ You will see them in the same order they appear when setting up a new site.

If you need to modify them later, you'll find them in [Heroku](../setup_variables#editing-config-vars-in-heroku).

From `Settings`, click on the `Reveal Config Vars`

<img src="../img/config-vars.png" width="800">

</br>

------

Expand Down Expand Up @@ -254,22 +258,20 @@ EU

Your CareLink account username, to receive CGM data from the CareLink service. Also make sure to include 'mmconnect' in your ENABLE line.

</br>

!!! info "More variables for `MMCONNECT` are available [here](https://github.com/nightscout/cgm-remote-monitor#mmconnect-minimed-connect-bridge) for you to add and edit in [Heroku](../setup_variables#editing-config-vars-in-heroku). "

------

**MONGO_COLLECTION `Required`**

The Mongo collection where CGM data is stored.

!!! warning "This string is vital to your Nightscout functioning: it is the link that will allow access to the database where all your data is stored in the cloud. A wrong connection string will prevent your site to open and your data to upload in Nightscout"

An Atlas database string will look like this:

`mongodb+srv://nightscout:<password>@cluster0.xxxxx.mongodb.net/<dbname>?retryWrites=true&w=majority`

**MONGO_COLLECTION `Required`**

The Mongo collection where CGM data is stored.

------

**NIGHT_MODE**
Expand Down
Binary file added docs/troubleshoot/img/TShoot17.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/troubleshoot/img/TShoot18.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/troubleshoot/img/TShoot19.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/troubleshoot/img/TShoot20.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/troubleshoot/img/TShoot21.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/troubleshoot/img/TShoot22.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/troubleshoot/img/TShoot23.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/troubleshoot/img/TShoot24.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading