These are chat archives for nightscout/intend-to-bolus

2nd
Feb 2016
Ben West
@bewest
Feb 02 2016 00:01
was thinking this would run the loop in a daemon
there's no analogue to the report invoke interface
like an openaps-do type command
where you can say, run preflight, do-everything ,finalize
could simply do that every 5 min in loop
and would make it easier to tell if loop is running, offer knob to turn it on/off
Lori
@LoriLori
Feb 02 2016 00:02
don't see BLE part in there :(
Ben West
@bewest
Feb 02 2016 00:03
I'd export lot of things over ble
this dbus/glib stuff is boilerplate to connect to ble also
(see openxshareble)
I need to choose/implement a profile then export it over dbus/ble
Jason Calabrese
@jasoncalabrese
Feb 02 2016 00:03
I'd like to be more event driven instead of polling for new value
Ben West
@bewest
Feb 02 2016 00:03
I've got a web app that runs locally that can do some of this
and the web app needs to know also if loop is enabled or not
yeah, thinking of this as step towards that
that's more profiles/optimizing services
this at least moves everything into openaps tools
gets people out of struggling with cron
Lori
@LoriLori
Feb 02 2016 00:05
emulate share protocol so that you can connect Share app to it :)
Ben West
@bewest
Feb 02 2016 00:06
yeah.. it can act as proxy/router ;-)
Lori
@LoriLori
Feb 02 2016 00:06
that would be just one profile
Ben West
@bewest
Feb 02 2016 00:06
right
hmm that relatively well defined
I don't use dexcom cloud though
Lori
@LoriLori
Feb 02 2016 00:07
then emulate riley link so those apps can connect too :)
Ben West
@bewest
Feb 02 2016 00:07
yeah, was wondering if I should provide equiv raw transport to devices over ble...
Lori
@LoriLori
Feb 02 2016 00:09
emulate pump BLE protocol , wild idea
Ben West
@bewest
Feb 02 2016 00:09
d-bus provides for signals and interfaces and stuff
could send signals on reports/phases and stuff
Lori
@LoriLori
Feb 02 2016 00:12
submit a standard BLE pump profile as requirement for FDA devices
free of licences/patents with reference implementation and tests :)
Ben West
@bewest
Feb 02 2016 00:14
yeah, that'd be part of the fun of it
and doing it before industry ships in 2018
Lori
@LoriLori
Feb 02 2016 00:14
would delay products by 2 years as time to implement :)
emulate Connect! , they have decent app :)
Ben West
@bewest
Feb 02 2016 00:18
would be easier to emulate the pump
Jim Matheson
@jmatheson
Feb 02 2016 01:07
This message was deleted
This message was deleted
Does anyone recognize this error? pi@raspberrypi:~/aps $ openaps report invoke monitor/clock.json pump://JSON/read_clock/monitor/clock.json monitor/clock.json raised Non-hexadecimal digit found Traceback (most recent call last): File "/usr/local/bin/openaps-report", line 6, in <module> exec(compile(open(__file__).read(), __file__, 'exec')) File "/home/pi/src/openaps/bin/openaps-report", line 82, in <module> app( ) File "/home/pi/src/openaps/openaps/cli/__init__.py", line 44, in __call__ self.run(self.args) File "/home/pi/src/openaps/bin/openaps-report", line 75, in run output = app(args, self) File "/home/pi/src/openaps/openaps/cli/subcommand.py", line 50, in __call__ return self.method.main(args, app) File "/home/pi/src/openaps/openaps/reports/invoke.py", line 40, in main output = task.method(args, app) File "/home/pi/src/openaps/openaps/uses/use.py", line 44, in __call__ self.before_main(args, app) File "/home/pi/src/openaps/openaps/vendors/medtronic.py", line 62, in before_main self.check_session(app) File "/home/pi/src/openaps/openaps/vendors/medtronic.py", line 115, in check_session self.session = self.get_session_info( ) File "/home/pi/src/openaps/openaps/vendors/medtronic.py", line 81, in get_session_info fields = self.create_session( ) File "/home/pi/src/openaps/openaps/vendors/medtronic.py", line 103, in create_session self.pump.power_control(minutes=minutes) File "/home/pi/src/decoding-carelink/decocare/session.py", line 72, in power_control response = self.query(commands.PowerControl, minutes=minutes) File "/home/pi/src/decoding-carelink/decocare/session.py", line 101, in query self.execute(command) File "/home/pi/src/decoding-carelink/decocare/session.py", line 98, in execute return super(type(self), self).execute(command) File "/home/pi/src/decoding-carelink/decocare/session.py", line 35, in execute self.transfer( ) File "/home/pi/src/decoding-carelink/decocare/session.py", line 61, in transfer return self.stick.transmit_packet(self.command) File "/home/pi/src/decoding-carelink/decocare/stick.py", line 856, in transmit_packet result = self.process( ) File "/home/pi/src/decoding-carelink/decocare/stick.py", line 485, in process raw = self.send_force_read( ) File "/home/pi/src/decoding-carelink/decocare/stick.py", line 601, in send_force_read self.link.write(reader.format( )) File "/home/pi/src/decoding-carelink/decocare/stick.py", line 371, in format serial = list(bytearray(self.serial.decode('hex'))) File "/usr/lib/python2.7/encodings/hex_codec.py", line 42, in hex_decode output = binascii.a2b_hex(input) TypeError: Non-hexadecimal digit found
Scott Leibrand
@scottleibrand
Feb 02 2016 01:12
Just a one time thing? Could be noisy pump comms.
Jim Matheson
@jmatheson
Feb 02 2016 01:13
no, it is a new build (fresh sd card install) that I can’t get to work at all
wondering if i forgot to install something.
Ben West
@bewest
Feb 02 2016 01:23
this is with the carelink usb stick?
Jim Matheson
@jmatheson
Feb 02 2016 01:23
yes
Ben West
@bewest
Feb 02 2016 01:23
try mm-stick diagnose
should print tons of stuff, and have groups of counters
Jim Matheson
@jmatheson
Feb 02 2016 01:25
it did
not sure what all of this is, but the last portion seems to show no errors
INFO:main:INTERFACE STATS:
{'radio': {'errors.crc': 0,
'errors.naks': 0,
'errors.sequence': 0,
'errors.timeouts': 0,
'packets.received': 0L,
'packets.transmit': 0L},
'usb': {'errors.crc': 0,
'errors.naks': 0,
'errors.sequence': 0,
'errors.timeouts': 0,
'packets.received': 449L,
'packets.transmit': 449L}}
Jim Matheson
@jmatheson
Feb 02 2016 01:31
tested my other carelink and get same error, so must be something with my setup most likely
Ben West
@bewest
Feb 02 2016 01:33
that seems ok, but you've got no bytes going over rf
the stick itself is working ok
and decocare can talk to the stick just fine
I'm suspicious of your serial number
hmm
openaps use pump model
cat pump.ini, it should have serial = 123456 where 123456 is actually your serial number
Jim Matheson
@jmatheson
Feb 02 2016 01:36
hm, let me check that. I had my pump.ini pointing to an env var. which is set, but maybe i have a typo somewhere
Ben West
@bewest
Feb 02 2016 01:36
hmm, that probably won't work
by chance have you installed openaps from source?
Jim Matheson
@jmatheson
Feb 02 2016 01:42
yeah, env var was not working. swear i had it working before my SD card went down.
hard coded and it works
Jim Matheson
@jmatheson
Feb 02 2016 01:51
thx
dougtakeuti
@dougtakeuti
Feb 02 2016 02:02
I've been uploading to a site on azure. However, I got a 403 error and the app was stopped until reset, in 22 hrs, for using my 1 hr quota of cpu time. Is this a sign of problems with uploading? Is it possible to upload to heroku instead? I deployed dev to my heroku site, but I don't see the openaps pill as an plugin option, even though I included that in the enable list.
Scott Leibrand
@scottleibrand
Feb 02 2016 02:05
You'd need a paid azure site to support openaps. Heroku paid option is better apparently.
Not sure about your heroku deploy tho. Maybe @jasoncalabrese would know.
Jim Matheson
@jmatheson
Feb 02 2016 02:08
@scottleibrand with your meal-assist-setup.sh I am running into some issues with directory path. On line 1 you cd to home and then later you run openaps commands (i think everyone has a directory one level down for openaps)
so it throws the not openaps env error
actually that is not why it is throwing the error
Jim Matheson
@jmatheson
Feb 02 2016 02:13
not sure why, but that’s not it :)
Jason Calabrese
@jasoncalabrese
Feb 02 2016 02:27
@juliatakeuti your dev branch looks current, can you post the contents of SITE/api/v1/status.json
Scott Leibrand
@scottleibrand
Feb 02 2016 02:43
@jmatheson run the commands one at a time.
Rachel Sandlain
@audiefile
Feb 02 2016 02:51
@juliatakeuti you can set up on heroku instead, I did. Make sure you have all the same env vars and have the same or at least new-ish version of dev deployed
Jim Matheson
@jmatheson
Feb 02 2016 03:06
@juliatakeuti i moved to heroku as well.
Toby Canning
@TC2013
Feb 02 2016 03:10
@sulkaharo discovered what he thought was most likely a memory leak on the Edison and has to reboot frequently. I don't have to reboot as often, but my Edison does have the same issue even though I run killall -g --older-than 10m openaps in my loop
Dana Lewis
@danamlewis
Feb 02 2016 03:45
Hm. @TC2013 Might be running into that too. What symptoms are you seeing?
Scott Leibrand
@scottleibrand
Feb 02 2016 03:51
Wondering what to check for on console...
John Males
@johnmales
Feb 02 2016 04:25
Dexcom rep here really pushing the G5 - substantially cheaper than the G4.
Dana Lewis
@danamlewis
Feb 02 2016 04:26
Where's here?
John Males
@johnmales
Feb 02 2016 04:26
Australia
Rachel Sandlain
@audiefile
Feb 02 2016 04:26
But the transmitter lasts half as long
Dana Lewis
@danamlewis
Feb 02 2016 04:26
Wonder if they've changed their pricing strategy.
@audiefile They give you two
John Males
@johnmales
Feb 02 2016 04:27
yes @audiefile, and here they only give you 1 transmitter
Dana Lewis
@danamlewis
Feb 02 2016 04:27
You're kidding!
John Males
@johnmales
Feb 02 2016 04:27
I wish
Dana Lewis
@danamlewis
Feb 02 2016 04:27
I thought they gave 2 so you have one when the first stops
:(
How does the sensor price compare to a G4 sensor then?
Sounds like a bait and hook ...
Rachel Sandlain
@audiefile
Feb 02 2016 04:28
Isn't it the same sensor?
I think it is. Which is gross
John Males
@johnmales
Feb 02 2016 04:28
almost the same - G5 $540, G4 - $580
Thats Aussie pesos
Works out more expensive than medtronic - the medtronic transmitter lasts years
Rachel Sandlain
@audiefile
Feb 02 2016 04:29
And in some places sensor warranty is 5 days not 7 :frowning:
John Males
@johnmales
Feb 02 2016 04:29
I think they said 7 day sensor warranty
Interestingly they say the G5 is more accurate - 9% tolerance vs 14% for G4
Scott Leibrand
@scottleibrand
Feb 02 2016 04:31
that's old pre-505 firmware
Dexcom G4 PLATINUM w/ NEW Software 505 is 9%
eszcloud
@eszcloud
Feb 02 2016 04:32
is there a way to tell old G4 vs G4 platinum?
John Males
@johnmales
Feb 02 2016 04:32
Yes G4 Platinum is the one they are selling. Is the firmware upgradeable?
Scott Leibrand
@scottleibrand
Feb 02 2016 04:33
yes and yes
John Males
@johnmales
Feb 02 2016 04:33
ok :)
Scott Leibrand
@scottleibrand
Feb 02 2016 04:33
version number is in the About screen
Settings, Device Info
SW # will be something like SW10505 for the new version
Dana Lewis
@danamlewis
Feb 02 2016 04:34
@eszcloud You should upgrade your G4 receiver if you haven't
eszcloud
@eszcloud
Feb 02 2016 04:34
good call @danamlewis
what's the dividing line in the revisions?
Dana Lewis
@danamlewis
Feb 02 2016 04:34
Hm?
eszcloud
@eszcloud
Feb 02 2016 04:34
gotcha @scottleibrand
Scott Leibrand
@scottleibrand
Feb 02 2016 04:35
it will definitely end in 505
eszcloud
@eszcloud
Feb 02 2016 04:35
so SW100050 is old then it seems?
Scott Leibrand
@scottleibrand
Feb 02 2016 04:35
yes
Toby Canning
@TC2013
Feb 02 2016 04:37
@danamlewis No real symptoms other than perhaps it slowing down as memory gets full... It takes almost 3 days for that to happen.
For now, I set a daily reboot at 5 am
Scott Leibrand
@scottleibrand
Feb 02 2016 04:37
so this isn't a lock-up issue then
Toby Canning
@TC2013
Feb 02 2016 04:41
Not for me
Did yours?
Scott Leibrand
@scottleibrand
Feb 02 2016 04:42
I think mine have only been loss of network
or separately, locking up the RL
but that's just when I try to use it from two programs simultaneously
Toby Canning
@TC2013
Feb 02 2016 04:42
done that
what your free -m now?
and uptime
don't worry about logging in if you aren't already
Scott Leibrand
@scottleibrand
Feb 02 2016 04:43
edison@edison-rl ~ $ free -m
             total       used       free     shared    buffers     cached
