Giter Site home page Giter Site logo

benceszasz / xdripcarelinkfollower Goto Github PK

View Code? Open in Web Editor NEW
86.0 17.0 64.0 11.82 MB

Experimental Medtronic CareLink Follower data source for xDrip+

License: GNU General Public License v3.0

Java 99.93% Shell 0.01% Python 0.06%
nightscout medtronic carelink xdrip

xdripcarelinkfollower's Introduction

xDrip+ CareLink Follower

Experimental Medtronic CareLink Follower data source for xDrip+

Medtronic CareLink Follower data source for xDrip+ to retrieve data from Medtronic CareLink of online standalone CGM and insulin pump device data uploads (Guardian CGM and MiniMed 7xxG insulin pumps) inside and outside of US.

There is also a separate repository containing only the communication with CareLink in Java: CareLinkJavaClient

Supported devices

  • Medtronic standalone CGMs (Guardian Connect (Enlite, Guardian 3) and Guardian (Guardian 4))
  • Medtronic MiniMed 7XXG insulin pumps (740G, 770G, 780G)

Features

Download from CareLink and display in xDrip:

  • SG readings
  • Insulin treatments: bolus and auto correction (only for pumps!)
  • Meals (only for pumps!)
  • Finger BGs
  • Notifications
  • Sensor status information (next calibration, remain lifetime)
  • Pump status information (IOB, reservoir, battery)
  • Maximum Auto Basal (auto basal limit)

Upload to Nightscout using xDrip built-in Nightscout Sync feature:

  • SG readings
  • Insulin treatments (bolus and auto correction)
  • Meals
  • Finger BGs
  • Notifications

Limitations

  • CareLink MFA is not supported!!!
  • Notification texts are currently always in English
  • Treatments of Guardian Connect and Guardian apps are not supported in xDrip, because these are just simple markers for CareLink followers, required details are missing (no insulin amount, no carb amount)

Requirements

  • CareLink Patient or Care Partner account with MFA DISABLED

How to use it

  • Download and install latest release
  • Configure CareLink Follower:
    • Select CareLink Follower for data source
    • Set CareLink country, username, password and patient username if using a care partner account with multiple patients
    • Select required data types: Finger BGs, Boluses, Meals, Notifications
    • If needed change grace period (wait after last sensor + 5 mins)
    • If needed change missed data polling interval (polling interval if data is not received after last sensor + 5 mins + grace period)
  • Additional options:
    • Display pump status info (Settings > Less common settings > Extra status line > Pump Status)
    • Display sensor status info (Settings > Less common settings > Extra status line > External Status)
  • If needed configure upload to Nightscout (Settings > Cloud Upload > Nightscout Sync), but disable download data!

xDrip+ Logging

xDrip+ TAGs used for logging:

  • CareLinkFollow : logs of CareLink Follower service
  • CareLinkFollowDL : logs of CareLink data downloader
  • CareLinkFollowDP : logs of CareLink data processor

Credits

Disclaimer And Warning

This project is intended for educational and informational purposes only. It relies on a series of fragile components and assumptions, any of which may break at any time. It is not FDA approved and should not be used to make medical decisions. It is neither affiliated with nor endorsed by Medtronic, and may violate their Terms of Service. Use of this code is without warranty or formal support of any kind.

License

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published
by the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.

xdripcarelinkfollower's People

Contributors

benceszasz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

xdripcarelinkfollower's Issues

"Download data failed" message

Subject of the issue

Can't download data using a Care Partner account. Using the patient account it works.
The eventlog says 400 error.

Your environment

  • ".Nightly build 10th Mar 2024
  • CareLink
  • Problem tested with two android phones (Oppo find x5 android 14 and Google pixel 7 phone android 14)

Expected behavior

To receive data once logged in using a Care Partner Account.

Actual behavior

No data received. A message says "Download data failed".

Steps to reproduce the behavior:

Install Xdrip latest nightbuild. Configure Care Partner account

Screenshots

image
image
image

Thank you very much for your work!

Notification issues after Carelink maintenance on 6th April

Subject of the issue

Since the announced maintenance works on Carelink servers in EU I do not see any Carelink notifications received and placed on the main screen or in history in plot areas (gray note icons and red flags).

Your environment

  • xDrip version - initial nightly version 2023.11.14, was updated to 2024.03.27 next day after the maintenance (old version did not allow to login to Carelink even after properly filling the Captcha).
  • Hardware data source - Guardian 3 + Minimed 740g via CarelinkFollower.

Expected behavior

Carelink notifications presented on the main plot and in the history.

