Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
212 commits
Select commit Hold shift + click to select a range
c915a43
Testing restructure
channemann Jul 12, 2015
744fe4c
Create Hardare/hardware.md
channemann Jul 12, 2015
02bf3da
Update SUMMARY.md
channemann Jul 12, 2015
5f5f178
Folder change
channemann Jul 12, 2015
83bed5e
Update README.md
channemann Jul 12, 2015
c7f3f49
Update Hardware/hardware.md
channemann Jul 12, 2015
590e0d8
Update README.md
channemann Jul 12, 2015
aab44fe
Create Setup/setup.md
channemann Jul 12, 2015
ce7907c
Update Setup/setup.md
channemann Jul 12, 2015
fdb193c
Create Using-openaps-Tools/using.md
channemann Jul 12, 2015
13740a9
Update README.md
channemann Jul 12, 2015
6639b50
Update Using-openaps-Tools/using.md
channemann Jul 12, 2015
0a4ffd7
Update README.md
channemann Jul 12, 2015
c95722d
Update README.md
channemann Jul 12, 2015
826e158
Create Overview/overview.md
channemann Jul 12, 2015
faa3f40
Create Overview/openaps.md
channemann Jul 12, 2015
1c35ad9
Update Overview/openaps.md
channemann Jul 12, 2015
7dc6d43
Create Overview/closed-loop.md
channemann Jul 12, 2015
bd545d2
Update Overview/closed-loop.md
channemann Jul 12, 2015
0b6bc57
Create Overview/history.md
channemann Jul 12, 2015
40cc673
Update Overview/history.md
channemann Jul 12, 2015
48ea7cb
Create Overview/communication.md
channemann Jul 12, 2015
959079b
Update Overview/communication.md
channemann Jul 12, 2015
7cc2249
Update Setup/setup.md
channemann Jul 12, 2015
0b8f3d1
Create Other-projects/other-projects.md
channemann Jul 12, 2015
67a0c1a
Update Other-projects/other-projects.md
channemann Jul 12, 2015
8f1b34b
Update SUMMARY.md
channemann Jul 12, 2015
e60006f
Update Other-projects/other-projects.md
channemann Jul 12, 2015
24338e7
Create Other-projects/aps-and-data-tools.md
channemann Jul 12, 2015
e103879
Update Other-projects/aps-and-data-tools.md
channemann Jul 12, 2015
70737bf
Create Other-projects/commercial.md
channemann Jul 12, 2015
a9e93ca
Update SUMMARY.md
channemann Jul 12, 2015
c84e31c
Update Other-projects/commercial.md
channemann Jul 12, 2015
f7f31c4
Update SUMMARY.md
channemann Jul 12, 2015
1e34895
Update Other-projects/aps-and-data-tools.md
channemann Jul 12, 2015
1cc0ee2
Update Other-projects/aps-and-data-tools.md
channemann Jul 12, 2015
49b3ad9
Update Overview/openaps.md
channemann Jul 12, 2015
0bcef40
Update Overview/communication.md
channemann Jul 12, 2015
dc20af6
Update Overview/communication.md
channemann Jul 12, 2015
735fbab
Update Overview/communication.md
channemann Jul 12, 2015
0c42e03
Create Resources/resources.md
channemann Jul 12, 2015
c253cb4
Update Overview/communication.md
channemann Jul 12, 2015
6010058
Update Overview/communication.md
channemann Jul 12, 2015
323aa8b
Update Overview/communication.md
channemann Jul 12, 2015
f7df5c1
Update Resources/resources.md
channemann Jul 12, 2015
250bf9f
Update Resources/resources.md
channemann Jul 12, 2015
65fb8f3
Update Resources/resources.md
channemann Jul 12, 2015
def0bc3
Update Resources/resources.md
channemann Jul 12, 2015
a216e52
Update Other-projects/aps-and-data-tools.md
channemann Jul 12, 2015
38371fd
Update Hardware/hardware.md
channemann Jul 12, 2015
323d4f3
Update Overview/history.md
channemann Jul 12, 2015
8057e7d
Update Overview/history.md
channemann Jul 12, 2015
01a4b06
Update Overview/history.md
channemann Jul 12, 2015
837f1fc
Update Overview/history.md
channemann Jul 12, 2015
50de792
Create Overview/contribute.md
channemann Jul 12, 2015
77d4e17
Update Overview/contribute.md
channemann Jul 12, 2015
b553e06
Update Hardware/hardware.md
channemann Jul 12, 2015
2787184
Update Setup/setup.md
channemann Jul 12, 2015
96e4cc6
Update Using-openaps-Tools/using.md
channemann Jul 12, 2015
734feaf
Create Building-a-system/building.md
channemann Jul 12, 2015
35bfa60
Update Building-a-system/building.md
channemann Jul 12, 2015
dc98786
Update Building-a-system/building.md
channemann Jul 12, 2015
5e17734
Update Building-a-system/building.md
channemann Jul 12, 2015
2271980
Update Building-a-system/building.md
channemann Jul 12, 2015
b696bde
Update Building-a-system/building.md
channemann Jul 12, 2015
77fb634
Update Building-a-system/building.md
channemann Jul 12, 2015
c417b18
Update Building-a-system/building.md
channemann Jul 12, 2015
f761712
Update Building-a-system/building.md
channemann Jul 12, 2015
bff16d9
Update SUMMARY.md
channemann Jul 12, 2015
676a89d
Create Building-a-system/initial-setup.md
channemann Jul 12, 2015
8d37b10
Update Building-a-system/initial-setup.md
channemann Jul 12, 2015
b51decd
Update Building-a-system/building.md
channemann Jul 12, 2015
c1da44c
Update Building-a-system/initial-setup.md
channemann Jul 12, 2015
a99f6b2
Update Building-a-system/initial-setup.md
channemann Jul 12, 2015
636115c
Create Building-a-system/data-collection.md
channemann Jul 12, 2015
702a033
Update Building-a-system/building.md
channemann Jul 12, 2015
5e75e75
Update Building-a-system/data-collection.md
channemann Jul 12, 2015
c530360
Create Building-a-system/recommendation-engine.md
channemann Jul 12, 2015
0834a5f
Update Building-a-system/building.md
channemann Jul 12, 2015
a69f046
Update Building-a-system/recommendation-engine.md
channemann Jul 12, 2015
a462a93
Update Building-a-system/recommendation-engine.md
channemann Jul 12, 2015
c30c07c
Create Building-a-system/closing-the-loop.md
channemann Jul 12, 2015
a49fb0f
Update Building-a-system/closing-the-loop.md
channemann Jul 12, 2015
aab7490
Create Building-a-system/getting-fancy.md
channemann Jul 12, 2015
47cdfd5
Update Building-a-system/getting-fancy.md
channemann Jul 12, 2015
812a6b7
Update Building-a-system/building.md
channemann Jul 12, 2015
1498331
Update Building-a-system/getting-fancy.md
channemann Jul 12, 2015
e8aa887
Update Building-a-system/getting-fancy.md
channemann Jul 12, 2015
65c7b43
Update Building-a-system/getting-fancy.md
channemann Jul 12, 2015
f00e227
Update Building-a-system/building.md
channemann Jul 12, 2015
ef572f9
Update Building-a-system/building.md
channemann Jul 12, 2015
40f28d2
Update Building-a-system/building.md
channemann Jul 12, 2015
804ad51
Update Other-projects/aps-and-data-tools.md
channemann Jul 12, 2015
9df130c
Update Overview/overview.md
channemann Jul 12, 2015
8ef59de
Update README.md
channemann Jul 12, 2015
52680e4
Update Hardware/hardware.md
channemann Jul 12, 2015
09c4c22
Update Setup/setup.md
channemann Jul 12, 2015
86312a0
Update Setup/setup.md
channemann Jul 12, 2015
b9251b0
Update Resources/resources.md
channemann Jul 12, 2015
404b853
Update Hardware/hardware.md
channemann Jul 12, 2015
e81b63b
Update Hardware/hardware.md
channemann Jul 12, 2015
e6b2ecc
Update Hardware/hardware.md
channemann Jul 12, 2015
3db4c71
Update Hardware/hardware.md
channemann Jul 12, 2015
498d47e
Update Hardware/hardware.md
channemann Jul 12, 2015
413acb3
Update Hardware/hardware.md
channemann Jul 12, 2015
2a0af4c
Update Hardware/hardware.md
channemann Jul 12, 2015
25dd755
Update Hardware/hardware.md
channemann Jul 12, 2015
346adec
Update Hardware/hardware.md
channemann Jul 12, 2015
83ce3c5
Update Setup/setup.md
channemann Jul 12, 2015
505348b
Update Setup/setup.md
channemann Jul 12, 2015
04e11aa
Update SUMMARY.md
channemann Jul 12, 2015
d9e3b66
Create Setup/rpi.md
channemann Jul 12, 2015
96c327e
Create Setup/openaps.md
channemann Jul 12, 2015
9f8b715
Update Setup/setup.md
channemann Jul 12, 2015
c5ad838
Update Setup/rpi.md
channemann Jul 12, 2015
e198ad6
Update Setup/setup.md
channemann Jul 12, 2015
3a2f18f
Update Setup/setup.md
channemann Jul 12, 2015
3957a18
Update Setup/openaps.md
channemann Jul 12, 2015
87734a9
Update Overview/closed-loop.md
channemann Jul 12, 2015
189e989
Update Using-openaps-Tools/using.md
channemann Jul 12, 2015
c384ffc
Update Using-openaps-Tools/using.md
channemann Jul 12, 2015
cba14bd
Update Overview/contribute.md
channemann Jul 12, 2015
4ae4bd7
Update Overview/contribute.md
channemann Jul 12, 2015
891dcb5
Update SUMMARY.md
channemann Jul 13, 2015
4b6fd86
Update SUMMARY.md
channemann Jul 13, 2015
4878301
Update Other-projects/aps-and-data-tools.md
channemann Jul 13, 2015
53a3f09
Update Other-projects/other-projects.md
channemann Jul 13, 2015
27f5254
Update Introduction/introduction.md
channemann Jul 13, 2015
595e170
Added book.json
channemann Jul 13, 2015
415bc8a
Update book.json
channemann Jul 13, 2015
4c3bb38
Update SUMMARY.md
channemann Jul 13, 2015
78771d3
Update SUMMARY.md
channemann Jul 13, 2015
a008926
Create introduction.md
channemann Jul 13, 2015
9c45cfe
Delete Introduction/introduction.md
channemann Jul 13, 2015
4080b21
Update book.json
channemann Jul 13, 2015
62da66c
Update book.json
channemann Jul 13, 2015
177e4d4
Update Overview/history.md
channemann Jul 13, 2015
70821af
Update Building-a-system/initial-setup.md
channemann Jul 13, 2015
0ea0ad6
Update Building-a-system/initial-setup.md
channemann Jul 13, 2015
da83a64
Added GLOSSARY.md
channemann Jul 13, 2015
35c6911
Update GLOSSARY.md
channemann Jul 13, 2015
3667a87
Update GLOSSARY.md
channemann Jul 13, 2015
eeceec5
Update GLOSSARY.md
channemann Jul 13, 2015
c69034b
Removed GLOSSARY.md
channemann Jul 13, 2015
32430e3
Update SUMMARY.md
channemann Jul 13, 2015
280fc53
Create Glossary/glossary.md
channemann Jul 13, 2015
22e5674
Update Overview/overview.md
channemann Jul 13, 2015
e544561
Update Overview/overview.md
channemann Jul 13, 2015
215b755
Update Overview/overview.md
channemann Jul 13, 2015
97a5f53
Update Overview/overview.md
channemann Jul 13, 2015
e0cd71e
Update Overview/overview.md
channemann Jul 13, 2015
bfcd46e
Update Overview/overview.md
channemann Jul 13, 2015
0ffe2de
Update Overview/overview.md
channemann Jul 13, 2015
66f6e69
Update Overview/overview.md
channemann Jul 13, 2015
0aaba95
Update Glossary/glossary.md
channemann Jul 13, 2015
4a7128f
Update Glossary/glossary.md
channemann Jul 13, 2015
5409a28
Update Overview/overview.md
channemann Jul 13, 2015
fb293cd
Update README.md
channemann Jul 13, 2015
fd12710
Update Overview/overview.md
channemann Jul 13, 2015
ffdb6f8
Update Resources/resources.md
channemann Jul 13, 2015
ab6a73b
Update Resources/resources.md
channemann Jul 13, 2015
c94f592
Update Resources/resources.md
channemann Jul 13, 2015
7c430ec
Update Overview/overview.md
channemann Jul 13, 2015
2c136a6
Update Overview/overview.md
channemann Jul 13, 2015
3e40129
Update Building-a-system/recommendation-engine.md
channemann Jul 13, 2015
6b178f9
Update book.json
channemann Jul 14, 2015
9ee0425
Update book.json
channemann Jul 14, 2015
e9a1c7a
Update README.md
channemann Jul 14, 2015
8c51690
Update Overview/overview.md
channemann Jul 14, 2015
cebfd64
Update Overview/closed-loop.md
channemann Jul 14, 2015
20a94db
Update Overview/closed-loop.md
channemann Jul 14, 2015
ba44d3a
Update README.md
channemann Jul 14, 2015
5547140
Update Overview/closed-loop.md
channemann Jul 14, 2015
96a1d46
Update Overview/closed-loop.md
channemann Jul 14, 2015
d92b609
Update Overview/closed-loop.md
channemann Jul 14, 2015
1469c25
Update Overview/closed-loop.md
channemann Jul 14, 2015
d4ab79a
Update Overview/history.md
channemann Jul 14, 2015
8771071
Update Overview/communication.md
channemann Jul 14, 2015
320d006
Update Overview/communication.md
channemann Jul 14, 2015
2e9db58
Update Overview/communication.md
channemann Jul 14, 2015
39c247d
Update Overview/communication.md
channemann Jul 14, 2015
e7afd00
Update Overview/communication.md
channemann Jul 14, 2015
eaab73b
Update Overview/contribute.md
channemann Jul 14, 2015
adcd41b
Update Overview/contribute.md
channemann Jul 14, 2015
2f4fafa
Update Overview/contribute.md
channemann Jul 14, 2015
d13674f
Update Overview/contribute.md
channemann Jul 14, 2015
633b769
Update Hardware/hardware.md
channemann Jul 14, 2015
0114cbf
Update Hardware/hardware.md
channemann Jul 14, 2015
4abe188
Update Hardware/hardware.md
channemann Jul 14, 2015
ea0d688
Update Hardware/hardware.md
channemann Jul 14, 2015
ddadfc7
Update Hardware/hardware.md
channemann Jul 14, 2015
35550b2
Update Hardware/hardware.md
channemann Jul 14, 2015
8295843
Update Hardware/hardware.md
channemann Jul 14, 2015
ae67d10
Update Hardware/hardware.md
channemann Jul 14, 2015
001e748
Update Hardware/hardware.md
channemann Jul 14, 2015
cd37db5
Update Hardware/hardware.md
channemann Jul 14, 2015
0b3a7ca
Update Hardware/hardware.md
channemann Jul 14, 2015
f1b6e8b
Update Setup/setup.md
channemann Jul 14, 2015
8291e2b
Update Setup/setup.md
channemann Jul 14, 2015
8cfb346
Update Setup/openaps.md
channemann Jul 14, 2015
87a2a99
Update Setup/openaps.md
channemann Jul 14, 2015
0ce18f7
Update Setup/rpi.md
channemann Jul 14, 2015
ef6d1b4
Update Setup/rpi.md
channemann Jul 14, 2015
b03240c
Update Setup/rpi.md
channemann Jul 14, 2015
f352e02
Update Setup/openaps.md
channemann Jul 14, 2015
aaaaff3
Update Building-a-system/building.md
channemann Jul 14, 2015
73e4806
Update Building-a-system/data-collection.md
channemann Jul 14, 2015
1ff9b37
Update Building-a-system/recommendation-engine.md
channemann Jul 14, 2015
b2b20d7
Update Building-a-system/recommendation-engine.md
channemann Jul 14, 2015
477d822
Update Other-projects/commercial.md
channemann Jul 14, 2015
7b5fe6f
Update Other-projects/commercial.md
channemann Jul 14, 2015
2aaad5b
Update Other-projects/other-projects.md
channemann Jul 14, 2015
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 34 additions & 0 deletions Building-a-system/building.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# Building an OpenAPS Implementation

