openaps / docs Goto Github PK
View Code? Open in Web Editor NEWDocumentation for setting up OpenAPS
Home Page: http://OpenAPS.org
License: MIT License
Documentation for setting up OpenAPS
Home Page: http://OpenAPS.org
License: MIT License
Hello dear makers,
as most people posting here, I've started building my own rig. However, I ran into a few problems. Most of them where my fault of course, but I'd like to prevent other people from making the same mistakes.
The mistake: ordering an "explorer HAT".
why: because it's called an explorer hat on the openaps.org site.
what to do: make it more clear, avoid calling it a thing that actually exists (and people might order).
how: replacing "explorer HAT" with "Pi radio 868MHz/915MHz HAT" or something alike.
thank you for your time,
I hope after this mistake I will be able to finish making the rig 👍 ,
Anja
The phase visualization link on this page:
https://openaps.gitbooks.io/building-an-open-artificial-pancreas-system/content/index.html
goes to a 404 page
https://github.com/openaps/docs/blob/master/docs/OpenAPS_phase_visualization_Nov152015.png
Can we add a note that for 512/712 certain commands like Read Settings, BG Targets and certain Read Basal Profile not available, and requires creating a static json for needed info missing to successfully run the loop.
We can either add a sample of jsons as gist or as @bewest suggested add a new command to generate the base files and have the user updating per their pump settings.
Hi, I use a dexcom G5 sensor and the dexcom share app to view my bg on my phone, would it be possible to use this with openaps setup instead of nightscout?
I have used terminal and written rasbian jessie to my SD card but I'm not sure how to tell when it has successfully finished writing. I tried using the command CTRL+T but I'm don't know what the information it is showing means or how to tell if it has completed the process. 😬
Docs below require carbhistory.json but don't discuss creating that file. Making a note to fix this later.
Hi,
I am in the process of setting up openaps and at the stage of writing rasbian jessie to my SD card on a mac. However, when I use terminal to type in my image path: 2017-01-11-raspbian-jessie-lite.img , it says the file/directory doesn't exist. When I go to the finder and type in the path, rasbian jessie pops up, showing me it has the same pathway I was typing in the terminal. If anyone could give some suggestions that would be of great help!
It appears that the documentation and software(?) will need revision - and a new hardware home
https://communities.intel.com/docs/DOC-112093
Intel will support last time orders of Intel Edison products through September 16, 2017 and will fulfill those orders through December 16, 2017.
Intel® Edison Discontinuation Notice: Version 1
Created by MTaylor on Jul 5, 2017 3:46 PM. Last modified by MTaylor on Jul 5, 2017 3:46 PM.
Intel is discontinuing Intel® Edison compute modules and developer kits. To help customers manage through the Intel Edison discontinuance, Intel will support last time orders of Intel Edison products through September 16, 2017 and will fulfill those orders through December 16, 2017. The current level of community forum-based support for Intel Edison will continue to be available through September 15, 2017. There are no further software releases planned for the Intel Edison platform. After September 15, 2017, Intel will archive its online resources and maintain availability to the Intel Edison community until June 15, 2020. Files licensed under open source licenses will continue to be generally available in binary and source code on GitHub.
The script on installing from source from this page doesn't work:
curl -s https://raw.githubusercontent.com/openaps/docs/master/scripts/quick-src.sh | bash -
Here are the error messages I received:
Get:1 http://mirrordirector.raspbian.org/raspbian/ jessie/main libpython2.7-dev armhf 2.7.9-2 [17.9 MB]
Err http://mirrordirector.raspbian.org/raspbian/ jessie/main libssl-dev armhf 1. 0.1k-3+deb8u1
404 Not Found [IP: 5.153.225.207 80]
Err http://mirrordirector.raspbian.org/raspbian/ jessie/main libssl-doc all 1.0. 1k-3+deb8u1
404 Not Found [IP: 5.153.225.207 80]
Get:2 http://mirrordirector.raspbian.org/raspbian/ jessie/main python-dev armhf 2.7.9-1 [1,188 B]
Get:3 http://mirrordirector.raspbian.org/raspbian/ jessie/main python-apt armhf 0.9.3.12 [156 kB]
Get:4 http://mirrordirector.raspbian.org/raspbian/ jessie/main gyp all 0.1svn17 29-3 [201 kB]dfsg-1 [49.9 kB]
Get:5 http://mirrordirector.raspbian.org/raspbian/ jessie/main libjs-node-uuid a ll 1.4.0-1 [12.6 kB]
Get:6 http://mirrordirector.raspbian.org/raspbian/ jessie/main libjs-underscore all 1.7.0
Get:7 http://mirrordirector.raspbian.org/raspbian/ jessie/main libpython-dev arm hf 2.7.9-1 [19.6 kB]
Get:8 http://mirrordirector.raspbian.org/raspbian/ jessie/main libv8-3.14-dev ar mhf 3.14.5.8-8.1+rpi1 [108 kB]
Get:9 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-async all 0. 8.0-1 [24.6 kB]
Get:10 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-node-uuid a ll 1.4.0-1 [9,194 B]
Get:11 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-underscore all 1.7.0dfsg-1 [34.2 kB]dfsg-2 [247 kB]
Get:12 http://mirrordirector.raspbian.org/raspbian/ jessie/main python2.7-dev ar mhf 2.7.9-2 [281 kB]
Get:13 http://mirrordirector.raspbian.org/raspbian/ jessie/main unattended-upgra des all 0.81+rpi1 [45.7 kB]
Get:14 http://mirrordirector.raspbian.org/raspbian/ jessie/main python-software- properties all 0.92.25debian1 [42.1 kB]
Get:15 http://mirrordirector.raspbian.org/raspbian/ jessie/main libc-ares-dev ar mhf 1.10.0-2 [140 kB]
Get:16 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-abbrev all 1.0.5-2 [3,540 B]
Get:17 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-ansi all 0. 3.0-2 [8,608 B]
Get:18 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-ansi-color- table all 1.0.0-1 [4,408 B]
Get:19 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-archy all 0 .0.2-1 [3,620 B]
Get:20 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-inherits al l 2.0.1-1 [3,230 B]
Get:21 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-block-strea m all 0.0.7-1 [4,550 B]
Get:22 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-delayed-str eam all 0.0.5-1 [4,482 B]
Get:23 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-combined-st ream all 0.0.5-1 [4,918 B]
Get:24 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-cookie-jar all 0.3.1-1 [3,570 B]
Get:25 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-forever-age nt all 0.5.1-1 [3,066 B]
Get:26 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-mime all 1. 2.11-1 [18.1 kB]
Get:27 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-form-data a ll 0.1.0-1 [6,084 B]
Get:28 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-rimraf all 2.2.8-1 [5,668 B]
Get:29 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-mkdirp all 0.5.0-1 [4,634 B]
Get:30 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-graceful-fs all 3.0.2-1 [7,070 B]
Get:31 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-fstream all 0.1.24-1 [17.5 kB]
Get:32 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-lru-cache a ll 2.3.1-1 [5,344 B]
Get:33 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-sigmund all 1.0.0-1 [3,750 B]
Get:34 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-minimatch a ll 1.0.0-1 [13.9 kB]
Get:35 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-fstream-ign ore all 0.0.6-2 [5,536 B]
Get:36 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-github-url- from-git all 1.1.1-1 [2,986 B]
Get:37 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-once all 1. 1.1-1 [2,552 B]
Get:38 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-glob all 4. 0.5-1 [13.1 kB]
Get:39 http://mirrordirector.raspbian.org/raspbian/ jessie/main nodejs-dev armhf 0.10.29
Get:40 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-nopt all 3. 0.1-1 [9,484 B]
Get:41 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-npmlog all 0.0.4-1 [5,516 B]
Get:42 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-osenv all 0 .1.0-1 [3,734 B]
Get:43 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-tunnel-agen t all 0.3.1-1 [3,840 B]
Get:44 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-json-string ify-safe all 5.0.0-1 [3,356 B]
Get:45 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-qs all 2.2. 4-1 [8,474 B]
Get:46 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-request all 2.26.1-1 [15.7 kB]
Get:47 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-semver all 2.1.0-2 [14.9 kB]
Get:48 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-tar all 0.1.18-1 [16.9 kB]
Get:49 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-which all 1.0.5-2 [3,610 B]
Get:50 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-gyp all 0.12.2+ds-1 [19.4 kB]
Get:51 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-ini all 1.1.0-1 [4,720 B]
Get:52 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-lockfile all 0.4.1-1 [5,150 B]
Get:53 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-mute-stream all 0.0.4-1 [4,056 B]
Get:54 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-normalize-package-data all 0.2.2-1 [8,604 B]
Get:55 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-read all 1.0.5-1 [4,262 B]
Get:56 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-read-package-json all 1.2.4-1 [7,740 B]
Get:57 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-retry all 0.6.0-1 [6,124 B]
Get:58 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-sha all 1.2.3-1 [4,064 B]
Get:59 http://mirrordirector.raspbian.org/raspbian/ jessie/main node-slide all 1.1.4-1 [6,078 B]
Get:60 http://mirrordirector.raspbian.org/raspbian/ jessie/main npm all 1.4.21+ds-2 [354 kB]
Get:61 http://mirrordirector.raspbian.org/raspbian/ jessie/main watchdog armhf 5.14-3 [78.1 kB]
Fetched 20.0 MB in 18s (1,094 kB/s)
E: Failed to fetch http://mirrordirector.raspbian.org/raspbian/pool/main/o/openssl/libssl-dev_1.0.1k-3+deb8u1_armhf.deb 404 Not Found [IP: 5.153.225.207 80]
E: Failed to fetch http://mirrordirector.raspbian.org/raspbian/pool/main/o/openssl/libssl-doc_1.0.1k-3+deb8u1_all.deb 404 Not Found [IP: 5.153.225.207 80]
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?
bash: line 8: cd: src: No such file or directory
sudo: openaps-install-udev-rules: command not found
https://github.com/openaps/docs/blob/master/docs/docs/Gear%20Up/pump.md shows no compatibility for the Tandem t:slim, but is there compatibility with the t:slim X2?
Needs further documentation: using Medtronic sensor data for a standard OpenAPS setup
there is this line in the instructions script.
sudo apt-get install -y git python python-dev python-software-properties python-numpy python-pip nodejs-legacy npm watchdog
This script breaks when trying to install nodejs-legacy.
In additon, that break, causes the rest of the line, including installation of npm and watchdog to fail.
This causes openaps installation to fail.
Needs documentation: pulling in data from SHARE servers (rather than plugging in a receiver to the Pi) in standard openaps setup.
In https://github.com/openaps/docs/blob/master/docs/docs/Customize-Iterate/autotune.md at Phase 3 / Step 3 / carb_ratio
, documentation on how to deal with a carb ratio that depends on time slots is missing.
I'm using a ubuntu linux desktop system (command line only),
I also have an 8 Gig SD card I'd like to use.
Can you add information on how to burn the SD card so the intel edison boots from that?
What language to use when talking to MiniMed so that they are getting feedback at all different levels that users need access to their devices? What are the key words to say, points to make, etc. so that there is a consistent message?
Yesterday with my pull request #772 I noticed that the troubleshooting and help about unix commands is quite scattered in multiple pages in the docs.
Wouldn't it be a good idea to organize the troubleshooting more based on the interfaces, e.g.
Before I start, I first wanted a discussion, because I think this is quite some refactoring work to make it good.
@scottleibrand and @danamlewis : what's your take on this?
hello...
After two months of finding the right used pump, getting my daughter to change from injections tu pump, get the CGM sensor, etc... finally I am trying to make progress with the actual implementation of the openaps system.
I am stuck right now in the process to update data to Nightscout, could somebody please help me?
below
is the reponse when I do "openaps do-everything"
thsnk a lot for any help!
Luis
pi@raspberrypi:~/my_openaps $ openaps do-everything
PREFLIGHT
PREFLIGHT OK
usage: openaps-report invoke [-h]
{model.json,monitor/battery.json,monitor/clock.json,monitor/pump-history.json,monitor/reservoir.json,monitor/status.json,monitor/temp-basal-status.json,nightscout/openaps-status.json,nightscout/preflight.json,nightscout/recent-missing-entries.json,nightscout/recent-treatments.json,nightscout/uploaded-entries.json,nightscout/uploaded-recent-devicestatus.json,nightscout/uploaded.json,oref0-enacted/enacted-temp-basal.json,oref0-predict/oref0.json,raw-pump/battery.json,raw-pump/bg-targets-raw.json,raw-pump/clock-raw.json,raw-pump/insulin-sensitivities-raw.json,raw-pump/pump-history-raw.json,raw-pump/reservoir.json,raw-pump/selected-basal-profile.json,raw-pump/settings.json,raw-pump/status.json,raw-pump/temp-basal-status.json,settings/bg-targets.json,settings/insulin-sensitivities.json,settings/selected-basal-profile.json,settings/settings.json}
[{model.json,monitor/battery.json,monitor/clock.json,monitor/pump-history.json,monitor/reservoir.json,monitor/status.json,monitor/temp-basal-status.json,nightscout/openaps-status.json,nightscout/preflight.json,nightscout/recent-missing-entries.json,nightscout/recent-treatments.json,nightscout/uploaded-entries.json,nightscout/uploaded-recent-devicestatus.json,nightscout/uploaded.json,oref0-enacted/enacted-temp-basal.json,oref0-predict/oref0.json,raw-pump/battery.json,raw-pump/bg-targets-raw.json,raw-pump/clock-raw.json,raw-pump/insulin-sensitivities-raw.json,raw-pump/pump-history-raw.json,raw-pump/reservoir.json,raw-pump/selected-basal-profile.json,raw-pump/settings.json,raw-pump/status.json,raw-pump/temp-basal-status.json,settings/bg-targets.json,settings/insulin-sensitivities.json,settings/selected-basal-profile.json,settings/settings.json} ...]
openaps-report invoke: error: argument report: invalid choice: 'raw-cgm/glucose-raw.json' (choose from u'model.json', u'monitor/battery.json', u'monitor/clock.json', u'monitor/pump-history.json', u'monitor/reservoir.json', u'monitor/status.json', u'monitor/temp-basal-status.json', u'nightscout/openaps-status.json', u'nightscout/preflight.json', u'nightscout/recent-missing-entries.json', u'nightscout/recent-treatments.json', u'nightscout/uploaded-entries.json', u'nightscout/uploaded-recent-devicestatus.json', u'nightscout/uploaded.json', u'oref0-enacted/enacted-temp-basal.json', u'oref0-predict/oref0.json', u'raw-pump/battery.json', u'raw-pump/bg-targets-raw.json', u'raw-pump/clock-raw.json', u'raw-pump/insulin-sensitivities-raw.json', u'raw-pump/pump-history-raw.json', u'raw-pump/reservoir.json', u'raw-pump/selected-basal-profile.json', u'raw-pump/settings.json', u'raw-pump/status.json', u'raw-pump/temp-basal-status.json', u'settings/bg-targets.json', u'settings/insulin-sensitivities.json', u'settings/selected-basal-profile.json', u'settings/settings.json')
ns://JSON/shell/nightscout/recent-treatments.json
Could not parse pumphistory: { [Error: Cannot find module '/home/pi/my_openaps/monitor/pump-history.json'] code: 'MODULE_NOT_FOUND' }
No JSON object could be decoded
Traceback (most recent call last):
File "/usr/local/bin/openaps-report", line 4, in
import('pkg_resources').run_script('openaps==0.1.5', 'openaps-report')
File "build/bdist.linux-armv7l/egg/pkg_resources/init.py", line 719, in run_script
File "build/bdist.linux-armv7l/egg/pkg_resources/init.py", line 1504, in run_script
File "/usr/local/lib/python2.7/dist-packages/openaps-0.1.5-py2.7.egg/EGG-INFO/scripts/openaps-report", line 82, in
app( )
File "/usr/local/lib/python2.7/dist-packages/openaps-0.1.5-py2.7.egg/openaps/cli/init.py", line 51, in call
self.run(self.args)
File "/usr/local/lib/python2.7/dist-packages/openaps-0.1.5-py2.7.egg/EGG-INFO/scripts/openaps-report", line 75, in run
output = app(args, self)
File "/usr/local/lib/python2.7/dist-packages/openaps-0.1.5-py2.7.egg/openaps/cli/subcommand.py", line 52, in call
return self.method.main(args, app)
File "/usr/local/lib/python2.7/dist-packages/openaps-0.1.5-py2.7.egg/openaps/reports/invoke.py", line 48, in main
reporters.Reporter(report, device, task)(output)
File "/usr/local/lib/python2.7/dist-packages/openaps-0.1.5-py2.7.egg/openaps/reports/reporters/init.py", line 33, in call
self.blob = self.serialize(data)
File "/usr/local/lib/python2.7/dist-packages/openaps-0.1.5-py2.7.egg/openaps/reports/reporters/init.py", line 31, in serialize
return self.method.serialize(render(data), self)
File "/usr/local/lib/python2.7/dist-packages/openaps-0.1.5-py2.7.egg/openaps/vendors/process.py", line 56, in prerender_json
return json.loads(data)
File "/usr/lib/python2.7/json/init.py", line 338, in loads
return _default_decoder.decode(s)
File "/usr/lib/python2.7/json/decoder.py", line 366, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib/python2.7/json/decoder.py", line 384, in raw_decode
raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded
pi@raspberrypi:~/my_openaps $
Local links in markdown files are broken. For example:
redered by sphinx/readthedocs: http://openaps.readthedocs.io/en/latest/reference/openaps/openaps-report-settings-auto-sens.html
The link target for 'monitor/glucose.json' is openaps-report-monitor-glucose.md
in markdown, which fails to link properly to:
http://openaps.readthedocs.io/en/latest/reference/openaps/openaps-report-monitor-glucose.html
Even preceeding the target with dot slash ( ./openaps-report-monitor-glucose.md
) does not work.
It is unclear to me which sphinx extensions are in use. See: https://github.com/openaps/docs/blob/master/docs/conf.py
I think I'm now recommending to use pip install -U openaps
to install/update openaps. Fingers crossed, it should pull in everything else appropriately, let me know if any problems.
Tips using pip: the install argument will also take an url to a tarball, or with a little extra keyword, can even take arbitrary urls, here are examples to install dev branches:
pip install git+git://github.com/openaps/openaps.git'#dev'
While flashing my Edison from Ubilinux to Jubilinux it timed out waiting for the reboot after repartitioning
Rebooting to apply partition changes
Now waiting for dfu device 8087:0a99
Timed out while waiting for dfu device 8087:0a99
Running it again, successfully flashed the device.
Once Nightscout is running how do we send data into it?
Let's try nightscout
:
$ nightscout -h
Usage:
nightscout <cmd>
* latest-openaps-treatment
* cull-latest-openaps-treatments
* get
* upload
* dedupe-treatments
* hash-api-secret
* status
* upload-entries
* autoconfigure-device-crud
The autoconfigure-device-crud
feature will allow us to create an easy to use ns
device:
$ nightscout autoconfigure-device-crud https://my.nightscout.host averylongplainsecret
added process://ns/nightscout/ns NIGHTSCOUT_HOST API_SECRET
process://ns/nightscout/ns https://my.nightscout.host e6fc892e8e88235a476d197de3dfbef3f2db53d0
It added a new ns
device to our uses menu:
openaps use ns shell get entries.json 'count=10'
openaps use ns shell upload treatments.json recently/combined-treatments.json
So we now have various uses for ns
: get, upload, latest-treatment-time, format-recent-history-treatments, upload-non-empty-treatments.
Use the get feature which takes two arguments: the name of the endpoint (entries
, devicestatus
, treatments
, profiles
) and any query arguments to append to the argument string. 'count=10'
is a reasonable debugging value.
openaps use ns shell get $endpoint $query-params
To upload treatments data to Nightscout, prepare you zoned glucose, and pump model reports, and use the following two reports:
openaps report add nightscout/recent-treatments.json JSON ns shell format-recent-history-treatments monitor/pump-history.json model.json
openaps report add nightscout/uploaded.json JSON ns shell upload-non-empty-treatments nightscout/recent-treatments.json
Here are the equivalent uses:
openaps use ns shell format-recent-history-treatments monitor/pump-history.json model.json
openaps use ns shell upload-non-empty-treatments nightscout/recent-treatments.json
The first report runs the format-recent-history-treatments
use, which fetches data from Nightscout and determines which of the latest deltas from openaps need to be sent. The second one uses the upload-non-empty-treatments
use to upload treatments to Nightscout, if there is any data to upload.
In Phase 1 of the walkthrough, in file using-openaps-tools.md
, there is a line that says:
Create bunch of reports:
oref0 template mint reports medtronic-pump | openaps import
If the user runs that command (which it seems like he/she is supposed to), this adds about 25 reports to the user's openaps.ini, including with subdirectories that aren't created yet, devices (units) that don't exist yet, etc.
So then it's confusing later in that file when the walkthrough implies that openaps.ini should be relatively empty, that you should know what each report does when you add it, and so on. Should this command just be cut? oref0 hasn't even been mentioned previously at this point, I don't think.
This same command (along with a few other oref0 invocations) occurs in a pretty confusing section at the beginning of phase-2/Using-oref0-tools.md
. There at least there is a note that says that this part of the docs is out of date and that the usage in different parts of the file doesn't match. But as a new user going through it I had little idea what to do or not to do at this point. It seems like skipping those oref0 invocations at the top makes the most sense, in the context of the walkthrough as it stands, but having the user have to guess which commands to skip isn't ideal.
Nightscout doesn't automatically back fill CGM data even when Share does. If your routine includes gaps in transmitter connectivity and data uploads, this may affect your calculations.
I suggest that we include instructions on best practices in configuring NS to backfill. Opening issue to discuss what the best practice recommendations would be.
hmmm, the table of contents is broken online. Will try to sleuth it out but may not be able to.
The 'wifi troubleshooting page' link on this page is broken:
http://openaps.readthedocs.io/en/latest/docs/Resources/troubleshooting.html
The link is: https://openaps.readthedocs.io/en/latest/docs/Resources/wifi.md.html
It should be: http://openaps.readthedocs.io/en/latest/Resources/wifi.html
Notes:
Needs further documentation - and is dependent on decoding-dexcom - someone needs to update it to detect which version receiver you have plugged in. Once this is done, openaps docs will need to be updated to note that G5 works.
In the AndroidAPS documentation, when dealing with maxIoB the example used as a starting point says : max daily basal...
This can be understood as total daily basal ...
Could be rephrased with something like max hourly basal rate...
Issue raised also in AndroidAPS GitHub
I noticed some of my bookmarks don't work because of the doc reorg.
To prevent that (and to prevent broken links from search engines) we could use page redirects, see http://docs.readthedocs.io/en/latest/user-defined-redirects.html
I feel for new people to this experience and too the technology that the instructions may warrant something referencing interaction with the system when in open and closed, ie how to enter data such as carbs, bgl, manual bolus, temp basal etc and on which platform, Xdrip+, NS, pump etc.
As I read somewhere that entering data in one of those systems will not apply it to the algorithm and as such the data will not be collected.
There are references through out the docs for things such as IFTTT which could be hyperlinked within this instruction.
Happy to be involved in the construction of this.
There are currently a number of differences between the names used in the newer oref0 templates and the current walkthrough which I believe has caused some confusion. For example: bg_targets_raw.json in the docs is bg-targets-raw.json in the templates as well as things like settings/insulin_sensitivities_raw.json in the docs is raw-pump/insulin-sensitivities-raw.json in the templates. I was thinking about doing a PR to try to straighten things out a bit but will it even be necessary with the new style walkthrough that uses templates? Is this section going to be reduced to templates or still have explanations on how everything works and how to create it? Seems like it is kind of important for the DIY part of it but the templates are nice! At the very least maybe just adding a warning that the names don't match and will have to be altered?
I. Introduction (with BIG PICTURE which I will start a PR on)
II. General Setup
Consider eliminating the concept of "Walkthrough" which discourages people from reading the intro and skipping to the "Walkthrough", it also suggests that these instructions are complete and perfect which discourages people submitting PRs (it must be something I'm doing wrong, not the instructions)
Phases are nice to show progression however this requires a lot outside of the phases and if PRs are integral to this process, they should be a part of the process rather than "outside" the phases
III. Nightscout part 1 here
Since folks who come here are mainly familiar with this, it's a nice way to ease into it
IV. OpenAPS
What is OpenAPS first before how to set it up
V. Creating an open loop
VI. Closing the loop
NS part 2 somewhere between the last part and this one
VII. Turning the closed loop
VIII. Iterate and improve
IX. Resources
X. References
What to do with button errors?
I was unable to purchase the hardware from the links provided in docs, and I found that regular nuts loosen up over time so I switched to lock nuts on my son's and daughter's rigs, please add the following links to documentation.
Lock Nuts:
https://www.amazon.com/Uxcell-a15072100ux0228-Plated-Nylock-Insert/dp/B015A3BZJQ
Cap screws:
https://www.amazon.com/iExcell-Stainless-Steel-Socket-Screws/dp/B07FLLGW19
How do I get connectivity back on my iphone after i changed Medtronic pump battery
https://github.com/openaps/docs/blob/wip/ama-docs/docs/docs/walkthrough/phase-6/Configure-Automatic-Sensitivity-Mode.md is fairly comprehensive on setting up Automatic-Sensitivity-Mode, but despite a title change, doesn't yet provide all the necessary details for setting up Meal Assist.
@logichammer has created https://github.com/openaps/docs/blob/wip/ama-docs/docs/docs/walkthrough/phase-6/Configure-Automatic-Sensitivity-Mode-and-Advanced-Meal-Assist.md for details on setting up (advanced) meal assist. Per #176, we need to add
openaps device add meal process --require "pumphistory profile clock glucose basal carbs" oref0 meal
and
openaps report add monitor/meal.json text meal shell monitor/pumphistory-zoned.json settings/profile.json monitor/clock-zoned.json monitor/glucose.json settings/basal_profile.json monitor/carbhistory.json
and also break them out into 3 separate pages: Configuring Meal Assist; Configuring Advanced Meal Assist; and Configuring Automatic Sensitivity Mode (all under phase 6 section).
I created the wip/ama-docs branch to allow the multiple people working on these related docs to collaborate a bit better. Please submit PRs to there for now on this particular issue, and then we can merge them to dev once things are cleaned up and no longer conflicting.
Thanks!
Given that:
it would be good to be able to "open loop" for a while (i'm thinking of a few days, or until I learn howt to interpret the OpenAPS pill). On gitter @danamlewis recommended setting the pump's temp basal setting to % - it seems like this idea warrants a paragraph somewhere in these docs.
When setting up watchdog, i keep getting an error message saying watchdog failed to load and invalid argument when I enter the commands: 'sudo systemctl start watchdog' and 'sudo systemctl status watchdog'
Should be able to add the Veo 754CML with FW 2.7A to the list of devices with MySentry support at https://github.com/openaps/docs/blob/master/docs/docs/walkthrough/phase-0/hardware.md
Been using it with Loop for several days now and prior RileyLink iOS. This is the Canadian Veo 754 with the same frequencies as the US but mmol/L
I have these issues regarding OpenAPS Docs, as a person with a print-related disability. Making these changes will lead to a more readable document for everyone:
The default typeface and theme on ReadTheDocs, for the OpenAPS Docs, can be hard to read and sort through, especially for people with print-related disabilities. The default font being used is not a Sans Serif font, and makes reading difficult, even for people without print disabilities. There is a cleaner theme out there, with a better default font, that supports our needs as editors and readers in OpenAPS Docs. The theme is through MkDocs, and is called ReadTheDocs. Please consider changing the theme on ReadTheDocs.
To improve readability, we need to refer individual editors of OpenAPS Docs to this 10 Minute Introduction to Markdown. I will try to add a new document via a Pull Request, cleanly embedded into OpenAPS Docs, to encourage individual editors to follow CommonMark editing specifications. I also intend on making full edits, page by page, for OpenAPS Docs, following Commonmark editing specifications. Expect several Pull Requests to be generated over the next week or so.
One of the challenges with images in the docs is that the source of the image is usually not editable except by the original creator.
Potential solution: use draw.io (open source tool, free for all, available as desktop or web client app) and save/export both the raw .xml and the image itself (.jpg, .png, etc) and upload both to the images folder of the docs. That way, when text edits are needed to update the images, they can easily be edited by anyone, including multiple people.
Example:
Raw .xml file, zipped: Rig-NS_troubleshooting.xml.zip
Needs documentation: pulling in xdrip data to a standard openaps setup.
login as: pi
[email protected]'s password:
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Sun Oct 2 19:17:21 2016
pi@raspberrypi:~ $ sudo easy_install -Z openaps
Processing openaps
Writing /home/pi/openaps/setup.cfg
Running setup.py -q bdist_egg --dist-dir /home/pi/openaps/egg-dist-tmp-z6tJYA
openaps 0.1.6-dev is already the active version in easy-install.pth
Installing openaps-use script to /usr/local/bin
Installing openaps-install-udev-rules script to /usr/local/bin
Installing openaps script to /usr/local/bin
Installing git-openaps-init script to /usr/local/bin
Installing openaps-import script to /usr/local/bin
Installing openaps-alias script to /usr/local/bin
Installing openaps-report script to /usr/local/bin
Installing openaps-vendor script to /usr/local/bin
Installing openaps-device script to /usr/local/bin
Installed /usr/local/lib/python2.7/dist-packages/openaps-0.1.6_dev-py2.7.egg
Processing dependencies for openaps==0.1.6-dev
Searching for mock
Reading https://pypi.python.org/simple/mock/
Best match: mock 2.0.0
Downloading https://pypi.python.org/packages/0c/53/014354fc93c591ccc4abff12c473ad565a2eb24dcd82490fae33dbf2539f/mock-2.0.0.tar.gz#md5=0febfafd14330c9dcaa40de2d82d40ad
Processing mock-2.0.0.tar.gz
Writing /tmp/easy_install-SpnVfK/mock-2.0.0/setup.cfg
Running mock-2.0.0/setup.py -q bdist_egg --dist-dir /tmp/easy_install-SpnVfK/mock-2.0.0/egg-dist-tmp-cIKocf
Searching for setuptools>=17.1
Reading https://pypi.python.org/simple/setuptools/
Best match: setuptools 28.2.0
Downloading https://pypi.python.org/packages/fa/dd/e310aaaf1702516e12451d2d5eb78175587edc7fbeb1afd58263171e9384/setuptools-28.2.0.tar.gz#md5=b2031092dcf317cdd140c6c200957c26
Processing setuptools-28.2.0.tar.gz
Writing /tmp/easy_install-SpnVfK/mock-2.0.0/temp/easy_install-Wo461v/setuptools-28.2.0/setup.cfg
Running setuptools-28.2.0/setup.py -q bdist_egg --dist-dir /tmp/easy_install-SpnVfK/mock-2.0.0/temp/easy_install-Wo461v/setuptools-28.2.0/egg-dist-tmp-EeX7MB
warning: no files found matching '*' under directory 'setuptools/_vendor'
Installed /tmp/easy_install-SpnVfK/mock-2.0.0/setuptools-28.2.0-py2.7.egg
Searching for pbr>=1.3
Reading https://pypi.python.org/simple/pbr/
Best match: pbr 1.10.0
Downloading https://pypi.python.org/packages/c3/2c/63275fab26a0fd8cadafca71a3623e4d0f0ee8ed7124a5bb128853d178a7/pbr-1.10.0.tar.gz#md5=8e4968c587268f030e38329feb9c8f17
Processing pbr-1.10.0.tar.gz
Writing /tmp/easy_install-SpnVfK/mock-2.0.0/temp/easy_install-XaD6bx/pbr-1.10.0/setup.cfg
Running pbr-1.10.0/setup.py -q bdist_egg --dist-dir /tmp/easy_install-SpnVfK/mock-2.0.0/temp/easy_install-XaD6bx/pbr-1.10.0/egg-dist-tmp-DNprPt
Installed /tmp/easy_install-SpnVfK/mock-2.0.0/pbr-1.10.0-py2.7.egg
Marker evaluation failed, see the following error. For more information see: http://docs.openstack.org/developer/pbr/compatibility.html#evaluate-marker
ERROR:root:Error parsing
Traceback (most recent call last):
File "/tmp/easy_install-SpnVfK/mock-2.0.0/pbr-1.10.0-py2.7.egg/pbr/core.py", line 111, in pbr
attrs = util.cfg_to_args(path, dist.script_args)
File "/tmp/easy_install-SpnVfK/mock-2.0.0/pbr-1.10.0-py2.7.egg/pbr/util.py", line 248, in cfg_to_args
kwargs = setup_cfg_to_setup_kwargs(config, script_args)
File "/tmp/easy_install-SpnVfK/mock-2.0.0/pbr-1.10.0-py2.7.egg/pbr/util.py", line 431, in setup_cfg_to_setup_kwargs
if pkg_resources.evaluate_marker('(%s)' % env_marker):
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 1306, in evaluate_marker
return cls.interpret(parser.expr(text).totuple(1)[1])
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 1341, in interpret
return op(nodelist)
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 1254, in atom
return cls.interpret(nodelist[2])
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 1341, in interpret
return op(nodelist)
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 1275, in comparison
raise SyntaxError(msg)
SyntaxError: '<' operator not allowed in environment markers
error: Setup script exited with error in setup command: Error parsing /tmp/easy_install-SpnVfK/mock-2.0.0/setup.cfg: SyntaxError: '<' operator not allowed in environment markers
pi@raspberrypi:~ $
This link is broken:
Guide to understanding the openaps toolkit
on this page: https://github.com/openaps/docs/blob/master/docs/docs/walkthrough/manual/phase-1/using-openaps-tools.md
I've found this neccessary:
*/4 * * * * cd /home/pi/myopenaps && ( ps aux | grep -v grep | grep -q 'openaps pump-loop' || openaps pump-loop ) 2>&1 | tee -a /var/log/openaps/pump-loop.log
2-59/4 * * * * cd /home/pi/myopenaps && openaps preflight | tee -a /var/log/openaps/pump-loop.log
preflight can't run unless isolated
we could do
4-59 * * * * cd /.....loop and all other
2 * * * * cd /.....preflight
for preflight once per hour
it fails after 3 to 7 hours...
oref0 device-helper - <name> <spec>: create/template a device from bash commands easily
oref0 alias-helper - <name> <spec>: create/template a alias from bash commands easily
Takes, the name
of the device, and a bash snippet to run.
$ oref0 device-helper speak-laugh 'echo hahaha: $1'
{"speak-laugh": {"vendor": "openaps.vendors.process", "extra": "speak-laugh.ini"}, "type": "device", "name": "speak-laugh", "extra": {"fields": "", "cmd": "bash", "args": "-c \"echo hahaha: $1\" -- "}}
This example prints hahaha
along with whatever is fed through the arguments:
$ oref0 device-helper speak-laugh 'echo hahaha: $1' | openaps import
process://speak-laugh/bash/-c "echo hahaha: $1" --
$ openaps use --format text speak-laugh shell --not-json-default 'THIS WORKS!'
hahaha: THIS
Ah, notice the $1
will only print the first argument.
Let's try that again:
$ oref0 device-helper speak-laugh 'echo hahaha: $*' | openaps import
process://speak-laugh/bash/-c "echo hahaha: $*" --
$ openaps use --format text speak-laugh shell --not-json-default 'THIS WORKS!'
hahaha: THIS WORKS!
Works pretty much the same way, but to help create aliases:
$ oref0 alias-helper ping echo 'PONG! $*'
{"type": "alias", "name": "ping", "ping": {"command": "! bash -c \"echo PONG! $*\" --"}}
$ oref0 alias-helper ping echo 'PONG! $*' | openaps import
ping ! bash -c "echo PONG! $*" --
$ openaps ping wow
PONG! wow
Variables and determine-basal output need to be documented by an experienced looper to help new loopers working through this process. @scottleibrand is assigned to this.
I think we all share the goal of making it easier for more people to contribute to the docs. Removing the dev branch, and using only master, would do a lot to further this goal.
There are instances where branching off from master makes sense (e.g. to collect documentation for a new feature before it’s been released), but those are called feature branches. Their release need not be coupled to all the other changes in the next “version” of the docs.
Please see:
$ oref0 template -h
/usr/local/bin/oref0-template <cmd> <type> [args]
Commands:
mint <type> generate template for import
completion generate bash completion script
Options:
-h, --help Show help [boolean]
$ oref0 template mint
/usr/local/bin/oref0-template mint <type>
Commands:
device <type> generate devices
reports <shape> generate reports
Options:
-h, --help Show help [boolean]
This can add the needed oref0 devices:
$ oref0 template mint device oref0
[{"extra":{"fields":"","cmd":"oref0","args":""},"type":"device","name":"oref0","oref0":{"vendor":"openaps.vendors.process","extra":"oref0.ini"}},{"extra":{"fields":"settings bg-targets insulin-sensitivities basal-profile max-iob","cmd":"oref0","args":"get-profile"},"type":"device","name":"get-profile","get-profile":{"vendor":"openaps.vendors.process","extra":"get-profile.ini"}},{"type":"device","calculate-iob":{"vendor":"openaps.vendors.process","extra":"calculate-iob.ini"},"name":"calculate-iob","extra":{"fields":"pump-history oref0-profile clock","cmd":"oref0","args":"calculate-iob"}},{"determine-basal":{"vendor":"openaps.vendors.process","extra":"determine-basal.ini"},"type":"device","name":"determine-basal","extra":{"fields":"oref0-iob temp-basal glucose oref0-profile","cmd":"oref0","args":"determine-basal"}}]
# to import the devices:
$ oref0 template mint device oref0 | openaps import
To manage common reports:
oref0 template mint reports medtronic-pump
Generates all the needed pump handling reports.
oref0 template mint reports oref0-inputs
Setup needed oref0 reports
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.