Actual behavior

Carelink notifications are not showing on the main plot and in the history. Last received is from 6th April around 5pm CET, just before the maintenance started. Related setting in the settings page is activated.

In EventLog there are large amounts of CarelinkFollowDL Error messages:
SocketTimeoutException:timeout
CareLink download error! Response code: 200
but I'm not sure when those started appearing and if they are related.

Steps to reproduce the behavior:

Just login to Carelink and wait for any event on the pump, like for example "Suspend before low" or "Bg rising rapidly".

New Google Captcha at login breaks everything

Hello everyone!

Unfortunately, after today's planned maintenance update on September 28, 2023, Medtronic has implemented Google Captcha checks during login. This change has completely disrupted our ability to retrieve data.
image

Interestingly, a few days prior to this update, my IP address was firewall-blocked. I conducted traceroutes from multiple addresses within the same subnet (and from other ranges too), and it was evident that my packets were being dropped by the BGP router at the Medtronic AS, starting from my original IP address.

Finding a way to bypass this restriction should not be too difficult, especially since there have been no new app updates (at least not yet).

Personally, I believe this could be a deliberate attempt to hinder third-party apps. :(

every day reCAPTCHA

Hello everyone, I really have to log in to xdrip every day with the reCAPTCHA.

How can it be possible that I stay logged in?

Is there something I can do or do I really have to log in every day?

For your information: I own a Samsung Galaxy S22 Ultra

Thanks for your help!

carelink follower login Error xdrip

Hello,
I am trying to use CarelinkFollower as a data source for xdrip 990df11 -2023.05.26. However, I immediately get the error message:

CareLink login error! Response code: 400, error message: NullPointerException:value==null.

User names and passwords are 100% correct!

What can I do now?

Screenshot_20230815_211435_xDrip+

Cannot sync with Amazfit GTR 2e

Hello there,

I've been using this app and it's going great on my Samsung S20FE. However when I try to connect to my watch Amazfit GTR 2e, the authentication key fails, given the message: "Cannot authorize miband, please recheck Auth code". I was using the xdrip-miband_0.5.0 APK and it was working properly with the watch.

Does somebody is experiencing this issue? Is this app version supporting connection with Amazfit watches?

Thanks.

"Kazakhstan" is not available in Carelink Country list

Subject of the issue

"Kazakhstan" is not available in Carelink Country list. Can't select "Kazakhstan" in "Data Source Settings" -> "CareLink Country".

Your environment

Version of xDrip, e.g. 2023.01.20, Code: 2123012016.
Data source: CareLink

Expected behavior

Select "Kazakhstan" in "CareLink Country" list.

Actual behavior

"Kazakhstan" is not available in Carelink Country list. Can't select "Kazakhstan" in "Data Source Settings" -> "CareLink Country".

Steps to reproduce the behavior:

  1. Go to 'Settings.'
  2. Click to setting 'Hardware Data Source'
  3. Check "Carelink Follower".
  4. Click to "Carelink Country"
  5. "Kazakhstan" is not available in "CareLink Country" list.

Pump Type

Hey, sorry if this is obvious!

Is there a way to get NS to display the pump name & battery? Or is that not passed through Follow?

Thanks.

galaxy watch watchface null

안녕하세요.
저는 t1d 두아이의 엄마입니다.
최신버전의 xdrip carelink variant1,2를 설치하여 모니터링중인데 galaxy watch에서 null이 표시됩니다.
carelink site 이동 전에 사용하던 xdrip variant 버전에서는 정상적으로 watch가 작동하였으나 새로운 최신 베타 릴리즈버전에서는 null만 표시됩니다.
20230717_151220

Additional fields

Great software solution for the 770G pumps. Is there any possibility of getting other field (ie. pump data, etc.) to Nightscout. Micro boluses size would also be great. Thanks.

Carelink timezone issues again?

Version:ec6c0c9-dev-2023.06.28
Code: 2123062817

Screenshot_20230906-211143.png

Been seeing weird intermittent data recently with different timestamps coming from carelink to xdrip. Carelink seems ok (all medtronic apps are happy and data looks normal there).

Errors in the logs indicate time issues.. but not sure from where.

Screenshot_20230906-215118.png

AAPS data always exposed to local web server

Subject of the issue

This version of xDrip+ always emits an "aaps" string in e.g. http://127.0.0.1:17580/sgv.json?count=24, like

"aaps":"🔺1.658U ⏱1092h2m 📅5d11h","aaps-ts":1644483391375

This is unexpected, since no AAPS connection is made (on my device). Furthermore, I suspect that the special characters / emojis are compatible with AAPS, but this is just a wild guess.

Your environment

xDripCareLinkFollower / master branch / beta 0.1.2

Expected behavior

If no AAPS connection is there, these strings shouldn't be exposed
It's related to the file dexdrip/webservices/WebServiceSgv.java, lines 148-153:

// emit the external status line once if present
  if (external_status_line.length() > 0) {
  item.put("aaps", external_status_line);
  item.put("aaps-ts", getLastStatusLineTime());
  external_status_line = "";
} 

Steps to reproduce the behavior:

Set up xDripCareLinkFollower with your minimed connect follower account, and on your phone type http://127.0.0.1:17580/sgv.json?count=24. You'll see the lines quoted above.

Best,
Trenar

Trend direction

Hi,

I would like to help with this, and add trend directions (i can see it is hardcodede to 0 atm. g.calculated_value_slope = 0 line 173

//CareLinkDataProcessor.java
if (live) {final BgReading bg = new BgReading();
    bg.timestamp = recordTimestamp;
    bg.calculated_value = (double) sg.sg;
    bg.raw_data = SPECIAL_FOLLOWER_PLACEHOLDER;
    bg.filtered_data = (double) sg.sg;
    bg.noise = "";
    bg.uuid = UUID.randomUUID().toString();
    bg.calculated_value_slope = 0;
    bg.sensor = sensor;
    bg.sensor_uuid = sensor.uuid;
    bg.source_info = SOURCE_CARELINK_FOLLOW;
    bg.save();
    Inevitable.task("entry-proc-post-pr", 500, () -> bg.postProcess(false));
}

So that the arrows are shown in the Nightscout site.

But when i try and run it in Android studio i get this error:

billede

So if anyone could point me in a direction where i can get it up and running on my local machine it would be highly appriciated, since i would love to help out with this!

no browser in android 14

Hi, after updating to android 14 on my Samsung S21 Ultra, login with medtronic captcha doesn't work any more - I get an empty screen only. Tried different things like killing&restarting app, etc. but nothing helped so far. Going to medtronic website, I noticed that the website domain changed from carelink.minimed.eu to carelink.minimed.com. Maybe that's the issue?? Best regards!

xDrip+ CarelinkFollower - Variants for multiple installations on one smartphone

Hello,

First of all, thanks for the great work you're doing!

Our Situation:
We have 2 Type1 Kids with 700G Series Pumps. We used to have 640g an 770G, now we have 770G and 780G.
We use the xDrip+ Variants to follow both kids on one smartphone.

It would be nice if you could provide an xDrip+ CareLinkFollower Variant as well, so we can use two instances on one smartphone.

regards,
Sebastian

Login error code 200

I can't login. I get error 200..
I'm from Germany.
i try to install the last official xdrip nightly also, but same error..

Sorry for my bad english, and thank you for your work on this app

Variant of xDrip - allowing two instances on one device

Hi all
We have two children with D1. Both using 780 with Guardian sensor.
Recently i discovered that xDrip has a CarelinkFollower version. Superb news. We are real fans of xDrip- specifically compared to Carelink app of Medtronic.
In the previous setup (having another pump and sensor), we got a variant of xDrip. This allowed us to have two versions of xDrip on one telephone. Thus both father and mother were able to follow both kids.
Could this variant be created for the version with Carelink follower functionality
Very much appreciated

Basal

Dear,

Is it also possible get the basal of the pump (780G)?
Thx

Regards,
Iwan Vandaele

basal

hello!
Thanks to your constant help, my children's blood sugar levels are well managed. Thank you always.
I have one question.
I'm currently using minided, so I'm checking with xdrip through carelink.
It is convenient because you can view information such as bolus, active insulin, and pumpbattery, but you cannot view basal information.
Is there a way to check basal?

No Active Insulin in Pump Status and no Notifications

Hello, I noticed that since the last update I no longer have a display in the status bar about the active insulin in my Pump Status Information Tab. Only Battery and Insulin in Reservoir is showing. Has something changed or has a small bug crept in?

Greetings

Edit: I See there was a Problem with notifications too. They don't show up.

CareLink download error! Reponse code: 200

Hey, thanks for working on this!

I'm encountering an error on my Pixel 3a, Android 11 when I try to set this up. I live in Canada and have confirmed that I am able to see the data in the CareLink Connect app on my phone using the same login.

Please let me know if you need any more info.

178608043_977981279640546_7266816775958143801_n

Complication Null

My old variant used to have a complication running, but in the new release it says 'null'.
Please help me.
Thank you in advance.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.