pump on the 'net

Skip to first unread message

Benjamin West

Jun 20, 2013, 2:17:56 PM6/20/13
to Nathan West, MeDevice List
My pump is running at bewest.io:8080

* https://github.com/bewest/decoding-carelink/blob/master/bin/socat_run_app.sh

I've used this script create something that decocare/stick.py knows how to deal with, and I was able to run it successfully, and watch "on-stick" packet counter increment.

Anyone could use this to try talking to my test pump over the internet.

Happy hacking.  If it goes down, let me know and I'll reset it.


Benjamin West

Jun 21, 2013, 12:24:32 AM6/21/13
to MeDevice List

Earlier I was able to set up my test pump on the internet, for anyone to access. I've posted a few more details on how to work with the test pump here: https://github.com/bewest/decoding-carelink#demo


Talk to my test insulin pump over the internet. Requires socat and python 2.7. The script./bin/socat_run_app.sh will connect to my server, bewest.io:8080 where my test insulin pump, serial208850 is waiting to talk to you.

Here's an example using my scripts:

$ git checkout -b tester # create a new branch with just your stuff, please
$ . ./bin/common # import some handy run_* functions
$ ./bin/socat_run_app.sh & # get my test insulin pump from bewest.io:8080
$ ls carelink.ttyUSB0  # creates this thing
$ ./status-quo.sh ./carelink.ttyUSB0
$ PORT=./carelink.ttyUSB0 SERIAL=208850 run_download 

Try figuring out the dosing commands. Is it possible to rewind the pump? Is it possible to enter new profiles and schedules?


In the first log, we can see a bunch of commands/settings downloaded, no problem.

In the second log, we try to download the 17 pages of history available.  We can see on the third stanza or so for downloading the 0'th page, a Bad CRC pops out.  This behavior is more common when forwarding over the 'net; when plugged in directly it happens, but less frequently.  There are probably some relatively easy fixes to make this work perfectly, I'm hoping someone can help suss out the details.  Clearly something about the way I proceed after a BadCRC occurs is not quite right, making data retrieval somewhat deterministic.

To produce these examples, I ran commands listed above.
Reply all
Reply to author
0 new messages