This section describes how to go from using the openaps tools in isolation to building your own OpenAPS implementation. For a number or reasons, this document can neither provide explicit instructions on how to construct a functional artificial pancreas nor recommend that you use the openaps tools for dosing insulin. What can be provided is an approach that can help guide this transition through a series of phases.

In each phase, look to accomplish a set of goals relating to the functionality of your system as well as gain some further abilities to contribute back to the OpenAPS community. Five phases:


* [Phase 0: Initial Setup](Building-a-system/initial-setup.md)<br>
Acquire and configuring hardware, install software, and become familiar with the openaps environment

* [Phase 1: Data Collection](Building-a-system/data-collection.md)<br>
Build a system for logging and analyzing pump and CGM data

* [Phase 2: Recommendation Engine](Building-a-system/recommendation-engine.md)<br>
Use the logged data to suggest insulin dosage adjustment, review and refine algorithms, test different scenarios for safety

* [Phase 3: Closing the Loop](Building-a-system/closing-the-loop.md)<br>
Apply the recommendations, automatically and in real time

* [Phase 4: Getting Fancy](Building-a-system/getting-fancy.md)<br>
Improve the functionality of the implementation with additional software or hardware development

The document subsection for each phase has three components outlined:
* Upon Completion<br>
The capabilities that the user and system should have after completing the phase

