Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Freestyle Libre 3 support #1474

Closed
Cybereu opened this issue Oct 20, 2020 · 67 comments
Closed

Freestyle Libre 3 support #1474

Cybereu opened this issue Oct 20, 2020 · 67 comments
Labels
device-libre question status-postponed Features which might be implemented sometimes status-waiting Waits until external requirements are fulfilled.

Comments

@Cybereu
Copy link

Cybereu commented Oct 20, 2020

Recently Freestyle Libre 3 was launched in Europe providing GCM, readings are now through Bluetooth instead of NFC.
Is there any move to support it?
Thanks

@tolot27
Copy link
Collaborator

tolot27 commented Oct 21, 2020

Abbott just announced the Libre 3. It is not available yet. Hence, nobody can start implementing support or investigate whether it is possible or not.

@tolot27 tolot27 closed this as completed Oct 21, 2020
@tolot27 tolot27 added the status-waiting Waits until external requirements are fulfilled. label Oct 21, 2020
@tolot27 tolot27 reopened this Oct 21, 2020
@tolot27 tolot27 added the status-postponed Features which might be implemented sometimes label Feb 27, 2021
@tolot27 tolot27 closed this as completed Feb 27, 2021
@schrackschorsch
Copy link

schrackschorsch commented Aug 4, 2021

libre 3 is now available in Germany. The libre-app for ios is ready. The app for android soon will be available.
https://www.freestylelibre.de/libre/freestyle-libre-3-entdecken.html

@marekmand
Copy link

Shouldn't be this ticket reopened since FL3 is available publicly in Germany?
I don't see any reason to postpone this anymore.

@Navid200 Navid200 reopened this Sep 17, 2021
@Navid200 Navid200 removed the status-postponed Features which might be implemented sometimes label Sep 17, 2021
@renele
Copy link

renele commented Oct 5, 2021

any update on this or where can we track progress or is something blocking ?

@yoshimo
Copy link

yoshimo commented Oct 5, 2021

The missing android app makes analysis harder

@tolot27
Copy link
Collaborator

tolot27 commented Oct 5, 2021

It is unlikely that xDrip will support L3, natively. Likely, it will be implemented similar to L2 OOP external app.

@Owncloudp
Copy link

https://apkdownload.com.de/apk/1525101160/freestyle-libre-3-de

Here is it - Not officially Release until now...

@yoshimo
Copy link

yoshimo commented Oct 23, 2021

It is unlikely that xDrip will support L3, natively. Likely, it will be implemented similar to L2 OOP external app.

if you had a sensor or 2, would you be able to attempt an integration before the android app is officially released?

@birdfly
Copy link

birdfly commented Nov 8, 2021

https://apkdownload.com.de/apk/1525101160/freestyle-libre-3-de

Here is it - Not officially Release until now...

but the link is not available, better share apk directly if you have it

@Navid200 Navid200 added the status-postponed Features which might be implemented sometimes label Nov 8, 2021
@Navid200 Navid200 closed this as completed Nov 8, 2021
@Ficsy76
Copy link

Ficsy76 commented Dec 20, 2021

https://play.google.com/store/apps/details?id=com.freestylelibre3.app.de

@hoppelEwa
Copy link

Good morning,
is there a Libre3 support in xDrip by now? I used the patched FL2 app and ordered the testpackage. Can I just use it the same way?

@yoshimo
Copy link

yoshimo commented Jan 5, 2022

Research is still ongoing.
The official Freestyle 3 app on android is available but not officially released yet according to the support.
It is kind of unstable and wasn't patched yet.
You can't use the old FSL1+2 App for the new sensor.

@tkcgm
Copy link

tkcgm commented Jan 11, 2022

@PieterDeBruijn
Copy link
Contributor

In The Netherlands the Libre 3 is now 2 weeks on the market, officially released.
https://play.google.com/store/apps/details?id=com.freestylelibre3.app.nl
Version of the app/apk is v3.3.0.

@dassystem
Copy link

There is a program to gather data from Libre 3 to Nightscout via Libre Link: https://github.com/timoschlueter/nightscout-librelink-up