Mem:           960        195        765          0         41         65
-/+ buffers/cache:         87        872
Swap:            0          0          0
edison@edison-rl ~ $ uptime
 20:43:23 up 58 min,  5 users,  load average: 0.69, 0.58, 0.52
had to reboot at dinner due to lack of wifi
Toby Canning
@TC2013
Feb 02 2016 04:43
195 used and 765 free?
Scott Leibrand
@scottleibrand
Feb 02 2016 04:44
ya
Toby Canning
@TC2013
Feb 02 2016 04:44
Take a look tomorrow night, will you?
Scott Leibrand
@scottleibrand
Feb 02 2016 04:44
yeah, I'll watch it over time
could always enable swap as a workaround. :)
Toby Canning
@TC2013
Feb 02 2016 04:45
Thanks
Scott Leibrand
@scottleibrand
Feb 02 2016 04:45
if it's truly a leak, the leaked memory won't be getting used, so no harm in swapping it out
Toby Canning
@TC2013
Feb 02 2016 04:45
good point, I don't know how to do that, so I just reboot it
Scott Leibrand
@scottleibrand
Feb 02 2016 04:46
but don't do that unless you actually get out of memory errors
Toby Canning
@TC2013
Feb 02 2016 04:48
k
Jim Matheson
@jmatheson
Feb 02 2016 05:27
Good to know @johnmales about pricing in AU. I am planning to move there in 18 months and just set all of my dexom things on auto reorder. Hopefully i can get ahead buffer wise enough to have extras stockpiled.
in other news it seems like insulin is much cheaper in AU.
John Males
@johnmales
Feb 02 2016 05:44
$USD1=$AUD1.4 so it may not be as bad as you thought
Jim Matheson
@jmatheson
Feb 02 2016 05:57
trust me, i watch the exchange rate daily.
i am mostly going off a fellow T1d that i know that has lived in both places in last few years and dealt with prices and insurance.
he always brought insulin over form AU. but exchanges rates have changes a lot this year
John Males
@johnmales
Feb 02 2016 06:03
They sure have!
Jim Matheson
@jmatheson
Feb 02 2016 06:08
just need sydney housing prices to tank and i will be golden :)
Ben West
@bewest
Feb 02 2016 06:15
@scottleibrand, @jasoncalabrese around to chat about daemonized version of openaps?
in my usual tradition of approaching things sideways, thinking about having a global system service that is "openaps aware" (knows to switch to openaps directory) and focuses on allowing "user" to "name" "timers" which emit signals, and are bound to any openaps command
Dana Lewis
@danamlewis
Feb 02 2016 06:17
Hmmm
Scott Leibrand
@scottleibrand
Feb 02 2016 06:18
I wonder if we're making things harder by introducing more concepts for users to learn in setting things up
Ben West
@bewest
Feb 02 2016 06:18
this would allow for running jobs or even multiple jobs concurrently on a "named phase" of openaps and replace cront with all openaps stuff
also, easily scriptable
this isn't for users per se
I mean, there'd be light-weight setup, but maybe as easy as openaps-dbus --installonce
Dana Lewis
@danamlewis
Feb 02 2016 06:19
How would the user experience differ, then, other than not setting cron?
Ben West
@bewest
Feb 02 2016 06:19
ah, well, I can offer a web-app for first-use install
can move to guis and click-config
blob
this is screen 2 of 3
Dana Lewis
@danamlewis
Feb 02 2016 06:20
We'd have to enable something g else for helping people understand the algorithm and how it works, theN
Scott Leibrand
@scottleibrand
Feb 02 2016 06:21
that big green button is a giant regulatory target too
Dana Lewis
@danamlewis
Feb 02 2016 06:21
Yes
Ben West
@bewest
Feb 02 2016 06:21
as a commercial service I might be willing to bear that burden
Scott Leibrand
@scottleibrand
Feb 02 2016 06:21
not without FDA approval
Dana Lewis
@danamlewis
Feb 02 2016 06:21
Then you'd be regulated by FDA
Ben West
@bewest
Feb 02 2016 06:22
so let's get it
Dana Lewis
@danamlewis
Feb 02 2016 06:22
I think that's a different convo than changing the setup process
Ben West
@bewest
Feb 02 2016 06:22
nah, this convo is about a daemon that runs stuff instead of cron
bringing everying under openaps roof
I don't want people struggling on cron
Dana Lewis
@danamlewis
Feb 02 2016 06:23
@mddub and I were discussing along these lines last night- ways to make the basic setup easier but need to find ways to help people learn how algorithm and system works, if we're taking out some of the learning steps
Scott Leibrand
@scottleibrand
Feb 02 2016 06:23
what about something as simple as a tool that writes out a crontab?
Ben West
@bewest
Feb 02 2016 06:23
I have a tool that prints nice cron jobs
and another that installs them
Scott Leibrand
@scottleibrand
Feb 02 2016 06:23
that seems like a logical evolution
Ben West
@bewest
Feb 02 2016 06:23
but after playing with it I think this daemon thing is better
we've been talking about it forever
Scott Leibrand
@scottleibrand
Feb 02 2016 06:24
what would the daemon do? just fire off stuff on a schedule?
Ben West
@bewest
Feb 02 2016 06:24
btw, this will allow a wrapper to use openaps from anywhere
it will allow a number of things
initially, instead of cron
you'll map --minutes 5 --name gather-all-monitor or someting similar
any high level openaps command
it'll help schedule any number of those
and offer json iterable translation
import/export
as well as high level "enable loop/disable loop"
Scott Leibrand
@scottleibrand
Feb 02 2016 06:25
or it could just be a true loop. no point having a schedule if you can just start the next loop as soon as the last one finishes
Ben West
@bewest
Feb 02 2016 06:25
number of other status things
well, with this you can think concurrently
so get glucose while we get history
when both are done, do the thing
Dana Lewis
@danamlewis
Feb 02 2016 06:26
I really would like some input from folks on some steps or learning tasks that we can pose to people to help them learn and step through more effectively. Right now it's an exercise left to the reader. Which is ok. But I think in addition to the daemon-or-cron thing, that should be a focus of discussion.
Ben West
@bewest
Feb 02 2016 06:27
yeah, this is an attempt to help both at same time in a very modest step
Dana Lewis
@danamlewis
Feb 02 2016 06:27
Maybe something like initiating phase a, which is low glucose suspend and involves adjusting max iob. Phase b might be adjusting targets from default and seeing change in outcome. Phase c might be meal and wtf assist, etc.
Ben West
@bewest
Feb 02 2016 06:28
yeah, I'm after that indirectly
this is a side-step towards that
allowing describing "phases"
as almost a new high level object in openaps
so initially our focus will be on porting to the new feature
Dana Lewis
@danamlewis
Feb 02 2016 06:29
K. I'm not sure if that above requires any code refactoring in of itself, or it's just a matter of reimagining and redocumenting the process
Ben West
@bewest
Feb 02 2016 06:29
then we'll start using it to make setup easier
it'd be interesting to come up with heuristic for "is operator prepared for looping?"
Scott Leibrand
@scottleibrand
Feb 02 2016 06:30
seem like we have two orthogonal goals: give people more concrete guidelines for iteratively understanding and testing, and make the non-learning parts of setup easier
Ben West
@bewest
Feb 02 2016 06:30
yeah
they are twin design constraints
too many people are getting confused by cron et al, and other basic things
things I don't really want them confused about
Dana Lewis
@danamlewis
Feb 02 2016 06:31
Not orthogonal. I don't think we should make the process easier (cron) without adding some learning emergency breaks to the rest of the process. Like Max iob default zero. We need more of those.
Mark Wilson
@mddub
Feb 02 2016 06:31
my argument last night was you spend all your gumption learning to write bash boolean expressions and how paths work in crontab, so that when all your sys admin struggles are over, you just turn the algorithm on and don't really think about it
Ben West
@bewest
Feb 02 2016 06:31
so the way you frame it, "knowing how the algorithm works" is interesting
Dana Lewis
@danamlewis
Feb 02 2016 06:32
Or "knowing what the system is doing and why" so you can let it run or decide if you need to intervene, turn it off , etc
Ben West
@bewest
Feb 02 2016 06:32
yeah, I think people that get stuck on cron are not learning the algorithm because cron has sucked up their capacity
Dana Lewis
@danamlewis
Feb 02 2016 06:33
Remembering @logichammer 's comment today about scrolling..
Ben West
@bewest
Feb 02 2016 06:33
right, this daemon first-priority is offer a giant on-off switch
Dana Lewis
@danamlewis
Feb 02 2016 06:33
Seeing a parallel here ;)
Ben West
@bewest
Feb 02 2016 06:33
default can be off
but it will focus on publishing/tracking "schedules" of "timers" which are mapped to named-"phases" which can run $n high level openaps commands
so some use commands can configure/list/edit schedules
Scott Leibrand
@scottleibrand
Feb 02 2016 06:34
seems we're reintroducing all of cron's complexity into a custom proprietary thing
Ben West
@bewest
Feb 02 2016 06:34
well, yes that's one way of looking at it
this framework also extends to other things though
so it extends to offering openaps stuff over ble
Scott Leibrand
@scottleibrand
Feb 02 2016 06:35
I think the daemon needs to be dead simple and obvious by default
Ben West
@bewest
Feb 02 2016 06:35
so your mobile app could track/drive/configure openaps on demand
you could even flash an rpi
put the ble dongle on
install mobile app and install the whole thing
thinking about "what is the heuristic to test the operator?" is interesting
Scott Leibrand
@scottleibrand
Feb 02 2016 06:37
I think if you want something app-ish, you end up with something more like HAPP than the openaps toolkit
Ben West
@bewest
Feb 02 2016 06:37
I don't want them hung up on cron if we are really interested in getting them understanding the behavior rather than cron syntax
we can eliminate the syntax issues with better tools in general
some of these features are targeted towards your loop design
Scott Leibrand
@scottleibrand
Feb 02 2016 06:37
and user-friendly documentation of the tools
Ben West
@bewest
Feb 02 2016 06:38
because you wanted to run multiple things etc
Dana Lewis
@danamlewis
Feb 02 2016 06:38
HAPP is also not helping people understand how/why. But it's open loop, so less of a deal..
Mark Wilson
@mddub
Feb 02 2016 06:38
i was explaining my rig to a friend who's done a bunch of firmware hacking, and he asked why not just make a board with two antennas and an algorithm written in c
Scott Leibrand
@scottleibrand
Feb 02 2016 06:38
one open question: do we document and guide people through the understanding why, or do we need to make it a hoop in the tools?
Mark Wilson
@mddub
Feb 02 2016 06:39
my answer boiled down to, because there are many parts we still want to be able to iterate on, among them the algorithm and monitoring
i can see the intent in the design of the openaps toolkit, but the setup seems to me less about setting up an environment to iterate/prototype, more about figuring out enough sys admin to get a script to run and then leave it running
Ben West
@bewest
Feb 02 2016 06:41
yeah, I want to eliminate that
I want people playing with it
not struggling to grok crontab et al
the real downside I see, btw
is that these feature additions will tie it almost inextricably to linux for sure
right now it's mostly an agnostic toolkit that can run on windows/mac osx/linux
Mark Wilson
@mddub
Feb 02 2016 06:43
they do seem like orthogonal concerns
Ben West
@bewest
Feb 02 2016 06:44
that's why this tool, like many of my others will approach it kind of sideways
Mark Wilson
@mddub
Feb 02 2016 06:44
sounds like you want to build an openaps platform which "just works" and has its own idioms for gluing processes together
Ben West
@bewest
Feb 02 2016 06:44
it's an openaps only cron replacement
Mark Wilson
@mddub
Feb 02 2016 06:45
possibly coupled to linux to achieve the "just works"
Ben West
@bewest
Feb 02 2016 06:45
but via it's sideways approach also allows exporting over ble, mqtt, running concurrent tasks, etc
Mark Wilson
@mddub
Feb 02 2016 06:45
but i'm thinking more that the relationship between openaps and oref0 should be refactored a bit so that you're more responsible for the gluing
Ben West
@bewest
Feb 02 2016 06:45
oh I've been thinking about that too
Mark Wilson
@mddub
Feb 02 2016 06:46
decompose the algorithm into smaller pieces, represented as different processes
Ben West
@bewest
Feb 02 2016 06:46
maybe arranging special flags to call, like --autoconfig foo bar or similar
Mark Wilson
@mddub
Feb 02 2016 06:46
i'd love to be able to understand meal assist at a high level in terms of a reflowing of processes rather than only reading a diff
Jim Matheson
@jmatheson
Feb 02 2016 06:47
i did not get hung up on cron, but in general 95% of my time has been spent on things that are not getting familiar with the logic of oref0 decisions.
Mark Wilson
@mddub
Feb 02 2016 06:48
s/openaps/oref0/ :)
Dana Lewis
@danamlewis
Feb 02 2016 06:48
@mddub Would love to collaborate on writing up the process to figure out what these segments are, in tandem with simplifying/easing the setup process.
Jim Matheson
@jmatheson
Feb 02 2016 06:49
s/mddub/smartass/g :)
Dana Lewis
@danamlewis
Feb 02 2016 06:50
But. I think parallel is key. Not setup tool making things easier and us playing catchup down the line. Tools are easy. Reimagining the process and the best way to learn requires some input from folks.
"More responsible for gluing" is a good focus
Mark Wilson
@mddub
Feb 02 2016 06:50
@jmatheson just pointing it out because i think the setup flow primes you to view openaps and oref0 as one big blob instead of a framework and a specific algorithm with specific components
Dana Lewis
@danamlewis
Feb 02 2016 06:51
:+1:
Jim Matheson
@jmatheson
Feb 02 2016 06:51
yup. fair enough.
Mark Wilson
@mddub
Feb 02 2016 06:51
yeah, @danamlewis, if the components were even smaller and you had to interact with openaps even more to glue them together, that would be good
Ben West
@bewest
Feb 02 2016 06:52
any UI/app will need to know if loop is running or not for proper UX
that's actually main drive for this
Scott Leibrand
@scottleibrand
Feb 02 2016 06:52
to give an example of the kind of process we could shoot for: have a fully automated openaps setup script that creates a working low-glucose-suspend-only loop. then walk the user through looking at the code, figuring out what decisions it's making and why, and deciding whether/how to enable more aggressive parts of the algorithm (changing max_iob etc.)
Ben West
@bewest
Feb 02 2016 06:52
it's hard to tell using cron, so need to bring that scheduling inside an app somehow
I have that :-)
Scott Leibrand
@scottleibrand
Feb 02 2016 06:52
so do I
what we don't have is the process part
the tools are easy: writing a good process is hard
Ben West
@bewest
Feb 02 2016 06:53
I have a webapp where you enter the needed fields and it sets whole thing up over ajax
3 fields plus name and email
2 serials
Scott Leibrand
@scottleibrand
Feb 02 2016 06:53
so we need some people to step up to work together to reimagine the process, as far as how we want the user to engage with the system to learn the algorithms and get comfortable with troubleshooting everything
Ben West
@bewest
Feb 02 2016 06:54
app needs to know if loop is running or not though
Scott Leibrand
@scottleibrand
Feb 02 2016 06:54
that process can have "insert tool to do foobar here" and we can easily fill those holes using the tools we have
I think an app is a separate discussion
Mark Wilson
@mddub
Feb 02 2016 06:54
@scottleibrand i do like the idea of getting to only-low-glucose-suspend by default
Dana Lewis
@danamlewis
Feb 02 2016 06:55
That's the current mo, @mddub
Mark Wilson
@mddub
Feb 02 2016 06:55
sorry, i meant more easily/automatically getting to it
Scott Leibrand
@scottleibrand
Feb 02 2016 06:55
but right now, everyone just says "oh, it's not high-temping me. I need to raise max_iob" and skips over any investigation of the code to figure out why
we would need to "gate" all of the advanced features the way we do with max_iob, but more importantly have the docs walk people through the why and how, not just what people need to do to get to the next step
Dana Lewis
@danamlewis
Feb 02 2016 06:57
Yes. Keep reiterating what I've been saying ;)
Mark Wilson
@mddub
Feb 02 2016 06:57
to be honest, when i think about what would be required to achieve that, the code would have to be rewritten
Ben West
@bewest
Feb 02 2016 06:57
either I add a thing to preflight to check a "global" "do not run" file or there's a daemon to take over scheduling and correctly report via api whether or not "looping" is active or not
need api access to the schedule
people can keep cron or adopt the daemon :-)
Dana Lewis
@danamlewis
Feb 02 2016 06:59
@mddub That was one of my earlier questions. If we go the gate approach, we need to stop and rethink those phases and refactor potentially to support the approach of having "features" you'd add on to base versions of the loop
Scott Leibrand
@scottleibrand
Feb 02 2016 06:59
I think most people are using Nightscout as their visualization of whether the loop is running
Ben West
@bewest
Feb 02 2016 06:59
I think with the new import/export features you'll be pleased
Scott Leibrand
@scottleibrand
Feb 02 2016 06:59
@bewest are you trying to move away from using NS for that?
Ben West
@bewest
Feb 02 2016 06:59
no
I'm thinking about how to flash 1k - 10k devices and have a first-use experience that just works
Scott Leibrand
@scottleibrand
Feb 02 2016 07:00
ok, that is a hugely different conversation
can we ever do 10k users without getting FDA PMA?
I doubt it
Ben West
@bewest
Feb 02 2016 07:00
and thinking about stepping stones to get there
PMA is not needed I think
they'll likely introduce de novo class III
it already exists, but they'll introduce some things they'd like to see given our assessment of risks/harms
Scott Leibrand
@scottleibrand
Feb 02 2016 07:01
so you want to basically make a consumer-grade APS?
Dana Lewis
@danamlewis
Feb 02 2016 07:01
@mddub sounds like we are on same page. Want to sleep on it some/start thinking on what those chunks are, and circle back in a couple of days or so to discuss more? Or open an issue or something for us to start tracking on?
Mark Wilson
@mddub
Feb 02 2016 07:02
@danamlewis yeah, it's not hard, it just takes some thinking about. if i were doing it, i'd ensure 100% test coverage, rewrite the code from a bunch of if's into a more functional style, and break those functions into the "components" we're describing
Scott Leibrand
@scottleibrand
Feb 02 2016 07:02
I would totally support such refactoring
Mark Wilson
@mddub
Feb 02 2016 07:02
"if the suggested temp is higher than the limits allow" becomes inputs -> suggested temp -> actually enactable temp -> etc.
Dana Lewis
@danamlewis
Feb 02 2016 07:02
(Making a big assumption that you'd be interested in contributing some time and energy here. Hoping you and a few others are, in addition to me)
Ben West
@bewest
Feb 02 2016 07:03
yeah, I want to work on something that is basically a "product"
I'm willing to take all the risk
Mark Wilson
@mddub
Feb 02 2016 07:04
@danamlewis my plate is pretty full right now, but i am happy to start the conversation at least
Dana Lewis
@danamlewis
Feb 02 2016 07:04
K.
@bewest hopping offline soon for night, but definitely want to talk more on this and hear more what you're thinking.
Scott Leibrand
@scottleibrand
Feb 02 2016 07:05
@bewest in that case I think the "product" version gets re-done from scratch as far as form factor, hardware, UI, etc. Probably only keep the core algorithms the same.
about the level of integration that HAPP has with oref0
Ben West
@bewest
Feb 02 2016 07:05
I've aligned some partners in family and elsewhere, but I don't see why it's not possible to ship a NIghtscout 2.0 "open unified loop" + optional oref0 basals as features
getting all the data unified in one display is game changer in itself
getting regulated basals on top is icing on cake
I don't quite understand why the world needs to wait until 2018 for this
Scott Leibrand
@scottleibrand
Feb 02 2016 07:06
and IMO any "product" version really can't rely on reverse engineered comms to off-the-market pumps
Ben West
@bewest
Feb 02 2016 07:06
meh, I'm willing to take that risk
decocare has at least many hours on it as NS stuff did
probably more
Scott Leibrand
@scottleibrand
Feb 02 2016 07:08
you really think you can get FDA approval for a medical device based on RE comms to a device they told MDT to take off the market because of security concerns?
Ben West
@bewest
Feb 02 2016 07:08
pretty sure if someone like greatscottgadgets or similar offers kit like this with appropriate disclaimers, medtronic will open up a bit
first thing I would do in FDA presubs is say we're doing this and Medtronic won't confirm data comms
what does FDA think of that?
Scott Leibrand
@scottleibrand
Feb 02 2016 07:10
that might work for getting them to publish stuff. fact remains that FDA would demand a secured connection between our stuff and the pump.
Ben West
@bewest
Feb 02 2016 07:10
from us or from pump?
we're happy to comply with any authentication demands from pump
we have full access, after all
just let us know...
Scott Leibrand
@scottleibrand
Feb 02 2016 07:11
right, but until we have a pump with decent auth and security, we can't produce a secure APS system that would pass FDA muster
with means we need a cooperative pump maker
Ben West
@bewest
Feb 02 2016 07:12
why assume that?
did they tell you that directly?
the last I read was that it was a "SHOULD" not a "MUST" in RFC speak
we're happy to work with any pump who offers proper auth
I think too many DIY projects treat FDA like something to be avoided
Scott Leibrand
@scottleibrand
Feb 02 2016 07:14
wonder if FDA has any levers to "force" interoperability
did you read their interop draft guidance?
Ben West
@bewest
Feb 02 2016 07:14
glooko was on market for years before getting "enforcement discretion on class II"
I scanned it
I agree with your write up mostly
Scott Leibrand
@scottleibrand
Feb 02 2016 07:15
you should read it, and draft your own comments
Ben West
@bewest
Feb 02 2016 07:15
there is a PDF from richard chapman at fda
was a training presentation
Scott Leibrand
@scottleibrand
Feb 02 2016 07:15
we'll need to submit them officially, and get lots of other people to do so
Dana Lewis
@danamlewis
Feb 02 2016 07:15
Yes. Everyone needs to submit comments officially
Ben West
@bewest
Feb 02 2016 07:15
says standard/interop is useless tool for regulator
assumes patient, third-party can at least purchase data specs
and that this is crucial role FDA plays in insuring independent review
that the docs are there, created, submitted, patient and third-party can access them obviously
so big issue here is not interop per se
but access to whatever protocol is there
why are patients invited to reverse engineer?
dunno, been trying to collect my thoughts
and then daemons come calling
Dana Lewis
@danamlewis
Feb 02 2016 07:18
But if patients start a service, what's the line there about proprietary? (Curious line of thought about whether there's any distinction)
Ben West
@bewest
Feb 02 2016 07:18
right, I would use this ambiguity to my advantage
this is industry's worst fear
I think we have the power to change the rules vis-a-vis 2018 being accepted date for AP
all the recent articles ignored openaps
dunno, industry has really annoyed me, maybe I'm at ropes' end
there are two separate concerns liability, regulatory
FDA is part of regulatory, not including CE, FCC and others
turns out none of regulatory really helps you with liability, per se
Scott Leibrand
@scottleibrand
Feb 02 2016 07:22
2018 date is from regulatory requirements for clinical trials.
Or 2017 in MDT's casw
*case
we haven't started a trial yet, so we can't follow that route any faster
not sure if there's any way to convince FDA they don't need full trial results to prove safety and efficacy.
Ben West
@bewest
Feb 02 2016 07:25
I've found it's best not to guess or second guess FDA
it's worth asking them directly
and getting your docs in order
here's another way to think about this
debian has had a huge focus/priority on "reproducible builds"
Scott Leibrand
@scottleibrand
Feb 02 2016 07:26
They've told MDT and probably Bigfoot what they expect for approval. That included a pivotal trial.
Ben West
@bewest
Feb 02 2016 07:26
idea is that since we're using computers, various things should be reproducible
openaps is designed to support prototyping and designing APs
oref0 is first meaningful version
but we know a ton more now than we did a year ago
that knowledge needs to made reproducible
so people aren't stuck on stupid tech stuff
Kevin Wells
@wkcwells
Feb 02 2016 07:28
Sorry to jump in late here, but this is a fascinating discussion.
Mark Wilson
@mddub
Feb 02 2016 07:29
but is a device which by default acts as a read only bridge to a pump and cgm, but is open enough to be loaded with an aps algorithm, subject to aps regulation?
Kevin Wells
@wkcwells
Feb 02 2016 07:29
Jumping back to the design discussion, my own (3 weeks) worth of experience agrees with the comments that users will get hung up on the sys admin type work and not really learn wha tthe algorithm is.
I’ve looked at a lot of the code and can’t say that I really have the big picture yet.
Dana Lewis
@danamlewis
Feb 02 2016 07:30
@wkcwells Needs to be an ongoing convo with lots of input over multiple time zones, so don't worry about being "late". Although speaking of, heading offline , so will catch up with everyone tomorrow
Kevin Wells
@wkcwells
Feb 02 2016 07:31
I think it would help to have more of a unified daemon model.
Dana Lewis
@danamlewis
Feb 02 2016 07:32
@mddub It'd be subject to device regulation, though
Would be fascinating to see if fda would approve an algorithm alone, like the one that got CE mark approval in EU
But I think that came from a clinic and had traditional trials, so not apples to applea
Kevin Wells
@wkcwells
Feb 02 2016 07:32
How about a “programmable” program that has a base level of operation but requires a little scripting or perhaps a meaningful amount of configuration setup that requires some understanding of the algorithms in order to use them.
Sulka Haro
@sulkaharo
Feb 02 2016 07:34
Concur with the sysadmin comment. All my available energy going into having working hardware.
Kevin Wells
@wkcwells
Feb 02 2016 07:34
Basically abstract the algorithm setup, timings, etc. from the underlying system (cron, bash, etc.) so the DIY part could focus more on the treatment algorithm.
Plus it would be more platform agnostic.
Dana Lewis
@danamlewis
Feb 02 2016 07:35
In addition to ideas, asking for raised hands for people to help with re-envisioning this process :)
Kevin Wells
@wkcwells
Feb 02 2016 07:35
Sorry that this is 30 mins behind the current conversation. Just wanted to get these thoughts out. I'd love to work on this, but am not capable of leading it now.
Both re-envisioning and coding.
Dana Lewis
@danamlewis
Feb 02 2016 07:35
Contributing input, though?
Kevin Wells
@wkcwells
Feb 02 2016 07:37
Yes - explicitly. I just still ahve a lot of questions and need guidance from all your experience.
Ben West
@bewest
Feb 02 2016 07:37
so the downside with the approach I've plotted is that it does tie it to linux specifically
Scott Leibrand
@scottleibrand
Feb 02 2016 07:37
One avenue that might be viable for FDA approval is to productize a read-only device with a well defined intended use case, much like MM Connect and Share, maybe with some custom alerts based on oref0 algorithms. That device could be open enough to put read/write algorithms on, as an off-label use.
Ben West
@bewest
Feb 02 2016 07:37
I'll be using d-bus to bridge openaps stuff to global system services
Kevin Wells
@wkcwells
Feb 02 2016 07:37
That’s not terrible - but what actually ties it to Linux?
Ben West
@bewest
Feb 02 2016 07:38
yeah, thinking about the basaling as off-label
similar to android's "allow debug" panels
Scott Leibrand
@scottleibrand
Feb 02 2016 07:38
Of course, FDA will know the off-label use is likely, and will push back on whether that's really intended use.
Ben West
@bewest
Feb 02 2016 07:38
d-bus
Scott Leibrand
@scottleibrand
Feb 02 2016 07:39
So we'd need to do some level of risk mitigation for the likely off-label use.
Ben West
@bewest
Feb 02 2016 07:39
d-bus is similar to windows' com/registry
yeah, some kind of heuristic for "what does user know?"
thinking about game-ifying some of the intro tests?
has 30 days cgm, has relatively stable basals?
d-bus is usually a linux-only app; it runs on virtually all linux systems, and can compile for windows and osx but is extra extra work
doubt it runs on android either
Kevin Wells
@wkcwells
Feb 02 2016 07:44
@bewest With my “limited knowledge” caveat, I would assume that we are tied to a platofrm that can run python or js and therefore d-bus / linux is not too limiting.
More important than cross platform is to wrap all the moving parts together to allow focus on the treatment logic.
Ben West
@bewest
Feb 02 2016 07:47
yeah, it restricts the developer pool in some sense: if I was primarily an android vs IOS vs windows developer, it'd be very different choices
as it is, I'm a linux dev, so rpi et al works well
Mark Wilson
@mddub
Feb 02 2016 07:48
if the idioms are universal enough, the platform underneath can always be ported
Ben West
@bewest
Feb 02 2016 07:56
yeah, right now I'm prototyping
I liked cron for prototyping initially
but I think we've found that it's nice to run dexcom and medtronic stuff in parallel
it's also nice to have some kind of api to configure against
Matteo Neri
@francescaneri
Feb 02 2016 12:32
blob
Hi to all, may I ask here for a communication problem between CareLink and medtronic?
JaysonEwer
@JaysonEwer
Feb 02 2016 14:03
When I flash my G4 receiver to the latest firmware, it says I may loose all my data
JaysonEwer
@JaysonEwer
Feb 02 2016 14:13
Will that mess up my OpenAPS setup? :-)
Jason Calabrese
@jasoncalabrese
Feb 02 2016 15:57
don't do that unless you have to, there's no going back
you'd need a different branch of the dexcom reader to use the receiver plugged in
the common integration with G5 is using the Share service and having NS pull data from there and then having OpenAPS pull from NS, but lots of hops
Matthias Granberry
@mgranberry
Feb 02 2016 16:06
if I can get a loaner G5 receiver I'd be happy to integrate dexcom_reader
it isn't difficult
Jason Calabrese
@jasoncalabrese
Feb 02 2016 16:16
there's this: bewest/dexcom_reader#1, but it wasn't integrated
and you probably know the context there better than me
Matthias Granberry
@mgranberry
Feb 02 2016 16:27
yep. dexcom_reader needs to decode the version header field and interpret the record differently for the G5. The tidepool guys have figured out what the field deltas are so it should be easy
Pete Schwamb
@ps2
Feb 02 2016 16:38
I’ve been watching the discussion on shifting away from cron with a lot of interest. I’ve been thinking a lot about these things from a different perspective, as I’ve been trying to find a way to provide a toolset approach on a mobile device.
Pete Schwamb
@ps2
Feb 02 2016 16:44
The conclusion I’ve arrived at is that we need to view the user as a developer. We will provide the API, and in the case of mobile, the IDE as well. I’ve been picturing a JS API, but it could work for other languages. The benefits of a JS API are that we can provide it on all the platforms.
Matthias Granberry
@mgranberry
Feb 02 2016 16:45
@ps2 I kind of wonder if maybe a pipeline model is the way to go. A simple interconnect descriptor to wire processing steps together seems like it would be both a good fit for openaps and mobile.
it would be nice to unify the two somewhat
Pete Schwamb
@ps2
Feb 02 2016 16:46
If we can give the user an API that includes event hooks like ‘bg updated’, and ‘new treatment’, and API functions like ‘setTempBasal’, ‘uploadToNS’, then they can work through the stages you were talking about.
@mgranberry I’m thinking just a simple JS API and events.
They could work their algo as a pipeline, or structure it in a different way that makes more sense to them.
The main idea is to make it simple enough so they can focus on the data and algo and its actions.
Matthias Granberry
@mgranberry
Feb 02 2016 16:47
sure. But I think building blocks should operate as an event transformer.
Rachel Sandlain
@audiefile
Feb 02 2016 16:48
Several hours late, but I want to caution on making things too easy to set up. I'm very concerned about people only half understanding but managing to set up and then doing stupid things. People turn off their brains and all logic of they think they can make life easier for their kid. I've seen it a bunch with nightscout. I've also seen a lot of scary questions, like how to remove iob. Loopers need to understand diabetes as well as the system. Even cron (not that hard imo) as the better you understand all the parts that make things work, even automation, the safer you are
Matthias Granberry
@mgranberry
Feb 02 2016 16:48
there needs to be a way to collate/group events, though, and that can be somewhat difficult to think about in a pure event model
Pete Schwamb
@ps2
Feb 02 2016 16:51
IOB calculation could be something the platform handles as well. The user could make a call to get IOB that would return both the calculated IOB, and the recency of the data that was used.
@audiefile Even us “experts” at these systems have to trust the components they’re using to some degree w/o understanding the details.
Matthias Granberry
@mgranberry
Feb 02 2016 16:52
@audiefile I think that's an important observation. It's easy to lose sight of the wide variation in education and knowledge among the users. I suspect OpenAPS appeals to two groups of people -- those who are obsessive and well-controlled and want to relieve some burden and those who don't fully "get" it and want some help. That second case is probably where the biggest long-term payoff is, though, but it seems like an insurmountable task without more data
Pete Schwamb
@ps2
Feb 02 2016 16:54
I agree that some kind of gating is necessary, but I don’t think it should be ‘can you set up a cron file?’. It should be more along the lines of proving understanding about the situations that can arise and the effects of actions they can take with the system.
Matthias Granberry
@mgranberry
Feb 02 2016 16:56
it would be nice if we had an educator or two in our ranks to help develop a "getting started" curriculum
Dana Lewis
@danamlewis
Feb 02 2016 16:57
would be nice to have folks join a brainstorm about what those core components/stages are. Can figure out how to make the process (and docs, and learning process) match from there.
Kevin Wells
@wkcwells
Feb 02 2016 17:00
What do folks use as a debugging environment for OpenAPS on the Pi? Or do you develop on a computer?
Pete Schwamb
@ps2
Feb 02 2016 17:00
The big ‘aha’ moment I felt was about exposing the entire platform as a JS API. It 1) provides a reduced scope things the user needs to learn about separate from BG management. 2) provides a mechanism for exposing different back ends (iOS vs Android, vs Linux)
3) allows for consistency in documentation/education across platforms.
4) fits in well with the JSON based data flow of existing components.
Dana Lewis
@danamlewis
Feb 02 2016 17:02
@wkcwells are you looking for something to ssh in via your phone on the go, or are you talking about a different kind of debugging?
Kevin Wells
@wkcwells
Feb 02 2016 17:04
I have SSH setup which is handy. I’m looking to test code by setting breakpoints etc. and a better means of editing than nano. Basically I’m at the level of nano and print() debugging right now, and its a little painful.
Rachel Sandlain
@audiefile
Feb 02 2016 17:04
I'm not saying we shouldn't make things easier. I agree setting up a cron job shouldn't be a deciding factor. I agree there is a certain level of faith/not understanding every tiny minutiae. I just want to remind people that people of all levels of understanding are watching this group. We need to be cautious that when we make things easier, we don't make them dangerously easy.
Pete Schwamb
@ps2
Feb 02 2016 17:06
Yes, agree 100%.
Matthias
@ceben80
Feb 02 2016 17:15
it would be nice if we had an educator or two in our ranks to help develop a "getting started" curriculum @mgranberry : That would be for beginners like me absolutely great :+1:
Dragan Maksimovic
@dm61
Feb 02 2016 17:44
joining in late. I agree with @audiefile and others that things should not be too easy and that excellent understanding of diabetes and at least some understanding of how the system works should be required. At the moment, the OpenAPS "gate" seems to be based almost entirely on how well one can put together bash commands or setup cron, which I am not sure are good proxies for how well one understands diabetes and risks involved in any bg control, let alone OpenAPS.
Jim Matheson
@jmatheson
Feb 02 2016 17:45
I did a course with onemonth.com last year. I really like the way they split things into lessons. Each lesson was a video that you could work along with (and rewatch). Each lesson had attached content, links, files as needed. And each lesson was a thread so people could discuss questions and issues within that lesson when they got stuck. Would be great if we could do something like that. Then swap in lesson updates over time as things change.
Scott Leibrand
@scottleibrand
Feb 02 2016 18:20
@JaysonEwer are you upgrading to G4 505 firmware, or G5? The former is a good idea. Be prepared for a loop outage as CGM gets BG data again, but it shouldn't be too long.
Jason Calabrese
@jasoncalabrese
Feb 02 2016 18:26
I assumed it was G5, wasn't thinking about 505
Dana Lewis
@danamlewis
Feb 02 2016 19:12
ok. I have ideas for how to rework the docs to get us to the framework mindset we all seem to agree we need to better step people through learning the algorithm/what the system does piece of things. So, I’m going to get @logichammer to finish his outstanding PR (integrating some of his content into the NS setup/visualization page); will merge dev to master, and then will do my restructure as a PR to dev, and then we can further iterate on segmenting the process and the appropriate levels of “gates” to make sure it’s still a safe setup process with the user understanding (and taking responsibility for) what they’re doing.
will take a bit of time, so will start this while we continue discussion about daemon vs cron (i.e. better detailing what the cron process is). and in the meantime, as I’ve previously asked, if anyone has ideas for the chunks and gates, shoot them my way please. otherwise everyone can pile in to the PR & moving forward beyond that.
Dragan Maksimovic
@dm61
Feb 02 2016 19:30
@danamlewis sounds great. My thoughts: stage 1: super easy setup of read only, no enact, display on NS; this could be a single setup script, including cron or however else you decide to run the system. Stage 2: check sensitivity and profile rates; I bet these could be off for most potential users. In read-only mode OpenAPS could provide great assistance to the user. Stage 3: detailed explanation of determine-basal, the core oref0 component, with examples. Stage 4: looping without meal assist - this is very safe and looks like it works well. Stage 5: detailed explanation of meal assist, with examples of how it can perform well (or not) and what one can do about it. stage 6: looping with meal assist. None of the above need to include any gory details - to the average user it makes no difference how the underlying code is structured or implemented - these could go to a reference section of the docs. Each of the above needs its own troubleshooting section. I look forward to your next dev of doc, and would be happy to assist if I can
Dana Lewis
@danamlewis
Feb 02 2016 20:34
:+1: Thanks @dm61
Kevin Wells
@wkcwells
Feb 02 2016 20:44
Related to my question above about debugging environments, I decided to bite the bullet and try to setup OpenAPS on a mac where I can debug with any favorite IDE.
But it looks like the Mac doesn’t recognize the MM stick properly. I get a bunch of console errors and then it gives up. Has anyone worked on this before?
Jason Calabrese
@jasoncalabrese
Feb 02 2016 20:47
the carelink stick only seems to work on some linux kernels, I test on other pis
some oref0 things I can test on my laptop
Kevin Wells
@wkcwells
Feb 02 2016 20:49
What’s your debug cycle on the pi? Just nano and print()?
Jason Calabrese
@jasoncalabrese
Feb 02 2016 21:29
at one point I had a fake loop setup that would check monitor files from another branch and stop at suggest
and had that posting to a different NS instance, but usually easier to test by just switching branches for real
Rachel Sandlain
@audiefile
Feb 02 2016 21:30
Agree with @dm61 maybe add a step 3.5 of open looping
Scott Leibrand
@scottleibrand
Feb 02 2016 21:44
@wkcwells my "IDE" is vim. ;-)
with my vimrc, that gets me syntax highlighting/checking and basic editor stuff.
for debugging I put console.log type statements in the appropriate places, either in the code I'm editing or in the unit tests