* Phase Tasks<br>
Tasks or steps to take during the phase

* Community Contribution
Ways that a user should be able to contribute to the #OpenAPS project and/or openaps tool set during and after the phase

These phase descriptions are purely suggestive and are by no means a required method for building an OpenAPS implementation. They serve as one possible path to step through the development process in a structured way.

1 change: 1 addition & 0 deletions Building-a-system/closing-the-loop.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# Phase 3: Closing the Loop
27 changes: 27 additions & 0 deletions Building-a-system/data-collection.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Phase 1: Data Collection
Phase 1 focuses on accessing, logging, cleaning up, and analyzing data from the pump and CGM. Data fidelity is extremely important, especially when dosing is being considered. Take the time to review what the openaps tools are outputting and compare the logs against your own CareLink and CGM reports.

* Upon Completion
* Be able to download, record, and recall data logs from pump and CGM
* Be able to download “real time” data
* Have data being sent via wireless connection to a cloud database for user access
* Have built a system able to collect data and be able to help others do the same


* Phase Tasks
* Use tools to download data from pump and CGM
* Log data for future analysis, use in algorithms
* Ensure fidelity and accuracy of recorded readings
* Test edge cases
* Log data “in real time” to test hardware functionality
* Set up cloud database to accept uploaded data (optional)
* Have logged data syncing to cloud database (optional)