Although I prefere an offline solution maybe we could consider this workaround to grab the data from the official Freestyle Libre servers.

@gfornax
Copy link

gfornax commented Feb 2, 2022

There is a program to gather data from Libre 3 to Nightscout via Libre Link: https://github.com/timoschlueter/nightscout-librelink-up

I can confirm this works to some extent after a few minor fixes to get it running on the same host.
However, current xdrip seems to struggle with the every minute readings of the libre3. NS shows it correctly, but xdrip as a follower will show several different readings at the same (!) time and leave gaps of a few minutes. This also messes up the delta calculation, throws random warnings and crashes other connected apps (here: garmin data fields). Anyway, still better than the original Libre App.

I second a native bluetooth integration is the way to go. Not sure about the current status, I'd be happy to participate if that helps.

@charliebravoAT
Copy link

Is there any progress on that since the ticket is closed again?

@tolot27
Copy link
Collaborator

tolot27 commented Feb 16, 2022

As I mentioned earlier, there will be no direct support for Libre 3 from xDrip because the L3 has no public API to read BG data and Abbott will shutdown our repository if we implement reverse-engineered stuff.

Hence, no need to ask again. I am sorry to tell you this.

@charliebravoAT
Copy link

@tolot27 thanks for the really fast response!
Oh no, so there is (and will be) no way to send the values to my watch? Except via Nightscout, what will be a problem since I travel a lot also in remote areas with no internet :O
Oh man, too sad... I don't understand abbott...

@jw243
Copy link

jw243 commented Aug 20, 2022

It seems to me that with the web follower source, the glucose values cannot be calibrated. Or am I missing something?
The llu-client on the other hand seems to work quite well, as long as you exempt it from battery optimisation. Here, the raw data can nicely be calibrated. What a game changer compared to the app from Abbott.

@twinko
Copy link

twinko commented Sep 19, 2022

just for the people readingf this, look here, there is a solution now:
https://github.com/maheini/FreeStyle-Libre-3-patch

@emmatovar27
Copy link

just for the people readingf this, look here, there is a solution now: https://github.com/maheini/FreeStyle-Libre-3-patch

Sadly this doesn't work with the sensors from the US! :( If there is any chance to replicate the same patch I will be happy to help! :)

@gringyb
Copy link

gringyb commented Oct 29, 2022

I have been using the ghost libre 3 app. It is completely offline and does not even ask for android internet permission. There is nothing to configure to get it working. I just scan my existing sensor and set xdrip to use patched app. I think it is based on the good juggluco work as it shows that name in the app menu. I download it from: https://mega.nz/file/7kJAzABT#3FGA60327a5w3E_VPoXCRXQjj1w_QG2lt-Dn_1fMcg8

@Nb-tst
Copy link

Nb-tst commented Oct 29, 2022

did not know that such an app existed, is there an (un)official page for references?

@twinko
Copy link

twinko commented Oct 30, 2022

Would be very interested in the source of ghost libre3 as well.

I personally wouldn't recommend anybody to download and install the app until we have more information about it. @gringyb is a freshly made account and i couldn't find anything online. Be carefull everyone

edit:
Had it run through VirusTotal and it looks fine so far (https://www.virustotal.com/gui/file/cb43fbc7889bbf858a880286acdb6d33b3d8c3b9c0405c0b3e8351a5124a9414/details), but im not an expert. Would really love to so an expert oppinion on that.

@charliebravoAT
Copy link

just for the people readingf this, look here, there is a solution now: https://github.com/maheini/FreeStyle-Libre-3-patch

Since there is a way from the patched libre 3 App to juggluco, do you think there might be way to get it directly to xdrip?
So without juggluco (and not the ghost app).
So that xdrip gets the values the same way like juggluco:)
Woul be amazing 😍

@gringyb
Copy link

gringyb commented Nov 3, 2022

@charliebravoAT This is what the ghost app does. I have been using it no problem for more than 2 week. It is libre app patched to send direct to xDrip - Same like old libre2 patched app it has no internet permission and so cannot do anything not wanted, break privacy or mess with other android apps because of normal android security feature. It is made on top of juggluco patching method but not needing juggluco app or any special configuration to work. The only problem I have seen is some time needing to turn bluetooth off then on if signal lost. If people do not trust it then get an expert to look at it rather than assume bad things because we like to be private.

@emmatovar27
Copy link

Do you know if it works with FSL 3 sensors from the US?

@dassystem
Copy link

@charliebravoAT This is what the ghost app does. I have been using it no problem for more than 2 week. It is libre app patched to send direct to xDrip - Same like old libre2 patched app it has no internet permission and so cannot do anything not wanted, break privacy or mess with other android apps because of normal android security feature. It is made on top of juggluco patching method but not needing juggluco app or any special configuration to work. The only problem I have seen is some time needing to turn bluetooth off then on if signal lost. If people do not trust it then get an expert to look at it rather than assume bad things because we like to be private.

Happy to hear that it is working for you,

Since we are building open source software, we want to see sources of the programs we should use. We need source code to check correct behavior and security, but also to be able to integrate it in our systems like xdrip or nightscout. And we need open source to be able to react to hardware related changes or a new encryption from the manufacturer. Also we need independence from single individuals building great software like juggluco or maybe ghost app. We need a reliable and qualified community.

I personally haven't seen sources of ghost app OR juggluco and this really concerns me. Even when they said, jugglucos libre patch can easily decompiled, I still prefer a clean repo with all code and instruction needed, so that I can build the software myself in case of need.

@twinko
Copy link

twinko commented Nov 4, 2022

@dassystem in this specific case (patching libre app) there is an obvious reason why there is no repo. Abbott would shut it down and have there lawyers send a letter.
Take in mind the situation with the patched libre2 app.

Edit:
Yes sadly @j-kaltes is not willing to share his solution for the libre3 patch:
maheini/FreeStyle-Libre-3-patch#21 (comment)

@twinko
Copy link

twinko commented Nov 14, 2022

did anybody tried the ghost app?

@malloy139
Copy link

malloy139 commented Nov 17, 2022

I tried the jka modified Libre 3 app -> juggluco -> xdrip solution. I really don't like that another app needs to run all the time, besides the strange look and feel of juggluco. In xdrip you can see a new raw value every minute, they are also much better and usable than Libre 2. My problem now is the excessive smoothing of the raw values xdrip applies. This would lead to delayed alarms by xdrip, even with raise an alarm based on forecast. For this reason I use the alarms of the Libre app.
On the xdrip follower sadly you can't see the raw values.
Does anyone know if there is an option to sync raw values? There exists a pull request and issue. Also is it possible to turn off the smoothing of the values?

When the sensor ends next week I could try the ghost app.

@twinko
Copy link

twinko commented Nov 17, 2022

@malloy139
sorry i cant finde the source right now, but i read somewhere that the smoothing happens in the libre 3 sensor now, so there is no way to "de-activate" it. I probably read it here somewhere (german forum: https://insulinclub.de/index.php?thread/34255-libre3-2-juggluco/&pageNo=26)
If xdrip is applying an additional smoothing, please send the link to the pull request to read more about that.

Regading the ghost app: would be interested to hear about your experience,

@malloy139
Copy link

@twinko juggluco is sending a raw value every minute and xdrip applies smoothing to it and gives you a new value only every 5 minutes. This is quite inconvenient when the BG changes quickly, see the attached image.
58b62dc0-afa1-4f67-8a66-26a79740f371_1

Syncing raw values, there is this issue: #1597 and these PR: #1686 and #1821. The last one says it implements this but it does not.

@twinko
Copy link

twinko commented Nov 17, 2022

@malloy139 this is the wrong thread to address this problem. But the pr that needs to get merged to get this feature is the following one:
#1686
Please comment there (like I did) perhaps this bumps it up a little :)

@harentius
Copy link

harentius commented Nov 22, 2022

@twinko Looks like #1686 doesn't solve this problem. It synchronizes followers, but doesn't solve issues with per 4.5 min xdrip plot, and, I assume, sends data to AndroidAPS via local broadcast.

It is possible to broadcast that Libre3 raw values to AndroidAPS

