[BIP][ULTIMATE GUIDE]Custom watchface, Music controls, Calls, Tasker integration, etc

Search This thread

nelsontky

Senior Member
Aug 13, 2012
79
193
Hi all! The Amazfit Bip is an amazing device with great hardware and battery life that would even put a Pebble to shame. However, due to its limited software, it has a lot of unrealized potential and this thread aims to provide some workarounds for the power users of XDA to make this amazing smartwatch more functional.
I will taking requests for additional tutorials so do please feel free to comment!
Note: Most of the guides here require the use of 2 paid apps, 'Tasker' and 'Tools & Amazfit'. Both are awesome apps (esp Tasker) and they do not cost much to download
Tasker: https://play.google.com/store/apps/details?id=net.dinglisch.android.taskerm&hl=en
Tools & Amazfit: https://play.google.com/store/apps/details?id=cz.zdenekhorak.amazfittools&hl=en

With this, we can start now!

1. Custom watch face tutorial
kgcbnqR.jpg

(Yes I am a big fan of Pebble's sliding text watch face, you can download this watchface here.)

This tutorial does not require the use of either Tasker or Tools & Amazfit and thus can be done for free.
1. In order to start to create a custom watch face, first you need a watch face template.
2. Connect your BIP to your android phone via MiFit app.
3. Open MiFit, goto Profile->Amazfit Bip->Watch face settings
4. Click on the ugliest watch face (in your opinion, i used the 'Number'' watch face and press 'Sync watch face'
5. Watch face should be synced to your BIP and downloaded to your phone.
6. Connect your Android phone to your PC and navigate to 'Android/data/com.xiaomi.hm.health/files/watch_skin' and transfer the .bin file to your working directory on your PC.
(For my case, the .bin file is named '9098940e097cf25a971fc917630a6ac2.bin'. That is the name of the 'Number' watch face. Your .bin file may have a different name and that is ok)
7. Download Amazfit Tools to your PC from this link: https://bitbucket.org/valeronm/amazfitbiptools/downloads/
8. Extract the downloaded file to a folder and then drag and drop the transferred .bin file on 'WatchFace.exe' A cmd window should appear and disappear in a flash.
9. A folder with the name of your .bin file should now appear in folder where your .bin file is stored. (In my case, the folder is named '9098940e097cf25a971fc917630a6ac2')
10. Open the folder that appeared and inside you can see the components of a BIP watch face
oYD8NzP.png

11. In the folder, have 2 main file types, .png and .json (Delete the .log file and the 2 preview files)
12. The .png files are resources for the watch face (such as backgrounds, numbers etc) while the .json file contains code for the picture placements and watch face functions.
13. Now, you can either make small edits to the preexisting .png files with a photo editor (paint/gimp/photoshop) and then recompile to a .bin file
or
14. You can replace all the .png files with your own images
(I will be going through this option more, people choosing the small edits path, after editing the resources, you can skip to recompiling the .bin, which is step 28)
15. If you choose to replace all the .png files with your own images, start creating your .png files now. Below are the requirements for the .png files
  • The screen size of the BIP is 176x176px, so do size your images accordingly
  • Must have at least 11 images, with 000.png being the background and 001.png being number 0, 002.png being number 1, so on till 010.png being number 9.
  • If you want to have a separate of images for minutes and hours it is possible. Your next set of images should start with 011.png being number 0.
16. Follow all the requirements and your folder will end up looking like this:
1rowDCI.png

17. It is possible to edit the .json by hand but it is easier to do so with a GUI tool.
18. Go to https://v1ack.github.io/watchfaceEditor/ and upload all your custom images and the .json file respectively.
19. You may get a few error messages but just ignore them.
20. Go to the edit tab and replace the contents inside with this:
Code:
{
    "Background": {
        "Image": {
            "X": 0,
            "Y": 0,
            "ImageIndex": 0
        }
    },
    "Time": {
        "Hours": {
            "Tens": {
                "X": 7,
                "Y": 9,
                "ImageIndex": 1,
                "ImagesCount": 10
            },
            "Ones": {
                "X": 36,
                "Y": 9,
                "ImageIndex": 1,
                "ImagesCount": 10
            }
        },
        "Minutes": {
            "Tens": {
                "X": 81,
                "Y": 9,
                "ImageIndex": 1,
                "ImagesCount": 10
            },
            "Ones": {
                "X": 110,
                "Y": 9,
                "ImageIndex": 1,
                "ImagesCount": 10
            }
        }
    }
}
21. This is the most basic .json watch face code, giving you only the time in hours and minutes. The code explanation is below:

Code:
{
    "Background": {
        "Image": {
            "X": 0,
            "Y": 0,
            "ImageIndex": 0 \\ use 000.png
        }
    },
    "Time": {
     "Hours": {
       "Tens": {
         "X": 7, // position on the XY axis
         "Y": 9,
		 //To use image 001.png to image 010.png, use ImageIndex 1,
		 // to use image 011.png to image 020.png, use ImageIndex 2 and so on
         "ImageIndex": 1,  
         "ImagesCount": 10 // will go from image 001.png to image 010.png 
        },
       "Ones": {
         "X": 36, // position on the XY axis
         "Y": 9,
		 //To use image 001.png to image 010.png, use ImageIndex 1,
		 // to use image 011.png to image 020.png, use ImageIndex 2 and so on
         "ImageIndex": 1,
         "ImagesCount": 10 // will go from image 001.png to image 010.png 
        } 
      },
     "Minutes": {
       "Tens": {
         "X": 81, // position on the XY axis
         "Y": 9,
		 //To use image 001.png to image 010.png, use ImageIndex 1,
		 // to use image 011.png to image 020.png, use ImageIndex 2 and so on
         "ImageIndex": 1,
         "ImagesCount": 10 // will go from image 001.png to image 010.png 
        },
       "Ones": {
         "X": 110, // position on the XY axis
         "Y": 9,
		 //To use image 001.png to image 010.png, use ImageIndex 1,
		 // to use image 011.png to image 020.png, use ImageIndex 2 and so on
         "ImageIndex": 1,
         "ImagesCount": 10 // will go from image 001.png to image 010.png 
        }
     }
   }
   }

22. In the edit tab, there are a few options for you to play around in the sidebar. Do experiment and play around!
22. You can go to the design tab and start moving the numbers according to your own needs.
23. There are many more watch face functions supported by the BIP and I recommend visiting this site. (Google translated) to learn more about them. The site is an amazing site with numerous watch face related tutorials but it is all in Spanish :(
24. When satisfied with your watch face, press export JSON and download the .json file to your decompiled .bin file folder. Replace the existing .json file. (For me, the folder is the '9098940e097cf25a971fc917630a6ac2' folder)
25. Download this zip file: https://github.com/v1ack/watchfaceEditor/raw/master/defaultimages/defaultimages.zip
26. Extract all the files in the downloaded file into your decompiled .bin file folder. These images are the ones used by the online watch face editor when you add functions such as date display, weather, steps etc etc
27. Your decompiled .bin folder should look like this now:
wXCpcuz.png

28. Drag and drop the .json file onto 'WatchFace.exe', '9098940e097cf25a971fc917630a6ac2_packed.bin' should appear in the folder (your file name should be different) alongside a few previews of your watch face.
29. Rename your packed .bin file by removing the '_packed.bin'. (In my case, my file is renamed from 9098940e097cf25a971fc917630a6ac2_packed.bin to 9098940e097cf25a971fc917630a6ac2.bin )
30. Transfer the newly created .bin file to your Android phone, into this folder: 'Android/data/com.xiaomi.hm.health/files/watch_skin' . Replace the old watch face .bin.
31. Open MiFit app and sync the watch face you synced at step 4 onto your BIP
32. Viola! You got a new custom watch face.
33. If you get any errors at step 28 (recompiling), check if you all all the images you referenced to in your .json in the folder. Also, go back to the watch editor website and check your .json file for any errors. You can comment below if you have anything that you are unsure of or need more clarifications.

2. Tasker Integration
Tasker is a very powerful Android app and if integrated with the Amazfit BIP, the amount of things that can be done with the BIP is ENDLESS!
The video below shows how I use my BIP as a TV remote control
Two clicks of the BIP's button turned off the television.
To learn more about Tasker Integration with the BIP, then expand content:

To get Tasker integration for the BIP, you need to download both Tasker and Tools & Amazfit to your Android.
Both are paid apps!!!
This tutorial assumes the knowledge of variables and flow control in Tasker.
If you have never used Tasker before, I recommend you start learning by following some of the tasks listed here. I believe that the best way to learn is a hands on approach and thus after completing a few of the Beginner tasks, move on to the Intermediate tasks and you should be well-versed enough in Tasker for the purposes of this tutorial.
Before starting this tutorial, make sure your BIP is connected to both MiFit and Tools & Amazfit apps.
1. The Tools & Amazfit app has both Tasker Event plugins and Action plugins.
2. Event plugins will trigger an action in Tasker. (e.g. button is pressed or heart rate is measured)
3. These plugins also provides variables to Tasker (e.g. the event plugin will tell you how many times the button on Amazfit was pressed).
4. Action plugins let Tasker do something on the BIP. (e.g. you can send custom vibration to your BIP or you can change heart rate monitoring mode, vibration notification mode, etc.)
5. These plugins can provide variables to Amazfit Tools (e.g. you can pass your own custom text you want to display on the BIP).
Events:
To setup event plugin in Tasker, on Profiles screen tap + and select Event - Plugin - Amazfit Tools. Then simply tap configure and choose event you want to be notified about in Tasker.
kuerdwcu
zaeayp

vxeut
wyfqw

1. Tools & Amazfit supports 3 tasker events (as of 9th Feb 2018) as shown on the bottom right image above.
2. Each of these events has variables for finer even controls. The %button_pressed and %heart_rate variable supports numbers from 1 to infinity while the %charging_state variable supports 0 and 1, 0 for not charging and 1 for charging.
Actions:
To setup action plugin in Tasker, on Tasks screen, create new task, then tap + and select Plugin - Amazfit Tools. Then simply tap configure and choose action you want to perform in Amazfit Tools.
yxahwx
jsghwe

1. Tools & Amazfit supports 5 tasker actions (as of 9th Feb 2018) as shown on the right-side image above
2. These actions are self-explanatory.
Project:
Using both Tools & Amazfit events and actions, now we can create a Tasker profile to turn off the TV!
1. The Event tab and Task:
unh3gbY.png
g189bek.png

2. The event is quite straightforward, it just tells Tasker to look out when the button on the BIP is pressed
3. Task explanation:
  • Line 1: If the variable %button_count equals to 2 (i.e. if the BIP's button was pressed twice), run lines 2 to 6. If not equals to 2, do nothing.
  • Line 2: Run the command 'input keyevent 26'. This command simulates a power button press (requires root) and thus wakes the screen.
  • Line 3: Launch my remote control app.
  • Line 4: Run the command 'input tap 225 270'. This command simulates a screen touch event at pixel X: 225 Y: 270, which is the location of the power button of my remote control app. (Requires root)
  • Line 5: Simulates power button press to lock phone again.
  • Line 6: Sends the notification 'TV TURNED OFF' to the BIP.
End product, after pressing the BIP's button twice, the phone screen turns on, opens the remote control app, taps on the power button and locks screen again.
I understand that turning on the screen of your phone and simulating a tap may not be the most efficient way to code a Tasker profile, however, this is the only remote control app that works for my TV and it does not have Tasker integration and so I have to resort to such means. There are other remote control apps that includes Tasker integration and these apps can even control a smart home, thus allowing your BIP to control everything from light switches to smart TVs. Whatever Tasker can do, your BIP will be able to do the same and thus the possibilities are endless and so have fun!

3. Music Controls
When I bought the BIP, I was disappointed that it had no built-in music control functions as that was one of the main uses of my Pebble watch. Below, I will be teaching you all how to control music with the BIP.

To allow music control with your BIP, you need to download Tools & Amazfit to your Android.
This is a paid app!!!
Make sure that your BIP is connected to both MiFit and the Tools & Amazfit app before starting on this tutorial.
The Tools & Amazfit app allows you to use the BIP's button presses and sensors to control your phone's function.
Refer to the app developer's website for a tutorial on how to use the button control function of the app: http://help.amazfittools.com/knowledge_base/topics/button-control-amazfit
Due to the BIP having only 1 button, it may be cumbersome to launch any task when there are already too many preset tasks (i.e. it is not convenient to press a button 10 times just to pause music) Thus, the app developers included the ability to have different button profiles. Find out more here: http://help.amazfittools.com/knowledge_base/topics/button-control-switch-profile-amazfit

4. Picking Up Calls
The BIP has the ability to end calls but is unable to pickup calls. In this tutorial, we will be learning 2 ways to pickup calls with the BIP.

The first method requires you to download Tools & Amazfit to your Android.
The second method requires you to download both Tasker and Tools & Amazfit to your Android and it also needs root access on your Android.
Both are paid apps!!!
Method 1:
1. Tools & Amazfit app supports picking up of incoming calls.
2. Make sure that your BIP is both connected to MiFit and Tools & Amazfit app before continuing.
3. Open Tools & Amazfit app, open sidebar (swipe from left) and press contacts.
4. Press the plus button and choose 'Any Other'.
5. Tap on the Any Other option that now appears at the contacts screen and tap on 'Amazfit Button Actions'.
6. Set 'Push Button' to 'Answer'
7. In the meantime, you can also customize the incoming call notifications using the Tools & Amazfit app. Have fun!
8. However, this method does not work on recent versions on Android and thus I will be introducing the 2nd way below.
Method 2:
Video tutorial:
1. Make sure that your BIP is both connected to MiFit and Tools & Amazfit app before continuing. This method also requires Tasker and root.
2. Create new Tasker task called 'Pickup'
3. Add an action and tap Code->Run Shell.
4. Type 'service call phone 6' in the command box and check 'Use Root'
5. Press back, add task, tap on Task->Stop and type 'Pickup' in the box.
6. Create a new profile, tap on State->Phone->Call and choose incoming.
7. Add 'Pickup' as the task to the profile.
8. Add an Event to that profile. In the Event Category window, tap on Plugin->Amazfit Tools and configure as Button Pressed.
9. Now when there is an incoming call and you press the BIP's button, you will be able to pickup the call!


5. Coming soon: Google Maps Navigation
 
Last edited:

Kefelon

Member
Feb 10, 2018
9
1
Wow, thank you. Great guide!

Making music control with tasker is good idea but I need to see song name on Bip's screen. And play/pause, next song, previous song buttons will be enough for me. I hope Amazfit Bip developers add music control feature as soon as posible.
 
  • Like
Reactions: Myo Thu Htet

nelsontky

Senior Member
Aug 13, 2012
79
193
Wow, thank you. Great guide!

Making music control with tasker is good idea but I need to see song name on Bip's screen. And play/pause, next song, previous song buttons will be enough for me. I hope Amazfit Bip developers add music control feature as soon as posible.

It is possible to create a notification on the watch whenever the song changes!
 

awankufri

Member
Apr 22, 2016
10
1
Can you please help me use Amazfit BIP to display Prayer timings and Qibla Direction(Muslim) just like Al fajr watches??? I will be grateful.
I want the watch work independently to display the prayer timings for any given locations. your support in this regard will be highly appreciated.
 
  • Like
Reactions: safwankatharudheen

m0ritz

Senior Member
Sep 15, 2011
62
8
Thank you for the post. Do you know when you have time for the Google Maps Navigation guide? I am still undecided if I want to buy a BIP.
 

nelsontky

Senior Member
Aug 13, 2012
79
193
Thank you for the post. Do you know when you have time for the Google Maps Navigation guide? I am still undecided if I want to buy a BIP.

I am currently having some difficulties with google maps navigation as they changed their direction instructions to pictures (and I cannot grab all the possible images) I kinda have it ready for OSMAnd however OSMAnd does not work as well as gmaps.
 
  • Like
Reactions: sonic_ear and jova

nelsontky

Senior Member
Aug 13, 2012
79
193
Can you please help me use Amazfit BIP to display Prayer timings and Qibla Direction(Muslim) just like Al fajr watches??? I will be grateful.
I want the watch work independently to display the prayer timings for any given locations. your support in this regard will be highly appreciated.

It is not possible to display such information on the watchface directly. It may be possible to create a notification for these though and you can be able to view the information on your watch upon a button press/a series of button presses while connected to your phone. If you are fine with such limitations do reply and we can work something out together and add it to this thread
 

awankufri

Member
Apr 22, 2016
10
1
That would be awesome. Thanks a lot for taking interest in my. I really appreciate it. If this info can be displayed on watch without using smartphone...
 

nelsontky

Senior Member
Aug 13, 2012
79
193
That would be awesome. Thanks a lot for taking interest in my. I really appreciate it. If this info can be displayed on watch without using smartphone...

Without smartphone would be impossible as if I am not wrong the prayer time kind of changes everyday right? There is no possibility of importing a timetable to the bip due to its lack of function. For qibla direction wise, the bip actually has the hardware to calculate the direction but due to it being a closed system, it is impossible to create an app on the watch to do so. You can technically find the direction by subtracting your coordinates from the qibla's one but thats too tedious.
 

jova

Member
Aug 28, 2008
7
3
I am currently having some difficulties with google maps navigation as they changed their direction instructions to pictures (and I cannot grab all the possible images) I kinda have it ready for OSMAnd however OSMAnd does not work as well as gmaps.

Hi,

a good guide for OSMAnd would be helpful too. So would be very nice to post it aswell. :)

Cheers
 

Zdog291

Senior Member
May 27, 2013
50
12
Is it possible to set up workouts or pace notifications for running? Like have it tell you to run for 0.3 miles then rest for 30 seconds, then run again etc. Is it possible for it to remind you if you're running below a certain pace e.g buzz if you go above a 7:30 min/mile pave?
 

Saadhasan14719

New member
Mar 6, 2018
1
0
Hi. So i am looking for customization. However I use an iPhone and have a spare android phone. If I buy the all amazing tools and amazfit app can I not have my amazfit bip connected to the phone all day (during night time as well) and expect to get all the data and features of the app when I connect to the app once a day?

---------- Post added at 07:32 PM ---------- Previous post was at 07:27 PM ----------

Also please tell me if theres a way to track GYM routine on amazfit like resistance and strength training
 

Top Liked Posts

  • There are no posts matching your filters.
  • 92
    Hi all! The Amazfit Bip is an amazing device with great hardware and battery life that would even put a Pebble to shame. However, due to its limited software, it has a lot of unrealized potential and this thread aims to provide some workarounds for the power users of XDA to make this amazing smartwatch more functional.
    I will taking requests for additional tutorials so do please feel free to comment!
    Note: Most of the guides here require the use of 2 paid apps, 'Tasker' and 'Tools & Amazfit'. Both are awesome apps (esp Tasker) and they do not cost much to download
    Tasker: https://play.google.com/store/apps/details?id=net.dinglisch.android.taskerm&hl=en
    Tools & Amazfit: https://play.google.com/store/apps/details?id=cz.zdenekhorak.amazfittools&hl=en

    With this, we can start now!

    1. Custom watch face tutorial
    kgcbnqR.jpg

    (Yes I am a big fan of Pebble's sliding text watch face, you can download this watchface here.)

    This tutorial does not require the use of either Tasker or Tools & Amazfit and thus can be done for free.
    1. In order to start to create a custom watch face, first you need a watch face template.
    2. Connect your BIP to your android phone via MiFit app.
    3. Open MiFit, goto Profile->Amazfit Bip->Watch face settings
    4. Click on the ugliest watch face (in your opinion, i used the 'Number'' watch face and press 'Sync watch face'
    5. Watch face should be synced to your BIP and downloaded to your phone.
    6. Connect your Android phone to your PC and navigate to 'Android/data/com.xiaomi.hm.health/files/watch_skin' and transfer the .bin file to your working directory on your PC.
    (For my case, the .bin file is named '9098940e097cf25a971fc917630a6ac2.bin'. That is the name of the 'Number' watch face. Your .bin file may have a different name and that is ok)
    7. Download Amazfit Tools to your PC from this link: https://bitbucket.org/valeronm/amazfitbiptools/downloads/
    8. Extract the downloaded file to a folder and then drag and drop the transferred .bin file on 'WatchFace.exe' A cmd window should appear and disappear in a flash.
    9. A folder with the name of your .bin file should now appear in folder where your .bin file is stored. (In my case, the folder is named '9098940e097cf25a971fc917630a6ac2')
    10. Open the folder that appeared and inside you can see the components of a BIP watch face
    oYD8NzP.png

    11. In the folder, have 2 main file types, .png and .json (Delete the .log file and the 2 preview files)
    12. The .png files are resources for the watch face (such as backgrounds, numbers etc) while the .json file contains code for the picture placements and watch face functions.
    13. Now, you can either make small edits to the preexisting .png files with a photo editor (paint/gimp/photoshop) and then recompile to a .bin file
    or
    14. You can replace all the .png files with your own images
    (I will be going through this option more, people choosing the small edits path, after editing the resources, you can skip to recompiling the .bin, which is step 28)
    15. If you choose to replace all the .png files with your own images, start creating your .png files now. Below are the requirements for the .png files
    • The screen size of the BIP is 176x176px, so do size your images accordingly
    • Must have at least 11 images, with 000.png being the background and 001.png being number 0, 002.png being number 1, so on till 010.png being number 9.
    • If you want to have a separate of images for minutes and hours it is possible. Your next set of images should start with 011.png being number 0.
    16. Follow all the requirements and your folder will end up looking like this:
    1rowDCI.png

    17. It is possible to edit the .json by hand but it is easier to do so with a GUI tool.
    18. Go to https://v1ack.github.io/watchfaceEditor/ and upload all your custom images and the .json file respectively.
    19. You may get a few error messages but just ignore them.
    20. Go to the edit tab and replace the contents inside with this:
    Code:
    {
        "Background": {
            "Image": {
                "X": 0,
                "Y": 0,
                "ImageIndex": 0
            }
        },
        "Time": {
            "Hours": {
                "Tens": {
                    "X": 7,
                    "Y": 9,
                    "ImageIndex": 1,
                    "ImagesCount": 10
                },
                "Ones": {
                    "X": 36,
                    "Y": 9,
                    "ImageIndex": 1,
                    "ImagesCount": 10
                }
            },
            "Minutes": {
                "Tens": {
                    "X": 81,
                    "Y": 9,
                    "ImageIndex": 1,
                    "ImagesCount": 10
                },
                "Ones": {
                    "X": 110,
                    "Y": 9,
                    "ImageIndex": 1,
                    "ImagesCount": 10
                }
            }
        }
    }
    21. This is the most basic .json watch face code, giving you only the time in hours and minutes. The code explanation is below:

    Code:
    {
        "Background": {
            "Image": {
                "X": 0,
                "Y": 0,
                "ImageIndex": 0 \\ use 000.png
            }
        },
        "Time": {
         "Hours": {
           "Tens": {
             "X": 7, // position on the XY axis
             "Y": 9,
    		 //To use image 001.png to image 010.png, use ImageIndex 1,
    		 // to use image 011.png to image 020.png, use ImageIndex 2 and so on
             "ImageIndex": 1,  
             "ImagesCount": 10 // will go from image 001.png to image 010.png 
            },
           "Ones": {
             "X": 36, // position on the XY axis
             "Y": 9,
    		 //To use image 001.png to image 010.png, use ImageIndex 1,
    		 // to use image 011.png to image 020.png, use ImageIndex 2 and so on
             "ImageIndex": 1,
             "ImagesCount": 10 // will go from image 001.png to image 010.png 
            } 
          },
         "Minutes": {
           "Tens": {
             "X": 81, // position on the XY axis
             "Y": 9,
    		 //To use image 001.png to image 010.png, use ImageIndex 1,
    		 // to use image 011.png to image 020.png, use ImageIndex 2 and so on
             "ImageIndex": 1,
             "ImagesCount": 10 // will go from image 001.png to image 010.png 
            },
           "Ones": {
             "X": 110, // position on the XY axis
             "Y": 9,
    		 //To use image 001.png to image 010.png, use ImageIndex 1,
    		 // to use image 011.png to image 020.png, use ImageIndex 2 and so on
             "ImageIndex": 1,
             "ImagesCount": 10 // will go from image 001.png to image 010.png 
            }
         }
       }
       }

    22. In the edit tab, there are a few options for you to play around in the sidebar. Do experiment and play around!
    22. You can go to the design tab and start moving the numbers according to your own needs.
    23. There are many more watch face functions supported by the BIP and I recommend visiting this site. (Google translated) to learn more about them. The site is an amazing site with numerous watch face related tutorials but it is all in Spanish :(
    24. When satisfied with your watch face, press export JSON and download the .json file to your decompiled .bin file folder. Replace the existing .json file. (For me, the folder is the '9098940e097cf25a971fc917630a6ac2' folder)
    25. Download this zip file: https://github.com/v1ack/watchfaceEditor/raw/master/defaultimages/defaultimages.zip
    26. Extract all the files in the downloaded file into your decompiled .bin file folder. These images are the ones used by the online watch face editor when you add functions such as date display, weather, steps etc etc
    27. Your decompiled .bin folder should look like this now:
    wXCpcuz.png

    28. Drag and drop the .json file onto 'WatchFace.exe', '9098940e097cf25a971fc917630a6ac2_packed.bin' should appear in the folder (your file name should be different) alongside a few previews of your watch face.
    29. Rename your packed .bin file by removing the '_packed.bin'. (In my case, my file is renamed from 9098940e097cf25a971fc917630a6ac2_packed.bin to 9098940e097cf25a971fc917630a6ac2.bin )
    30. Transfer the newly created .bin file to your Android phone, into this folder: 'Android/data/com.xiaomi.hm.health/files/watch_skin' . Replace the old watch face .bin.
    31. Open MiFit app and sync the watch face you synced at step 4 onto your BIP
    32. Viola! You got a new custom watch face.
    33. If you get any errors at step 28 (recompiling), check if you all all the images you referenced to in your .json in the folder. Also, go back to the watch editor website and check your .json file for any errors. You can comment below if you have anything that you are unsure of or need more clarifications.

    2. Tasker Integration
    Tasker is a very powerful Android app and if integrated with the Amazfit BIP, the amount of things that can be done with the BIP is ENDLESS!
    The video below shows how I use my BIP as a TV remote control
    Two clicks of the BIP's button turned off the television.
    To learn more about Tasker Integration with the BIP, then expand content:

    To get Tasker integration for the BIP, you need to download both Tasker and Tools & Amazfit to your Android.
    Both are paid apps!!!
    This tutorial assumes the knowledge of variables and flow control in Tasker.
    If you have never used Tasker before, I recommend you start learning by following some of the tasks listed here. I believe that the best way to learn is a hands on approach and thus after completing a few of the Beginner tasks, move on to the Intermediate tasks and you should be well-versed enough in Tasker for the purposes of this tutorial.
    Before starting this tutorial, make sure your BIP is connected to both MiFit and Tools & Amazfit apps.
    1. The Tools & Amazfit app has both Tasker Event plugins and Action plugins.
    2. Event plugins will trigger an action in Tasker. (e.g. button is pressed or heart rate is measured)
    3. These plugins also provides variables to Tasker (e.g. the event plugin will tell you how many times the button on Amazfit was pressed).
    4. Action plugins let Tasker do something on the BIP. (e.g. you can send custom vibration to your BIP or you can change heart rate monitoring mode, vibration notification mode, etc.)
    5. These plugins can provide variables to Amazfit Tools (e.g. you can pass your own custom text you want to display on the BIP).
    Events:
    To setup event plugin in Tasker, on Profiles screen tap + and select Event - Plugin - Amazfit Tools. Then simply tap configure and choose event you want to be notified about in Tasker.
    kuerdwcu
    zaeayp

    vxeut
    wyfqw

    1. Tools & Amazfit supports 3 tasker events (as of 9th Feb 2018) as shown on the bottom right image above.
    2. Each of these events has variables for finer even controls. The %button_pressed and %heart_rate variable supports numbers from 1 to infinity while the %charging_state variable supports 0 and 1, 0 for not charging and 1 for charging.
    Actions:
    To setup action plugin in Tasker, on Tasks screen, create new task, then tap + and select Plugin - Amazfit Tools. Then simply tap configure and choose action you want to perform in Amazfit Tools.
    yxahwx
    jsghwe

    1. Tools & Amazfit supports 5 tasker actions (as of 9th Feb 2018) as shown on the right-side image above
    2. These actions are self-explanatory.
    Project:
    Using both Tools & Amazfit events and actions, now we can create a Tasker profile to turn off the TV!
    1. The Event tab and Task:
    unh3gbY.png
    g189bek.png

    2. The event is quite straightforward, it just tells Tasker to look out when the button on the BIP is pressed
    3. Task explanation:
    • Line 1: If the variable %button_count equals to 2 (i.e. if the BIP's button was pressed twice), run lines 2 to 6. If not equals to 2, do nothing.
    • Line 2: Run the command 'input keyevent 26'. This command simulates a power button press (requires root) and thus wakes the screen.
    • Line 3: Launch my remote control app.
    • Line 4: Run the command 'input tap 225 270'. This command simulates a screen touch event at pixel X: 225 Y: 270, which is the location of the power button of my remote control app. (Requires root)
    • Line 5: Simulates power button press to lock phone again.
    • Line 6: Sends the notification 'TV TURNED OFF' to the BIP.
    End product, after pressing the BIP's button twice, the phone screen turns on, opens the remote control app, taps on the power button and locks screen again.
    I understand that turning on the screen of your phone and simulating a tap may not be the most efficient way to code a Tasker profile, however, this is the only remote control app that works for my TV and it does not have Tasker integration and so I have to resort to such means. There are other remote control apps that includes Tasker integration and these apps can even control a smart home, thus allowing your BIP to control everything from light switches to smart TVs. Whatever Tasker can do, your BIP will be able to do the same and thus the possibilities are endless and so have fun!

    3. Music Controls
    When I bought the BIP, I was disappointed that it had no built-in music control functions as that was one of the main uses of my Pebble watch. Below, I will be teaching you all how to control music with the BIP.

    To allow music control with your BIP, you need to download Tools & Amazfit to your Android.
    This is a paid app!!!
    Make sure that your BIP is connected to both MiFit and the Tools & Amazfit app before starting on this tutorial.
    The Tools & Amazfit app allows you to use the BIP's button presses and sensors to control your phone's function.
    Refer to the app developer's website for a tutorial on how to use the button control function of the app: http://help.amazfittools.com/knowledge_base/topics/button-control-amazfit
    Due to the BIP having only 1 button, it may be cumbersome to launch any task when there are already too many preset tasks (i.e. it is not convenient to press a button 10 times just to pause music) Thus, the app developers included the ability to have different button profiles. Find out more here: http://help.amazfittools.com/knowledge_base/topics/button-control-switch-profile-amazfit

    4. Picking Up Calls
    The BIP has the ability to end calls but is unable to pickup calls. In this tutorial, we will be learning 2 ways to pickup calls with the BIP.

    The first method requires you to download Tools & Amazfit to your Android.
    The second method requires you to download both Tasker and Tools & Amazfit to your Android and it also needs root access on your Android.
    Both are paid apps!!!
    Method 1:
    1. Tools & Amazfit app supports picking up of incoming calls.
    2. Make sure that your BIP is both connected to MiFit and Tools & Amazfit app before continuing.
    3. Open Tools & Amazfit app, open sidebar (swipe from left) and press contacts.
    4. Press the plus button and choose 'Any Other'.
    5. Tap on the Any Other option that now appears at the contacts screen and tap on 'Amazfit Button Actions'.
    6. Set 'Push Button' to 'Answer'
    7. In the meantime, you can also customize the incoming call notifications using the Tools & Amazfit app. Have fun!
    8. However, this method does not work on recent versions on Android and thus I will be introducing the 2nd way below.
    Method 2:
    Video tutorial:
    1. Make sure that your BIP is both connected to MiFit and Tools & Amazfit app before continuing. This method also requires Tasker and root.
    2. Create new Tasker task called 'Pickup'
    3. Add an action and tap Code->Run Shell.
    4. Type 'service call phone 6' in the command box and check 'Use Root'
    5. Press back, add task, tap on Task->Stop and type 'Pickup' in the box.
    6. Create a new profile, tap on State->Phone->Call and choose incoming.
    7. Add 'Pickup' as the task to the profile.
    8. Add an Event to that profile. In the Event Category window, tap on Plugin->Amazfit Tools and configure as Button Pressed.
    9. Now when there is an incoming call and you press the BIP's button, you will be able to pickup the call!


    5. Coming soon: Google Maps Navigation
    7
    Hi all I have been inactive here for a while as I was busy with life. Will try to update this thread ASAP and at least post instructions for OsmAND navigation for now
    7
    Google Maps navigation on Amazfit Bip now available in the Play Store:

    https://play.google.com/store/apps/details?id=com.re.mibandmaps

    Sent from my Lenovo P2a42 using Tapatalk
    5
    "Coming soon: Google Maps Navigation"

    I'll be looking forward to this.
    5
    Can you please help me use Amazfit BIP to display Prayer timings and Qibla Direction(Muslim) just like Al fajr watches??? I will be grateful.
    I want the watch work independently to display the prayer timings for any given locations. your support in this regard will be highly appreciated.

    It is not possible to display such information on the watchface directly. It may be possible to create a notification for these though and you can be able to view the information on your watch upon a button press/a series of button presses while connected to your phone. If you are fine with such limitations do reply and we can work something out together and add it to this thread
Our Apps
Get our official app!
The best way to access XDA on your phone
Nav Gestures
Add swipe gestures to any Android
One Handed Mode
Eases uses one hand with your phone