* Community Contribution
* Provide feedback on ...
* Model-specific data issues (e.g. Medtronic 722 v 723)
* Using software tools
* Following guides to accomplish above phase tasks
* Help edit instructions for Phase 1
* Provide improved or alternative implementations
13 changes: 13 additions & 0 deletions Building-a-system/getting-fancy.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Phase 4: Getting Fancy

... also known as "gilding the lily" or "all the awesome stuff that everyone dreams of" or "the modifications that are required before you'd really want to show off your APS". These efforts are certainly worthwhile and bring out the best in technological creativity, but they also tend to distract in the early stages of development.

Some examples include:

* Data visualization
* Smartphone integration
* On-board displays
* Hardware size reduction
* Hardware power consumption reduction
* Refined analytical modeling
* Integration with fitness trackers
22 changes: 22 additions & 0 deletions Building-a-system/initial-setup.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Phase 0: Initial Setup

Phase 0 focuses on getting everything required for an OpenAPS implementation procured, installed, and ready for tinkering. This is primarily accomplished through following steps in the [Hardware](../Hardware/hardware.md) and [Setup](../Setup/setup.md) sections.


* Upon Completion
* Possess hardware and software tools necessary to build an OpenAPS implementation
* Have gone through the setup process and be able to help others do the same


* Phase Tasks
* Procure hardware
* Download and install software and tools
* Test a subset of tools to make sure they work as expected