I am not sure if that is a good idea though.
Case @malloy139 showing is valid, I observe the same. However, on relatively smooth periods there are always tiny deviations in Libre 3 data. I don't know if AndroidAPS will work correctly with them.

Good example of this:
Screenshot_2022-11-22-23-42-13-49_2dd2c1bcb8f659cd696bcba2072f751b

For sure I would prefer if AndroidAPS realized dropping BG earlier and had extra time to react.
However, these small perturbations undesirable for AndroidAPS, as far as I know

@twinko
Copy link

twinko commented Nov 24, 2022

@gringyb tried the ghost app. Doesn't launch, crashes immediately. Wiping my phone now and restore my backup. Afterwards i tried jkaltes (juggluco) patched app. This one is working like a charm. So i guess its not my phone that is the problem.

@master3395
Copy link

@gringyb tried the ghost app. Doesn't launch, crashes immediately. Wiping my phone now and restore my backup. Afterwards i tried jkaltes (juggluco) patched app. This one is working like a charm. So i guess its not my phone that is the problem.

I got the same issue.

Both LL Patched and Juggluco works fine, but juggluco does not send all values to xDrip+ more than once each 5 min or so.

@j-kaltes
Copy link

xDrip itself transforms values coming in every minute to one value very 5 minutes.
Take a new version of xDrip and turn on Settings->Less Common settings->Advanced settings for Libre2->"Show Raw values in Graph" and you will see that every minute a new "raw" value arrives in xDrip.

@master3395
Copy link

Jiggluco sends all the raw data to xDrip+ only once each 5 min, along side the 1 min raw.
So it's not each min even with that turned on.
I have it on.

@j-kaltes
Copy link

j-kaltes commented Nov 26, 2022

In old versions of xDrip the raw values are badly displayed. In a new version you can find all 1 minutes values between the 5 minutes values created by xDrip. Lastest download is in reality old and displays them wrongly, take a nightly build for example: https://github.com/NightscoutFoundation/xDrip/releases/download/2022.11.16/xDrip-plus-20221116-344deb4.apk
EDIT:
The only values that are represented in Juggluco, but not in xDrip are values that were not send to Juggluco at the moment itself because of a connection error. Libre3 sensors, but not Libre2 sensors, will send these measurements later. When you sends there values later to xDrip in the same way you send immediate values, it will not accept them.
Values send later don't have a rate of change, so you can see the difference by saving values with left middle menu->Export->Stream and looking at rate and ChangeLabel
Sensorid nr UnixTime YYYY-mm-dd-HH:MM:SS TZ Min mmol/L Rate ChangeLabel
XX0A0DZ6J3C 20124 1669374592 2022-11-25-12:09:52 1 20123 6.0 +nan NOT_DETERMINED

@malloy139
Copy link

Jiggluco sends all the raw data to xDrip+ only once each 5 min, along side the 1 min raw. So it's not each min even with that turned on. I have it on.

This is not what I observe. You can see a new white dot every minute in xdrip.

@kaz45242
Copy link

Hi, just want to express my appreciation from US. I received Fl3 as sample from my Dr. I started using lb3 with juggluco and xdrip. It is working correctly for two days for now. I experienced two incidents in relating to Bluetooth disconnection. One for phone battery power lost (4hrs)and other for swimming class(45min). Both cases, I could reconnect bluetooth with retouching phone to sensor. But I could not import those data to xdrip even though juggluco showing one of those data(for 45min). Is this legitimate condition? I'm wondering whether I can connect watch and sensor directly?
But anyway I appreciate for those developers very much.
For your information I'm using following devises: Samson S22 phone and Garmin vivoactive3 watch.

@twinko
Copy link

twinko commented Jan 31, 2023

@kaz45242
Afaik there is no possibility to reimport missed data from juggluco to xdrip. This question was asked multiple times in the original juggluco thread (its in german), even though juggluco is capable of reading data from the sensor of the past 8h.

You can connect a smartwatch to the sensor directly if it has wearOS (1 day battery life) , read here: http://jkaltes.byethost16.com/JugglucoWearOS/mgdL/index.html

If you are more into mibands or amazfit watches (7 days battery life) , there is no direct connection but its working flawless with watchdrip+ (it takes the data from. Xdrip) https://bigdigital.home.blog/

