diff --git a/README.md b/README.md index ac80029e3..6f8f9adfb 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,7 @@ This documentation is organized into a series of phases that progressively build ---------- **You may be looking for:** -* [Live help with your implementation](http://openaps.readthedocs.io/en/latest/docs/introduction/communication-support-channels.html) (Hint: [Check out this Gitter channel](https://gitter.im/nightscout/intend-to-bolus)) +* [Live help with your implementation](http://openaps.readthedocs.io/en/latest/docs/Understanding OpenAPS-Overview/communication-support-channels.html) (Hint: [Check out this Gitter channel](https://gitter.im/nightscout/intend-to-bolus)) * [OpenAPS Reference Design](https://openaps.org/reference-design/) diff --git a/docs/docs/Customize-Iterate/autosens.md b/docs/docs/Customize-Iterate/autosens.md index 6d68dd8a2..b6d32f561 100644 --- a/docs/docs/Customize-Iterate/autosens.md +++ b/docs/docs/Customize-Iterate/autosens.md @@ -24,7 +24,7 @@ If you have papertrail setup (or are watching similarly through your rig itself) ![Autosens adjustments logged in papertrail](../Images/customize-iterate/autosens-adjust.png) -As you can see, there are several types of adjustments that have occured during the day. +As you can see, there are several types of adjustments that have occurred during the day. * In the morning, autosens was detecting some excess insulin sensitivity...so basals, targets, and ISF were adjusted down (by multiplier of 0.94). * Later in the day (the blue boxed section), another adjustment was made to her BG targets because of a persistent high. While not an adjustment by autosens itself, this is similar and can be set in preferences.json by setting the "adv_target_adjustments" to true. Basically this preference will automatically lower BG targets (to as low as "eating soon" mode target of 80 mg/dl) for persistent high BGs. * Later in the day, a couple brief periods of insulin sensitivity were short-lived. diff --git a/docs/docs/Customize-Iterate/autotune.md b/docs/docs/Customize-Iterate/autotune.md index 576c603f6..fe68db28e 100644 --- a/docs/docs/Customize-Iterate/autotune.md +++ b/docs/docs/Customize-Iterate/autotune.md @@ -82,7 +82,7 @@ If you are not running autotune as part of a closed loop, you can still run it a **Step 1b: Prep your Mac** * MAC USERS: Follow these steps instead of 1a above if you want to run autotune on your Mac. (Mac users can instead do the above instructions if they prefer to create a Linux virtual machine to run it on): -* To run AutoTune using a Mac you will use the Terminal application. Open the Terminal application on your Mac (it is located in the Utilities application folder on your Mac). For more information about using Terminal see: http://openaps.readthedocs.io/en/latest/docs/introduction/understand-this-guide.html#before-you-get-started +* To run AutoTune using a Mac you will use the Terminal application. Open the Terminal application on your Mac (it is located in the Utilities application folder on your Mac). For more information about using Terminal see: http://openaps.readthedocs.io/en/latest/docs/Understanding OpenAPS-Overview/overview-of-build-process.html#before-you-get-started * After you open a Terminal window, copy and paste the command for each of the Mac install command steps below, and then hit the return key after you paste each command, which will execute it. If you are asked for a password, enter the password for your Mac. * Tip for New Mac Users: If you typically use a Windows machine and you keep trying to do a control-c (copy) and control-v (paste), remember, on a Mac use command-c (copy) and command-v (paste) instead. * For example, the first step is to install Homebrew on your Mac. To do this you need to copy and paste the following command from step 1.) of the Mac install commands below and then hit the return key: `/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"` diff --git a/docs/docs/Customize-Iterate/bluetooth-tethering-edison.md b/docs/docs/Customize-Iterate/bluetooth-tethering-edison.md index afaca7058..6928b119b 100644 --- a/docs/docs/Customize-Iterate/bluetooth-tethering-edison.md +++ b/docs/docs/Customize-Iterate/bluetooth-tethering-edison.md @@ -188,7 +188,7 @@ bnep0 Link encap:Ethernet HWaddr 98:4f:ee:03:a6:91 * About a minute after wifi comes back on (terminal session restores), your Edison should automatically disconnect the Bluetooth connection. -Finally, it's time to take a walk. About a minute after walking out of range of your home wifi, you should see that a device is connected to your phone via Bluetooth. Shortly after that you should see things update on Nightscout. About a minute afer you come home, it should reconnect to wifi and automatically disconnect Bluetooth. +Finally, it's time to take a walk. About a minute after walking out of range of your home wifi, you should see that a device is connected to your phone via Bluetooth. Shortly after that you should see things update on Nightscout. About a minute after you come home, it should reconnect to wifi and automatically disconnect Bluetooth. ### Additional App requirement on Android to enable automatic BT Tethering reconnects diff --git a/docs/docs/Customize-Iterate/ifttt-integration.md b/docs/docs/Customize-Iterate/ifttt-integration.md index 9cac42d30..5d0b8d4f9 100644 --- a/docs/docs/Customize-Iterate/ifttt-integration.md +++ b/docs/docs/Customize-Iterate/ifttt-integration.md @@ -41,15 +41,15 @@ Want to be able to set or cancel temp targets from your phone, Pebble, Alexa, or ![IFTTT then](../Images/IFTTT_that.png) -* Enter "maker" in the search field and click on the Maker Webhooks app +* Enter "webhooks" in the search field and click on the Webhooks app ![IFTTT maker](../Images/IFTTT_maker.png) -* Connect the Maker app +* Connect the Webhooks app ![IFTTT maker connect](../Images/IFTTT_connect2.png) -* Select the green "Make a Web Request" box +* Select the blue "Make a Web Request" box ![IFTTT web request](../Images/IFTTT_webrequest.png) @@ -67,7 +67,7 @@ Content Type: application/json Body: The content of the body will depend on the action that you would like this particular button press to perform. You can only do ONE of the actions per button. Some sample content: -### Example IFTTT trigger conent +### Example IFTTT trigger content Eating soon ``` @@ -140,7 +140,7 @@ CGM Sensor Start * Download the IFTTT app on your phone and log in. -* You can add homescreen quick buttons. Click on your IFTTT app and login, click on My Applets in the bottom right corner, and then click on the applet that you'd like to work with. From the the middle of the applet, click on the Widget Settings, and then click on the Add button for the Homescreen Icon. +* You can add homescreen quick buttons. Click on your IFTTT app and login, click on My Applets in the bottom right corner, and then click on the applet that you'd like to work with. From the middle of the applet, click on the Widget Settings, and then click on the Add button for the Homescreen Icon. ![IFTTT homescreen](../Images/IFTTT_homescreen.png) diff --git a/docs/docs/Customize-Iterate/offline-looping-and-monitoring.md b/docs/docs/Customize-Iterate/offline-looping-and-monitoring.md index ba970cb89..a338cc838 100644 --- a/docs/docs/Customize-Iterate/offline-looping-and-monitoring.md +++ b/docs/docs/Customize-Iterate/offline-looping-and-monitoring.md @@ -25,7 +25,7 @@ Dexcom CGM users have a few different alternatives to retrieve blood glucose val * xDrip: [http://stephenblackwasalreadytaken.github.io/xDrip/](http://stephenblackwasalreadytaken.github.io/xDrip/) * xDrip+: [https://jamorham.github.io/#xdrip-plus](https://jamorham.github.io/#xdrip-plus) -2. For iPhone users, you can set up a modified Loop app to bring data in locally. The directions for this configuration are provided in the section below for local, offline BGs using Loop app. +2. For iPhone users, it is possible to setup a modified Loop app to bring data in locally such as the one you will find here: https://github.com/thebookins/Loop. This solution requires a build of an iOS app on a Mac and the use of a free Dev licenses (which will give you an app to test, but will only stay deployed for 7 days) or a full Dev license ($99/year). The modified Loop app will "listen in" for Dexcom data on iPhone, upload it to a scaled down version of Nightscout on your rig where xDrip is running. This solution requires some Mac OS and iOS savvy, and exploration. 3. **EASIEST:** For either Android or iPhone users, you can plug the CGM receiver directly into your rig via USB. This will pull BGs into the rig directly from the receiver and be used for looping. If you are a G4 user, this will also bring RAW BG data into the rig during sensor restarts or ??? times. The rig will loop using RAW BGs so long as the BG value is under 150 mg/dl. A few notes about how to make the direct-receiver configuration work: @@ -143,7 +143,7 @@ http://@:5000/api/v1/ http:// Settings > REST API Upload > Set Enabled and enter Base URL: http://[API_SECRET]@[Pi/Edison_IP_address]:5000/api/v1/` (Note: Enter your plain-text API_SECRET in the Android app, not the hashed version of it). diff --git a/docs/docs/Customize-Iterate/oref1.md b/docs/docs/Customize-Iterate/oref1.md index 6b89f38bf..2701b9aa1 100644 --- a/docs/docs/Customize-Iterate/oref1.md +++ b/docs/docs/Customize-Iterate/oref1.md @@ -3,7 +3,7 @@ NOTE OF CAUTION: * oref1 is different than oref0, the baseline "traditional" OpenAPS implementation that only uses temporary basal rates. * You should have run oref0 (basic OpenAPS looping) for more than two weeks, and be very aware of all the types of situations in which your rig might fail, before you enable oref1-related features. -* If running more then one rig, you will want to make sure all rigs are running an SMB-aware oref0 version (release 0.5.1 or higher) before enabling SMB on any of them (even if SMB is not enacted on all rigs, all rigs need to know about it). +* If running more than one rig, you will want to make sure all rigs are running an SMB-aware oref0 version (release 0.5.1 or higher) before enabling SMB on any of them (even if SMB is not enacted on all rigs, all rigs need to know about it). ## Only run oref1 with the following caveats in mind: @@ -72,7 +72,7 @@ If Pushover API token and User key were added during the setup script and you ha ![Pushover example of carbs needed](../Images/Pushover_carbs_needed.PNG) -* When SMB is active and hitting maxBolus. This is intended to alert you when SMB is going "all out", and will tell you the total amount of insulin OpenAPS thinks you require (insulinReq) if current BG trends continue. **DO NOT just blindly bolus for the amount of insulinReq.** You will also see that the pushover alert lists the amount it is attempting to SMB. You should use this notification as a reminder to tell the rig about anything you know it doesn't (like "oh yea, I want to enter my carbs for this meal", or "oh, hold on, I need an activity mode, becuase I'm gonna go for a walk in a few minutes"). You can also decide if a manual meal bolus is appropriate, or if you'd like to manually bolus part of the insulinReq. **If you're just using insulinReq and not doing a normal meal bolus, you should NOT do the full insulinReq as a manual bolus**, as oref1 is already attempting to deliver part of it as a SMB. SMB is designed to administer the insulinReq a little at a time, in order to be able to safely react if the BG rise slows or stops, so in cases where you might otherwise consider a correction bolus, it'll often be best to not do anything at all and let SMB safely handle the increased need for insulin. If you do choose to do a small manual correction bolus for a portion of the insulinReq, be sure to subtract out the SMB oref1 is already delivering, and round down for safety. +* When SMB is active and hitting maxBolus. This is intended to alert you when SMB is going "all out", and will tell you the total amount of insulin OpenAPS thinks you require (insulinReq) if current BG trends continue. **DO NOT just blindly bolus for the amount of insulinReq.** You will also see that the pushover alert lists the amount it is attempting to SMB. You should use this notification as a reminder to tell the rig about anything you know it doesn't (like "oh yea, I want to enter my carbs for this meal", or "oh, hold on, I need an activity mode, because I'm gonna go for a walk in a few minutes"). You can also decide if a manual meal bolus is appropriate, or if you'd like to manually bolus part of the insulinReq. **If you're just using insulinReq and not doing a normal meal bolus, you should NOT do the full insulinReq as a manual bolus**, as oref1 is already attempting to deliver part of it as a SMB. SMB is designed to administer the insulinReq a little at a time, in order to be able to safely react if the BG rise slows or stops, so in cases where you might otherwise consider a correction bolus, it'll often be best to not do anything at all and let SMB safely handle the increased need for insulin. If you do choose to do a small manual correction bolus for a portion of the insulinReq, be sure to subtract out the SMB oref1 is already delivering, and round down for safety. ![(Pushover example of insulinReq](../Images/Pushover_insulinReq_SMB.PNG) diff --git a/docs/docs/Customize-Iterate/update-your-rig.md b/docs/docs/Customize-Iterate/update-your-rig.md index 65f3cb32a..283cd7683 100644 --- a/docs/docs/Customize-Iterate/update-your-rig.md +++ b/docs/docs/Customize-Iterate/update-your-rig.md @@ -1,6 +1,6 @@ # How to update your OpenAPS rig in the future -You've probably heard about all kinds of cool new features that you want to try. If they're part of the master branch already, you just need to go enable them (usually by [re-running the oref0-setup script](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-2/oref0-setup.html#re-running-the-setup-script)). +You've probably heard about all kinds of cool new features that you want to try. If they're part of the master branch already, you just need to go enable them (usually by [re-running the oref0-setup script](http://openaps.readthedocs.io/en/latest/docs/Customize-Iterate/oref0-runagain.html)). However, if it's a brand-new feature that's being tested or is recently added to master, you'll need to install the new version of `oref0` first. By the way, if you want to check which version of oref0 you are currently running, `npm list -g oref0` and if you want to check which branch `cd ~/src/oref0` and then `git branch`. diff --git a/docs/docs/Customize-Iterate/usability-considerations.md b/docs/docs/Customize-Iterate/usability-considerations.md index b4e68aac8..0f2b304d0 100644 --- a/docs/docs/Customize-Iterate/usability-considerations.md +++ b/docs/docs/Customize-Iterate/usability-considerations.md @@ -2,6 +2,9 @@ Now that you've closed the loop, you probably have a lot of new "first" experiences to deal with. Like much of this looping experience, you'll figure it out as you go along, and figure out what's right for you. But here are some ideas or tips to consider: +## **How do I enter carbs and boluses so OpenAPS can use them?** +
Boluses always have to be set on the pump for OpenAPS to take them into consideration. Carbs cans be either entered on the pump (for example, using Bolus Wizard) or into Nightscout (carb entries in Nightscout can either be made directly using the Care Portal) or via IFTTT or XDrip.
+ ## **What do you do with the loop in airport security when you travel**
The loop is off the shelf hardware - it's no different than your phone or other small gadgets, so leave it in your carry-on bag when going through security. (Dana note: I have traveled [well](https://twitter.com/danamlewis/status/811682733445496833) over 100 times with my loop, and in some cases with 3-4 Pis and batteries and related accessories, and have never had issues going through security because of my loop.) diff --git a/docs/docs/Customize-Iterate/useful-mobile-apps.md b/docs/docs/Customize-Iterate/useful-mobile-apps.md index 9a37b01ef..6a97485b6 100644 --- a/docs/docs/Customize-Iterate/useful-mobile-apps.md +++ b/docs/docs/Customize-Iterate/useful-mobile-apps.md @@ -12,7 +12,7 @@ In order to connect to your rig wirelessly, sometimes you'll need it's IP addres ### iNet or NetAnalyzer (iPhone) -There are many scanning apps for iPhone. iNet or NetAnalyzer (lite version...don't need to pay for this to work) will scan the network that the phone is using for other connected devices and their IP addresses on that same network. So, if you run the scan while your phone is on a wifi network, the scan will be for the wifi netowrk and range will likely be `192.168.1.1` to `192.168.1.254`. If you have your rig connected via mobile hotspot, then the scan will be for devices in the mobile hotspot range of `172.10.20.1` to `172.10.20.20`. (IP address ranges depend on the type of network being scanned.) Some people have had more success with the NetAnalyzer app over the iNet app, depending on their router settings. +There are many scanning apps for iPhone. iNet or NetAnalyzer (lite version...don't need to pay for this to work) will scan the network that the phone is using for other connected devices and their IP addresses on that same network. So, if you run the scan while your phone is on a wifi network, the scan will be for the wifi network and range will likely be `192.168.1.1` to `192.168.1.254`. If you have your rig connected via mobile hotspot, then the scan will be for devices in the mobile hotspot range of `172.10.20.1` to `172.10.20.20`. (IP address ranges depend on the type of network being scanned.) Some people have had more success with the NetAnalyzer app over the iNet app, depending on their router settings. * Open the iNet app and click on the big `NETWORK SCANNER`. If using NetAnalyzer app, click on the `LAN` button on bottom bar and then `scan` button in top right corner of app. @@ -85,7 +85,7 @@ Some useful/fun commands from the Script Library that I've added to my Commands **Hardware Information** * **Show Disk Status** will run `df -h` which shows available memory on your rig. If you ever have memory errors, this would be a helpful tool to see where your memory has been going. -* **Show Current Version** will run the equivalent of `uname -a` and tell your which jubilinux version your rig is running. +* **Show Current Version** will run the equivalent of `uname -a` and show which version of the Linux kernel your rig is running. This can be useful in determining your Jubilinux version. * **Show USB Devices** will run `lsusb` and can help confirm your dexcom receiver is being properly recognized when plugged in. * **Show External IP address** will run `ifconfig` and show your rig's wifi (wlan0) IP address or hotspot (bnep0) IP address. @@ -109,7 +109,7 @@ These are some of my favorite Commands: **Show known wifi networks** - If I'm headed to a friend's house or traveling, I may want to double check if I have their wifi network already saved to my rig. This gives me a simple list of the wifi networks I have saved in the rig already, and helps me know if I want to add a new one before I travel. For this command, simply enter `cat-wifi` in the command script body. (note: if I actually want to add a wifi network, I would switch to Termius app or login on my computer to add a wifi network...SimpleSSH just isn't a robust editor) -**git lock fix** - Probably the most common error in a rig is the `.git lock` error that happens on occassion and by deleting the .git directory, you can get back to looping quickly. For this command, enter `rm -rf /root/myopenaps/.git` in the command script body. +**git lock fix** - Probably the most common error in a rig is the `.git lock` error that happens on occasion and by deleting the .git directory, you can get back to looping quickly. For this command, enter `rm -rf /root/myopenaps/.git` in the command script body. **mmtune** - If you want to check how well your pump tune strength is you can use this command script to test it `cd ~/myopenaps && sudo service cron stop && killall -g oref0-pump-loop && openaps mmtune && sudo service cron start` diff --git a/docs/docs/Gear Up/CGM.md b/docs/docs/Gear Up/CGM.md index 6f6093517..58174faf5 100644 --- a/docs/docs/Gear Up/CGM.md +++ b/docs/docs/Gear Up/CGM.md @@ -5,7 +5,7 @@ * Medtronic (MiniMed Paradigm REAL-Time Revel or Enlite) -The openaps tool set currently primarily supports three different CGM systems: the Dexcom G4 Platinum system (with or without the [Share](http://www.dexcom.com/dexcom-g4-platinum-share) functionality), the newer Dexcom G5 Mobile system and the [Medtronic system](https://www.medtronicdiabetes.com/treatment-and-products/enlite-sensor). Other CGM or CGM-like devices (Libre) can also be used if the data is uploaded to Nightscout and the OpenAPS rig has Internet connectivity. +The openaps toolkit currently primarily supports three different CGM systems: the Dexcom G4 Platinum system (with or without the [Share](http://www.dexcom.com/dexcom-g4-platinum-share) functionality), the newer Dexcom G5 Mobile system and the [Medtronic system](https://www.medtronicdiabetes.com/treatment-and-products/enlite-sensor). Other CGM or CGM-like devices (Libre) can also be used if the data is uploaded to Nightscout and the OpenAPS rig has Internet connectivity. With Dexcom G4, the Share platform is not required; but is valuable for uploading BG data to the cloud (and into Nightscout, which can then send BGs to the rig). However, without Share, a G4 receiver can instead be plugged in directly to the OpenAPS rig. For Dexcom G5 Mobile you can also use a compatible receiver (software upgraded G4 with Share receiver or a G5 Mobile Receiver), or also pull data from the Dexcom Share servers into Nightscout for use with an Internet-connected OpenAPS rig. @@ -17,12 +17,12 @@ This refers to the Dexcom receiver hardware. Note that your Dexcom should be nea ### Pulling CGM data from the cloud -Your OpenAPS implementation can also pull CGM data from a Nightscout site in addition to pulling from the CGM directly. You can find more documentation about pulling CGM data from a Nightscout site [here](https://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-1/nightscout-setup.html). +Your OpenAPS implementation can also pull CGM data from a Nightscout site in addition to pulling from the CGM directly. You can find more documentation about pulling CGM data from a Nightscout site [here](https://openaps.readthedocs.io/en/latest/docs/While You Wait For Gear/nightscout-setup.html). * If you have an Android phone, you can use the xDrip app to get your data from the Dexcom to Nightscout, to then be used in OpenAPS. * If you have a Share receiver [follow these directions](http://www.nightscout.info/wiki/welcome/nightscout-with-xdrip-and-dexcom-share-wireless) to set up your Android uploader and Nightscout website. * You could also build a DIY receiver. Directions to build the receiver, set up your uploader and Nightscout can be found [here](http://www.nightscout.info/wiki/nightscout-with-xdrip-wireless-bridge). -* You can also use part of the DIY receiver set up - the wixel – directly to the raspberry pi. Learn more about the wixel setup [here](https://github.com/jamorham/python-usb-wixel-xdrip) and [here](https://github.com/ochenmiller/wixelpi_uploader). +* You can also use part of the DIY receiver set up - the wixel – directly to the Raspberry Pi. Learn more about the wixel setup [here](https://github.com/jamorham/python-usb-wixel-xdrip) and [here](https://github.com/ochenmiller/wixelpi_uploader). * If you are using Abbott Freestyle Libre in combination with Sony smartwach 3 and xdrip+ (or possibly other combinations of technology to get Libre data up into the cloud), you can also pull CGM data directly from Nightscout. diff --git a/docs/docs/Gear Up/edison.md b/docs/docs/Gear Up/edison.md index ea4bb1dec..1e767ea80 100644 --- a/docs/docs/Gear Up/edison.md +++ b/docs/docs/Gear Up/edison.md @@ -3,35 +3,35 @@ Note: The Edison/Explorer Board combination is the rig setup recommended by the community for size, range, and portability reasons. The high level parts list (see below for more details, and links): * Explorer Board -* Edison (which you can now order pre-flashed with Jubilinux) -* Nuts and Bolts to hold the Edison on to the Explorer Board +* Edison (which you can now order pre-flashed with jubilinux) +* Nuts and Bolts to attach the Edison to the Explorer Board * At least one Lithium battery -* 2 cables +* 2 USB cables ## Edison [Intel Edison Compute Module](http://www.intel.com/content/www/us/en/do-it-yourself/edison.html) -* Option A (**RECOMMENDED - this will save you several hours**): [Buy an Edison that is already flashed with Jublinux - see here](https://enhanced-radio-devices.myshopify.com/products/intel-edison-w-jubilinux). You can order it from the same manufacturer that makes the Explorer Boards (see below). You'll be able to skip the flashing steps and [start by logging in as root](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-0/setup-edison.html#initial-edison-setup) to set up your wifi & otherwise set up OpenAPS from there. - * If it is "out of stock", you can sign up to get notifications for when they're back in stock. Even if they're out of stock at the moment, we recommend waiting a few days to get a pre-flashed Edison. If you get impatient and try to buy an Edison elsewhere and flash it yourself, you'll probably end up frustrated with the process, and may end up wasting more time asking someone to walk you through the process on Gitter than it would've taken to just wait for the next batch of pre-flashed ones. +* Option A (**RECOMMENDED - this will save you several hours**): [Buy an Edison that is already flashed with jublinux - see here](https://enhanced-radio-devices.myshopify.com/products/intel-edison-w-jubilinux). You can order it from the same manufacturer that makes the Explorer Boards (see below). Once you get your pre-flashed Edison, you can [install and setup OpenAPS[(http://openaps.readthedocs.io/en/latest/docs/Build%20Your%20Rig/OpenAPS-install.html) and get looping much more quickly. + * If it is "out of stock", you can sign up to get notifications for when they're back in stock. Even if they're out of stock at the moment, we recommend waiting a few days to get a pre-flashed Edison. If you get impatient and try to buy an Edison elsewhere and flash it yourself, you'll probably end up frustrated with the process, and may end up wasting more time asking someone to walk you through the process on Gitter than it would've taken to just wait for the next batch of pre-flashed Edisons. -* Option B (**NOT RECOMMENDED** unless you've previously flashed jubilinux and are comfortable doing so again): Get it out of the box from [Amazon](http://www.amazon.com/gp/product/B00PTVSVI8?dpID=51yqQB46DIL&dpSrc=sims&preST=_SL500_SR135%2C135_&refRID=6AE996400627CC0KPY52&ref_=pd_rhf_se_s_cp_2), Adafruit, Sparkfun or your nearest provider - and follow the instructions to flash it. Be aware that there are four versions: 1-EDI2.LPON, 2-EDI2.SPON, 3-EDI2.LPOF, and 4-EDI2.SPOF. Option 1 claims lower power consumption, and if so would be better for a portable rig. Option 2 is the more common version, with theoretically higher consumption because of the more power dedicated to wifi. If you purchase a development kit, this is the version you will get. Versions 3 and 4 require an external antenna. To date no one has done any side-by-side testing of power consumption between the LPON and SPON Edison versions, so it is unclear how much difference (if any) the model number would make to power consumption in real-world conditions with an OpenAPS rig. So, get whichever one is cheapest/you decide you want. +* Option B (**NOT RECOMMENDED** unless you've previously flashed jubilinux and are comfortable doing so again): Get it out of the box from [Amazon](http://www.amazon.com/gp/product/B00PTVSVI8?dpID=51yqQB46DIL&dpSrc=sims&preST=_SL500_SR135%2C135_&refRID=6AE996400627CC0KPY52&ref_=pd_rhf_se_s_cp_2), Adafruit, Sparkfun or your nearest provider - and follow the instructions to flash it. Be aware that there are four versions: 1-EDI2.LPON, 2-EDI2.SPON, 3-EDI2.LPOF, and 4-EDI2.SPOF. Option 1 claims lower power consumption, and if so would be better for a portable rig. Option 2 is the more common version, with theoretically higher consumption because of the additional power dedicated to wifi. If you purchase a development kit, this is the version you will get. Versions 3 and 4 require an external antenna. To date no one has done any side-by-side testing of power consumption between the LPON and SPON Edison versions, so it is unclear how much difference (if any) the model number would make to power consumption in real-world conditions with an OpenAPS rig. So, get whichever one is cheapest or you decide you want. The different model numbers or variants of the Intel Edison Compute Module do not appear to be documented on Intel's website or at many of the online retailers. However, the different variants can be seen in the product listings at [Mouser](http://www.mouser.com/Embedded-Solutions/Computing/_/N-aez39?Keyword=intel+edison) and [Arrow](https://www.arrow.com/en/products/search?q=intel%20edison&filters=Manufacturer_name:Intel;). It appears as though the main differences pertain to onboard vs. external antenna and low power vs. high power wireless radio options. The low power radio variant is classified by Intel as "Wearable". According to some discussion on the Intel message boards (see [here](https://communities.intel.com/thread/81519) and [here](https://communities.intel.com/message/251806#251806)) the "Wearable" variant limits the wireless radio power to "keep the thermal properties at a lower level". Some users have noted that their Edison modules get very hot at times. Although the discussions referenced above suggest that using the low power "Wearable" variant may help avoid heat issues, the different Edison models have not been tested side-by-side in an OpenAPS configuration to determine whether or not any one model would use lower power, generate less heat, or have better wireless performance compared to the other models. -## Lipo Battery and/or other battery supply +## Lithium-ion polymer (LiPo) battery or other battery supply -Use a LiPo battery because the Explorer Board has battery charger circuitry on board for these batteries. The example setup uses a [2000mah LIPO battery](http://www.robotshop.com/en/37v-2000mah-5c-lipo-battery.html). This battery lasts in the region of ~16+ hours. The connector on this battery is a 2mm 2 pin JST to match the Explorer Board power plug. It's best to buy from a reputable supplier, because if the internal two cells are mismatched the Explorer board cannot charge them seperately and they are prone to catching fire. Make sure that it *includes a protection circuit* to protect over-discharge. **NEVER** connect the battery to the Edison base board the wrong way round. There is no manufacturing standard so never assume correct polarity. The connector JP1 on the Explorer board has two terminals. The left side is positive, the right side is negative. The side with the JP1 label is the positive side. Typically a battery's red wire is the positive wire. Ideally you want a battery that has a 10k ohm thermistor for temperature protection by the Edison too. +Use a LiPo battery because the Explorer Board has battery charger circuitry on board for these batteries. The example setup uses a [2000mah LiPo battery](http://www.robotshop.com/en/37v-2000mah-5c-lipo-battery.html). This battery lasts approximately 16+ hours, though you could get more or less time. This battery uses a 2mm 2 pin JST connector to match the Explorer Board power plug. It's best to buy from a reputable supplier, because if the internal two cells are mismatched the Explorer board cannot charge them seperately and they are prone to catching fire. Make sure that it *includes a protection circuit* to protect over-discharge. **NEVER** connect the battery to the Edison base board the wrong way round. There is no manufacturing standard so never assume correct polarity. The connector JP1 on the Explorer board has two terminals. The left side is positive, the right side is negative. The side with the JP1 label is the positive side. Typically a battery's red wire is the positive wire. Ideally you want a battery that has a 10k ohm thermistor for temperature protection by the Edison too. You can use any charger with a USB plug, including a wall power charger. The Explorer Board has pass through charging, so this is also how you will charge the LiPo battery. -The following link is to a LiPo battery that is currently most commonly being used with the Explorer board rigs. https://www.adafruit.com/products/2011. (If it is out of stock on Adafruit, it can be purchased from various sellers on Amazon here: [Adafruit Battery Packs Lithium Ion Battery 3.7v 2000mAh](https://www.amazon.com/Battery-Packs-Lithium-3-7v-2000mAh/dp/B0137ITW46) +The following link is to a LiPo battery that is currently most commonly being used with the Explorer board rigs: [Lithium Ion Battery - 3.7v 2000mAh](https://www.adafruit.com/products/2011). (If it is out of stock on Adafruit, it can be purchased from various sellers on Amazon here: [Adafruit Battery Packs Lithium Ion Battery 3.7v 2000mAh](https://www.amazon.com/Battery-Packs-Lithium-3-7v-2000mAh/dp/B0137ITW46).) -Alternative, but common, higher capacity batteries include the Adafruit Lithium Ion Polymer Battery - 3.7v 2500mAh (PRODUCT ID: 328) and the Adafruit Lithium Ion Cylindrical Battery - 3.7v 2200mAh (PRODUCT ID: 1781). They can be viewed here: https://www.adafruit.com/category/574 and comparables can be easilly located with an internet search. +Alternative, but common, higher capacity batteries include the Adafruit Lithium Ion Polymer Battery - 3.7v 2500mAh (PRODUCT ID: 328) and the Adafruit Lithium Ion Cylindrical Battery - 3.7v 2200mAh (PRODUCT ID: 1781). They can be viewed here: [POWER / LIION & LIPOLY / BATTERIES](https://www.adafruit.com/category/574) and comparables can be easily located with an Internet search. -For people in the UK, you may find you have to shop around to find the correct battery, as shipping restrictions appears to have reduced the supply somewhat. [Pimoroni](https://shop.pimoroni.com/products/lipo-battery-pack) appear to stock the same Adafruit 2000mAh battery as mentioned above. Another source looks to be [Cool Components](https://www.coolcomponents.co.uk/en/lithium-polymer-battery-2000mah.html), but you may find shipping costs expensive. CAUTION: [RS Online](https://uk.rs-online.com/mobile/p/lithium-rechargeable-battery-packs/1251266/) sell a similar battery, but unfortunately it comes with the wrong JST connector (it comes with a 2.5mm JST XHP-2, and you need a 2mm JST PH) - however, it is possible to buy the [right connectors](https://www.technobotsonline.com/jst-ph-2mm-2-way-housing-excludes-female-pins.html) and fit them yourself (numerous 'how to' videos on YouTube). +For people in the UK, you may find you have to shop around to find the correct battery, as shipping restrictions appears to have reduced the supply somewhat. [Pimoroni](https://shop.pimoroni.com/products/lipo-battery-pack) appear to stock the same Adafruit 2000mAh battery as mentioned above. Another source looks to be [Cool Components](https://www.coolcomponents.co.uk/en/lithium-polymer-battery-2000mah.html), but you may find shipping costs expensive. CAUTION: [RS Online](https://uk.rs-online.com/mobile/p/lithium-rechargeable-battery-packs/1251266/) sell a similar battery, but unfortunately it comes with the wrong JST connector (it comes with a 2.5mm JST XHP-2, and you need a 2mm JST PH). It is possible, however, to buy the [right connectors](https://www.technobotsonline.com/jst-ph-2mm-2-way-housing-excludes-female-pins.html) and fit them yourself (numerous 'how to' videos on YouTube). ## Explorer Board or another base board @@ -39,13 +39,13 @@ You can use just about any base board, including the Intel base board or the Spa ### Explorer Board antenna tuning (optional) -The antenna on the Explorer board is a strip of copper underneath the green outer coating. The antenna is labeled A1. It will have its maximum power at 868 MHz. The antenna has a line across it at one point with a label that says "915". The antenna defaults to the 868 MHz range, which is what WW pumps use. If you have a US pump, mmtune will run and tune to something near 916MHz. Even with the 868 MHz antenna, you should get half a dozen feet or more of range on average. If you (optionally) want to boost the range of your antenna by a couple more feet, then you cut through the outer coating and the copper on that line with an exacto knife. A single clean cut is sufficient, but if the cut doesn't look clean you could make two cuts and then dig out the circumscribed piece and then reseal the copper with nail polish. With that cut, the antenna will have maximum power near 915 MHz. +The antenna on the Explorer board is a strip of copper underneath the green outer coating. The antenna is labeled A1. It will have its maximum power at 868 MHz. The antenna has a line across it at one point with a label that says "915". The antenna defaults to the 868 MHz range, which is what WW pumps use. If you have a US pump, mmtune will run and tune to something near 916MHz. Even with the 868 MHz antenna, you should get half a dozen feet or more of range on average. If you (optionally) want to boost the range of your antenna by a couple more feet, then you cut through the outer coating and the copper on that line with an X-ACTO knife. A single clean cut is sufficient, but if the cut doesn't look clean you could make two cuts and then dig out the circumscribed piece and then reseal the copper with nail polish. With that cut, the antenna will have maximum power near 915 MHz. If you're unsure whether you need to cut your Explorer Board's antenna, you probably don't. And if you decide you need slightly more range after using the Edison+Explorer rig for a few weeks, you can always come back later and do so then. ![Image of Antenna](../Images/antenna0.jpg) -Optional: You can also add an external antenna to the explorer board such [as this](http://www.mouser.com/Search/ProductDetail.aspx?R=66089-0930virtualkey65480000virtualkey620-66089-0930) from mouser.com. (Note: specific range improvement length has not been confirmed.) +Optional: You can also add an external antenna to the Explorer board such [as this](http://www.mouser.com/Search/ProductDetail.aspx?R=66089-0930virtualkey65480000virtualkey620-66089-0930) from mouser.com. (Note: specific range improvement length has not been confirmed.) ![Image of Antenna](../Images/antenna1.jpg) @@ -63,15 +63,15 @@ Warning: bad cables cause a lot of headaches during the Edison flashing process, ## Micro USB to Micro USB OTG Cable -You may need to connect your Dexcom Receiver to your Explorer Board for offline looping. For this you will need to use a micro USB to micro USB OTG cable (or an OTG adapter). Here is an example of a cable that will work: [BestGameSetups Micro USB to Micro USB OTG (On-The-Go) 12" (30cm) Data Cable](https://www.amazon.com/dp/B00TQOEST0/ref=cm_sw_r_cp_api_Niqfzb3B4RJJW) +You may need to connect your Dexcom Receiver to your Explorer Board for offline looping. For this you will need to use a micro USB to micro USB OTG cable (or an OTG adapter). Here is an example of a cable that will work: [BestGameSetups Micro USB to Micro USB OTG (On-The-Go) 12" (30cm) Data Cable](https://www.amazon.com/dp/B00TQOEST0/ref=cm_sw_r_cp_api_Niqfzb3B4RJJW). ## Nuts and Bolts -You will likely want to screw your Edison onto the Explorer Board to stabilize the rig. You can order a kit, or use (2) M2 screws and (6) M2 nuts (four used as spacers). Here's an example of a harware pack with screws and nuts that will work: [Sparkfun Intel Edison Hardware Pack](https://www.sparkfun.com/products/13187) +You will likely want to screw your Edison onto the Explorer Board to stabilize the rig. There are two methods to do this. The simplest is to order a kit like the [Sparkfun Intel Edison Hardware Pack](https://www.sparkfun.com/products/13187), which provides standoffs, screws, and nuts specifically designed for the Edison. Alternatively, you can use (2) M2 screws and (2) M2 nuts and (4) M3 nuts (M3 or a bit larger to used as spacers). In this configuration, the screws should be just long enough to fit through the spacer nuts and screw into the M2 nuts on the other side. ## Cases -There are a few 3D-printed cases that are being designed, so check back here for more links in the future. A few options that we know will work with an Explorer Board/Edison rig and a standard 2000mah battery: +There are a few 3D-printed cases that are being designed, so check back here for more links in the future. A few options that we know will work with an Explorer Board/Edison rig and a standard 2000 mAh battery (as well as some 2500 mAh options): ### Hard cases * [RadioShack Project Enclosure (3x2x1 inch)](https://www.radioshack.com/products/radioshack-project-enclosure-3x2x1?utm_medium=cpc&utm_source=googlepla&variant=20332262405&gclid=Cj0KEQiA-MPCBRCZ0q23tPGm6_8BEiQAgw_bAkpDZCXfIgbEw8bq76VHtV5mLwR2kHKfJrsGsF3uqqgaAtxP8P8HAQ) @@ -82,7 +82,7 @@ There are a few 3D-printed cases that are being designed, so check back here for * [tazitoo's 3D design: CAD](https://www.tinkercad.com/things/aRYGnHXt7Ta-explorer-case/editv2) ([or STL for 3D printing](http://www.thingiverse.com/thing:2106917)) * [danimaniac's Protective Cases & Accessories](https://github.com/danimaniac/OpenAPS-Explorer-Board-Edison-vented-case) * [Luis's ventilated acrylic simple design](https://drive.google.com/drive/folders/0BxeFg9yJZ_FZdWJEcG5KMXdUMjg?usp=sharing) -* [Small clear plastic case perfect for larger Sparkfun 2000mah battery: #8483](http://www.ebay.com/itm/272062812611) +* [Small clear plastic case perfect for larger Sparkfun 2000 mAh battery: #8483](http://www.ebay.com/itm/272062812611) * [Robert Silvers and Eric Burt's case for Explorer and 2500 mAh battery](http://www.thingiverse.com/thing:2282398) * [Robert Silvers' case for Explorer and 2000 or 2500 mAh battery](http://www.thingiverse.com/thing:2291125) * [Small Plastic Clear Case for 2500 mAh battery](http://www.ebay.com/itm/272062812611) - Since a Tic-Tac box is too small for the 2500 mAh battery. diff --git a/docs/docs/Gear Up/hardware.md b/docs/docs/Gear Up/hardware.md index 5d800d50a..c63a06fda 100644 --- a/docs/docs/Gear Up/hardware.md +++ b/docs/docs/Gear Up/hardware.md @@ -15,10 +15,10 @@ To start, here is a high-level guide for understanding if your pump is compatibl !["Can I do OpenAPS with this pump?"](../Images/Can_I_close_the_loop_with_this_pump_July_13_2017.jpg) -As you can see from the flowchart above, most of the commercial pumps currently available are not compatible with OpenAPS; only a small selection of older Medtronic pumps are compatible. For those pumps which are not compatible, we suggest the advocacy option of calling the pump manufacturer and informing them of the need for availability of pumps for DIY closed looping systems. Thus far, there has been not been a receptive pump company to these requests. Omnipod, Animas, T-Slim, and newer Medtronic pumps are still not compatible. +As you can see from the flowchart above, most of the commercial pumps currently available are not compatible with OpenAPS; only a small selection of older Medtronic pumps are compatible. For those pumps which are not compatible, we suggest the advocacy option of calling the pump manufacturer and informing them of the need for availability of pumps for DIY closed looping systems. Thus far, there has been not been a receptive pump company to these requests. OmniPod, Animas, t:slim, and newer Medtronic pumps are still not compatible. -If you're interested in working on decoding communication for one of these non-compatible pumps (Omnipod, Animas, etc), [click here](http://bit.ly/1nTtccH) to join the collaboration group focusing on alternative pump communication. +If you're interested in working on decoding communication for one of these non-compatible pumps (OmniPod, Animas, etc.), [click here](http://bit.ly/1nTtccH) to join the collaboration group focusing on alternative pump communication. #### Notes about deprecated hardware setups -If you have looked at the docs before, you may remember seeing Carelink sticks and/or Raspberry Pi's as a more prominent recommendation. The community has generally moved away from Carelink sticks (because of poor range and other errors) as part of reliable rig use. The community has also moved toward using Edison-based rig setups due to the smaller size and lesser cost of these setups overall compared to the Pi rigs. The [Pi instructions still work and still exist](https://github.com/openaps/docs/blob/master/docs/docs/walkthrough/phase-0/hardware/raspberry-pi.md); however as of March 12, 2017, they are no longer the top recommended setup option. The community recommends following the documentation for buildling a rig based on the Edison and Explorer Board (which has a built-in radio stick to further reduce size, increase portability, and increase reliable looping range). +If you have looked at the docs before, you may remember seeing Carelink sticks and/or Raspberry Pis as a more prominent recommendation. The community has generally moved away from Carelink sticks (because of poor range and other errors) as part of reliable rig use. The community has also moved toward using Edison-based rig setups due to the smaller size and lower cost of these setups overall compared to the Pi rigs. The [Pi instructions still work and still exist](https://github.com/openaps/docs/blob/master/docs/docs/walkthrough/phase-0/hardware/raspberry-pi.md); however as of March 12, 2017, they are no longer the top recommended setup option. The community recommends following the documentation for buildling a rig based on the Edison and Explorer Board (which has a built-in radio stick to further reduce size, increase portability, and increase reliable looping range). diff --git a/docs/docs/Gear Up/pump.md b/docs/docs/Gear Up/pump.md index d9c1f3a1a..7821f8788 100644 --- a/docs/docs/Gear Up/pump.md +++ b/docs/docs/Gear Up/pump.md @@ -18,7 +18,7 @@ NOTE: For European/WorldWide users who have access to a `DANA*R` insulin pump, y The firmware version will briefly display after the initial count-up on a new battery insertion. After the pump has been on for awhile, you can check firmware version by using the Esc button on the pump and scroll all the way to the bottom of the screen messages using the down arrow on pump. -A double-check for pump compatibility is to look for the ABSENCE of PC connect in the pump menu. Press the ACT button, scroll down to the the "Utilities" menu, and within the "Connect Devices" menu and look for a PC Connect option. If that is present, the pump will NOT work for looping. If it’s absent, the pump should be able to receive temp basal commands and be compatible. +A double-check for pump compatibility is to look for the ABSENCE of PC connect in the pump menu. Press the ACT button, scroll down to the "Utilities" menu, and within the "Connect Devices" menu and look for a PC Connect option. If that is present, the pump will NOT work for looping. If it’s absent, the pump should be able to receive temp basal commands and be compatible. If you have one of the above mentioned pumps, but it has buttons that do not work, use the instructions found on this [Imgur photo album](http://imgur.com/a/iOXAP) to repair your pump. This repair is quite straight-forward and easy. diff --git a/docs/docs/Images/max-safe-basal.jpg b/docs/docs/Images/max-safe-basal.jpg new file mode 100644 index 000000000..1df5b57a6 Binary files /dev/null and b/docs/docs/Images/max-safe-basal.jpg differ diff --git a/docs/docs/Images/nightscout/role-oref0rig.png b/docs/docs/Images/nightscout/role-oref0rig.png new file mode 100644 index 000000000..e834c2eda Binary files /dev/null and b/docs/docs/Images/nightscout/role-oref0rig.png differ diff --git a/docs/docs/Images/nightscout/subject-oref0rig.png b/docs/docs/Images/nightscout/subject-oref0rig.png new file mode 100644 index 000000000..0a4807f0e Binary files /dev/null and b/docs/docs/Images/nightscout/subject-oref0rig.png differ diff --git a/docs/docs/Resources/Deprecated-Pi/Pi-hardware.md b/docs/docs/Resources/Deprecated-Pi/Pi-hardware.md index 4e0dac45b..6e9a68809 100644 --- a/docs/docs/Resources/Deprecated-Pi/Pi-hardware.md +++ b/docs/docs/Resources/Deprecated-Pi/Pi-hardware.md @@ -2,7 +2,7 @@ ## WARNING: THIS SETUP IS CURRENTLY DEPRECATED AND NOT RECOMMENDED (July 2017) -(**Note:** _If you're defaulting to Raspberry Pi because that's what you've seen pictures or heard stories of - you should also check out the Edison-based setup instructions for details on a smaller, more mobile friendly option. A Pi/TI stick rig is a good "at home" rig, but most people want the smallest, which is an Edision/Explorer Board rig [(pictured here)](https://twitter.com/danamlewis/status/776248916077522944?ref_src=twsrc%5Etfw) that they can slip in their pocket. The [next page](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-0/hardware/edison.html) has the Edison required hardware._ The Edison/Explorer Board setup is the main community-supported setup moving forward after March 2017.) +(**Note:** _If you're defaulting to Raspberry Pi because that's what you've seen pictures or heard stories of - you should also check out the Edison-based setup instructions for details on a smaller, more mobile friendly option. A Pi/TI stick rig is a good "at home" rig, but most people want the smallest, which is an Edision/Explorer Board rig [(pictured here)](https://twitter.com/danamlewis/status/776248916077522944?ref_src=twsrc%5Etfw) that they can slip in their pocket. The [next page](http://openaps.readthedocs.io/en/latest/docs/Gear Up/edison.html) has the Edison required hardware._ The Edison/Explorer Board setup is the main community-supported setup moving forward after March 2017.) The Raspberry Pi (RPi) is a credit-card sized single-board computer. The RPi primarily uses Linux kernel based operating systems, which must be installed by diff --git a/docs/docs/Resources/Deprecated-Pi/Pi-setup.md b/docs/docs/Resources/Deprecated-Pi/Pi-setup.md index e16ada5ef..936a88acd 100644 --- a/docs/docs/Resources/Deprecated-Pi/Pi-setup.md +++ b/docs/docs/Resources/Deprecated-Pi/Pi-setup.md @@ -76,7 +76,7 @@ If necessary, you can erase (format) your SD card using https://www.sdcard.org/d * Next, connect your RPi2 to a monitor or T.V. using the included HDMI cable. * Finally connect your RPi2 using the power adapter. * You should see the GUI appear on screen. -* As of 12/11/2016 the Raspberry Pi Foundation is disabling SSH by default in Raspbian as a security precaution. To enable SSH from within the GUI, open up the terminal window and type `sudo raspi-config`. On the configuartion menu that opens, scroll down and choose `Interfacing Options` and then navigate to `ssh`, press `Enter` and select `Enable` ssh server. +* As of 12/11/2016 the Raspberry Pi Foundation is disabling SSH by default in Raspbian as a security precaution. To enable SSH from within the GUI, open up the terminal window and type `sudo raspi-config`. On the configuration menu that opens, scroll down and choose `Interfacing Options` and then navigate to `ssh`, press `Enter` and select `Enable` ssh server. * Configure WiFi per the instruction pamphlet included with your CanaKit. For those not using the CanaKit, click the computer monitors next to the volume control in the upper-right side and there will be a drop-down menu of available WiFi networks. You should see your home network. If you have trouble connecting to the RPi2 via WiFi, check your router settings. The router may need to be switched from WEP to WPA2. * Once you have installed Raspbian, connected to WiFI, and enabled SSH you can disconnect the mouse, keyboard and HDMI cable. diff --git a/docs/docs/Resources/Edison-Flashing/PC-flash.md b/docs/docs/Resources/Edison-Flashing/PC-flash.md index 0e4b554e1..68d7f769d 100644 --- a/docs/docs/Resources/Edison-Flashing/PC-flash.md +++ b/docs/docs/Resources/Edison-Flashing/PC-flash.md @@ -44,7 +44,7 @@ Windows PCs with less than 6 GB of RAM may need to have the size of the page fi - On the Advanced tab click the Change... button to change the page size. - In the Virtual Memory window uncheck "Automatically manage paging file size for all drives," click "Custom size," and set the initial size to at least 4096 MB. If you have already attempted this process at least once continue to increase this number by 1024 MB. Set the maximum size to 2048 MB higher than the initial size you used. - Click the Set button, then click OK until all windows are closed. - - Reboot and attempt the flash proccess. + - Reboot and attempt the flash process. ****************************** #### Download jubilinux and dfu-util @@ -53,7 +53,7 @@ Windows PCs with less than 6 GB of RAM may need to have the size of the page fi **Note** The `extract all` command comes standard for all Windows machines. However, in some instances, it may not be active for zipped files. If you do not see the `extract all` option in the right-click menu, right-click the zipped file, choose `Properties` at the bottom of the context menu. On the General tab, click on the button next to the "opens with" and change it to use Windows Explorer. Apply the change and select `OK` to save the change. You should now be able to right-click the jubilinux.zip file to extract all. -- Now we are going to download two files from DFU-UTIL: [libusb-1.0.dll](http://dfu-util.sourceforge.net/releases/dfu-util-0.8-binaries/win32-mingw32/libusb-1.0.dll) and [dfu-util.exe](http://dfu-util.sourceforge.net/releases/dfu-util-0.8-binaries/win32-mingw32/dfu-util.exe). Click on those two links to download the files to your Downloads folder. Navigate to your Downloads folder and choose to "move" those folders to the jubilinux folder that you unzipped earlier. When you sucessfully move those two folders into the jubilinux folder, you should see files/folders inside the jubilinux folder like so: +- Now we are going to download two files from DFU-UTIL: [libusb-1.0.dll](http://dfu-util.sourceforge.net/releases/dfu-util-0.8-binaries/win32-mingw32/libusb-1.0.dll) and [dfu-util.exe](http://dfu-util.sourceforge.net/releases/dfu-util-0.8-binaries/win32-mingw32/dfu-util.exe). Click on those two links to download the files to your Downloads folder. Navigate to your Downloads folder and choose to "move" those folders to the jubilinux folder that you unzipped earlier. When you successfully move those two folders into the jubilinux folder, you should see files/folders inside the jubilinux folder like so: ![Ready to Flashall](../../Images/Edison/ready.png) diff --git a/docs/docs/Resources/Edison-Flashing/all-computers-flash.md b/docs/docs/Resources/Edison-Flashing/all-computers-flash.md index 7002e0137..ba8441baa 100644 --- a/docs/docs/Resources/Edison-Flashing/all-computers-flash.md +++ b/docs/docs/Resources/Edison-Flashing/all-computers-flash.md @@ -7,7 +7,7 @@ Your Explorer Board has 2 micro USB connectors, they both provide power. On the You must use a DATA micro USB to USB cable. How do you know if your cable is for data? One good way is to plug the cable into your computer USB port and the explorer board OTG port. If your folder/window explorer shows Edison as a drive then the cable supports data. -The steps outlined below include instructions for the various build-platforms (Windows PC, Mac, and Raspberry Pi). If you'd prefer to follow directions specific to one platform you are using, you can use the [Windows PC cheat sheet](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-0/windows-edison.html) or the [Mac OSX cheat sheet](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-0/edison-explorer-board-Mac.html). +The steps outlined below include instructions for the various build-platforms (Windows PC, Mac, and Raspberry Pi). If you'd prefer to follow directions specific to one platform you are using, you can use the [Windows PC cheat sheet](http://openaps.readthedocs.io/en/latest/docs/Resources/Edison-Flashing/PC-flash.html) or the [Mac OSX cheat sheet](http://openaps.readthedocs.io/en/latest/docs/Resources/Edison-Flashing/mac-flash.html). ## Prerequisites @@ -34,7 +34,7 @@ Windows PCs with less than 6 GB of RAM may need to have the size of the page fi - On the Advanced tab click the Change... button to change the page size. - In the Virtual Memory window uncheck "Automatically manage paging file size for all drives," click "Custom size," and set the initial size to at least 4096 MB. If you have already attempted this process at least once continue to increase this number by 1024 MB. Set the maximum size to 2048 MB higher than the initial size you used. - Click the Set button, then click OK until all windows are closed. - - Reboot and attempt the flash proccess. + - Reboot and attempt the flash process. ### If you're using a Mac to flash - prerequisites: @@ -49,7 +49,7 @@ Windows PCs with less than 6 GB of RAM may need to have the size of the page fi ### Jubilinux [Jubilinux](http://www.jubilinux.org/) "is an update to the stock ubilinux edison distribution to make it more useful as a server, most significantly by upgrading from wheezy to jessie." That means we can skip many of the time-consuming upgrade steps that are required when starting from ubilinux. - - Download the latest [jubilinux.zip](http://www.jubilinux.org/dist/) + - Download version 0.1.1 of [jubilinux.zip](http://www.jubilinux.org/dist/) - In download folder, right-click on file and extract (or use `unzip jubilinux.zip` from the command line) You will access this directory from a command prompt in the next step. It is a good idea to create the Jubilinux in your root directory to make this easier to access. - Open a terminal window and navigate to the extracted folder: `cd jubilinux`. If using Windows OS use the command prompt (cmd). This is your "flash window", keep it open for later. @@ -62,7 +62,7 @@ Windows PCs with less than 6 GB of RAM may need to have the size of the page fi ## Connecting cables and starting console - - Connect a USB cable (one that carries data, not just power) to the USB console port. On the Explorer board or Sparkfun base block, this is the port labeled `UART`. On the Intel mini breakout board, this is the USB port that is labled P6 (should be the USB closest to the JST battery connector). Plug the other end into the computer (or Pi) you want to use to connect to console. + - Connect a USB cable (one that carries data, not just power) to the USB console port. On the Explorer board or Sparkfun base block, this is the port labeled `UART`. On the Intel mini breakout board, this is the USB port that is labeled P6 (should be the USB closest to the JST battery connector). Plug the other end into the computer (or Pi) you want to use to connect to console. - Plug another USB cable (one that carries data, not just power) into the USB port labeled OTG on the Explorer board or Sparkfun base block, or the port that is almost in the on the bottom right (if reading the Intel logo) if setting up with the Intel mini breakout board. Plug the other end into the computer (or Pi) you want to flash from. ### If you’re using a Raspberry Pi for console: @@ -244,7 +244,7 @@ and add to the end of the file: edison ALL=(ALL) NOPASSWD: ALL ``` -You have now installed the operating system on your Edison! You can now proceed to the next step of adding yourself to [Loops in Progress](https://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-0/loops-in-progress.html) +You have now installed the operating system on your Edison! You can now proceed to the next step of adding yourself to [Loops in Progress](https://openaps.readthedocs.io/en/latest/docs/While You Wait For Gear/loops-in-progress.html) ## Troubleshooting @@ -387,7 +387,7 @@ Once that looks correct, save the file and `reboot` your rig for the changes to Type this at the prompt: `dmesg -D` -#### Permanant solution: +#### Permanent solution: `vi /etc/rc.local` press i for insert mode diff --git a/docs/docs/Resources/Edison-Flashing/mac-flash.md b/docs/docs/Resources/Edison-Flashing/mac-flash.md index 00dde18e3..c2a1d1077 100644 --- a/docs/docs/Resources/Edison-Flashing/mac-flash.md +++ b/docs/docs/Resources/Edison-Flashing/mac-flash.md @@ -6,7 +6,7 @@ 1. Using an explorer board and Edison 2. Using an Apple computer -3. Using a Loop-compatible Medtronic pump (note - OpenAPS can actually use an additional set of pumps, the x12 series, although it requires [one small extra step](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-0/hardware/pump.html#why-do-i-need-a-certain-pump-firmware). See [this page in OpenAPS docs for all compatible pumps](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-0/hardware/pump.html#information-about-compatible-insulin-pumps).) +3. Using a Loop-compatible Medtronic pump (note - OpenAPS can actually use an additional set of pumps, the x12 series, although it requires [one small extra step](http://openaps.readthedocs.io/en/latest/docs/Gear Up/pump.html#why-do-i-need-a-certain-pump-firmware). See [this page in OpenAPS docs for all compatible pumps](http://openaps.readthedocs.io/en/latest/docs/Gear Up/pump.html#information-about-compatible-insulin-pumps).) ## High Level Recommended Rig parts list @@ -70,7 +70,7 @@ When you first launch Terminal, you will probably see something rather plain lik If you’re like me, you don’t “speak linux” (or python or java or…) nor do you really know what linux is. So, you’ll be comforted to know that most of this setup is copy and paste commands into Terminal. You won’t need to suddenly learn linux…just will need to follow directions and be willing learn some basics. -**IMPORTANT NOTE**: STEPS 1-10 will be updated periodically, and also will likely be out of date. Since this is just a cheat sheet for Mac users, it may not have all the troubleshooting tips or updated info that the main OpenAPS docs have. If you get stuck and this guide’s set of instructions do not work at the moment, the place to look is the [OpenAPS Walkthrough Phase 0, Setting up your Intel Edison](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-0/setup-edison.html) for the full information on this part of the OpenAPS setup. +**IMPORTANT NOTE**: STEPS 1-10 will be updated periodically, and also will likely be out of date. Since this is just a cheat sheet for Mac users, it may not have all the troubleshooting tips or updated info that the main OpenAPS docs have. If you get stuck and this guide’s set of instructions do not work at the moment, the place to look is the [OpenAPS Walkthrough Phase 0, Setting up your Intel Edison](http://openaps.readthedocs.io/en/latest/docs/Resources/Edison-Flashing/all-computers-flash.html) for the full information on this part of the OpenAPS setup. The next steps will be done in the Terminal app. If you see red colored text/code lines in a box, that’s what you want to copy and paste into Terminal, and then press enter. Don’t try typing it…you’ll likely miss a space or add a typo. So, let’s start… diff --git a/docs/docs/Resources/my-first-pr.md b/docs/docs/Resources/my-first-pr.md index 16b48aad6..fe985de5c 100644 --- a/docs/docs/Resources/my-first-pr.md +++ b/docs/docs/Resources/my-first-pr.md @@ -47,7 +47,7 @@ If you are planning to make a lot of edits, including adding images to help illu 4. Commit these to your branch - 5. Now, you can look for the URL/relative path of each file (example, you can see [this individual image has it's own URL and path](https://github.com/openaps/docs/blob/master/docs/docs/Images/Example_batch_images_upload.png) and use that to refer to when adding images into a page in the documentation. + 5. Now, you can look for the URL/relative path of each file (example, you can see [this individual image has its own URL and path](https://github.com/openaps/docs/blob/master/docs/docs/Images/Example_batch_images_upload.png) and use that to refer to when adding images into a page in the documentation. 6. To see examples of how to add the images, you can look at the "raw" code of a page to see an example from a page that already has the images embedded successfully. The main thing is to have a plain text description, followed by a link with a relative path to the image, like this: `![Example of uploading images in batches](../Images/Example_batch_images_upload.png)` diff --git a/docs/docs/Resources/switching-between-DIY-systems.md b/docs/docs/Resources/switching-between-DIY-systems.md index 17b921375..4366a2a3f 100644 --- a/docs/docs/Resources/switching-between-DIY-systems.md +++ b/docs/docs/Resources/switching-between-DIY-systems.md @@ -54,17 +54,17 @@ If you’re coming to try OpenAPS from a Loop system, there’s going to be some ### High Level Recommended Rig parts list -See [this short list for what to buy for an Edison/Explorer Board OpenAPS rig.](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-0/edison-explorer-board-Mac.html#high-level-recommended-rig-parts-list ) +See [this short list for what to buy for an Edison/Explorer Board OpenAPS rig.](http://openaps.readthedocs.io/en/latest/docs/Resources/Edison-Flashing/mac-flash.html#high-level-recommended-rig-parts-list ) ### Getting started on OpenAPS - the setup links #### Building your Rig: -* [Start here for the Mac version]( http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-0/edison-explorer-board-Mac.html ) (with pictures!) -* ([Reference this page](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-0/setup-edison.html ) if you’re using any other type of computer to build.) +* [Start here for the Mac version]( http://openaps.readthedocs.io/en/latest/docs/Resources/Edison-Flashing/mac-flash.html ) (with pictures!) +* ([Reference this page](http://openaps.readthedocs.io/en/latest/docs/Resources/Edison-Flashing/all-computers-flash.html ) if you’re using any other type of computer to build.) #### Flashing your rig: -* [For Mac](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-0/edison-explorer-board-Mac.html#preparing-flashing-the-edison) (with pictures!) -* ([For other computers.](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-0/setup-edison.html)) +* [For Mac](http://openaps.readthedocs.io/en/latest/docs/Resources/Edison-Flashing/mac-flash.html#preparing-flashing-the-edison) (with pictures!) +* ([For other computers.](http://openaps.readthedocs.io/en/latest/docs/Resources/Edison-Flashing/all-computers-flash.html)) #### Nightscout * We highly recommend Nightscout. Go to [nightscout.info](http://nightscout.info) if you have not yet setup @@ -81,39 +81,39 @@ See [this short list for what to buy for an Edison/Explorer Board OpenAPS rig.]( ### Targets and algorithm differences -* Loop pulled targets from the app. OpenAPS pulls targets from the pump. Here’s [more detail on the data OpenAPS pulls and how it outputs data for you to understand the algorithm in action](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-3/Understand-determine-basal.html). -* Loop has temporary targets available by using the workout mode in the Loop app. OpenAPS can have [multiple temp targets](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-4/advanced-features.html#eating-soon-and-activity-mode-temporary-targets) (i.e. Eating Soon and Workout, etc., and can be set via the Nightscout Care Portal if the rig is online, and via [IFTTT/Alexa/pebble/scheduled in advance/location based triggers](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-4/ifttt-integration.html). +* Loop pulled targets from the app. OpenAPS pulls targets from the pump. Here’s [more detail on the data OpenAPS pulls and how it outputs data for you to understand the algorithm in action](http://openaps.readthedocs.io/en/latest/docs/While You Wait For Gear/Understand-determine-basal.html). +* Loop has temporary targets available by using the workout mode in the Loop app. OpenAPS can have [multiple temp targets](http://openaps.readthedocs.io/en/latest/docs/Customize-Iterate/autosens.html#eating-soon-and-activity-mode-temporary-targets) (i.e. Eating Soon and Workout, etc., and can be set via the Nightscout Care Portal if the rig is online, and via [IFTTT/Alexa/pebble/scheduled in advance/location based triggers](http://openaps.readthedocs.io/en/latest/docs/Customize-Iterate/ifttt-integration.html). * OpenAPS has no bolus momentum or safety guard that prevent boluses; but has other key safety settings (see below) ### “MaxIOB” and other safety settings #### MaxIOB * This is the max cap of how much "extra basal IOB" you want to allow the loop to add, above and beyond any regular basal and bolus IOB. In other words, the amount of high temp basal IOB your loop will be allowed to carry. It is not the same as a max basal rate. The default setting is 0, but if you’re coming from Loop, you’re probably ok starting with something other than 0 for maxIOB. If you've been running successfully on Loop, you can probably put in something like half your max basal, or 1-2x your regularly scheduled basal. So if your normal basal is 0.5U/hr, and your max basal that you let Loop give is 2U/hr, starting with a max IOB of 1U would allow OpenAPS to give the max basal for about 45 minutes before backing off once basal IOB hits 1U. -* After you get comfortable with how OpenAPS operates, you can easily [(here's how)](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-3/beyond-low-glucose-suspend.html#editing-your-preferences-json) update this number later. +* After you get comfortable with how OpenAPS operates, you can easily [(here's how)](http://openaps.readthedocs.io/en/latest/docs/While You Wait For Gear/preferences-and-safety-settings.html#editing-your-preferences-json) update this number later. #### Other safety settings -* In addition to maxIOB, there are other basal-related safety caps built into OpenAPS to help protect you. These are to prevent people from getting into dangerous territory by setting excessively high max temp basals before understanding how the algorithm works. There are default values provided when the OpenAPS loop is first built; most people will never need to adjust these and are instead more likely to need to adjust other settings if they feel like they are “running into” or restricted by these safety caps. If you do want to adjust these default values, they are located in the same preferenes file as linked in the max-iob discussion above. **NOTE:** OpenAPS's loop will use the LOWEST of the following three values to cap your temp basal rate, to make sure you don’t get a disproportionate amount of insulin. +* In addition to maxIOB, there are other basal-related safety caps built into OpenAPS to help protect you. These are to prevent people from getting into dangerous territory by setting excessively high max temp basals before understanding how the algorithm works. There are default values provided when the OpenAPS loop is first built; most people will never need to adjust these and are instead more likely to need to adjust other settings if they feel like they are “running into” or restricted by these safety caps. If you do want to adjust these default values, they are located in the same preferences file as linked in the max-iob discussion above. **NOTE:** OpenAPS's loop will use the LOWEST of the following three values to cap your temp basal rate, to make sure you don’t get a disproportionate amount of insulin. * **“Max Basal”** refers to the max basal set on the pump. (If you change this, it will be read in the next time your rig pulls pump settings.) * **“Max Daily Safety Multiplier”** limits the temp basal set by OpenAPS loop to be a multiplier of your HIGHEST regularly-scheduled basal rate in the pump. The default setting for this multiplier is 3x...meaning no more than three times your maximum programmed basal rate for the day. If someone tells you your basal is capped by the “3x max daily; 4x current” for safety caps, this is what they'd be referring to. * **“Max Current Basal Safety Multiplier”:** limits the temp basal set by OpenAPS loop to be a multiplier of your CURRENT regularly-scheduled basal rate in the pump. The default setting for this multiplier is 4x...meaning no more than four times your current programmed basal rate. -* Read about [all of the other optional safety settings here](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-3/beyond-low-glucose-suspend.html#understanding-your-preferences-json). +* Read about [all of the other optional safety settings here](http://openaps.readthedocs.io/en/latest/docs/While You Wait For Gear/preferences-and-safety-settings.html#understanding-your-preferences-json). ### Parents in particular may want to review the optional settings * Parents should [read this blog post by Katie DiSimone for a parent's perspective about various pros/cons](http://seemycgm.com/2017/02/01/loop-vs-openaps/) for parents and kids evaluating DIY closed loop systems. -* **Override the high target with the low** ([see this explanation](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-3/beyond-low-glucose-suspend.html#override-high-target-with-low) for enabling this feature) +* **Override the high target with the low** ([see this explanation](http://openaps.readthedocs.io/en/latest/docs/While You Wait For Gear/preferences-and-safety-settings.html#override-high-target-with-low) for enabling this feature) * This makes it easier for secondary caregivers (like school nurses) to do conservative boluses at lunch/snack time, and allow the closed loop to pick up from there. The secondary caregiver can use the bolus wizard, which will correct down to the high end of the target; and setting this value in preferences to “true” allows the closed loop to target the low end of the target. Based on anecdotal reports from those using it, this feature sounds like it’s prevented a lot of (unintentional, diabetes is hard) overreacting by secondary caregivers when the closed loop can more easily deal with BG fluctuations. -* **Carb ratio adjustment ratio** ([see this explanation](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-3/beyond-low-glucose-suspend.html#carbratio-adjustmentratio) for enabling this feature) +* **Carb ratio adjustment ratio** ([see this explanation](http://openaps.readthedocs.io/en/latest/docs/While You Wait For Gear/preferences-and-safety-settings.html#carbratio-adjustmentratio) for enabling this feature) * If parents would prefer for secondary caregivers to bolus with a more conservative carb ratio, this can be set so the closed loop ultimately uses the correct carb amount for any needed additional calculations. ### Connectivity * Loop works offline automatically; but may often need tuning and fixing if you go out of range and come back in range. * OpenAPS needs some tricks to maximize connectivity (see below), but tends to resume working correctly once you come back into range without having to do anything special. - * [Bluetooth tethering](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-4/bluetooth-tethering-edison.html) is one good option; as soon as you walk out of wifi range, it can automatically bluetooth tether to your phone to get connectivity + * [Bluetooth tethering](http://openaps.readthedocs.io/en/latest/docs/Customize-Iterate/bluetooth-tethering-edison.html) is one good option; as soon as you walk out of wifi range, it can automatically bluetooth tether to your phone to get connectivity * Mifi is one good option, if you travel and are without wifi networks, as it will provide a network without draining your iPhone battery. Mifi systems typically use your cell phone data plan and needs cell data coverage (3g or 4g LTE). - * You can add ([here's how](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-2/accessing-your-rig.html)) your school or work or as many locations as you have as “known” wifi networks so your rig will automatically connect to the wifi in these places. You may want to contact the school before attempting to connect to their wifi network to see if you need any special accomodations in a 504 plan or IT department involvement to allow the rig to connect. -* OpenAPS will also default to always setting a temp basal (this can be turned off; [see description here](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-3/beyond-low-glucose-suspend.html#skip-neutral-temps)), which means it’ll be easier to look down at the pump and see if a temp basal is active to know that the loop has been working recently. + * You can add ([here's how](http://openaps.readthedocs.io/en/latest/docs/While You Wait For Gear/monitoring-OpenAPS.html#accessing-your-rig-via-ssh)) your school or work or as many locations as you have as “known” wifi networks so your rig will automatically connect to the wifi in these places. You may want to contact the school before attempting to connect to their wifi network to see if you need any special accommodations in a 504 plan or IT department involvement to allow the rig to connect. +* OpenAPS will also default to always setting a temp basal (this can be turned off; [see description here](http://openaps.readthedocs.io/en/latest/docs/While You Wait For Gear/preferences-and-safety-settings.html#skip-neutral-temps)), which means it’ll be easier to look down at the pump and see if a temp basal is active to know that the loop has been working recently. * The existing SkyLoop watchface for Pebble watches works seamlessly with OpenAPS looping. No changes are needed if you plan to try OpenAPS or Loop. ### Carbs @@ -143,7 +143,7 @@ See [this short list for what to buy for an Edison/Explorer Board OpenAPS rig.]( ## Running multiple kinds of DIY systems * You can run different DIY systems (like Loop and OpenAPS) side-by-side, if you want to compare algorithms and how they behave. -* For those who like Loop's capabilities for bolusing from the phone, but don't want the requirement to enter carb absorption rates by meal, you can set Loop to "open loop" mode and use it for bolusing, and otherwise allow OpenAPS to be the primary closed loop to take advantage of the [Advanced Meal Assist (AMA)](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-4/advanced-features.html#advanced-meal-assist-or-ama) algorithm, [autosensitivity](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-4/advanced-features.html#auto-sensitivity-mode) to automatically adjust ISF, etc. However, see the following safety warnings below. +* For those who like Loop's capabilities for bolusing from the phone, but don't want the requirement to enter carb absorption rates by meal, you can set Loop to "open loop" mode and use it for bolusing, and otherwise allow OpenAPS to be the primary closed loop to take advantage of the [Advanced Meal Assist (AMA)](http://openaps.readthedocs.io/en/latest/docs/Customize-Iterate/autosens.html#advanced-meal-assist-or-ama) algorithm, [autosensitivity](http://openaps.readthedocs.io/en/latest/docs/Customize-Iterate/autosens.html#auto-sensitivity-mode) to automatically adjust ISF, etc. However, see the following safety warnings below. * **SAFETY WARNING:** If you choose to keep a Loop rig running alongside OpenAPS, you MUST turn off Loop's ability to write to Nightscout. If you neglect to do this, Nightscout will display double entries of carbs and/or boluses and greatly confuse you in the future. To enter carbs, you can enter directly through Nightscout Care Portal; [use the variety of IFTTT configurations to enter carbs to Nightscout via your Pebble watch, Alexa, Siri, etc.](../walkthrough/phase-4/ifttt-integration.md); or enter using the pump's bolus wizard. Even if you're just using the Loop app in open loop mode, and enter carbs or bolus from the pump bolus wizard for use in OpenAPS, you need to turn off Loop's ability to write to Nightscout. If you don't, Loop will read the boluses and carbs entered via the pump, upload them to Nightscout, and the duplicate entries will result in suboptimal post-meal decisions. You can either turn off Loop's ability to write to Nightscout, or simply close the app, but reopening the app for even a few minutes may still cause it to double enter to Nightscout if uploads are not disabled. If you do not plan to actively use Loop and DO want to bolus from the pump (via bolus wizard or easy bolus button) with OpenAPS, you should either disable Loop's Nightscout uploads, or plan to close the Loop app and not run them side-by-side. * **Caution**: You may want to disable the Nightscout COB pill, especially if you are using multiple DIY closed loop systems, as it will likely cause confusion. You should look to the (DIY closed loop system you are using)'s pill for information about COB. This means looking in the OpenAPS or Loop pill for information about COB. @@ -155,6 +155,6 @@ See [this short list for what to buy for an Edison/Explorer Board OpenAPS rig.]( Click [here](http://openaps.readthedocs.org/en/latest/) to go to a high-level view of the OpenAPS docs #### Where to get help with OpenAPS setup and maintenance: -* See [this page](http://openaps.readthedocs.io/en/latest/docs/introduction/communication-support-channels.html) for various places for OpenAPS support; [the intend-to-bolus Gitter channel](https://gitter.im/nightscout/intend-to-bolus) is the best place for real-time troubleshooting assistance! +* See [this page](http://openaps.readthedocs.io/en/latest/docs/Understanding OpenAPS-Overview/communication-support-channels.html) for various places for OpenAPS support; [the intend-to-bolus Gitter channel](https://gitter.im/nightscout/intend-to-bolus) is the best place for real-time troubleshooting assistance! * Don't hesitate to ask any question, any time. If it gets missed because there's a lot of activity, feel free to ask again! * You’ll probably also want to make sure and join [the openaps-dev Google Group](https://groups.google.com/forum/#!forum/openaps-dev), where new features and tools are most commonly announced and shared via email, so you’ll know when there are new things available to try. diff --git a/docs/docs/Troubleshooting/CGM-rig-communications-troubleshooting.md b/docs/docs/Troubleshooting/CGM-rig-communications-troubleshooting.md index 75d26451c..297385286 100644 --- a/docs/docs/Troubleshooting/CGM-rig-communications-troubleshooting.md +++ b/docs/docs/Troubleshooting/CGM-rig-communications-troubleshooting.md @@ -24,7 +24,7 @@ Depending on how you're getting BG to the rig, you'll need to do some basic trou * To get data FROM Nightscout, the most common problem is if your rig is offline. If your rig is not connected to the internet, it can't pull BGs from Nightscout. Troubleshoot your internet connectivity (i.e. ping google.com and do what you need to do to get the rig online). After that, also make sure your NS URL and API secret are correct. If they're not, re-run the setup script with those things corrected. ### If you're using xdrip+ or xdripAPS -* **For Xdrip+ users** If you have no data in Nightscout - first check your uploader phone for data in xdrip+ - If you uploader phone has data then there is a likley problem getting data from the uploader phone to Night Scout - check wifi and/or cellular connectivity of the phone/device similarily to the section above outlining getting BGs to Nightscout. Also, make sure your Xdripbridge-wixel has a charge - you should see a flashing red light on the wixel if it is searching to connect to the uploader device. +* **For Xdrip+ users** If you have no data in Nightscout - first check your uploader phone for data in xdrip+ - If you uploader phone has data then there is a likley problem getting data from the uploader phone to Night Scout - check wifi and/or cellular connectivity of the phone/device similarly to the section above outlining getting BGs to Nightscout. Also, make sure your Xdripbridge-wixel has a charge - you should see a flashing red light on the wixel if it is searching to connect to the uploader device. * If the Xdrip+ app on your uploader shows stale data (greater than 5 minutes since your last data point), go to 'System Status' to see the status of the connection between your xbridge-wixel and your uploader phone. If you show 'connected', but you do not have data, you may wish to use the 'Restart Collector' button and see if your data restarts. Be mindful that your CGM data is broadcast in 5 minute intervals - so you will see data appear on the '5's' if reconnect works. * It is possible that 'Restart Collector' button will not work - in this case you will need to 'Forget Device' to reset the connection between the phone and your Xbridge-wixel setup. Once forgetting the connection is done, you will need to go into the menu and select 'Bluetooth Scan' - you can now SCAN and select your Xbridge-wixel device. In some cases you will need a complete power-off of your wixel to successfully reset your system - this may require you to unplug your battery if you have not installed a power switch on your Xbridge-wixel device. If you wish to do a hard reboot of your system, turn off/unplug your wixel. Turn back on or replug, then rescan via 'Bluetooth Scan', select your Xbridge-wixel in blutooth selection window. Once selected, your wixel name will disappear from the bluetooth scan options. You may wish to do a double check of your system status to ensure you have a connection to your wixel device. * Infrequently, in addition to the above, you may find your uploader phone needs a complete poweroff and restart as well to get you back up and running. diff --git a/docs/docs/Troubleshooting/General_linux_troubleshooting.md b/docs/docs/Troubleshooting/General_linux_troubleshooting.md index 0aecb7a86..cfdadf97a 100644 --- a/docs/docs/Troubleshooting/General_linux_troubleshooting.md +++ b/docs/docs/Troubleshooting/General_linux_troubleshooting.md @@ -6,7 +6,7 @@ Some conventions used in these docs: * Double check that your copy-paste has copied correctly. Sometimes a paste may drop a character or two and that will cause an error in the command that you are trying to execute. Sometimes, depending on what step you are doing, you may not see the issue. So, do make a point of double checking the paste before pressing return. * You will see a $ at the beginning of many of the lines of code. This indicates that it is to be entered and executed at the terminal prompt. Do not type in the dollar sign $. -* Wherever there are `` in the the code, these are meant for you to insert your own information. Most of the time, it doesn't matter what you choose **as long as you stay consistent throughout this guide**. That means if you choose `myedison` as your ``, you must use `myedison` every time you see ``. Do not include the `< >` brackets in your commands when you enter them. So for the example above, if the code snipped says `ssh root@.local`, you would enter `ssh root@myedison.local` +* Wherever there are `` in the code, these are meant for you to insert your own information. Most of the time, it doesn't matter what you choose **as long as you stay consistent throughout this guide**. That means if you choose `myedison` as your ``, you must use `myedison` every time you see ``. Do not include the `< >` brackets in your commands when you enter them. So for the example above, if the code snipped says `ssh root@.local`, you would enter `ssh root@myedison.local` ### Before you get started diff --git a/docs/docs/Troubleshooting/Pump-rig-communications-troubleshooting.md b/docs/docs/Troubleshooting/Pump-rig-communications-troubleshooting.md index 98196d7b3..8238877e8 100644 --- a/docs/docs/Troubleshooting/Pump-rig-communications-troubleshooting.md +++ b/docs/docs/Troubleshooting/Pump-rig-communications-troubleshooting.md @@ -2,7 +2,7 @@ ## Basics of communications -If your looping is to be successful, you will need good communications between the pump and rig. They communicate with each other using radio frequency (rf). If you have an North American (NA) pump, the rf band used is 916 mHz. If you have a European (WW) pump, the rf band is 858 mHz. As part of the setup script, you will be telling the rig which type of pump you have so that it can properly use the right rf band to communicate with the pump. When the rig wants to talk with the pump, it will start by "tuning the rf"...basically it will try several frequencies around the 916 mHz frequency and choose the exact frequency that has the strongest reponse. The tuning process for the pump is called "mmtune". +If your looping is to be successful, you will need good communications between the pump and rig. They communicate with each other using radio frequency (rf). If you have an North American (NA) pump, the rf band used is 916 mHz. If you have a European (WW) pump, the rf band is 858 mHz. As part of the setup script, you will be telling the rig which type of pump you have so that it can properly use the right rf band to communicate with the pump. When the rig wants to talk with the pump, it will start by "tuning the rf"...basically it will try several frequencies around the 916 mHz frequency and choose the exact frequency that has the strongest response. The tuning process for the pump is called "mmtune". For example, here's the results of a pump tune: ``` @@ -38,7 +38,7 @@ For example, here's the results of a pump tune: "usedDefault": false ``` -The rig scanned frequencies between 916.300 and 916.876 mHz, and set the frequency for pump communications to 916.612 because that exact frequency had the strongest communications. How can you see the strength by looking at these tuning results? The lower the last number is on the tune, the better the strength. **Results of `0, -99` indicate NO pump communications. This is an undesireable result.** Pump tunes in the 80s or lower are usually strong enough for stable looping. If tunes are in the 90s, then you will likely experience periodic missed pump-rig communications and your looping will be intermittent. In this example, 916.588, 916.612, and 916.636 had equally strong responses at `5, -86` and therefore the mid-point of that range is the selected frequency. +The rig scanned frequencies between 916.300 and 916.876 mHz, and set the frequency for pump communications to 916.612 because that exact frequency had the strongest communications. How can you see the strength by looking at these tuning results? The lower the last number is on the tune, the better the strength. **Results of `0, -99` indicate NO pump communications. This is an undesirable result.** Pump tunes in the 80s or lower are usually strong enough for stable looping. If tunes are in the 90s, then you will likely experience periodic missed pump-rig communications and your looping will be intermittent. In this example, 916.588, 916.612, and 916.636 had equally strong responses at `5, -86` and therefore the mid-point of that range is the selected frequency. ### How can you see the results of your pump tuning? diff --git a/docs/docs/Troubleshooting/oref0-setup-troubleshooting.md b/docs/docs/Troubleshooting/oref0-setup-troubleshooting.md index 1f16fed2d..7c8bc5791 100644 --- a/docs/docs/Troubleshooting/oref0-setup-troubleshooting.md +++ b/docs/docs/Troubleshooting/oref0-setup-troubleshooting.md @@ -10,7 +10,7 @@ You won't hurt anything by running the script multiple times. If you already hav Cron is the scheduler that runs the loop. I.e. this is the automation feature to automate your closed loop. If you're using a test pump, it's pretty safe to go ahead and automate your loop. But if you're not sure, you can always come back and do this later. -If you're troubleshooting and looking to use `openaps` manually, cron must be momentarly disabled to free access to local resources. To check if cron is running use `crontab -e` or `crontab -l`. If you see a file filled with content, chances are cron is enabled. +If you're troubleshooting and looking to use `openaps` manually, cron must be momentarily disabled to free access to local resources. To check if cron is running use `crontab -e` or `crontab -l`. If you see a file filled with content, chances are cron is enabled. To stop cron'd jobs and enter an openaps command: `killall -g openaps; openaps ` @@ -37,7 +37,7 @@ Make sure to check through the following list before asking on Gitter if your se * Check and make sure your pump is near your rig. Closer is better, e.g. check if it works when the pump and rig are at most 20 inches (50 cm) apart. * Check that your pump battery is not empty. * Check and make sure your pump is not suspended or stuck in rewind or prime screens. If it's a test pump, you don't even have to fill a reservoir, but put your pinky finger or eraser-end of a pencil in for slight pressure when priming so the pump will "sense" it and stop. Make sure to back out of the prime screen. -* Check to make sure you have a carb ratio set manually in your Medtronic insulin pump, if it is not done, the follwoing display will appear in your pump.log: Could not parse input data: [SyntaxError: /root/myopenaps/monitor/iob.json: Unexpected end of input] +* Check to make sure you have a carb ratio set manually in your Medtronic insulin pump, if it is not done, the following display will appear in your pump.log: Could not parse input data: [SyntaxError: /root/myopenaps/monitor/iob.json: Unexpected end of input] * Check to make sure your carelink and/or radio stick is plugged in. * Check to make sure your receiver is plugged in, if you're plugging a receiver in. * Don't have data in Nightscout? Make sure there is no trailing slash `/` on the URL that you are entering and that the API secret is correct. Check your Nightscout URL, too - it's one of the most common errors to mistype that. (And FWIW, you shouldn't be typing things like that in the first place: that's what copy and paste are for.) diff --git a/docs/docs/Understanding OpenAPS-Overview/communication-support-channels.md b/docs/docs/Understanding OpenAPS-Overview/communication-support-channels.md index 16432eb1f..5af5fc28a 100644 --- a/docs/docs/Understanding OpenAPS-Overview/communication-support-channels.md +++ b/docs/docs/Understanding OpenAPS-Overview/communication-support-channels.md @@ -2,10 +2,13 @@ There are several ways to communicate with other participants and contributors in the #OpenAPS project. See also the [Resources](../Resources/index.rst) section for additional assistance. -**Note:** It's best practice not to share your pump's serial number, so make sure not to include it in pictures or pasted text output when seeking help on pump communication. +**Note:** It's best practice not to share your pump's serial number, so make sure not to include it in pictures or pasted text output when seeking help on pump communication. Ditto for Nightscout URL and API secret and other private information that could enable someone to access your setup. **Related**: You may want to read [this blog post for tips on how to best seek help when troubleshooting online](https://diyps.org/2017/03/19/tips-for-troubleshooting-diy-diabetes-devices-openaps-or-otherwise/) - there is a lot of information you can provide proactively when seeking help that will aid in getting your issue resolved more quickly. +### Google Group - everyone is recommended and welcome to join! +A google group focused on #OpenAPS development work can be found [here](https://groups.google.com/d/forum/openaps-dev). You can add yourself directly to the group. It's worth setting your preferences to receive all email from the group; there's not a hug e volume, and this is one of the ways we share updates about hardware or release announcements if you're not hanging out on Gitter or Facebook or Twitter. + ### Gitter [Gitter](https://gitter.im/) is a messaging/chat service similar to IRC. It provides integration with GitHub and several other services. It's the best place to get real-time support with anything related to OpenAPS. (Here's [why we often recommend asking questions on Gitter](https://diyps.org/2016/08/17/why-you-should-post-questions-in-gitter/).) @@ -44,19 +47,22 @@ The copy-pasted lines should have 3 backticks on the line above and the line bel ### Facebook -There is also a [Looped Group](https://www.facebook.com/groups/TheLoopedGroup/?fref=nf) in Facebook that is currently a discussion place for users on both Loop and OpenAPS systems. You will need to request membership for the group and respond to a message from the group administrators prior to joining. +There is also a [Looped Group](https://www.facebook.com/groups/TheLoopedGroup/?fref=nf) in Facebook that is currently a discussion place for users on various DIY closed loop systems (OpenAPS, AndroidAPS, etc.). You will need to request membership for the group and respond to a message from the group administrators prior to joining. The Looped Group has grown considerably in the last 6 months and has many users on both systems. You can search for previous posts on topics that may interest you. Note: If you are asking for troubleshooting help, screenshots and additional information about where you are in your problem will help get the best response. ![FB group header](../Images/looped.jpg) -### Google Group - everyone is recommended and welcome to join! -A google group focused on #OpenAPS development work can be found [here](https://groups.google.com/d/forum/openaps-dev). Request access to participate and see some of the archived discussions. If you're new, make sure to introduce yourself! - -### Issues on openaps GitHub -For reporting issues on the openaps tools formally, the openaps [issues page](https://github.com/openaps/openaps/issues) on GitHub is the proper forum. Feel free to try and get through the issues by working with others on the Gitter channel first if you think it may be something unrelated to the codebase. +### Issues on GitHub +One of the above channels is the best place for real-time or near-time troubleshooting. However, you may occasionally stumble across a new bug or edge case that we want to work on resolving. If you're asked to "create an issue", that usually means going to [the oref0 repository on Github and logging an issue there](https://github.com/openaps/oref0/issues). (You may also be asked to create issues for the openaps toolkit or decocare, etc. but usually it's oref0 related.) ### Other online forums Those in the #OpenAPS community are frequently found in other forums, such as on Twitter (using [the #OpenAPS hashtag](https://twitter.com/search?f=tweets&vertical=default&q=%23OpenAPS&src=typd), as well as [#WeAreNotWaiting](https://twitter.com/search?f=tweets&vertical=default&q=%23WeAreNotWaiting&src=typd)) and on Facebook in the ["CGM In The Cloud"](https://www.facebook.com/groups/cgminthecloud/) and ["Looped"](https://www.facebook.com/groups/TheLoopedGroup/)group. -There is also a [Slack channel](https://omniapsslack.azurewebsites.net/) to discuss communication around other pumps that are being explored for being used for other DIY closed loops. +* There is also a [Slack channel](https://omniapsslack.azurewebsites.net/) to discuss communication around other pumps that are being explored and worked on, but aren't yet DIY loopable. + +### Find (or start) a local meetup group + +Here are some places where there are regular-ish meetups, and how to find out about them: +* Seattle - join the [Seattle OpenAPS Google Group](https://groups.google.com/forum/#!forum/seattleopenaps) to find out about upcoming meetups +* NYC - join the [NYC OpenAPS Google Group](https://groups.google.com/forum/#!forum/openaps-nyc) to find out about upcoming meetups diff --git a/docs/docs/Understanding OpenAPS-Overview/how-openaps-works-overview.md b/docs/docs/Understanding OpenAPS-Overview/how-openaps-works-overview.md index 2e23bbdac..92fbbf6cb 100644 --- a/docs/docs/Understanding OpenAPS-Overview/how-openaps-works-overview.md +++ b/docs/docs/Understanding OpenAPS-Overview/how-openaps-works-overview.md @@ -5,7 +5,7 @@ How do you make decisions about your diabetes? You gather data, crunch the numbe A DIY loop is no different. It gathers data from: * your pump * your CGM -* any other place you log data in, like Nightscout +* any other place you log data, like Nightscout It then uses this information to do the math and decide how your basal rates might need to be adjusted (above or below your underlying basal rate), to adjust and eventually keep or bring your BGs into your target range. @@ -17,7 +17,7 @@ The rig needs to: * communicate with the pump and read history - what insulin has been delivered * communicate with the CGM (either directly, or via the cloud) - to see what BGs are/have been doing -The rig runs a series of commands to collect this data, and then run it through the algorithm and do the decision-making math based on the settings (ISF, carb ratio, DIA, target, etc.) in your pump. +The rig runs a series of commands to collect this data, runs it through the algorithm and does the decision-making math based on the settings (ISF, carb ratio, DIA, target, etc.) in your pump. ## But how does it do everything it needs to do to gather data and make decisions and tell the pump what to do? @@ -26,7 +26,7 @@ When you build an OpenAPS rig, you run through the setup described in this docum * load the open source software on it * configure it to talk to YOUR devices and have your information and safety settings on it (based on your preferences) -The open source software is designed to make it easy for the computer to do the work you used to do to calculate what needs to be done. It runs a series of "reports" to collect data from all the devices and places. Then it prepares the data and runs the calculations. Then it attempts to communicate and send any necessary adjustments to your pump. Then it reads the data back, and does it over and over again. +The open source software is designed to make it easy for the computer to do the work you used to do to calculate what needs to be done. It runs a series of reports to collect data from all the devices and places. Then it prepares the data and runs the calculations. Then it attempts to communicate and send any necessary adjustments to your pump. Then it reads the data back, and does it over and over again. In order to simplify the process for the human, we've designed a series of "aliases", which is a group of reports. That way, when you need to do a particular thing (gather fresh data), you can run one command instead of several or dozens. Similarly, when you want the system to run automatically, there is a scheduling program called "cron" that you will use to run multiple aliases automatically to do all of these tasks. diff --git a/docs/docs/Understanding OpenAPS-Overview/overview-of-build-process.md b/docs/docs/Understanding OpenAPS-Overview/overview-of-build-process.md index 1e53b2cc2..fdd17877e 100644 --- a/docs/docs/Understanding OpenAPS-Overview/overview-of-build-process.md +++ b/docs/docs/Understanding OpenAPS-Overview/overview-of-build-process.md @@ -8,12 +8,12 @@ The OpenAPS setup process can be broken up into several parts: * Building your rig * Adding in your personal preferences and features -As with all things new, there is a little bit of a learning curve to building your first OpenAPS rig. Read slowly, double-check your spelling and make sure you don't skip steps. If you get stuck or are unsure, you can use the screenshots to compare how the resulting screens should look. You can also post to Gitter or Facebook to ask for specific if you find yourself stuck. +As with all things new, there is a little bit of a learning curve to building your first OpenAPS rig. Read slowly, double-check your spelling and make sure you don't skip steps. If you get stuck or are unsure, you can use the screenshots to compare how the resulting screens should look. You can also post to Gitter or Facebook to ask for specific help if you find yourself stuck. Over time, you may also choose to enable advanced features or update your rig, as more features and algorithm improvements become available. You should make sure to stay plugged in to key channels (like openaps-dev google group; Looped on Facebook; and on Twitter by following @OpenAPS) so you can be aware when updates become available. You should also make sure to tell us when you’ve closed your loop, which includes notes on how to join the safety-critical announcement list in case we need to alert you to any safety-related changes or updates. ## What you’ll see in this guide -* Wherever you see text that is formatted `like this`, it is a code snippet. You should copy and paste instead of attempting to type this out; this will save you debugging time for finding your typos. +* Wherever you see text that is formatted `like this`, it is usually a code snippet. You should copy and paste instead of attempting to type this out; this will save you debugging time for finding your typos. * Wherever there are ``, these are meant for you to insert your own information. Most of the time, it doesn't matter what you choose **as long as you stay consistent throughout this guide**. That means if you choose `myopenaps` as your `` directory, you must use `myopenaps` every time you see ``. Choose carefully when naming things so it’s easy to remember. Do not include the `< >` brackets in your name. diff --git a/docs/docs/While You Wait For Gear/Understand-determine-basal.md b/docs/docs/While You Wait For Gear/Understand-determine-basal.md index d63990d4d..815cf70fb 100644 --- a/docs/docs/While You Wait For Gear/Understand-determine-basal.md +++ b/docs/docs/While You Wait For Gear/Understand-determine-basal.md @@ -1,6 +1,6 @@ # Understanding the determine-basal logic -The core, lowest level logic behind any oref0 implementation of OpenAPS can be found in [`oref0/lib/determine-basal/determine-basal.js`](https://github.com/openaps/oref0/blob/master/lib/determine-basal/determine-basal.js). That code pulls together the required inputs (namely, recent CGM readings; current pump settings,including insulin on board and carbohydrates consumed; and your profile settings) and performs the calculations to make the recommeneded changes in temp basal rates that OpenAPS could/will enact. +The core, lowest level logic behind any oref0 implementation of OpenAPS can be found in [`oref0/lib/determine-basal/determine-basal.js`](https://github.com/openaps/oref0/blob/master/lib/determine-basal/determine-basal.js). That code pulls together the required inputs (namely, recent CGM readings; current pump settings,including insulin on board and carbohydrates consumed; and your profile settings) and performs the calculations to make the recommended changes in temp basal rates that OpenAPS could/will enact. Short of reading the actual code, one way to start to understand the key `determine-basal` logic is to understand the inputs passed into the script/program and how to interpret the outputs from the script/program. @@ -58,7 +58,7 @@ When running `oref0-determine-basal.js`, the first thing you'll see is a summary * preferences.json = `{"carbs_hr":28,"max_iob":1,"dia":3,"type":"current","current_basal":1.1,"max_daily_basal":1.3,"max_basal":3,"max_bg":120,"min_bg":115,"carbratio":10,"sens":40}` * Contains all of the user’s relevant pump settings - * max_iob = maximum amount of net IOB that OpenAPS will ever allow when setting a high-temp basal rate. **This is an important safety measure and integral part of the OpenAPS design.** You should set this value based on your current basal rates and insulin sensitivy factor (ISF, or `sens` in the OpenAPS code) and after studying how the OpenAPS algorithm performs in low-glucose suspend mode for (at least) several days. + * max_iob = maximum amount of net IOB that OpenAPS will ever allow when setting a high-temp basal rate. **This is an important safety measure and integral part of the OpenAPS design.** You should set this value based on your current basal rates and insulin sensitivity factor (ISF, or `sens` in the OpenAPS code) and after studying how the OpenAPS algorithm performs in low-glucose suspend mode for (at least) several days. Those data are set during the openAPS setup script (or modified by you directly) and based on information received from your pump. diff --git a/docs/docs/While You Wait For Gear/collect-data-and-prepare.md b/docs/docs/While You Wait For Gear/collect-data-and-prepare.md index e5714d475..ede0fdaab 100644 --- a/docs/docs/While You Wait For Gear/collect-data-and-prepare.md +++ b/docs/docs/While You Wait For Gear/collect-data-and-prepare.md @@ -1,27 +1,27 @@ # Collect your data and get prepared -Before getting started, we ask that you store at least 30 days of CGM data. Nightscout is an excellent tool to capture your CGM history, as well as log your carbs and boluses. For instructions on setting up your own Nightscout site (or updating your existing one for OpenAPS use), see [here](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-1/nightscout-setup.html). By logging and collecting a recent history of your insulin+BG patterns, you can also take advantage of the Autotune feature which uses Nightscout databases. +Before getting started, we ask that you store at least 30 days of CGM data. Nightscout is an excellent tool to capture your CGM history, as well as log your carbs and boluses. For instructions on setting up your own Nightscout site (or updating your existing one for OpenAPS use), see [here](http://openaps.readthedocs.io/en/latest/docs/While You Wait For Gear/nightscout-setup.html). By logging and collecting a recent history of your insulin+BG patterns, you can also take advantage of the Autotune feature which uses Nightscout databases. -If you aren't using Nightscout, you can upload your Dexcom G4 receiver to Dexcom Studio or if you use Dexcom G5 the data is in the cloud at Dexcom Clarity, if you use a Medtronic CGM, upload your CGM data to CareLink. If you use an Animas Vibe, upload your data to Tidepool or Diasend. We suggest you get in the habit of doing this regularly so that you have ongoing data to show trends in your overall estimated average glucose (eAG, a good indicator in trends in A1c) and variations in your "time in range." +If you aren't using Nightscout, you can upload your Dexcom G4 receiver to Dexcom Studio or if you use Dexcom G5 the data is in the cloud at Dexcom Clarity. If you use a Medtronic CGM, upload your CGM data to CareLink. If you use an Animas Vibe, upload your data to Tidepool or Diasend. We suggest you get in the habit of doing this regularly so that you have ongoing data to show trends in your overall estimated average glucose (eAG, a good indicator in trends in A1c) and variations in your "time in range." -Later in these docs is a link to donate your data to a project called [OpenHumans](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-4/data-commons-data-donation.html). There is no requirement to share your data or participate in the OpenHumans. If you choose to, you can donate your data whether you are looping or not. Individuals within the project who share their data do so at will and you should do the same only if you feel comfortable. That being said, it is always a good idea to record your data before embarking on a new set of experiments. This will be helpful to understand the effects of the system as well as gain a better understanding of your response to different control strategies. +Later in these docs is a link to donate your data to a project called [OpenHumans](http://openaps.readthedocs.io/en/latest/docs/Give Back-Pay It Forward/data-commons-data-donation.html). There is no requirement to share your data or participate in OpenHumans. If you choose to, you can donate your data whether you are looping or not. Individuals within the project who share their data do so willingly and you should do the same only if you feel comfortable. That being said, it is always a good idea to record your data before embarking on a new set of experiments. This will be helpful to understand the effects of the system as well as gain a better understanding of your response to different control strategies. ## Practice good CGM habits -A good quality CGM session is a critical part of successful looping. If you're used to stretching your sensor sessions out until failure...you may want to reconsider this approach as you will have failed looping times, too. One technique that has helped eliminate early sensor jumpiness in a session is to "presoak" a new sensor before the old one dies when you notice the old sensor is getting jumpy or loses calibration. To read more about this presoak technique, check out this [blog post](https://diyps.org/2016/06/27/how-to-soak-a-new-cgm-sensor-for-better-first-day-bgs/). As well, be diligent about your sensor calibration habits. Only calibrate on flat arrows and when BGs are steady. Many loopers calibrate once or twice a day only; at bedtime (after dinner has finished digesting) and/or just before getting out of bed. +A good quality CGM session is a critical part of successful looping. If you're used to stretching your sensor sessions out until failure, you may want to reconsider this approach as you will have failed looping times, too. One technique that has helped eliminate early sensor jumpiness in a session is to "presoak" a new sensor before the old one dies when you notice the old sensor is getting jumpy or loses calibration. To read more about this presoak technique, check out this [blog post](https://diyps.org/2016/06/27/how-to-soak-a-new-cgm-sensor-for-better-first-day-bgs/). In addition, be diligent about your sensor calibration habits. Only calibrate on flat arrows and when BGs are steady. Many loopers calibrate once or twice a day only; at bedtime (after dinner has finished digesting) and/or just before getting out of bed. ## Use your gear -Starting a DIY loop system like OpenAPS means you are probably switching pumps, and quite possibly using Nightscout for the first time. You may find, like many new users, that settings you thought you had dialed in before will need to be adjusted. Good news...there's several tools and techiques to get your off to the right start. They include: +Starting a DIY loop system like OpenAPS means you are probably switching pumps, and quite possibly using Nightscout for the first time. You may find, like many new users, that settings you thought you had dialed in before will need to be adjusted. Good news, there are several tools and techiques to get you off to the right start. They include: * Use your Medtronic pump **BEFORE** you begin looping * Practice good CGM habits * Collect your carb, bolus, and BG history using Nightscout -* Use Autotune to analyse and fine-tune your pump settings +* Use Autotune to analyze and fine-tune your pump settings ### Start Medtronic pump -Many of us have come from Omnipods, Animas, or T-slim pumps in order to pump using old Medtronic pumps. The menus will be different and you need to get proficient with the pump's normal use before complicating things with looping. Become familiar with the reservoir changes and teach your t1d kid, if that's the person who will be using the pump. Train care-givers on the new pump, as well. +Many of us have come from OmniPods, Animas, or t:slim pumps in order to pump using old Medtronic pumps. The menus will be different and you need to get proficient with the pump's normal use before complicating things with looping. Become familiar with the reservoir changes and teach your T1D kid, if that's the person who will be using the pump. Train care-givers on the new pump, as well. **You should definitely test your basals, ISFs, carb ratios, and DIA all over again now that you've switched pumps and infusion sets. If those settings aren't correct, looping isn't a good idea.** @@ -31,11 +31,11 @@ There are a couple areas in the pump that will need to be set specifically in or * Set the Temp Basal type to `units per hour` not `%` type. -* Set the carb ratios to grams, not exchange units +* Set the carb ratios to grams, not exchange units. -* Set the max basal rate to a reasonable value (typically no more than 3-4 times your regular basal) +* Set the max basal rate to a reasonable value (typically no more than 3-4 times your regular basal). -* Set basal profile, carb ratios, and ISF values +* Set basal profile, carb ratios, and ISF values. * ISFs over 250 mg/dl per unit will need a special step in loop setup (TODO: add link), even though the pump currently will allow you to set them higher. Just remember later, you will need to run a couple extra commands when you setup your loop. @@ -45,13 +45,13 @@ There are a couple areas in the pump that will need to be set specifically in or Setting up the Easy Bolus feature for your pump now (and practicing it) may help you avoid a small, annoying pump error later. If you are going to use the (super advanced, not for beginners) SMB (super microbolus) feature, then you need to be aware of the potential for pump error due to remote bolus commands. When the pump is engaged to bolus with a remote bolus command from the rig and another bolus is initiated from the pump manually, the pump will error out with an A52 error. The pump will not deliver the bolus, the reservoir will rewind and the pump time needs to be reset. Put simply, two bolus commands coming in at once cause the pump to error and rewind. -One way to minimize this error is by checking the pump before giving a bolus. Check to see if the rig is giving a SMB through using the OpenAPS pill in Nightscout, checking the pump-loop log in Papertrail, or logging into the rig and looking at the pump loop. If the rig is actively giving a SMB, then try to time your bolus wizard use to be in the 5 minutes between SMBs (SMBs are only enacted every 5 minutes at most). These steps might be a little too complex for young kids or school nurses, depending on the situation. If this error happens frequently, you may need to consider turning off SMBs or try using the Easy Bolus button. +One way to minimize this error is by checking the pump before giving a bolus. Check to see if the rig is giving a SMB by using the OpenAPS pill in Nightscout, checking the pump-loop log in Papertrail, or logging into the rig and looking at the pump loop. If the rig is actively giving a SMB, then try to time your bolus wizard use to be in the 5 minutes between SMBs (SMBs are only enacted every 5 minutes at most). These steps might be a little too complex for young kids or school nurses, depending on the situation. If this error happens frequently, you may need to consider turning off SMBs or try using the Easy Bolus button. -The Easy Bolus button allows you to quickly use the arrow buttons on your pump to give a set increment of insulin. For example, if you setup your Easy Bolus button to have 0.5 unit increments, every click of the `up arrow` on the pump will increment a bolus of 0.5 units...push button 4 times and you are setting up a 2.0 unit bolus. You still have to click the `ACT` button twice to confirm and start the delivery of the bolus. Since the button presses are usually pretty quick, there's less likelihood of radio communication interference with a rig's SMB command. You can use IFTTT buttons to enter the carbs in your Nightscout site (or use careportal in Nightscout directly). For example, having IFTTT buttons for 5, 10, and 20g carb entries (or whatever your common meal amounts are) can make entering in food pretty easy. So, the Easy Bolus method requires the ability to roughly estimate your meal bolus (e.g., total carbs divided by carb ratio)...but so long as you are close, the loop should be able to make up any amount of bolus that was slightly over/under done by using the Easy Bolus button. +The Easy Bolus button allows you to quickly use the arrow buttons on your pump to give a set increment of insulin. For example, if you setup your Easy Bolus button to have 0.5 unit increments, every click of the `up arrow` on the pump will increment a bolus of 0.5 units. Push the button 4 times and you are setting up a 2.0 unit bolus. You still have to click the `ACT` button twice to confirm and start the delivery of the bolus. Since the button presses are usually pretty quick, there's less likelihood of radio communication interference with a rig's SMB command. You can use IFTTT buttons to enter the carbs in your Nightscout site (or use Care Portal in Nightscout directly). For example, having IFTTT buttons for 5, 10, and 20g carb entries (or whatever your common meal amounts are) can make entering in food pretty easy. The Easy Bolus method requires the ability to roughly estimate your meal bolus (e.g., total carbs divided by carb ratio). As long as you are close, the loop should be able to make up any amount of bolus that was slightly over/under done by using the Easy Bolus button. #### Extended and Dual Wave substitute -Due to the way the Medtronic pumps operate, temp basals can only be set when there is no bolus running; this including extended (square) / dual wave boluses. So, if you're used to extended or dual wave boluses for carb heavy meals (e.g. pizza), which may still be the optimal approach for you, OpenAPS will not be able to provide temp basals during the extended bolus. You won't be looping during those types of boluses. +Due to the way Medtronic pumps operate, temp basals can only be set when there is no bolus running, including extended (square) and dual wave boluses. If you're used to extended or dual wave boluses for carb heavy meals (e.g., pizza), which may still be the optimal approach for you, OpenAPS will not be able to provide temp basals during the extended bolus. You won't be looping during those types of boluses. But, you don't need the square/dual wave boluses anymore, as OpenAPS will help simulate the longer tail insulin needed if you've entered carbs into the system. Also, many loopers have found they can convert to a split bolus strategy to effectively deal with the same meals. There is a carb+insulin+BG simulator called [Glucodyn](http://perceptus.org) that can be used to model a split bolus strategy for those meals. By setting different bolus times and bolus amounts, the model allows the user to slide adjustments to minimize early-meal lows as well as late meal rises. For example, you may find that a 20 minute pre-bolus of 50% of the carbs and a later bolus for the remaining 50% will work well, with looping helping to make up the difference that an extended bolus used to provide. You can practice the transition to split bolusing even before you get your loop running. @@ -59,7 +59,7 @@ Some of the super advanced features you'll learn about later - Unannounced Meals ### Autotune -You've been logging and recording your carbs and boluses in Nightscout, right? You have your CGM data flowing into Nightscout too? Great...now autotune can give you a headstart to fine-tuning your basals and ISF. There are some restrictions on autotune still (only a single daily carb ratio and single daily ISF), but there are tips on the [autotune page](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-4/autotune.html) for how to deal with multiple values. You can run autotune before you get your loop setup...it doesn't have to run on a rig. +You've been logging and recording your carbs and boluses in Nightscout, right? You have your CGM data flowing into Nightscout too? Great...now autotune can give you a headstart to fine-tuning your basals and ISF. There are some restrictions on autotune still (only a single daily carb ratio and single daily ISF), but there are tips on the [autotune page](http://openaps.readthedocs.io/en/latest/docs/Customize-Iterate/autotune.html) for how to deal with multiple values. You can run autotune before you get your loop setup...it doesn't have to run on a rig. How important are good basals and ISFs? You mean you weren't convinced already by the amount of work put into autotune itself? Well, autotune is a required step in order to enable the most advanced features (SMB and UAM). The new version will check to see if you have an autotune directory in your rig before the loop will be allowed to actually enact any SMBs (no matter what your preferences say). To fulfill this requirement you can do one of the following which will create an autotune directory where it needs to be: diff --git a/docs/docs/While You Wait For Gear/loops-in-progress.md b/docs/docs/While You Wait For Gear/loops-in-progress.md index cd46d07b6..56ed4e5eb 100644 --- a/docs/docs/While You Wait For Gear/loops-in-progress.md +++ b/docs/docs/While You Wait For Gear/loops-in-progress.md @@ -1,6 +1,6 @@ # Loops In Progress -To get you comfortable with submitting a "PR" (stands for pull request), test it out by submitting a PR to this page, adding your name to the list of people who have loops in progress. +To get you comfortable with submitting a "PR" (stands for pull request), test it out by submitting a PR to this page, adding your name to the list of people who have loops in progress. New to Github, and PRs? [Check out how to submit your first PR](http://openaps.readthedocs.io/en/latest/docs/Resources/my-first-pr.html). @@ -25,7 +25,7 @@ List of people who are working on closed loops: - Andy Pabari - Rob Kresha - (Papillion, NE, USA) - Christian Robinson (London, UK) -- Gary Kidd +- Gary Kidd (Wilton, CT) - Nathan Morse - Paul Davis (Brighton, UK) - Marion Barker (Sunnyvale, CA, USA) @@ -115,7 +115,7 @@ List of people who are working on closed loops: - Jacqueline Burke (Troy, MI / Baltimore, MD) - Kate Hainsworth (Austin, TX) - Brian Rabinovitz (Chapel Hill, NC) -- Stephen G. (Seattle, WA) +- Stephen G. (Seattle, WA) - Emily Stunek (Lake Shore, MN) - Lorenzo Conte (Chicago, IL) - Alasdair McLay (Derby, UK) @@ -159,3 +159,41 @@ List of people who are working on closed loops: - Helene Brashear (Austin, TX) - Jeremy B. for CM (New York, NY) - Molly Duerr (Minneapolis, MN) +- Amber K (Ithaca, NY) +- Melanie Shapiro (Gainesville, FL) +- Brandon (Philly) +- Justin W (Charlottesville, VA) +- Chris Creek (Martinsburg, PA) +- Tom Petrillo (San Diego, CA) +- Christian Driver for Lucy (Wilmslow, UK) +- Katie Aldridge +- Darlene Morissette (Winnipeg, MB, Canada) +- Jake Punshon (Saskatoon, SK, Canada) +- Elisa Kelley (Austin, TX) +- Stuart Raphael (Sydney, Australia) +- Dan Durham (Edmonton, AB, Canada) +- Niels Hartvig (Odense, Denmark) +- Dirk Gastaldo (Newbury Park, CA, USA) +- Clayton McCook (Edmond, OK, USA) +- Kris Schmitz (Washington, DC/New Brunswick, NJ) +- Steven Miller (Vancouver, BC, Canada) +- Kyle Larsen (Provo, UT) +- Ben Fowler (Huntsville, AL) +- Giuseppe Acito (Roma, Italy) +- Mark M (Chicago, IL) +- Chris Reilly (Detroit, MI) +- Rod Snyder (Morgantown, WV, USA) +- John Murray (Pinellas Park, FL, USA) +- Shirley Steinmacher (son, Salt Lake City, UT, USA) +- Michael Spradling (Raleigh, NC) +- Tore Bjørndalen (Norway, Oppegård) +- John Young (King of Prussia, PA) +- Kathleen Gagnier (Orlando, FL) +- Kim Goldmacher (Philadelphia, PA) +- Craig Brenner (Seattle, WA) +- Darryl Schick (PA) +- Nadine Pedersen (Vancouver, Canada) +- Beno Schechter (Coral Gables, FL) +- Rami Laakso (Nummela, Finland) +- Steve Lund (PEI, Canada) +- Paul Andrel (Phoenixville, PA) diff --git a/docs/docs/While You Wait For Gear/monitoring-OpenAPS.md b/docs/docs/While You Wait For Gear/monitoring-OpenAPS.md index 01e774315..6c559cbec 100644 --- a/docs/docs/While You Wait For Gear/monitoring-OpenAPS.md +++ b/docs/docs/While You Wait For Gear/monitoring-OpenAPS.md @@ -47,15 +47,15 @@ See below for different ways to access your rig: * Use the command `ssh root@edisonhost.local` (**or whatever you named your edison host**, in the example below, the hostname was edison1). If this is your first time logging in to the rig on the computer, you may get a message about the authenticity of the host and whether you want to add the key fingerprint to the list of known hosts. Go ahead and answer yes. You will be asked for the password for the rig...enter your root password that you setup in Phase 0 (the default was edison). Realize that keystrokes will not appear as you enter the password. A successful login will result in a screen similar to below. -![Mac ssh login](../../Images/access_mac1.png) +![Mac ssh login](../Images/access_mac1.png) * If you get an error about "could not resolve hostname", it is likely that your rig is actually connected to a different wifi network than the computer. Try the screen method (directions below) for connecting to your rig. -![Mac ssh unknown host](../../Images/access_mac2.png) +![Mac ssh unknown host](../Images/access_mac2.png) * If you get an scary looking error about "WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!" that is likely because you are attempting to login to a rig that has the same hostname as a previous rig that has been logged into on the computer. (This is why you want to use unique hostnames if you are going to have multiple rigs.) You can delete the history of known hosts for the rig by entering the commands `cd .ssh` and then `rm known_hosts`. This will delete the log of known hosts on your computer. There's no significant downside to removing the known_host log, except that you will need to answer yes to the key fingerprint additions again for the first time you login to old rigs again. After you delete the known hosts, you can use the `ssh root@edisonhost.local` command to login, as described above. -![Mac spoofing error](../../Images/access_mac3.png) +![Mac spoofing error](../Images/access_mac3.png) #### For Windows computers @@ -63,99 +63,61 @@ See below for different ways to access your rig: * Click the SSH radio button and then enter the IP address of the rig on the "Host Name" line in PuTTY. -![Windows IP address for rig](../../Images/access_5.png) +![Windows IP address for rig](../Images/access_5.png) * If you do not know the IP address of the rig, you can obtain it by first logging on using Serial connection (described below) and using the command `ifconfig`. -![Windows IP address for rig](../../Images/access_4.png) +![Windows IP address for rig](../Images/access_4.png) * Click the "Open" button in the PuTTY window and, if this is your first time logging into the rig using PuTTY using ssh, you may see a warning regarding the server's host key. Click yes to add the host key to PuTTY's cache. -![Windows key hostname](../../Images/access_6.png) +![Windows key hostname](../Images/access_6.png) * Login using login name `root` and password is whatever you changed it to during setup in Phase 0. The default password was edison. As you type the password, no keystrokes will appear on the screen. Successful login will leave you at a prompt for the root user. -![Windows IP address for rig](../../Images/access_7.png) +![Windows IP address for rig](../Images/access_7.png) ### If your computer and rig are on different wifi networks -![If your computer and rig are on different wifi networks](../../Images/Computer_rig_different_wifi.png) +![If your computer and rig are on different wifi networks](../Images/Computer_rig_different_wifi.png) **Access to the rig will need a cable to connect the UART port on the rig with the USB port on the computer. You will need a cable capable of transmitting data. If you try all of the steps below and are unsuccessful at connecting, try a new cable.** #### For Mac computers -* Use the Terminal app on the Mac, or follow [these directions for Windows](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-0/setup-edison.html#if-you-re-using-a-windows-pc-for-console) +* Use the Terminal app on the Mac, or follow [these directions for Windows](http://openaps.readthedocs.io/en/latest/docs/Resources/Edison-Flashing/all-computers-flash.html#if-you-re-using-a-windows-pc-for-console) * If you're using a Mac, use the command `sudo screen /dev/tty.usbserial-* 115200` to enable “screen” mode. You will be prompted to enter a password. Enter your **computer's password** not the rig's password here. -![Mac Screen first password](../../Images/access_mac_password.png) +![Mac Screen first password](../Images/access_mac_password.png) -* You may see a blank screen. Press RETURN to bring up the edison’s login screen. Login as `root` and use your root password (you should have changed it from the default of `edison` during the setup of the rig - if not, please [go back and do so now](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-0/setup-edison.html#initial-edison-setup). A successful login will look like below. +* You may see a blank screen. Press RETURN to bring up the edison’s login screen. Login as `root` and use your root password (you should have changed it from the default of `edison` during the setup of the rig - if not, please [go back and do so now](http://openaps.readthedocs.io/en/latest/docs/Resources/Edison-Flashing/all-computers-flash.html#initial-edison-setup). A successful login will look like below. -![Mac Screen successful login](../../Images/access_mac_screen.png) +![Mac Screen successful login](../Images/access_mac_screen.png) * If instead, you see a message at the bottom of the screen that says "Sorry, could not find a PTY." that usually means the system has not cleared a previous screen session. If you only had the rig connected by one cable in the UART port on rig, you can simply unplug the rig from the computer and move to a new USB port on the computer. If you don't have any "new" USB ports that were not used by the previous login attempt, then close out terminal app, restart the computer, and try again. This will clear the error. -![Mac Screen message for busy port](../../Images/access_mac_sorry.png) +![Mac Screen message for busy port](../Images/access_mac_sorry.png) * If instead you see a message at the bottom of the screen that says "Cannot exec '/dev/tty.usbserial-*': No such file or directory", double check that you have your rig and computer connected via the rig's UART port. Using the OTG port will cause this error message. Or typos in the screen command will have same result. Double check your spelling, or better yet...use copy and paste whenever possible. -![Mac Screen message for OTG port](../../Images/access_mac_no_exec.png) +![Mac Screen message for OTG port](../Images/access_mac_no_exec.png) #### For Windows Users * Navigate to your Control Panel and then to Device Manager. Click on the Ports to open your USB serial port. Find the COM port that the rig is connected to. In the screenshot below, COM7. Note: different USB ports will have different numbers. If you regularly plug your rig into the computer and use this connection type, you may need to make sure you update the COM number in the steps below if you are switching between different USB ports. -![Windows COM port number](../../Images/access_1.png) +![Windows COM port number](../Images/access_1.png) * Open PuTTY program. Click on the Serial radio button, enter the COM number you got from the previous step into the Serial line number and change the speed to 115200. Click on Open button. -![Windows serial setup](../../Images/access_2.png) +![Windows serial setup](../Images/access_2.png) * Enter `root` for the login and the password is whatever you changed it to during setup in Phase 0. The default password was edison. As you type the password, no keystrokes will appear on the screen. Successful login will leave you at a prompt for the root user as shown below. -![Windows serial login success](../../Images/access_3.png) +![Windows serial login success](../Images/access_3.png) -### If your iPhone and rig are on the same wifi network - -![If your iPhone and rig are on the same wifi network](../../Images/Iphone_rig_same_wifi.png) - -One of the most convenient ways to do quick edits on your rig’s settings may be by using an app on your iPhone. You will need to make sure your rig and your iPhone are sharing the same network (e.g., home wifi, mifi, or personal hotspot) and here are the instructions. Each connection point will need it’s own “host” setup in the app. - -* Download “Termius SSH Shell/Console/Terminal” from iPhone app store - -* Set up a new “host” in the app with the following information. Remeber, you will need to setup a new "host" for every rig and every wifi connection that you will use to connect. For example, I have three rigs that I regularly connect to on my home wifi network; edison1 (the rig my daughter regularly wears), edison2 (the rig we keep in her bedroom), and edison3 (the rig we keep in the living room). Since my daughter's mobile rig (edison1) can sometimes need to be accessed while we are on the road, I also have a host setup for when her rig is connected to my phone's hotspot. - -``` -Alias: enter a name that will remind you which rig and what network (such as rig name @ home wifi, iphone hotspot, or mifi device since each connection will have a unique IP address) -Username: root -Hostname: enter the IP address of the rig on that particular wifi network (see below if you need help finding the IP address) -Password: enter your rig's root password -``` -* Clicking on the “host” in the app will launch an ssh connection with the rig and you can use the iPhone to access the rig’s software. They must be on the same network as the “host” connection specifies though, or else the connection will fail. - -![Terminus app hostnaming](../../Images/terminus.png) - -### How to determine the IP address of your rig? - -Private IP addresses are assigned for devices and are unique to the connection. So, your rig’s IP address when using your iPhone’s hotspot will be different than your rig’s IP address when using your home wifi. So, you’ll need to find the IP address for the particular connection you are using. - -* If rig and iPhone connected to a mifi device, the mifi device may list connected devices and IP addresses. Look for your edison rig on there. - -* If iPhone and rig are connected via the iPhone’s personal hotspot, you can download an app such as iNet to scan the network for devices and find your edison rig. The IP address will be listed with the scan information. - - -* If the rig is accessible by computer (by either method listed above, ssh or console) **AND** the iPhone and rig are on same network as each other, you have a couple options. You can login on Terminal app and use `ifconfig` to read the wlan0 inet address - -![ifconfig example](../../Images/ifconfig_example.png) - -OR login to your router to see the list of connected devices and find your edison rig. Google your router’s brand name and “router login” (e.g., Netgear router login) to find out how to access your router’s administrative area. - -### Shortcut to see IP and wifi network name that your rig is on - -**Tip**: for rigs updated ([here is how to update](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-2/update-your-rig.html)) after 2/7/17, you can also now type `wifi` hit enter; it will bring up the last 100 lines of the network log so you can see your IP address AND the network name of the wifi that your rig is on. ******************************** ### Papertrail remote monitoring of OpenAPS logs (RECOMMENDED) @@ -170,7 +132,7 @@ Go to http://papertrailapp.com and setup a new account. Choose to setup a new s #### System logging -Login to your rig. If you need help with that, please see the [Accessing Your Rig](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-2/accessing-your-rig.html) section of these docs. Copy and paste the code that is displayed in your new system setup's shaded box, as shown in the red arrowed area in the screen shot above. This will setup papertrail for just your syslogs. But, we now will need to add more (aggregate) your logs such as pump-loop and ns-loop. +Login to your rig. If you need help with that, please see the [Accessing Your Rig](http://openaps.readthedocs.io/en/latest/docs/While You Wait For Gear/monitoring-OpenAPS.html#accessing-your-rig-via-ssh) section of these docs. Copy and paste the code that is displayed in your new system setup's shaded box, as shown in the red arrowed area in the screen shot above. This will setup papertrail for just your syslogs. But, we now will need to add more (aggregate) your logs such as pump-loop and ns-loop. #### Aggregating logs @@ -275,7 +237,7 @@ Unfortunately, Papertrail does not currently have an app for use on mobile devic * `pump-loop.log` to see just your pump loop...similar to using the `l` command when logged into your rig. -* `network` will show just your oref0-online results and whether/which wifi network your rig is connected to. If you see results of `192.168.1.XX`, then your rig is likely connected to a wifi network. If you see results of `172.20.10.XX` then your rig is likely connected to your phone's personal hotspot. If you see `error, cycling network` results, you should check out troublehsooting steps. +* `network` will show just your oref0-online results and whether/which wifi network your rig is connected to. If you see results of `192.168.1.XX`, then your rig is likely connected to a wifi network. If you see results of `172.20.10.XX` then your rig is likely connected to your phone's personal hotspot. If you see `error, cycling network` results, you should check out troubleshooting steps. * `pump-loop.log adjust` will show your basal and ISF adjustments being made by autosens, if enabled. @@ -289,7 +251,7 @@ Once you get your desired filters saved, it is an easy process to make them more #### Troubleshooting using Papertrail -Papertrail can be very valuable to quickly troubleshoot a rig, becuase it is quite easy to see all the loops that log information about your rig's actions. BUT, the way that the information comes into Papertrail is based on the time the action took place. So, you'll be seeing information stream by that may or may not help you troubleshoot WHICH area your issues are. +Papertrail can be very valuable to quickly troubleshoot a rig, because it is quite easy to see all the loops that log information about your rig's actions. BUT, the way that the information comes into Papertrail is based on the time the action took place. So, you'll be seeing information stream by that may or may not help you troubleshoot WHICH area your issues are. First, let's start with messages that **ARE NOT ERRORS** @@ -311,7 +273,7 @@ Therefore when you start to troubleshoot, **USE YOUR FILTERS** to narrow down th **PUMP TUNING** -Use `pump-loop` search filter to start with. What messages are you seeing? Poor pump comms are one of the most frequent causes of loops stopping. If you see `916, 0, -99` tuning results, then you know that your rig is not getting a useable communication with your pump. Try moving your pump and rig closer together. Check if your pump battery is good. +Use `pump-loop` search filter to start with. What messages are you seeing? Poor pump comms are one of the most frequent causes of loops stopping. If you see `916, 0, -99` tuning results, then you know that your rig is not getting a usable communication with your pump. Try moving your pump and rig closer together. Check if your pump battery is good. ![papertrail poor pump tune](../Images/poor_tuning.png) @@ -321,7 +283,7 @@ Use `pump-loop` search filter to start with. What messages are you seeing? Poo **GIT LOCK** -There are files that get written to in a directory called `/root/myopenaps/.git` Sometimes a process crashes and causes a file in that directory to get locked and the writing can't continue. Your loop may fail as a result. This can be a short term issue, and it could resolve on it's own...other times it may require you to delete the file that is causing the problem. For example, below is a short-term error. The message says there is a problem in the `/root/myopenaps/.git` and I may need to remove that file to get things going again. However, you can also see that a few minutes later, the problem resolved on its own. +There are files that get written to in a directory called `/root/myopenaps/.git` Sometimes a process crashes and causes a file in that directory to get locked and the writing can't continue. Your loop may fail as a result. This can be a short term issue, and it could resolve on its own...other times it may require you to delete the file that is causing the problem. For example, below is a short-term error. The message says there is a problem in the `/root/myopenaps/.git` and I may need to remove that file to get things going again. However, you can also see that a few minutes later, the problem resolved on its own. If you find a .git lock error is causing a long period of time where your loop is failing, you can remove the file, as the error suggests by using `rm -rf /root/myopenaps/.git/filename` or you can delete the whole `.git` directory (it will get rebuilt by the loop automatically) with `rm -rf /root/myopenaps/.git` @@ -468,7 +430,7 @@ in you APS directory there is a file called 'pancreoptions.json' "urchin_loop_status": false, <--- Gives a message on urchin watchface that it's running "urchin_iob": true, <--- Gives a message on urchin watchface of current IOB "urchin_temp_rate": false, <--- Gives a message on urchin watchface of current temp basal -"notify_temp_basal": false <--- Notificaiton of temp basal when one shows up in enact/suggested.json +"notify_temp_basal": false <--- Notification of temp basal when one shows up in enact/suggested.json ``` note only one of the messages for the urchin watchface can be true at once @@ -480,7 +442,7 @@ By default the urchin_loop_on, and urchin_iob is set to true. You must manually ### Hot Button - for Android users #### Purpose -[Hot Button app](https://play.google.com/store/apps/details?id=crosien.HotButton) can be used to monitor and control OpenAPS using SSH commands. It is especialy useful for offline setups. Internet connection is not required, it is enough to have the rig connected to your android smartphone using bluetooth tethering. +[Hot Button app](https://play.google.com/store/apps/details?id=crosien.HotButton) can be used to monitor and control OpenAPS using SSH commands. It is especially useful for offline setups. Internet connection is not required, it is enough to have the rig connected to your android smartphone using bluetooth tethering. #### App Setup To setup the button you need to long click. Setup the Server Settings and set them as default. For every other button you can load them. diff --git a/docs/docs/While You Wait For Gear/nightscout-setup.md b/docs/docs/While You Wait For Gear/nightscout-setup.md index 065a4e5ae..d2e083052 100644 --- a/docs/docs/While You Wait For Gear/nightscout-setup.md +++ b/docs/docs/While You Wait For Gear/nightscout-setup.md @@ -2,14 +2,14 @@ ## Nightscout Introduction -[Nightscout](http://nightscout.info) is an open source, DIY project that allows real-time access to a CGM data -via personal website, smartwatch viewers, or apps and widgets available for +[Nightscout](http://nightscout.info) (NS) is an open source, DIY project that allows real-time access to CGM data +via a personal website, smartwatch viewers, or apps and widgets available for smartphones. Setting up a Nightscout web app is the recommended way to visualize your OpenAPS closed loop. -Nightscout allows a user to upload CGM data from a variety of sources, to an +Nightscout allows a user to upload CGM data from a variety of sources to an online database and cloud computing service. The information is then processed -and displayed visually as a graph. There are plugins that allow greater +and displayed visually as a graph. There are plugins that allow more information to be shown about OpenAPS, too. As the data is uploaded to an online website and then retrieved by OpenAPS, it allows OpenAPS a wider range of compatibility with various CGM solutions. @@ -26,13 +26,13 @@ your data, customized watchfaces with your OpenAPS data, and integration with IF * If you plan to use Nightscout with OpenAPS, we recommend using Heroku, as OpenAPS can reach the usage limits of the free Azure plan and cause it to shut down for hours or days. If you end up needing a paid tier, the $7/mo Heroku plan is also much cheaper than the first paid tier of Azure. Currently, the only added benefit to choosing the $7/mo Heroku plan vs the free Heroku plan is a section showing site use metrics for performance (such as response time). This has limited benefit to the average OpenAPS user. **In short, Heroku is the free and OpenAPS-friendly option for NS hosting.** -* Create an account at [Heroku](https://www.heroku.com) and choose the Primary Development Language to be Node.js when you create your account. You’re going to use a free account, but you will still need to enter credit card information for your account setup before the app will deploy. You'll need confirm your Heroku account by clicking a link sent via email. +* Create an account at [Heroku](https://www.heroku.com) and choose the Primary Development Language to be Node.js when you create your account. You’re going to use a free account, but you will still need to enter credit card information for your account setup before the app will deploy. You'll need to confirm your Heroku account by clicking a link sent via email. ![Heroku signup example](../Images/nightscout/heroku_signup.jpg) * Create an account at [GitHub](https://github.com) ***************** -**Note:** If you already have an existing GitHub account and NS site, you may just need to update your repository by doing a Compare in GitHub. Use `https://github.com/yourgithubname/cgm-remote-monitor/compare/master...nightscout:master` and replace yourgithub name. Click the big green `Create pull request` button. Another screen will appear, fill in a title and click button to `create the pull request`, and then you can `Merge pull request`, and finally `Confirm merge`. That process updates your Nightscout repository in Github. Once updated, you can skip the "click the Fork Button" step below and start following along with the purple `Deploy to Heroku` button step from your updated Nightscout cgm-remote-monitor repository. +**Note:** If you already have an existing GitHub account and NS site, you may just need to update your repository by doing a Compare in GitHub. Use `https://github.com/yourgithubname/cgm-remote-monitor/compare/master...nightscout:master` and replace "yourgithubname" with your GitHub name. Click the big green `Create pull request` button. Another screen will appear, fill in a title and click button to `create the pull request`, and then you can `Merge pull request`, and finally `Confirm merge`. That process updates your Nightscout repository in GitHub. Once updated, you can skip the "click the Fork Button" step below and start following along with the purple `Deploy to Heroku` button step from your updated Nightscout cgm-remote-monitor repository. ***************** * Go to the [Nightscout cgm-remote-monitor repository](https://github.com/nightscout/cgm-remote-monitor) @@ -59,7 +59,7 @@ your data, customized watchfaces with your OpenAPS data, and integration with IF API_SECRET -Create your own API_SECRET…this is like the password to your NS site. Please write it down somewhere safe or commit it to memory, you will be using it in the future. It needs to be at least 12 characters long and should NOT use the `@` symbol. +Create your own API_SECRET. This is like the password to your NS site. Please write it down somewhere safe or commit it to memory, you will be using it in the future. It needs to be at least 12 characters long and should NOT use the `@` symbol. AUTH_DEFAULT_ROLES @@ -83,19 +83,19 @@ your data, customized watchfaces with your OpenAPS data, and integration with IF BG_HIGH -Enter the numeric value of BG you’d like as an urgent high alarm. +Enter the numeric value of BG you’d like as an urgent high alarm. (Note: For users outside the US, this needs to be set in mgdl. Take your desired mmol number and multiply it by 18). BG_TARGET_TOP -Enter the numeric value of the top of your target BG. +Enter the numeric value of the top of your target BG.(Note: For users outside the US, this needs to be set in mgdl. Take your desired mmol number and multiply it by 18). BG_TARGET_BOTTOM -Enter the numeric value of the bottom of your target BG. +Enter the numeric value of the bottom of your target BG.(Note: For users outside the US, this needs to be set in mgdl. Take your desired mmol number and multiply it by 18). BG_LOW -Enter the numeric value of the BG you’d like as an urgent low alarm. +Enter the numeric value of the BG you’d like as an urgent low alarm.(Note: For users outside the US, this needs to be set in mgdl. Take your desired mmol number and multiply it by 18). PUSHOVER lines @@ -127,7 +127,7 @@ your data, customized watchfaces with your OpenAPS data, and integration with IF **The remaining variables can be left at their default values.**

***************** -**Note:** for BRIDGE_MAX_COUNT: This value sets the number of BG values to pull from Share per update. Each Dexcom BG value represent 5 minutes. Nightscout defaults to BRIDGE_MAX_COUNT=1. If you lose connectivity with your Dexcom transmitter, your Share app will automatically backfill data points when you regain connectivity. Nightscount does not do this and you will have gaps in the data for when you were out of range. More information here https://github.com/nightscout/cgm-remote-monitor#bridge-share2nightscout-bridge +**Note:** for BRIDGE_MAX_COUNT: This value sets the number of BG values to pull from Share per update. Each Dexcom BG value represent 5 minutes. Nightscout defaults to BRIDGE_MAX_COUNT=1. If you lose connectivity with your Dexcom transmitter, your Share app will automatically backfill data points when you regain connectivity. Nightscount does not do this and you will have gaps in the data for when you were out of range. More information [here](https://github.com/nightscout/cgm-remote-monitor#bridge-share2nightscout-bridge). You can change the BRIDGE_MAX_COUNT value to pull more samples per query, which will backfill BRIDGE_MAX_COUNT values for you. This change increases your data usage and may affect your Nightscout billing tier. Setting BRIDGE_MAX_COUNT to 7 will update the previous 35 minutes of data and will keep OpenAPS up to date on your current BG trends. If you frequently have larger data gaps and you use autotune, you may consider increasing this number more to backfill data more aggressively. ***************** @@ -146,7 +146,7 @@ You can change the BRIDGE_MAX_COUNT value to pull more samples per query, which You do not have to enter all the information in the profile if you are using OpenAPS (since OpenAPS will be providing the information for IOB and COB rather than letting NS calculate them), but you do have to fill out the `Basal Profile` and `TimeZone` at a minimum in order to have your temp basals properly display. Click `Save` when you have entered the information. You will be prompted to authenticate, if it is the first time you’ve used the device to make changes in your profile. Click on the `Authenticate` link at the bottom of the site, and enter your API_SECRET to complete the authentication. -**Note:** OpenAPS will only work based on the values in your pump; not the values that you put into Nightscout profile. You will need to keep the Nightscout basal profile in-sync with any changes you make in your pump to prevent later confusion in watching the temp basal rendering. +**Note:** OpenAPS will only work based on the values in your pump; not the values that you put into your Nightscout profile. You will need to keep your Nightscout basal profile in-sync with any changes you make in your pump to prevent later confusion in watching the temp basal rendering. ![Profile for basals](../Images/nightscout/profile.jpg) @@ -260,12 +260,12 @@ If you want to secure your Nightscout and CGM data, then all rigs need to have o Here are the steps you need to follow: -1. Visit https://mynightscout.herokuapp.com/admin +1. Visit https://yourappname.herokuapp.com/admin. Replace "yourappname" with the name you chose for your app above, that is, the prefix of your NS site's URL. - Add a new Role Name: `oref0rig` - Permissions: Add the following 6 permissions. Note that the default window is to small to fit them all. + Permissions: Add the following 6 permissions. Note that the default window is too small to see them all after you paste them in. ``` api:devicestatus:create, api:devicestatus:read, @@ -275,24 +275,24 @@ Here are the steps you need to follow: api:treatments:read ``` - ![AddRole](../phase-1/img/role-oref0rig.png) + ![AddRole](../Images/nightscout/role-oref0rig.png) 2. Add a new Subject - Name: the name of your rig (same as the hostname of your rig). - Note: Nightscout will shorten the name to 10 characters in your accesstoken, e.g. `myedisonhostname` becomes `myedisonho-0dccda4ae591e763` + Name: the name of your rig (same as the hostname of your rig). You will need to add a new Subject for each rig you run. + Note: Nightscout will shorten the name to 10 characters in your accesstoken, e.g., `myedisonhostname` becomes `myedisonho-0dccda4ae591e763` Roles: `oref0rig` - ![AddSubject](../phase-1/img/subject-oref0rig.png) + ![AddSubject](../Images/nightscout/subject-oref0rig.png) Press Save button. - In the Subject - People, Device etc. view you'll see the accesstoken for your rig, e.g. `myrigname-27c914cabc506fa3` + In the Subject - People, Device etc. view you'll see the access token for your rig, e.g., `myrigname-27c914cabc506fa3` -3. You need your rig to use the token based authentication token. This can be done in three different ways: +3. You need your rig to use the token based authentication. This can be done in three different ways: - - Using the `oref0-setup.sh` interactive setup. Enter the accesstoken (subjectname and hash of 16 characters, e.g. `myrigname-27c914cabc506fa3`) + - Using the `cd && ~/src/oref0/bin/oref0-setup.sh` interactive setup. Enter the access token (subjectname and hash of 16 characters, e.g., `myrigname-27c914cabc506fa3`) Example of the interactive setup: ``` Are you using Nightscout? If not, press enter. @@ -305,7 +305,7 @@ Here are the steps you need to follow: - Using the `oref0-setup` or `oref0-runagain.sh` command line. Use `--api-secret=token=myrigname-27c914cabc506fa3`. Don't forget to start with `token=`. - During install it will connect to the Nightscout and check if the permissions are ok. If OK you'll see this in your log: + During install it will connect to your Nightscout site and check if the permissions are ok. If OK you'll see this in your log: ``` 2017-06-10 19:46:14,758 INFO Nightscout host: https://mynightscout.herokuapp.com 2017-06-10 19:46:14,816 INFO Starting new HTTPS connection (1): mynightscout.herokuapp.com @@ -314,24 +314,25 @@ Here are the steps you need to follow: ``` If it's not ok it will exit the setup script and tell you which permissions are missing. - - Change the token in `ns.ini`. It's the third argument of the the `args=` line, e.g. + - Change the token in `ns.ini`. It's the third argument of the `args=` line: ``` [device "ns"] fields = oper cmd = nightscout args = ns https://mynightscout.herokuapp.com token=myrigname-27c914cabc506fa3 ``` + You must also change your `API_SECRET` in your crontab, e.g. `API_SECRET=token=myrigname-27c914cabc506fa3`. Use `crontab -e` to edit your crontab. -4. Test the rig, e.g. by running `openaps upload` or `openaps upload-ns-status` or just running the pump loop. You'll see the update from myrigname in the OpenAPS pill in Nightscout. +4. Test the rig by running `openaps upload` or `openaps upload-ns-status` or just running the pump loop. You should see the update from myrigname in the OpenAPS pill in Nightscout. 5. When all the rigs are 0.5.0 and are all using token based authentication, you can change the environment variables of your Nightscout: -- `AUTH_DEFAULT_ROLES` from `readable devicestatus-upload` to `denied` if you wish to block read-only access to your Nightscout instance. If you don't mind your CGM data being accessible to anyone with your Nightscout URL, you can just leave `AUTH_DEFAULT_ROLES` as `readable`. +- `AUTH_DEFAULT_ROLES` from `readable devicestatus-upload` to `denied` if you wish to block read-only access to your Nightscout instance. If you don't mind your CGM data being accessible to anyone with your Nightscout URL, you can just leave `AUTH_DEFAULT_ROLES` absent, which will default it to the value of `readable`. -Important: -- Just like keeping your pump serial number and API_SECRET for yourself, you should not post your authentication token `myrigname-27c914cabc506fa3` on the internet +Other notes: +- Just like keeping your pump serial number and API_SECRET for yourself, you should not post your authentication token `myrigname-27c914cabc506fa3` on the Internet - The authentication is also stored in your `crontab`, as `API_SECRET=token=myrigname-27c914cabc506fa3`. When token based authentication is used the API_SECRET on the rig will always start with `token=` instead of a hash. -- You must always secure your Nightscout site with secure http (https), so don't use http://mynightscout.herokuapp.com but always use https://mynightscout.herokuapp.com -- Keep your API_SECRET as a root/Adminsitrator password and only use it for configuring Nightscout. For just reading use a token with the `readable` role, and if you want to use the Careportal add the `careportal` role for that user. +- You must always secure your Nightscout site with secure http (https). Don't use http://mynightscout.herokuapp.com but rather always use https://mynightscout.herokuapp.com. +- Once you have token auth enabled, you can stop entering your API_SECRET in your browser when authenticating, and keep your API_SECRET as a root/Administrator password that you only use for configuring Nightscout. Instead, you can set up a user (as in steps 1 and 2 above) with the appropriate role. If you wish to be able to enter treatments into NS, you'll need to create an account with `careportal` access and authenticate with that in Nightscout. If you set AUTH_DEFAULT_ROLES to `denied` in step 5, you'll also need a user with `readable` permissions for any browsers that should have read-only access. ### Switching from Azure to Heroku @@ -339,15 +340,15 @@ Important: * If you’d like to seamlessly keep all your old Azure NS data showing in your new Heroku NS site, you’ll need to copy and paste your old `MONGODB` string from your Azure site. Find it in either Application Settings or Connection strings in your Azure control panel and then go to Heroku’s `MONGODB_URI` line. Replace the content with your copied string from Azure. Double check that your Azure collection used the “entries” name…if it doesn’t, then you will need to update that variable in Heroku to match as well. -**Note:** It's a good idea to to check your deployment connection in Heroku's dashboard after your deploy (typically this still needs to be manually connected after initial setup). Go your `Deploy` tab in your Heroku dashboard, click on the GitHub service, and select your GitHub cgm-remote-monitor repository. You can select the cgm-remote-monitor branch you'd like to deploy at the bottom of the screen. Both master and dev branches work for OpenAPS. +**Note:** It's a good idea to check your deployment connection in Heroku's dashboard after your deploy (typically this still needs to be manually connected after initial setup). Go your `Deploy` tab in your Heroku dashboard, click on the GitHub service, and select your GitHub cgm-remote-monitor repository. You can select the cgm-remote-monitor branch you'd like to deploy at the bottom of the screen. Both master and dev branches work for OpenAPS. ![Deploy branch](../Images/nightscout/deploy_branch.jpg) -## Nightscout Troubleshooting and FAQ's +## Nightscout Troubleshooting and FAQ ### It's not working - I'm missing data in Nightscout? -If you are using a "test pump" that has not received sufficient data in some time, Nightscout pills will NOT be displayed onscreen. Nightscout may also not work if it hasn't had CGM data in a while - so if you haven't been using a CGM and uploading CGM data to Nightscout for the past few days, the site may be empty as well. If this happens, simply use this pump in tandem with a CGM so glucose values are recorded and eventually uploaded to Nightscout. Once sufficient data has been collected, (and OpenAPS plugin is enabled and saved), the OpenAPS pills should appear automatically. Medtronic CGM users may also [need to do this to get their CGM data flowing into Nightscout after a gap in uploading data](http://openaps.readthedocs.io/en/latest/docs/Customize-Iterate/offline-looping-and-monitoring.html#note-about-recovery-from-camping-mode-offline-mode-for-medtronic-cgm-users). +If you are using a "test pump" that has not received sufficient data in some time, Nightscout pills will NOT be displayed onscreen. Nightscout may also not work if it hasn't had CGM data in a while - so if you haven't been using a CGM and uploading CGM data to Nightscout for the past few days, the site may be empty as well. If this happens, simply use this pump in tandem with a CGM so glucose values are recorded and eventually uploaded to Nightscout. Once sufficient data has been collected (and OpenAPS plugin is enabled and saved) the OpenAPS pills should appear automatically. Medtronic CGM users may also [need to do this to get their CGM data flowing into Nightscout after a gap in uploading data](http://openaps.readthedocs.io/en/latest/docs/Customize-Iterate/offline-looping-and-monitoring.html#note-about-recovery-from-camping-mode-offline-mode-for-medtronic-cgm-users). ### A Note about Nightscout's COB Pill diff --git a/docs/docs/While You Wait For Gear/preferences-and-safety-settings.md b/docs/docs/While You Wait For Gear/preferences-and-safety-settings.md index ae631be0d..b9cd458ac 100644 --- a/docs/docs/While You Wait For Gear/preferences-and-safety-settings.md +++ b/docs/docs/While You Wait For Gear/preferences-and-safety-settings.md @@ -2,9 +2,13 @@ All of the settings specific to OpenAPS (that can't be read from the pump) are in this file, so when running the setup scripts or building your loop, you will have the preferences.json file built for the system to read, in addition to your pump profile settings. Many of these are important safety settings, with reasonable default settings, so other than described below, you likely won’t need to adjust these. If you do decide to adjust a setting, the best practice is to adjust one setting at a time, and observe the impact for 3 days. Changing multiple variables at once is a recipe for a lot of headaches and a lot of painful troubleshooting. -Note: the “max basal” rate is one safety setting that you set in your pump. It should not be confused with “max daily” or “max current” multipliers described below. The system will use whichever of these three values is the lowest as the ceiling for the temps it will set. So, if your pump’s max basal is 1.0u, but 3x your highest daily basal or 4x your current basal would be higher, the system will not set any temps higher than 1.0u, even if it thinks you need more insulin. On the flip side, if your 4x current multiplier says you can have max 1.6u/hr and your max basal is 2u/hr; the maximum set temp at that time will be 1.6u/hr. +## Editing your preferences.json + +Your preferences are found in the directory `myopenaps/preferences.json`. To edit any of your preferences, you can enter `edit-pref` (as a shortcut) or `cd ~/myopenaps && nano preferences.json` + +To check your edits when you're done, use `cd ~/myopenaps && cat preferences.json` -### Commonly-adjusted preferences: +## Commonly-adjusted preferences: ``` { @@ -25,11 +29,19 @@ Note: the “max basal” rate is one safety setting that you set in your pump. #### max_iob: -This will default to “auto”, or automatically adjust to 1 hour’s worth of your current basal rate. After several days or weeks, depending on your comfort level, you may choose to adjust this number. (Remember in the future if you re-run the setup scripts, it will default back to auto so you will come in here to adjust the max iob, as it is an OpenAPS-specific setting). +Max_IOB (or maxIOB as often described) is not a basal rate. Max_IOB is the maximum amount of UNITS of basal (or SMB corrections) insulin that your loop is allowed to accumulate to treat higher-than-target BG. This setting is not dependent on the rate the temp basal is applied, however the greater a temp basal rate, the faster basal insulin is accumulated. Therefore, some safety considerations are smart. + +A good rule of thumb is for max-iob to be no more than 3 times your highest basal rate. Keep in mind you can start conservatively and change this number over time as you evaluate further how the system works for you. (This means it should be approximate to your other settings; not an absolute amount that you set without thinking about it.) + +The setup script will prompt you for a max-iob setting. Previous oref0 releases (0.4.3 or older) used a max-iob initial setting of 0 units. This effectively made the initial loop build only capable of suspending to prevent lows...as it was not allowed to accumulate much corrective basal insulin. oref0 0.5.0 or later will prompt you to enter a max-iob during setup. This setting will be saved in the oref-runagain script and be used again if you need to rerun the script. -Keep in mind this is one of the key safety features of OpenAPS. You do NOT want this to be a super large amount. The point of this setting is to ensure that the loop can not excessively high temp you beyond what you could correct for with carbs. +#### the most commonly confused safety variables that are also the most important -A good rule of thumb is for max iob to be no more than 3 times your highest basal rate. Keep in mind you can start conservatively and change this number over time as you evaluate further how the system works for you. (This means it should be approximate to your other settings; not an absolute amount that you set without thinking about it.) +Note: The next two variables `max_daily_safety_multiplier` and `current_basal_safety_multiplier` work together, along with your pump's max basal rate setting (set on your pump), as a safety setting for your loop. **The system will use whichever of these three values is the lowest, at any given time, as the ceiling for the temp basal rates it will set.** So, if your pump’s max basal is 1.0u, but 3x your highest daily basal or 4x your current basal would be higher, the system will not set any temps higher than 1.0u, even if it thinks you need more insulin. On the flip side, if your 4x current multiplier says you can have max 1.6u/hr and your pump's max basal is 2u/hr; the maximum set temp at that time will be 1.6u/hr. + +You can be able to alerted to being restricted by the max basal setting by looking at the OpenAPS pill message in Nightscout (or in pump-loop log), which will say "adj. req. rate: XX to maxSafeBasal: XX" + +![max safe basal message](../Images/max-safe-basal.jpg) #### max_daily_safety_multiplier: @@ -41,7 +53,7 @@ This is the other half of the key OpenAPS safety caps, and the other half of “ #### autosens_max: -This is a multiplier cap for autosens (and soon autotune) to set a 20% max limit on how high the autosens ratio can be, which in turn determines how high autosens can adjust basals, how low it can adjust ISF, and how low it can set the BG target. +This is a multiplier cap for autosens (and autotune) to set a 20% max limit on how high the autosens ratio can be, which in turn determines how high autosens can adjust basals, how low it can adjust ISF, and how low it can set the BG target. #### autosens_min: @@ -61,7 +73,7 @@ Many people occasionally forget to resume / unsuspend their pump after reconnect ### Advanced oref1 preferences: -These preference should **not** be enabled until you've been looping (and running autotune) for several weeks and are confident that all of your basals and ratios are correct. Please read the [oref1 section of the docs](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-4/oref1-features.html) before doing so. +These preference should **not** be enabled until you've been looping (and running autotune) for several weeks and are confident that all of your basals and ratios are correct. Please read the [oref1 section of the docs](http://openaps.readthedocs.io/en/latest/docs/Customize-Iterate/oref1.html) before doing so. #### enableSMB_with_bolus @@ -123,24 +135,4 @@ This is the fraction of carbs we'll assume will absorb over 4h if we don't yet s The default of 0.5 for this value keeps autotune ISF closer to pump ISF via a weighted average of fullNewISF and pumpISF. 1.0 allows full adjustment, 0 is no adjustment from pump ISF. -## Editing your preferences.json - -To change your max iob in your preferences.json file: - -First, you need to change directory: - -`cd myopenaps` - -Use the nano text editor to open your preferences.json file: - -`nano preferences.json` - -Then amend the "max_iob": 0 to the figure you want. - -To check that you have done this successfully run the following: - -`cat preferences.json` - -You should see the amended max IOB you have entered. Remember if you run the setup script in the future, it will default back to 0 max IOB, but you can always follow this same process to change it again. -Similarly, if you'd like to add any of the other preferences back in and change the value, copy and paste the name intro your list of preferences.json file, following the format of the example at the top of this page. diff --git a/docs/docs/While You Wait For Gear/understanding-your-Explorer-Board-rig.md b/docs/docs/While You Wait For Gear/understanding-your-Explorer-Board-rig.md index 943e673c9..0828e2692 100644 --- a/docs/docs/While You Wait For Gear/understanding-your-Explorer-Board-rig.md +++ b/docs/docs/While You Wait For Gear/understanding-your-Explorer-Board-rig.md @@ -4,19 +4,19 @@ The Explorer board is where all the communications are housed for the rig, as well as the battery charger. The Edison is the mini-computer where all the OpenAPS code will be sent and used. In order for this to work, first you have to screw and connect the Edison and Explorer Board together with the nuts and bolts you order. -The nuts and bolts are tiny, and the spaces are a little tight. It really helps to use a set of tweezers and a small Phillips head screwdriver. +The nuts and bolts are tiny, and the spaces are a little tight. It really helps to use a set of tweezers and a small Phillips head screwdriver. You will need 2 small gold screws, 2 small nuts, and 2 small silver screws. -It's easiest to start with the Explorer board and put on 2 nuts and gold screws (nuts on the side with most of the wiring) inside the little outline where the Edison will eventually sit. Gold screws should be placed as shown, with nuts on the backside. Then, lay the Edison board on top, aligning the screw holes. Use a small Phillips head screwdriver to tighten the screws into the gold screws beneath them. The Edison board should not wobble, and should feel secure when you are done. Attach your battery into the explorer board plug. A single red light should appear and stay lit. During the course of your OpenAPS rig use, it's good practice to periodically check that the nuts and screws stay tightened. If they come loose, the Edison can wobble off the connection to the Explorer board and you will either get looping failures (if it's loose) or be unable to connect to the Edison (if it comes completely off). +It's easiest to start with the Explorer board and put on 2 nuts and gold screws (nuts on the side with most of the wiring) inside the little outline where the Edison will eventually sit. The gold screws should be placed as shown, with nuts on the backside. Then, lay the Edison board on top of the gold screws, aligning the screw holes on the Edison board with the gold screw heads (which have screw holes in them). Use a small Phillips head screwdriver to tighten the silver screws into the gold screws beneath them. The Edison board should not wobble, and should feel secure when you are done. Attach your battery into the explorer board plug. A single red light should appear and stay lit. During the course of your OpenAPS rig use, it's good practice to periodically check that the nuts and screws stay tightened. If they come loose, the Edison can wobble off the connection to the Explorer board and you will either get looping failures (if it's loose) or be unable to connect to the Edison (if it comes completely off). ![Edison/Explorer Board rig with red light on](../Images/Edison/Edison_Explorer_Board.png) ![Edison/Explorer Board rig with labels](img/explorer.png) -### Charging Lipo Battery +### Charging LiPo Battery -You can use the little white block that comes with an iPhone (or similar charger) and a microB-USB cable. The same cables you used to setup the rig and connect to the computer will work for charging, too. Either one of the USB ports on the explorer board will work for charging. When charging is active, there is an extra red light on in the corner of the Explorer board. When charging is complete, that corner red light will turn off. It may come back on periodically as the battery "tops off". You won’t do any damage leaving the rig plugged in for longer than the charge takes. +You can use the little white block that comes with an iPhone (or similar charger) and a microB-USB cable. The same cables you used to setup the rig and connect to the computer will work for charging, too. Either one of the USB ports on the Explorer board will work for charging. When charging is active, there is an extra red light on in the corner of the Explorer board. When charging is complete, that corner red light will turn off. It may come back on periodically as the battery "tops off". You won’t do any damage leaving the rig plugged in for longer than the charge takes. -While the rig is plugged in for charging, the Nightscout battery pill will read approximately 65%. This is because it is reading the charging voltage rather than the battery voltage. Once you disconnect from the charger, the Nightscout battery pill will display the lipo battery's voltage and percent again. +While the rig is plugged in for charging, the Nightscout battery pill will read approximately 65%. This is because it is reading the charging voltage rather than the battery voltage. Once you disconnect from the charger, the Nightscout battery pill will display the LiPo battery's voltage and percent again. ### What the lights mean and where they are @@ -26,25 +26,25 @@ While the rig is plugged in for charging, the Nightscout battery pill will read ### Where is the power button? -The little black button on the end of the board near the JST connector is the power button. If you want to reboot your rig, the easiest way is to hold down the tiny power button for 10-15 seconds until the power light turns off. Wait a couple seconds and then press the power button again until the light turns back on. Give the loop a couple minutes to get itself going again…rebooting solves a great majority of any temporary rig issues. +The little black button on the end of the board near the JST connector is the power button. If you want to reboot your rig, the easiest way is to hold down the tiny power button for 10-15 seconds until the power light turns off. Wait a couple seconds and then press and hold the power button again until the light turns back on. Give the loop a couple minutes to get itself going again. Rebooting solves a majority of rig issues. ### Where is the radio? -The radio and antenna are down on the end of the board where you see a little white stick. (Opposite end of the board from where your battery connects at the JST connector). +The radio and antenna are down on the end of the Explorer board where you see a little white stick (opposite end of the board from where your battery connects at the JST connector). ### Cutting the trace to improve radio communication -Some OpenAPS users have found that cutting a portion of the Explorer Board's hidden copper antenna wire (called a trace) will improve radio comms with the pump. Before doing this, remember to disconnect any attached battery or power source first. For North American (NA) pumps (using the 916MHz band), you're looking to cut near that white line that is between the 1 and the 5 in the "915." Consider cutting on the 1-side rather than the exact spot where the white "cut" line is drawn because it is so close to the corner where the rest of the copper wire goes. To make the cut, use a sharp x-acto blade to cut through the copper just beneath the green surface of board. It will take a few swipes and you'll hear a small scraping noise when you get through the wire. Make sure you've cut all the way through the wire to the green circuit board material on the other side. +Some OpenAPS users have found that cutting a portion of the Explorer Board's hidden copper antenna wire (called a trace) will improve radio comms with the pump. Before doing this, remember to disconnect any attached battery or power source. For North American (NA) pumps (using the 916MHz band), you're looking to cut near the white line that is between the 1 and the 5 in the "915." Consider cutting on the 1-side rather than the exact spot where the white "cut" line is drawn because it is so close to the corner where the rest of the copper wire goes. To make the cut, use a sharp x-acto blade to cut through the copper just beneath the green surface of board. It will take a few swipes and you'll hear a small scraping noise when you get through the wire. Make sure you've cut all the way through the wire to the green circuit board material on the other side. -Watch this video for an example: https://www.facebook.com/groups/TheLoopedGroup/permalink/1854229718127019/?hc_location=ufi +Watch this [video](https://www.facebook.com/groups/TheLoopedGroup/permalink/1854229718127019/?hc_location=ufi) for an example. -### Lipo Battery +### LiPo Battery -Lipo batteries are great for a lot of things…but taking damage is not one of them. Please treat lipo batteries with care. Keep them protected from puncture. The explorer board has some “pointy” parts on the underside, so providing some protection from the board’s squish is a good idea. A small piece of protection (such as a business card or non-conductive thin foam sheet) will help protect the battery from the board above it. +LiPo batteries are great for a lot of things, but taking damage is not one of them. Please treat LiPo batteries with care. Keep them protected from puncture. The Explorer board has some “pointy” parts on the underside, so providing some protection from the board’s squish is a good idea. A small piece of protection (such as a business card or non-conductive thin foam sheet) will help protect the battery from the board above it. -Since there is some warmth with an OpenAPS rig, it is also not recommended to put a rig unprotected in a pocket close to the body. The lipo battery can become warped from the heat or bent from being in the pocket and potentially compromised. A durable case or waist-belt pouch is a good idea (see [here](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-0/hardware/edison.html#cases) for both hard and soft case ideas). +Since there is some warmth with an OpenAPS rig, it is also not recommended to put a rig unprotected in a pocket close to the body. The LiPo battery can become warped from the heat or bent from being in the pocket and potentially compromised. A durable case or waist-belt pouch is a good idea (see [here](http://openaps.readthedocs.io/en/latest/docs/Gear Up/edison.html#cases) for both hard and soft case ideas). -There are several places to get lipo batteries, with lots of different dimensions and capacities. A 2000 mAh lipo will get you about 12-14 hours of use, assuming you have the standard setup (which is what you get following these docs) running. +There are several places to get LiPo batteries, with lots of different dimensions and capacities. A 2000 mAh lipo will get you about 12-14 hours of use, assuming you have the standard setup (which is what you get following these docs) running. ### What happens if you have multiple rigs? -If you have multiple OpenAPS rigs, they’re built to be polite to each other - so even if you had 2+ rigs in same room, they won’t trip each other up. They “wait for silence” before issuing any commands to the pump. By having multiple rigs throughout a house, you can move from room-to-room without carrying rigs because the rigs will pass-off comms as you moves in and out of the rig’s range. Stationary rigs will not need lipo batteries and can be plugged directly into the wall from the explorer board. +If you have multiple OpenAPS rigs, they’re built to be polite to each other. Even if you had two or more rigs in same room, they won’t trip each other up. They “wait for silence” before issuing any commands to the pump. By having multiple rigs throughout a house, you can move from room-to-room without carrying rigs because the rigs will pass-off comms as you moves in and out of the rig’s range. Stationary rigs will not need LiPo batteries and can be plugged directly into a wall charger from the Explorer board. diff --git a/docs/docs/walkthrough/phase-0/edison-explorer-board-Mac.md b/docs/docs/walkthrough/phase-0/edison-explorer-board-Mac.md index 4c6ac4d99..bedc9086e 100644 --- a/docs/docs/walkthrough/phase-0/edison-explorer-board-Mac.md +++ b/docs/docs/walkthrough/phase-0/edison-explorer-board-Mac.md @@ -6,7 +6,7 @@ 1. Using an explorer board and Edison 2. Using an Apple computer -3. Using a Loop-compatible Medtronic pump (note - OpenAPS can actually use an additional set of pumps, the x12 series, although it requires [one small extra step](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-0/hardware/pump.html#why-do-i-need-a-certain-pump-firmware). See [this page in OpenAPS docs for all compatible pumps](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-0/hardware/pump.html#information-about-compatible-insulin-pumps).) +3. Using a Loop-compatible Medtronic pump (note - OpenAPS can actually use an additional set of pumps, the x12 series, although it requires [one small extra step](http://openaps.readthedocs.io/en/latest/docs/Gear Up/pump.html#why-do-i-need-a-certain-pump-firmware). See [this page in OpenAPS docs for all compatible pumps](http://openaps.readthedocs.io/en/latest/docs/Gear Up/pump.html#information-about-compatible-insulin-pumps).) ## High Level Recommended Rig parts list @@ -70,7 +70,7 @@ When you first launch Terminal, you will probably see something rather plain lik If you’re like me, you don’t “speak linux” (or python or java or…) nor do you really know what linux is. So, you’ll be comforted to know that most of this setup is copy and paste commands into Terminal. You won’t need to suddenly learn linux…just will need to follow directions and be willing learn some basics. -**IMPORTANT NOTE**: STEPS 1-10 will be updated periodically, and also will likely be out of date. Since this is just a cheat sheet for Mac users, it may not have all the troubleshooting tips or updated info that the main OpenAPS docs have. If you get stuck and this guide’s set of instructions do not work at the moment, the place to look is the [OpenAPS Walkthrough Phase 0, Setting up your Intel Edison](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-0/setup-edison.html) for the full information on this part of the OpenAPS setup. +**IMPORTANT NOTE**: STEPS 1-10 will be updated periodically, and also will likely be out of date. Since this is just a cheat sheet for Mac users, it may not have all the troubleshooting tips or updated info that the main OpenAPS docs have. If you get stuck and this guide’s set of instructions do not work at the moment, the place to look is the [OpenAPS Walkthrough Phase 0, Setting up your Intel Edison](http://openaps.readthedocs.io/en/latest/docs/Resources/Edison-Flashing/all-computers-flash.html) for the full information on this part of the OpenAPS setup. The next steps will be done in the Terminal app. If you see red colored text/code lines in a box, that’s what you want to copy and paste into Terminal, and then press enter. Don’t try typing it…you’ll likely miss a space or add a typo. So, let’s start… diff --git a/docs/docs/walkthrough/phase-0/loops-in-progress.md b/docs/docs/walkthrough/phase-0/loops-in-progress.md deleted file mode 100644 index 9c41d097c..000000000 --- a/docs/docs/walkthrough/phase-0/loops-in-progress.md +++ /dev/null @@ -1,191 +0,0 @@ -# Loops In Progress - -To get you comfortable with submitting a "PR" (stands for pull request), test it out by submitting a PR to this page, adding your name to the list of people who have loops in progress. If you're already looping, make sure to also check out and follow [this page](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-4/keeping-up-to-date.html) from later in the docs. - -New to Github, and PRs? [Check out how to submit your first PR](../../../../docs/docs/Resources/my-first-pr.md). - -List of people who are working on closed loops: - -- Dana Lewis -- Ben West -- Chris Hannemann -- Sarah Howard -- Mike Stebbins -- Scott Hanselman -- Greg Scull -- Aaron Michelson -- Jayson EWER --Intel Edison w/ TI--cc1111 -- Frank Best -- Brooke Armstrong & Matt Pazoles -- David Young -- Paul Martin -- Jarred Yaw -- Shane Mitchell -- Boris and Kayley Raskin -- Andy Pabari -- Rob Kresha - (Papillion, NE, USA) -- Christian Robinson (London, UK) -- Gary Kidd (Wilton, CT) -- Nathan Morse -- Paul Davis (Brighton, UK) -- Marion Barker (Sunnyvale, CA, USA) -- Frank Jungman (San Diego, CA) -- Sophie Thacher -- Luis Betancourt (Veracruz, Mexico) -- Tom Boudreau (Washington DC, USA) -- Ryan Chen -- Katherine Mason -- Garrett Webb (Dallas, TX) -- Brandon Faloona (Seattle, WA / Burbank, CA) -- Keith Burns - for Heather (Richmond, VA) -- Kim St. Dennis (Los Angeles, CA) -- Gabriel and Gideon Arom (Chicago, IL / Los Angeles, CA) -- Arlene Samowich (Nashville, TN) -- Andy Probolus & Marianne Smith (Lancaster, PA) -- Gregg Haroldson (Huntington Beach, CA) -- Gera Yeremin (Santa Rosa , CA) -- Ed Nykaza -- Jeff Waters (Madison, WI) -- Greg Hull (Wheaton, IL) -- Sara and David Goya (Anaheim, CA) -- Rafael Matuk (Chicago, IL) -- Luuc Verburgh (Eindhoven, The Netherlands) -- Iain Cartwright (Adelaide, Australia) -- Julie Raines (Poughkeepsie, NY) -- Brandon Parrish (Augusta, GA) -- Katie Ellison (Bellevue, WA) -- Sarah Easter (Georgetown, TX) -- Terri Lyman (Prescott Valley, AZ) -- Gina Lyon (Laurel, MS) Edison-Explorer Bd, DexG5 -- Eric Jensen (Swarthmore, PA) -- John Dodds (Glasgow, UK) -- Lindsey Maguire (Silicon Valley) -- Dan Robinson (Chicago, IL) -- Mitch Phillips - (Pennington, NJ) -- Colin Barlow & Cassie Knox - (San Diego, CA) -- Andrew H (Sydney, Australia) -- Hichame Yessou (Milano, Italy) -- Tim Street (London, UK) -- Neal Harvey (Grants Pass, OR) -- Patrick Metcalfe -- Ken Webster (Hobart, Tas, Australia) -- David Eddy (Madbury, NH) -- Tirzah Heide for Nathanael (St. Louis, MO) -- Tracy Osheroff (Seattle, WA) -- Mike & Jennifer Crawford (Calgary, AB, Canada) -- Matthew Byatt (Cambridge, UK) -- Anna Hassan (New Orleans, LA) -- Tony Zarro (Atlanta, GA) -- Mike Wright (San Jose, CA) -- Derek Rodeback (Loma Linda, CA) -- Joanne Spotten (SLC, UT) -- Sandra Keßler (Kassel, Germany) -- Lukas Ondriga (Svaty Jur, Slovakia) -- Dominic Herrington (Bishops Stortford, UK) -- Taylor Fowler (Brooklyn, NY) -- Mikel Curry -- Aditya Dasnurkar -- Jason Wittmer for Andrew (Clive, IA) -- Kevin Ruess Marshall (Indianapolis, USA) -- Keith Kubischta (Poway, CA) -- Emily Kranz (Greensboro, NC) -- Orla Wilson (Baltimore) -- Jason Pell for Heidi and Mallory (New York, NY) -- Patrick van Gestel (Hilvarenbeek, Netherlands) -- Joe Moran (Los Altos, CA) -- John & Gregory Kelleher (Sligo, Ireland) -- Carine Bruyndoncx (Arendonk, Belgium) -- Jordan Berger (SLC, UT) -- James Henley (Friendswood, TX) -- Amy Andrews (Boston, MA) -- Ann Delano (Seattle, WA) -- Marcus Whitley (Greenbrier, AR) -- Trevor Wood (Santaquin, UT) -- Anne Svejda (Virginia Beach, VA) -- Melody Andrews-Caron (Ontario, Canada) -- Andy Sharrow (Saginaw, MI) -- John Benjamin (Clawson, MI) -- Vince P. for Tristan (Ravenna, OH) -- Anthony Cerrone (Danville, CA) -- Rachel Aumaugher (Davison, MI) -- Joe Greene (Jacksonville, NC) -- Sebastien Lussier (Montreal, Canada) -- Chris Harris (Sydney, Australia) -- Lee Skelton (London, UK) -- Jacqueline Burke (Troy, MI / Baltimore, MD) -- Kate Hainsworth (Austin, TX) -- Brian Rabinovitz (Chapel Hill, NC) -- Stephen G. (Seattle, WA) -- Emily Stunek (Lake Shore, MN) -- Lorenzo Conte (Chicago, IL) -- Alasdair McLay (Derby, UK) -- Ahanu Banerjee (Pittsburgh, PA) -- Ken Huat CHONG (Kuala Lumpur, Malaysia) -- Daniel Bjørnbakk (Norway) -- Katie DiSimone (Paso Robles, CA) -- Rebecca Jervey (Philadelphia, PA) -- Ivica Suran (Pazin, Croatia) -- David Rimmer (Melbourne, Australia) -- Kyle King (Opelika, AL) -- Sonya Neufer -- Sacha M (New Zealand) -- Joe Dunn for Lizzie -- Michele Lawford (Canada) -- parenthetic (diabetic) -- Lorenzo Sandini (Finland) -- Deidra Little (Seattle, WA) -- Tim Mathis (Fort Walton Beach, FL) -- Greg Uhlenkott (Grangeville, ID, USA) -- Song Ming Jie (China) -- Chuck Vanderwist (Western Colorado, USA) -- James Corbett (Greenbrier, TN USA) -- Meghan Rutledge (Dallas, TX) -- Rick Warren (Vancouver, BC, Canada) -- Carl-Johan Wehtje (London, UK) -- Cameron Renwick (Muskoka, Ontario, Canada) -- Cameron Chunn (Huntsville, AL) -- Patrick & Lesly Kelly for Addy (Tempe, AZ) -- Melanie Mason for Toby (Leicester, UK) -- Mohamed Ali Bedair (Cairo, Egypt) -- Hilary Koch (Waterville, ME) -- Eric Feibelman (Alachua, FL) -- Winfried Kuiper (Langballig, Germany) -- Selin Aygün (Ankara,Türkiye) -- Ken Kotch (Boulder, CO, USA) -- Brian Densmore (Clovis, CA, USA) -- Jesse Szypulski (Louisville, KY, USA) Edison / Explorer Board -- Robert Silvers (Norwell, MA) -- Eric Metzler (St. Paul, MN) -- Helene Brashear (Austin, TX) -- Jeremy B. for CM (New York, NY) -- Molly Duerr (Minneapolis, MN) -- Amber K (Ithaca, NY) -- Melanie Shapiro (Gainesville, FL) -- Brandon (Philly) -- Justin W (Charlottesville, VA) -- Chris Creek (Martinsburg, PA) -- Tom Petrillo (San Diego, CA) -- Christian Driver for Lucy (Wilmslow, UK) -- Katie Aldridge -- Darlene Morissette (Winnipeg, MB, Canada) -- Jake Punshon (Saskatoon, SK, Canada) -- Elisa Kelley (Austin, TX) -- Stuart Raphael (Sydney, Australia) -- Dan Durham (Edmonton, AB, Canada) -- Niels Hartvig (Odense, Denmark) -- Dirk Gastaldo (Newbury Park, CA, USA) -- Clayton McCook (Edmond, OK, USA) -- Kris Schmitz (Washington, DC/New Brunswick, NJ) -- Steven Miller (Vancouver, BC, Canada) -- Kyle Larsen (Provo, UT) -- Ben Fowler (Huntsville, AL) -- Giuseppe Acito (Roma, Italy) -- Mark M (Chicago, IL) -- Chris Reilly (Detroit, MI) -- Rod Snyder (Morgantown, WV, USA) -- John Murray (Pinellas Park, FL, USA) -- Shirley Steinmacher (son, Salt Lake City, UT, USA) -- Michael Spradling (Raleigh, NC) -- Tore Bjørndalen (Norway, Oppegård) -- John Young (King of Prussia, PA) -- Kathleen Gagnier (Orlando, FL) diff --git a/docs/docs/walkthrough/phase-0/rpi.md b/docs/docs/walkthrough/phase-0/rpi.md index 484cbb0c7..9397b4444 100644 --- a/docs/docs/walkthrough/phase-0/rpi.md +++ b/docs/docs/walkthrough/phase-0/rpi.md @@ -74,7 +74,7 @@ If necessary, you can erase (format) your SD card using https://www.sdcard.org/d * Next, connect your RPi2 to a monitor or T.V. using the included HDMI cable. * Finally connect your RPi2 using the power adapter. * You should see the GUI appear on screen. -* As of 12/11/2016 the Raspberry Pi Foundation is disabling SSH by default in Raspbian as a security precaution. To enable SSH from within the GUI, open up the terminal window and type `sudo raspi-config`. On the configuartion menu that opens, scroll down and choose `Interfacing Options` and then navigate to `ssh`, press `Enter` and select `Enable` ssh server. +* As of 12/11/2016 the Raspberry Pi Foundation is disabling SSH by default in Raspbian as a security precaution. To enable SSH from within the GUI, open up the terminal window and type `sudo raspi-config`. On the configuration menu that opens, scroll down and choose `Interfacing Options` and then navigate to `ssh`, press `Enter` and select `Enable` ssh server. * Configure WiFi per the instruction pamphlet included with your CanaKit. For those not using the CanaKit, click the computer monitors next to the volume control in the upper-right side and there will be a drop-down menu of available WiFi networks. You should see your home network. If you have trouble connecting to the RPi2 via WiFi, check your router settings. The router may need to be switched from WEP to WPA2. * Once you have installed Raspbian, connected to WiFI, and enabled SSH you can disconnect the mouse, keyboard and HDMI cable. diff --git a/docs/docs/walkthrough/phase-0/setup-edison.md b/docs/docs/walkthrough/phase-0/setup-edison.md index f3f98b636..8a07395f4 100644 --- a/docs/docs/walkthrough/phase-0/setup-edison.md +++ b/docs/docs/walkthrough/phase-0/setup-edison.md @@ -7,7 +7,7 @@ Your Explorer Board has 2 micro USB connectors, they both provide power. On the You must use a DATA micro USB to USB cable. How do you know if your cable is for data? One good way is to plug the cable into your computer USB port and the explorer board OTG port. If your folder/window explorer shows Edison as a drive then the cable supports data. -The steps outlined below include instructions for the various build-platforms (Windows PC, Mac, and Raspberry Pi). If you'd prefer to follow directions specific to one platform you are using, you can use the [Windows PC cheat sheet](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-0/windows-edison.html) or the [Mac OSX cheat sheet](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-0/edison-explorer-board-Mac.html). +The steps outlined below include instructions for the various build-platforms (Windows PC, Mac, and Raspberry Pi). If you'd prefer to follow directions specific to one platform you are using, you can use the [Windows PC cheat sheet](http://openaps.readthedocs.io/en/latest/docs/Resources/Edison-Flashing/PC-flash.html) or the [Mac OSX cheat sheet](http://openaps.readthedocs.io/en/latest/docs/Resources/Edison-Flashing/mac-flash.html). ## Prerequisites @@ -34,7 +34,7 @@ Windows PCs with less than 6 GB of RAM may need to have the size of the page fi - On the Advanced tab click the Change... button to change the page size. - In the Virtual Memory window uncheck "Automatically manage paging file size for all drives," click "Custom size," and set the initial size to at least 4096 MB. If you have already attempted this process at least once continue to increase this number by 1024 MB. Set the maximum size to 2048 MB higher than the initial size you used. - Click the Set button, then click OK until all windows are closed. - - Reboot and attempt the flash proccess. + - Reboot and attempt the flash process. ### If you're using a Mac to flash - prerequisites: @@ -62,7 +62,7 @@ Windows PCs with less than 6 GB of RAM may need to have the size of the page fi ## Connecting cables and starting console - - Connect a USB cable (one that carries data, not just power) to the USB console port. On the Explorer board or Sparkfun base block, this is the port labeled `UART`. On the Intel mini breakout board, this is the USB port that is labled P6 (should be the USB closest to the JST battery connector). Plug the other end into the computer (or Pi) you want to use to connect to console. + - Connect a USB cable (one that carries data, not just power) to the USB console port. On the Explorer board or Sparkfun base block, this is the port labeled `UART`. On the Intel mini breakout board, this is the USB port that is labeled P6 (should be the USB closest to the JST battery connector). Plug the other end into the computer (or Pi) you want to use to connect to console. - Plug another USB cable (one that carries data, not just power) into the USB port labeled OTG on the Explorer board or Sparkfun base block, or the port that is almost in the on the bottom right (if reading the Intel logo) if setting up with the Intel mini breakout board. Plug the other end into the computer (or Pi) you want to flash from. ### If you’re using a Raspberry Pi for console: @@ -244,7 +244,7 @@ and add to the end of the file: edison ALL=(ALL) NOPASSWD: ALL ``` -You have now installed the operating system on your Edison! You can now proceed to the next step of adding yourself to [Loops in Progress](https://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-0/loops-in-progress.html) +You have now installed the operating system on your Edison! You can now proceed to the next step of adding yourself to [Loops in Progress](https://openaps.readthedocs.io/en/latest/docs/While You Wait For Gear/loops-in-progress.html) ## Troubleshooting @@ -387,7 +387,7 @@ Once that looks correct, save the file and `reboot` your rig for the changes to Type this at the prompt: `dmesg -D` -#### Permanant solution: +#### Permanent solution: `vi /etc/rc.local` press i for insert mode diff --git a/docs/docs/walkthrough/phase-0/understanding-your-Explorer-Board-rig.md b/docs/docs/walkthrough/phase-0/understanding-your-Explorer-Board-rig.md index 360eb472a..fd0bbebbc 100644 --- a/docs/docs/walkthrough/phase-0/understanding-your-Explorer-Board-rig.md +++ b/docs/docs/walkthrough/phase-0/understanding-your-Explorer-Board-rig.md @@ -41,7 +41,7 @@ Watch this video for an example: https://www.facebook.com/groups/TheLoopedGroup/ Lipo batteries are great for a lot of things…but taking damage is not one of them. Please treat lipo batteries with care. Keep them protected from puncture. The explorer board has some “pointy” parts on the underside, so providing some protection from the board’s squish is a good idea. A small piece of protection (such as a business card or non-conductive thin foam sheet) will help protect the battery from the board above it. -Since there is some warmth with an OpenAPS rig, it is also not recommended to put a rig unprotected in a pocket close to the body. The lipo battery can become warped from the heat or bent from being in the pocket and potentially compromised. A durable case or waist-belt pouch is a good idea (see [here](http://openaps.readthedocs.io/en/latest/docs/walkthrough/phase-0/hardware/edison.html#cases) for both hard and soft case ideas). +Since there is some warmth with an OpenAPS rig, it is also not recommended to put a rig unprotected in a pocket close to the body. The lipo battery can become warped from the heat or bent from being in the pocket and potentially compromised. A durable case or waist-belt pouch is a good idea (see [here](http://openaps.readthedocs.io/en/latest/docs/Gear Up/edison.html#cases) for both hard and soft case ideas). There are several places to get lipo batteries, with lots of different dimensions and capacities. A 2000 mAh lipo will get you about 12-14 hours of use, assuming you have the standard setup (which is what you get following these docs) running. diff --git a/docs/docs/walkthrough/phase-0/windows-edison.md b/docs/docs/walkthrough/phase-0/windows-edison.md index 06202c9c9..f04354100 100644 --- a/docs/docs/walkthrough/phase-0/windows-edison.md +++ b/docs/docs/walkthrough/phase-0/windows-edison.md @@ -44,7 +44,7 @@ Windows PCs with less than 6 GB of RAM may need to have the size of the page fi - On the Advanced tab click the Change... button to change the page size. - In the Virtual Memory window uncheck "Automatically manage paging file size for all drives," click "Custom size," and set the initial size to at least 4096 MB. If you have already attempted this process at least once continue to increase this number by 1024 MB. Set the maximum size to 2048 MB higher than the initial size you used. - Click the Set button, then click OK until all windows are closed. - - Reboot and attempt the flash proccess. + - Reboot and attempt the flash process. ****************************** #### Download jubilinux and dfu-util @@ -53,7 +53,7 @@ Windows PCs with less than 6 GB of RAM may need to have the size of the page fi **Note** The `extract all` command comes standard for all Windows machines. However, in some instances, it may not be active for zipped files. If you do not see the `extract all` option in the right-click menu, right-click the zipped file, choose `Properties` at the bottom of the context menu. On the General tab, click on the button next to the "opens with" and change it to use Windows Explorer. Apply the change and select `OK` to save the change. You should now be able to right-click the jubilinux.zip file to extract all. -- Now we are going to download two files from DFU-UTIL: [libusb-1.0.dll](http://dfu-util.sourceforge.net/releases/dfu-util-0.8-binaries/win32-mingw32/libusb-1.0.dll) and [dfu-util.exe](http://dfu-util.sourceforge.net/releases/dfu-util-0.8-binaries/win32-mingw32/dfu-util.exe). Click on those two links to download the files to your Downloads folder. Navigate to your Downloads folder and choose to "move" those folders to the jubilinux folder that you unzipped earlier. When you sucessfully move those two folders into the jubilinux folder, you should see files/folders inside the jubilinux folder like so: +- Now we are going to download two files from DFU-UTIL: [libusb-1.0.dll](http://dfu-util.sourceforge.net/releases/dfu-util-0.8-binaries/win32-mingw32/libusb-1.0.dll) and [dfu-util.exe](http://dfu-util.sourceforge.net/releases/dfu-util-0.8-binaries/win32-mingw32/dfu-util.exe). Click on those two links to download the files to your Downloads folder. Navigate to your Downloads folder and choose to "move" those folders to the jubilinux folder that you unzipped earlier. When you successfully move those two folders into the jubilinux folder, you should see files/folders inside the jubilinux folder like so: ![Ready to Flashall](../../Images/Edison/ready.png) diff --git a/docs/index.rst b/docs/index.rst index 5f82ad210..147cdd9ed 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -4,7 +4,7 @@ Welcome to OpenAPS's documentation! This documentation supports a self-driven Do-It-Yourself (DIY) implementation of an artificial pancreas based on the OpenAPS reference design. By proceeding to use these tools or any piece within, you agree to `the copyright `_ for more information; and `the full README here `_ and release any contributors from liability, and assume full responsibility for all of your actions and outcomes related to usage of these tools or ideas. .. WARNING:: -Note: *We do not recommend using a PDF version of this guide. The docs are updated continuously, and with a PDF, you will not get the freshest real-time edits. Be aware if you download a PDF that when you have internet connectivity, we recommend instead having the docs pulled up in an Internet browser so you can refresh. This is especially true if you are working on a setup over the course of multiple days.* +Note: *We do not recommend using a PDF version of this guide. The docs are updated continuously, and with a PDF, you will not get the freshest real-time edits. Be aware if you download a PDF that when you have Internet connectivity, we recommend instead having the docs pulled up in an Internet browser so you can refresh. This is especially true if you are working on a setup over the course of multiple days.* .. note:: **A Note on DIY and the "Open" Part of OpenAPS**