* Community Contribution
* Provide feedback on ...
* Hardware procurement (cheap deals, alternatives)
* Difficulties with installation process (‘this looked different on my system” or “I couldn’t locate that menu” or “I ran into this error”)
* Solutions to overcome setup difficulties, especially for systems that are not yet covered (some different flavor of Linux, for example)
* Help edit setup instructions for accuracy, coverage, ease of understanding
29 changes: 29 additions & 0 deletions Building-a-system/recommendation-engine.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# Phase 2: Recommendation Engine

Phase 2 focuses on developing a suitable algorithm to recommend changes to insulin dosages. This is essentially a practice closed-loop system, with you completing the loop. This can be performed in real time or by using historical data and making retroactive suggestions. Pay special attention to situations where CGM readings are not smooth or there are issues with data connectivity or fidelity.

If you haven't already done so, this is also an excellent time to calibrate your inputs, such as insulin sensitivity factor (ISF), carbohydrate ratio (CR), basal rates, et cetera.

* Upon Completion
* Have a set of algorithms designed to control blood glucose via temp basals
* Have patient-specific inputs required for these algorithms
* Have those algorithms coded so as to take the data collection built in Phase 1 as input
* Have the code output recommendations as to how it would change temp basal rates
* Have the ability to utilize code on real-time and historical data to evaluate efficacy
* Have implemented, tested, and tuned one or more set of algorithms and be able to help others do the same


* Phase Tasks
* Research the different strategies for single-hormone closed loop systems
* Complete relevant patient-specific studies to determine key inputs (e.g. carb absorption)
* Code one or more of these strategies such that they can accept live and/or historic patient data and output suggestions for temp basal changes
* Evaluate the efficacy of these algorithms by testing their suggestions against live and historic data
* Iterate on the algorithms and their implementation to improve their output
* Test cases of data corruption, lack of data, lack of connectivity, and other non-ideal operating conditions


* Community Contributions
* Provide feedback on ...
* Help edit instructions for Phase 2
* Provide results of testing for comparing and contrasting with others
* Summarize research findings and synthesize them into jump-off points for others' research
24 changes: 24 additions & 0 deletions Glossary/glossary.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# Glossary

IOB

DIA

\#OpenAPS

OpenAPS

openaps

CR

ISF

Bolus

Basal

APS

CGM

96 changes: 96 additions & 0 deletions Hardware/hardware.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@

# Hardware
This section describes the hardware components required for a 'typical' OpenAPS implementation. There are numerous variations and substitutions that can be made, but the following items are recommended for getting started. If you come across something that doesn't seem to work, is no longer available, or have a notable alternative, feel free to edit this document with your suggestions.


## Recommended Hardware

Required
* Raspberry Pi 2 Model B
* 8 GB (or greater) micro SD card
* Low-profile USB WiFi adapter
* 2.1 Amp (or greater) USB power supply
* Medtronic CareLink USB stick
* Medtronic insulin pump: 512/712, 515/715, 522/722, or 523/723 (with firmware 2.4A or lower)
* Dexcom CGM (G4 Platinum or Platinum with Share system) OR Medtronic CGM (MiniMed Paradigm REAL-Time Revel or Enlite)
* Micro USB cable(s)

Optional
* Battery with USB output
* Cat5 or Cat6 ethernet cable
* HDMI cable

A mostly complete kit recommended by several #OpenAPS contributors can be purchased through [Amazon](http://www.amazon.com/CanaKit-Raspberry-Complete-Original-Preloaded/dp/B008XVAVAW/ref=sr_1_1?ie=UTF8&qid=1434523139&sr=8-1&keywords=canakit+raspberry+pi+2). This kit has the RPi2, SD card, WiFi adapter, and wall power supply. It also comes with a case, HDMI cable, and heat sink, none of which are required for an OpenAPS build. The kit does not have a micros USB cable (required to connect a Dexcom G4 receiver to the RPi) or a battery, which can be used in lieu of the wall power supply for portability.

Additionally, for the Raspberry Pi and peripherals, verified sets of working hardware can be found [here](http://elinux.org/RPi_VerifiedPeripherals).

Eventually, once you have an entire OpenAPS build up and running, it is recommended that you have backup sets of equipment in case of failure.

## Hardware Details & Recommendations

**Raspberry Pi 2 Model B**

The Raspberry Pi 2 (RPi2) model B is a credit-card sized single-board computer. The RPi2 primarily uses Linux kernel based operating systems, which must be installed by the user onto a micro SD card for the RPi2 to work. The RPi2 currently only supports Ubuntu, Raspbian, OpenELEC, and RISC OS. We recommend installing either Ubuntu or Raspbian. In this tutorial, you will learn how to do a "cableless" and "headless" install of Raspbian. You will be able to access and control the RPi2 via an SSH client on Windows, Mac OS X, Linux, iOS, or Android.

The RPi2 has 4 USB ports, an ethernet port, an HDMI port, and a micro USB power-in jack that accepts 2.1 Amp power supplies. In this tutorial, you will need to access the USB ports, micro USB power-in jack, and possibly the Ethernet jack (if wireless failure occurs). You will not require the HDMI port or a monitor.

[Raspberry Pi 2 Model B](https://www.raspberrypi.org/products/raspberry-pi-2-model-b/)

<br>
**Micro SD Card**

An 8 or 16 GB micro SDHC card is recommended. Get one that is class-4 or greater and is a recognized name brand, such as SanDisk, Kingston, or Sony. A list of verified working hardware (including SD cards) can be found [here](http://elinux.org/RPi_VerifiedPeripherals).

[Sony 16GB Class 10 UHS-1 Micro SDHC](http://www.amazon.com/Sony-Class-Memory-SR16UY2A-TQ/dp/B00X1404P8/ref=dp_ob_title_ce)

<br>
**WiFi Adapter**

A minimalistic, unobtrusive WiFi USB adapter is recommended. The low-profile helps to avoid damage to both the RPi2 and the adapter as the RPi2 will be transported everywhere with the patient.

[Buffalo AirStation N150 Wireless USB Adapter](http://www.amazon.com/BUFFALO-AirStation-N150-Wireless-Adapter/dp/B003ZM17RA/ref=sr_1_1?ie=UTF8&qid=1434523524&sr=8-1&keywords=airstation+n150)

[Edimax EW-7811Un 150Mbps 11n Wi-Fi USB Adapter](http://www.amazon.com/Edimax-EW-7811Un-150Mbps-Raspberry-Supports/dp/B003MTTJOY/ref=sr_1_1?ie=UTF8&qid=1432614150&sr=8-1&keywords=edimax)

<br>
**2.1 Amp USB Battery Power Supply**

A large-capacity power supply that is greater than 8000 mAh (milliAmp-hours) is recommended for full day use. Make sure that the battery has at least one 2.1 Amp USB output. A battery with a form-factor that minimizes size is recommended, to allow the patient to be as ambulatory as possible. When you have a full #OpenAPS system implemented and working, you will want to have multiple batteries to rotate and recharge.

[Power Bank 12000mAh Vinsic Genius External Mobile Battery Charger Pack](http://www.amazon.com/dp/B00M6V0R2C/ref=wl_it_dp_o_pC_nS_ttl?_encoding=UTF8&colid=2OYKR43UGE0YB&coliid=IC4EHVFRTC117&psc=1)

[Anker 2nd Gen Astro E3 Ultra Compact 10000mAh External Battery](http://www.amazon.com/gp/product/B009USAJCC/ref=od_aui_detailpages00?ie=UTF8&psc=1)

<br>
**CareLink USB Stick**

Currently, the only supported device for uploading pump data and interfacing on the #OpenAPS is the CareLink USB stick. We recommend you purchase at least two sticks because if one breaks, acquiring another stick will take time and will delay development. Additionally, due to the short range of communication between the CareLink stick and the Medtronic pumps, some users set up multiple sticks in different locations to maximize the chances of successful transmissions.

[Medtronic](https://medtronicdiabetes.secure.force.com/store/carelink-usb--remotes/usb-wireless-upload-device)

[American Diabetes Wholesale](http://www.adwdiabetes.com/product/minimed-carelink-usb-upload_1164.htm)

<br>
**CGM: Dexcom G4 Platinum System (with or without Share) OR Medtronic **

The openaps tool set supports two different CGM systems: the Dexcom G4 Platinum system (with or without the Share functionality) and the Medtronic system. With Dexcom, the Share platform is not required as communication with the receiver is accomplished via USB. The Medtronic CGM system communicates directly with its associated pump, so the data can be retrieved using the CareLink USB stick.

[Dexcom G4 Platinum with Share](http://www.dexcom.com/dexcom-g4-platinum-share)

[Medtronic Enlite](https://www.medtronicdiabetes.com/treatment-and-products/enlite-sensor)

<br>
**Medtronic Insulin Pump: 512/712, 515/715, 522/722, or 523/723 (with firmware 2.4A or lower)**

Due to changes in the firmware, the openaps tools are only able to function in full on the above pump models. Security features were added in firmware version 2.5A that prevent making some remote adjustments via the CareLink USB stick. Each pump series is slightly different, and openaps functionality is still being ironed out for some of them. If you need to acquire an appropriate pump, check CraigsList or put out a request on [Gitter]( https://gitter.im/nightscout/intend-to-bolus) or the [#OpenAPS Google Group](https://groups.google.com/d/forum/openaps-dev).

There are several #OpenAPS participants working on ways to use other pumps (including non-Medtronic models). If you would like to get more information on the progress in these areas, take a look at the [#OpenAPS Google Group](https://groups.google.com/d/forum/openaps-dev).

<br>
**USB Cables**

USB cables with a micro connector on one end and a standard (Type A) connector on the other are used to connect the power supply and the Dexcom receiver to the RPi2. Most cables will work fine, so but some prefer to select lengths and/or features (such as right-angled connectors) to improve portability.

[Rerii Black Golden Plated 15 cm Length Micro-B Male Left Angle USB cable](http://www.amazon.com/Rerii-Micro-B-Charging-Guarantee-Fulfilled/dp/B00S9WXY5O/ref=sr_1_8?ie=UTF8&qid=1434603920&sr=8-8&keywords=micro+usb+right+angle)

[Monoprice Premium USB to Micro USB Charge, Sync Cable - 3ft](http://www.monoprice.com/Product?c_id=103&cp_id=10303&cs_id=1030307&p_id=9763&seq=1&format=2)
17 changes: 17 additions & 0 deletions Other-projects/aps-and-data-tools.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
## APS & Diabetes Data Tools

* **\#DIYPS** (http://diyps.org/)

* **simPancreas** (http://bustavo.com/category/simpancreas/)

* **NightScout** (http://www.nightscout.info/)

* **xDrip** (http://stephenblackwasalreadytaken.github.io/xDrip/)

* **RileyLink** (https://github.com/ps2/rileylink)<br>
A custom designed Bluetooth Smart (BLE) to 916MHz module. It can be used to bridge any BLE capable smartphone to the world of 916Mhz based devices. This project is focused on talking to Medtronic insulin pumps and sensors.

* **Tidepool** (http://tidepool.org/)<br>
Notably, work on Boston University iLet UI (https://github.com/tidepool-org/bionicpancreas)

* **Perceptus** (http://perceptus.org)
9 changes: 9 additions & 0 deletions Other-projects/commercial.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Commercial APS Efforts

There are currently several commercial closed-loop products in development by old and new companies in the diabetes treatment space. These include:

* [Medtronic MiniMed 640G](https://www.medtronic-diabetes.com.au/insulin-pumps/640g)
* [Medtronic MiniMed 670G](http://diatribe.org/drugdevice-name/medtronic-minimed-670g)
* [TypeZero Technologies](http://www.typezero.com/)
* [Bigfoot Biomedical](http://www.bigfootbiomedical.com/)
* [Boston University's iLet](http://sites.bu.edu/bionicpancreas/)
3 changes: 3 additions & 0 deletions Other-projects/other-projects.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Other Projects & Tools

The following subsections provide links to other related projects as well as commercial artificial pancreas work underway.
8 changes: 8 additions & 0 deletions Overview/closed-loop.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
#What is Closed Loop?

In general, a "closed loop" system for treatment of Diabetes is one in which insulin dosing—and in some cases glucagon dosing—is partially or completely automated. This is in contrast to an "open loop" system, where the user evaluates the inputs and manually instructs the insulin pump to dose a specific amount. In both cases, the goal is to maintain blood glucose within the desired range through adjusting hormone doses.

There are numerous different types of closed loop systems, ranging from simple basal suspend systems designed to mitigate extreme hypoglycemia to dual hormone, fully automated systems. The JDRF (formerly Juvenile Diabetes Research Foundation) [Artificial Pancreas Project Plan](http://jdrf.org/research/treat/artificial-pancreas-project/) page provides an overview of the current commercial and academic generation-based approach. Several commercial systems are currently in development; see the [Commercial APS Efforts](Other-projects/commercial.md) for more information.


While the openaps tools do not limit a user, \#OpenAPS is focused on a single-hormone hybrid closed-loop system—that is, one that uses only insulin (no glucagon) and does not aim to replace user interaction for mealtime bolusing. A primer on the theory of operation for #OpenAPS can be found at the [\#OpenAPS Reference Design](http://openaps.org/open-artificial-pancreas-system-openaps-reference-design/) page.
13 changes: 13 additions & 0 deletions Overview/communication.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Communication Channels

There are several ways to communicate with other participants and contributors in the #OpenAPS project.

**Gitter**<br>
[Gitter](https://gitter.im/) is a messaging/chat service similar to IRC. It provides integration with GitHub and several other services. The [nightscout/intend-to-bolus]( https://gitter.im/nightscout/intend-to-bolus) channel is where you will find active #OpenAPS discussions ranging from technical issues with openaps tools to control theory to general pumping banter. It is a great place to introduce yourself and get some help from those who are a few steps further down the road.

**Google Groups**<br>
A private 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.

**Issues on openaps GitHub**<br> For reporting issues on the openaps tools fomrally, 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.

See also the [Resources](../Resources/resources.md) section for additional assistance.
Loading