@henrycoding
Copy link

Any further information about Libre 3? Could we implement the sensor according to juggluco ? It seems that Juggluco is open source

@enpa23
Copy link

enpa23 commented Jul 13, 2023

Any further information about Libre 3? Could we implement the sensor according to juggluco ? It seems that Juggluco is open source

Juggluco code is open source but it needs proprietary libs in order to be built and run, so I don't think that a L3 direct connection could be ever implemented in xDrip.
Using juggluco as data source for xDrip is fine, the app is stable, frequently updated, and very light on battery and resources.
The only big missing feature is calibration because you have to set patched app source in order to collect data ( adding full calibration to that source would be very appreciated ).

Given that ( according to what the juggluco's devleper reports ) with L3 you don't have access to raw data, another source like a possible OOP3 or the Diabox app when it will enable its support would make no difference with the current solution.

@twinko
Copy link

twinko commented Jul 13, 2023

@henrycoding this wont happen any time. Read explanation here: #1474 (comment)

@enpa23 sorry but your information is only partially right :)

The only big missing feature is calibration because you have to set patched app source in order to collect data ( adding full calibration to that source would be very appreciated ).

Please do not use the horrible patched libre app. Just scan the sensor with juggluco when you want to start a new one, thats it.
I already updated the german version of the instructions here, but didnt had the time yet to translate it. https://github.com/maheini/FreeStyle-Libre-3-patch/blob/main/Juggluco-solution/instructions/de/instructions.md
Regarding calibration: Please read the part jka wrote at the bottom of the page about calibration: https://www.juggluco.nl/Juggluco/mgdL/index.html i dont understand why people want to calibrate a libre sensor. This is not a dexcom, calibration is not needed. And yes the data never matches if you prick your finger and compare the results, because the libre data is alway 15-20min older than the real blood glucose level. Thats how it is for all CGMs. Please google the reason for that by yourself :)

Given that ( according to what the juggluco's devleper reports ) with L3 you don't have access to raw data, another source like a possible OOP3 or the Diabox app when it will enable its support would make no difference with the current solution.

you are absolutely right, but to specifiy you can get a data point every minute

@enpa23
Copy link

enpa23 commented Jul 13, 2023

@twinko
I do use Juggluco, not the patched app. xDrip has to be set to patched app data source in order to receive data from it.

In my experience both L3 ( less ) and L2 ( way more ) often come bad calibrated, while still inside the error range that can entitle to a substitution from the vendor.
I easily have a 60 mg/dl difference with fingerprick on the 180-200 range, and so on, even when bg is stable for 15 minutes.
With a good calibration ( I have to enable experimental secondary plugins in xDrip, add few points at the beginning with stable bg - some in the ~100, some in the 180-200 ), add a new value after two days or so to check if sensor has stabilized to a different offset, and then in case check every few days ) I get almost identical values from xDrip and fingerprick test for the whole sensor life.
Switching from a so-so calibrated sensor to a close to perfect one has a great added value to me.

@klaaslusterbroodvan
Copy link

@twinko I do use Juggluco, not the patched app. xDrip has to be set to patched app data source in order to receive data from it.

In my experience both L3 ( less ) and L2 ( way more ) often come bad calibrated, while still inside the error range that can entitle to a substitution from the vendor. I easily have a 60 mg/dl difference with fingerprick on the 180-200 range, and so on, even when bg is stable for 15 minutes. With a good calibration ( I have to enable experimental secondary plugins in xDrip, add few points at the beginning with stable bg - some in the ~100, some in the 180-200 ),

I agree, it makes sense to calibrate. Some of the L3 sensors are always given too high values. For those saying that differences are due to a lag between interstitial and blood glucose, there is one recent academic study by Alva and colleagues (2023) that shows it quite short (on average below 5 minutes). I personally found the calibration as is possible with Dexcom makes life easier as you can really rely. Good to hear that Twinko found the calibration working well, I haven't tried it myself with L3.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
device-libre question status-postponed Features which might be implemented sometimes status-waiting Waits until external requirements are fulfilled.
Projects
None yet
Development

No branches or pull requests