Design a site like this with
Get started

WatchDrip+ a new application for xDrip watch integration

In order to provide more flexibility  and improve continious updates for official xDrip app and MiBand(Amazfit) devices, i decided to separate watch integration and xDrip into two separate applications which would communicate with each other.

The work on this idea was started at the beggining of 2022 year, and when it was almost done for testing, the russian invasion happens. This factor interrupted almost all work related to watch integration project support because it was time when i was needed to take care about my family safety and survival.

At the moment the situation in Ukraine i guess is more controllable (thanks to countries sending foreign aid ). So i returned to Kyiv and want to finally release a new application.

To make a new application work, you need a xDrip (at the moment it is an original xDrip with a small change into the code which i hope would be integrated into the official xDrip after testing) . Also, you need the latest version of WatchDrip+ which would act as a communication bridge between your watch and xDrip.  The new version is already available for people who support this project on Patreon and would be available after 22.06.2022  for everyone.

Configuration tutorial by steps

1. Obtaining auth key

  1. If the Mi Band is already connected via the original Zepp life(MiFit) app, the band
    should be unpaired and the original app should be uninstalled.
  2. Download and install the latest patched MiFit (for Xiaomi) or Zepp(for Amazfit) app from this website .This app allows to generate device authentification code required in the below steps. Alternative links to patched application for MiBands MiFit, for Amazfit Zepp.
  3. Login into the MiFit(or Zepp in case of Amazfit) with email and password. Create an account if necessary.
  4. Pair your smartband with modified MiFit(or Zepp). For this go to Profile tab and click on Add device button.
  5. Enable band visibility in the MiFit(or Zepp) settings. If you don’t have this option, make sure you have set your age in the account to 18 and above.
  6. (optional) Now you can uninstall modified MiFit (or Zepp) application and install official application or any other APK you like to use together with your device. If you would use official Mi Fit(or Zeppapplication, you would need to Login into the Mi Fit(or Zepp) with the email account which was used with the patched application.

MiBand2 and MiBand3

The Obtaining auth key phase for these devices can be skipped because it is required manual authentificatin

2. xDrip+ configuration

  1. Install xDrip with a small modification from the following link. In the nearest future, it would be possible to use official xDrip. Upd. 10.07.2022 The required fix were added to the official xDrip, so you can install the latest nightly build official xDrip
  2. Go to Settings -> Inter-app settings and enable Broadcast Service API checkbox
  3. That’s all for xDrip. But if you had the watch previously configured in xDrip. Go to Settings -> Smart watch feature -> MiBand and disable “Use Miband” checkbox (this is an outdated feature)

3. WatchDrip+ configuration

  1. Install WatchDrip+ app
  2. Switch on Enable service checkbox on the main screen and allow all permissions that would be requested.
  1. After this, in most cases, the watch should be automatically found and you will see a notification with your device name. The MAC address should be populated automatically. If this happens, you can skip the next step.
  1. If your watch was not found or found the wrong device, you can try to clear Mac Address field to retry autosearch or enter the device MAC address manually. The MAC address should look like this FF:EE:DD:CC:BB:AA , 6 two-digits hex values, semicolon-separated.

The device MAC address can be found in the application:

4.1 In MiFit, switch to Profile tab, open device settings, scroll to the bottom of the screen. Long tap on the MAC field to copy it to the buffer, after this.
4.2 In Zepp, switch to Profile tab, open device settings -> About This Device . Long tap on the MAC field to copy it to the buffer.
  1. At this step, the device required authentification. On MiBand2 and MiBand3, you should approve authentification by touching the button on the device screen. For the rest devices, you don’t need to do anything. Normally auth key should be automatically extracted from the file generated by the patched Mi Fit(or Zepp) application. And you will see the toast message like this:

If authentification fails :

  1. If authentification fails, there may be several reasons:
    1. Make sure the app connecting to the right device (compare your device MAC and MAC used in WatchDrip). If they are different, enter the MAC address manually as described above.
    2. Try to enter the authentication code manually. The authentification code generated by the patched app can be found in /sdcard/freemyband folder. You should open the wile with the corresponding to your device MAC. For example, if your device mac, FF:EE:DD:CC:BB:AA, the file should be mibandFFEEDDCCBBAA.txt. When you open this file with a text editor there should be a text like this FF:EE:DD:CC:BB:AA;5599f3acb91e02cfbf86b4faeb5652a4 . The code after semicolon, would be your device auth key: 5599f3acb91e02cfbf86b4faeb5652a4 . You need to copy this text and enter it into Auth Key field in WatchDrip+ app.
    3. Your authentification code was changed (which usually happens when resetting the watch to the default setting). Please obtain a new authentification code by repairing your watch with the patched app. Please note, that the device mac can be changed when you repair the device, so also recheck the mac address used by the app.

Once the device is connected and authenticated, wait for the next value in xDrip+, the watchface with xdrip data should be uploaded to your device.

It is also possible to force refresh watchface uploading by clicking the green Refresh button on the WatchDrip app main screen.

WatchDrip+ features

Main Settings
WatchDrip+ main screen

Enable service – You can enable and disable MiBand integration with this main switch. In this case, the application will stop communication with xDrip and your watch.

MAC Adress – your device MAC address, you can clear this field to autosearch supported device

Auth Key – The 32 characters authentication key used to authenticate the device. You can clear this field to let autosearch key from the file generated by patched MiFit(Zepp)

Send Alarms – Will send glucose alarms(low/high) to your device configured in xDrip settings

Other Alarms – Will send all alarms configured in xdrip, except glucose alarms (low/high)

Advanced Settings

Send reading – You must enable this to have readings on your device. For devices that support watcfaces, the watchface would be uploaded. If the device battery charge is below 12% or weak BT connection, only BG notification would be received. The MiBand2,3 support only bg notification.

Vibrate on reading – Your device will vibrate after reading, useful mostly for debugging

Use custom watchface – You can create your own watchface and modify the background image using these features. Keep them disabled unless you have correctly set the files required in the phone xDrip folder. For tips and an examples look here.

Disable High MTU – can be used when experiencing watchface display issues.

WatchDrip+ changelog

If you like this project and want to thank an author for work done or want to support further development of features, become a sponsor on Patreon or Ko-fi

If you have some advices regarding features that you want to see, or want to see similar feature on some specific band type, please write them in the comment of the donation form. Thank you.

Ver 0.2(21.12.2022) (only for patrons, would be available for all 01.01.2023 )

  • Added Webserver support for ZEPP OS based devices
  • Added watchface catalog
  • Added Support for the multiple devices 

Ver 0.1.3(30.06.2022)

  • Fixed graph update
  • Fixed miband5/amazfit5 lock icon inverse state on default watchface
  • Fixed the phone silence mode restoration after the alarm has been silenced

Ver 0.1.2(17.06.2022)

  • Fixed alarms issue
  • Added Italian translation 

Ver 0.1.1(15.06.2022)

  • The initial version

Supported devices

MiBand 2
MiBand 3
MiBand 4
MiBand 5
MiBand 6
Amazfit GTR 47mm
Amazfit GTR 42mm
Amazfit GTR2
Amazfit GTR2e
Amazfit GTS2
Amazfit GTS2e
Amazfit GTS2 Mini
Amazfit Band5
Amazfit Bip
Amazfit Bip Lite
Amazfit Bip S
Amazfit Bip S Lite

Amazfit T-Rex Pro


203 thoughts on “WatchDrip+ a new application for xDrip watch integration

  1. Hello.
    I’m having problems to install the Zepp 6.1.4 mod for Amazfit FTS 2 Mini.
    I downloaded many times from “” but when installing I always obtain this Error message “App not installed because the package is invalid”.
    Anyone with the same problem?
    Anyone has a different link I can try?
    Please help me, I’m desperate.
    My system is Android 12.
    Thank you all.
    BTW, someone had contacts with Artem after Dec 22nd?
    Any info on his actual situation?
    I’m concerned about his health…. 😦


    1. Please try older versions and different mirrors if one doesnt work.
      Yes Artem wrote today. But i have no info about his situation. Only thing i know: he has a lot of power outages, so its difficult to work on the project.


      1. Thank you twinko for the quickest and positive reply about Artem’s, I’m very happy of this.
        Regarding my problem, I can try your solution to use older versions, but this means to lose the possibility to install latest nightly, correct?
        Not my favourite…
        About different links, can you give me some address, please?.
        Thanks a lot, very appreciated.
        Andrea 🙂


        1. Please read the whole guide. the modded zepp app is only to geth the auth-Code. as soon as you got the code you can deinstall it and install the offical one again. xdrip version and modded zepp os do not have any direct relation. Moreover i would recommend to install the latest stable version and not the last nightly.
          The guide is a little outdated at this part.

          You find different links for the latest version and older versions on: “”.

          just a general rule: try by your self as hard as possible, try to read as much as possible on the given websites (freemyband and artems blog) before asking. Its not meant to be rude, but i have the feeling you didnt even had a second look an freemyband nore artems guide.


    2. Hello Artem. Tell me recently, I encountered a problem when watchdrip + loses the code for binding to the Amazfit gts 2 mini watch. Reinstalling the new code according to the instructions works no more than 2-3 hours and then the code is lost again. App writes: Cannot authorize Amazfit
      GTS2 mini, please recheck
      Authcode. Multiple reboots of the device: getting a new mac addres and Auth key does not work. The clock runs for a short time, then the code becomes broken again.


        1. To my regret the problem is not solved. Only the developer can figure out this problem, perhaps there is some kind of block and a conflict with the latest version of the Zeep application. reboot does not update the information on the watch.


  2. Sorry to trouble you, twinko, but I ensure you that I have given more than a look at that page and, my mistake, I didn’t understand that older ZEPP apps could sostitute the 6.1.4.
    I apologize.
    Btw, so what’s the difference among 6.1.4 and the others?
    Anyway I had a doubt so I tried installing the 6.1.4 on another phone (Android 11), and the app installed without problems, so surely my new phone is the guilt, may be an adblocker or antivirus settings lock the app.
    Now I’ll try to connect the watch, hope to do it in a short time.
    Thank you for your help.
    Andrea 🙂


  3. Hello twinko.
    Following your suggestion to use an older than 6.1.4 ZEPP version, now all is working perfectly.
    Thank you.
    Andrea 🙂


  4. I’ve been using WatchDrip with MI Band 5 with limited success. For a couple of weeks, the watchface would occasionally fail to update until I rebooted the watch. Now–for the last week–the watchface will not update at all. I’ve tried rebooting the watch, rebooting the phone multiple times. and the WatchDrip app keeps trying to connect but turns to “status” disconnected” soon thereafter.


  5. hi twinko i struggle with these two line in range yellow and red they are so close to each other on te graph any idea how to spread them wider? i use Amazfit gtr2e thanks for all work you’ve done


    1. Hi @Pawel,
      this is a xdrip setting.
      Go to:
      xdrip –> settings –> Glucose Units –> change high and low Value to your needs



  6. Hi there, i’m using the gts mini2 and i got the key and mac addese, the watch was in but i have Problems with the xdrip settings. watchdrip says:” no response from xdrip app.”
    i use miband and not amazfit and all settings are “on” but i don’t get the informations in watchdrip.


    1. did u enable “Broadcast Service API” in xdrip?
      Go to Settings -> Inter-app settings and enable Broadcast Service API checkbox

      And double check if your miband is in discoverable mode (check your mifit app).


  7. Hi! Thanks for fixing the lock status bug 😉
    I started using Diabox with FreeStyle Libre 2 sensor recently, and it polls the sensor every minute, as opposed to xDrip polling every 5 minutes. I’m using xDrip as an intermediary for WatchDrip+ here, since Diabox does not integrate with miBands. Have you considered enabling parametrization of the polling interval for WatchDrip+, so that it would be possible to take advantage of more frequent polling on the side of Diabox? I’m aware of the battery life tradeoff.


    1. xdrip can pull every minute, you just need to enable it in the settings 😉
      settings – less common settings – advanced settings for libre 2 – show raw values


  8. Unfortunately, my GTS4mini does not connect under patch 5.6.1. and zepp 6.1.4. is not installed on the phone due to an app error (GalaxyS10). Can I get the auth code differently?


  9. Hi there,

    I had everything working on my previous phone, but I lost it so purchased a new one and installed everything as per above guide, however I’m seeing no data in WatchDrip+ (literally see ‘???’ sign).

    Bellow a little bit more about my setup:

    1) Android 12 (my previous phone had Android 11 as well, maybe that’s the reason)
    2) MiBand 5
    3) xDrip plus – I’ve tried different versions:
    – f8e759f-2023.02.02
    – 344deb4-2022.11.16 (current version)
    4) Official version of Zepp Life (I got an auth key and MAC address using patched version)

    5) WatchDrip+: version, build date: 2022-06-28

    Screenshots could be found here:

    1) WatchDrip+

    2) MiBand 5 screen:

    Thank you in advance!


          1. Alright, I had to set xDrip’s source to ‘Other->Eversense’ and that works now! Please add it to your guide!
            And thank you very much for your hard work!

            How I can support you? Is there any Paypal account I can donate you?

            Thanks once again!


    1. did u enable discoverable in Zepp app? Morover i never used zepp life, always used “Zepp” without “life”.
      Is the band connected to the app? Does the sync from the app works?
      Do you really enabled “Broadcast Service API ” in xdrip?


  10. Hi

    Noticing a battery drain in a Miband6 with WatchDrip application (even with the most recent version) on a Samsung S20 running Android 13. It loses 30% battery in a couple of hours….

    Please reach me if i can assist with tests


  11. Artem, please tell me what could be the reason for disabling the authorization code in the application when using the Amazfit grs 2 mini watch?


      1. Hello Artem. I’ve Amazfit GTS2 mini, with Watchdrip+ coupled to latest nightly of xDrip+.
        But I have two problems:
        1- The heart pulse rate and walked steps are shown randomly on xDrip+, so they most times don’t match the watch ones. It looks like WatchDrip+ misses many of such data from the watch, or misses sending them to xDrip+;
        2- most important, the watch misses BG new data many times a day, and this means that I’m never sure that what the watch shows is the actual reading, unless I read the transmission time, but its font is so small that I’m unable to read it most of times.
        This makes useless for me all the stuff, obviously.
        Someone else has the same problem?
        Please help me.
        Thank you.
        Andrea 🙂


        1. Hi Andrea,
          I also think the transmission time should be the same “size” than the clock. Best would be transmission time directly under clock so it would be easy to read. If time difference is more than ex. 5 min. it would be cool if colour of time changes e.g. green to orange…so you can see if BZ is old or actuell. Because of missed data caused by bluetooth disconnection I start my phone every day new…. good luck 🍀


          1. Hi Twinko.
            Yes, Artem’s original xDrip+ worked very well, but it’s a shame that Watchdrip doesn’t do what it should.
            I hope this can be fixed by Artem, he certainly did a great job linking watchdrip to all the nightly releases, so hopefully he can!
            Andrea 🙂


        2. Hey Andrea, had the same problem with gtr2e. I reverted back to artems last xdrip version. Works flawless.
          but thank you for reporting, maybe that helps fixing this bug.


  12. Hi Thomas.
    I will follow your suggestion to reboot the phone daily and hope it works, thank you.
    Also I see that I am not the only one who has difficulties reading the information on the current watchface due to the font size being too small, and some time ago I suggested Artem to increase it by a couple of points, making it “Bold” and bright white instead of the current gray.
    I understand that this means almost completely revolutionizing the watchface, but it is the most important final step for a perfectly usable result, after all the time Artem put into it.
    Also, the transmission time in red color (amd Bold…) if the delta is more than 5 minutes could be a good solution, I agree.
    I hope Artem will help us on this point.
    BTW, how can I post images here?
    I would like to show an example of how the clock surface IMHO could be modified to increase readability.
    Andrea 🙂


  13. Hello Twinko..
    I’m 80 years old and was never involved in programming, anyway I gave a look there, but I found this in page

    Post by SashaCX75 » 07 Mar 2021, 14:18
    —zecxzec wrote: ↑07 Mar 2021, 12:54
    Can you add gts2 mini to new program??—
    “No. gts2 mini watch faces are different from gts2 watch faces. The unpacking utility used in the editor cannot work with gts2 mini watch faces.” :-((

    So, alas, I cannot even try to do something.
    Any other possibility?
    Andrea 🙂


  14. I suppose that Artem, who realized himself the actual watchface, could make some little changes with just a few command lines changed, eg for smaller text changed from gray to brilliant white color, because it probably means changing only the color definition code from eg ##DDD7D5 (gray) to ##FFFFFF (pure white).
    Am I wrong?
    Please, Artem, help!
    Andrea 🙂


  15. Good afternoon I have XDRIp and Watchdrip and they communicate without problems, but whenever in WatchDrip I update on the dial of the Amazfit GTS 2 I always get the steps I have walked and the heart rate and battery level and below NO DATA. How can I fix this?


  16. Hi Twinko.
    I’m very satisfied because, despite my age and my total ignorance of any kind of progrannming, I have been able to modify myself the Amazfit GS2 mini watchface, and now I have (almost!) what I wished for.
    I say “almost” because I only found the config.json file that covers the lower part of the watchface, while I have not been able to find where is the one for the upper section, I mean that with time, watch battery, date, walked steps, covered distance and heartrate.
    Someone can put me on the right path?
    BTW, how can I upload the image her? Please info, thanks.
    Thank you Twinko for pushing me to act instead of ask, it’s been a real satisfation to obtain the result I needed, because now I can easily read the last transmission time.
    Andrea 🙂


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: