This forum post
points to the new AmazfitBipS_Tools_alpha_230420
located here
and you still need the original tool
for converting an original Bip watchface.
Since these are Windows based tools, you'll need mono
to use them on a Linux machine.
The Bip S has a 64 color palette plus transparent. There is a GIMP palette and a PNG palette provided here for use with GIMP and the ImageMagic tool suite respectively.
sudo apt install -y imagemagick
This is a great suite of tools.
The convert
tool is great for
converting a font into individual PNG images
for use in a watchface.
convert -background none -fill black +antialias -font font.ttf -pointsize 300 -trim label:"Z" z.png
Here is an brief explanation with links to the docs for each of the options in the command above:
-background none
- sets any non-written space to transparent.-fill
- sets the color you want the text to appear in.+antialias
- disables this feature and which makes them easier to read when making watchfaces.-font
- a relative or fully-qualified path to the True Type Font to write in.-pointsize
- sets the size of the text to write.-trim
- removes any additional space around the image.label:
- sets the character/string you want to turn into an image.
This is a very simple use of one tool in this very powerful suite of image processing and manipulation tools.
sudo apt-get install -y gimp
When creating/modifying images, these are the GIMP docs I often refer to since I don't do it often:
- Pencil tool
- Gradient tool
- Installing a Palette for use in Indexed Mode
sudo apt-get install -y mono-complete libmono-corlib4.5-cil
cd ~/Downloads
wget https://bitbucket.org/valeronm/amazfitbiptools/downloads/AmazfitBipTools-1.0.3.1.7z
mkdir -p ~/bin/AmazfitBipTools-1.0.3.1
cd ~/bin/AmazfitBipTools-1.0.3.1/
jar xvf x ~/Downloads/AmazfitBipTools-1.0.3.1.7z
Download AmazfitBipS_Tools_alpha_230420
from here.
Then
mkdir -p ~/bin/AmazfitBipS_Tools_alpha_230420
cd ~/bin/AmazfitBipS_Tools_alpha_230420
jar xvf ~/Downloads/AmazfitBipS_Tools_alpha_230420.zip
This forum post contains the instructions that are condensed below:
-
NOTE: Always (de)compile Bip watchfaces with original Bip tool.
-
NOTE: Always (de)compile Bip S watchfaces with new alpha Bip S tool.
-
NOTE: Bip S watchfaces are not fully decrypted yet, there are many unknown options.
-
Decompile a Bip watchface with the original Bip tool.
cd ~/Projects/amazfitbip_faces/
mono ~/bin/AmazfitBipTools-1.0.3.1/WatchFace.exe WatchfaceName.bin
cd ~/Projects/amazfitbip_faces/WatchfaceName
- Scale the Bip
WatchfaceName_packed_static.png
preview to 110x110 and save it as00yy.png
.- Replace the
yy
with the next index count (e.g. if the Bip's last index was0074.png
then save the resized preview as0075.png
. - The image needs the mode set to
indexed
.- To do this in GIMP:
- Image -> Mode -> Indexed...
- set the Colormap to "Use custom palette"
- choose the GIMP Palette for Amazfit Bip S devices (64 color).
- NOTE: Original discussion about the 64-Bit color palette available for the BipS.
- NOTE: My original questions and post of my updated Bip S palette file for GIMP based on the one provided by Amazfit Central for the original 8 color Bip. There have been a few more edits since then and the latest version can be found in this repository here.
- Or you can do the resize and remap with this ImageMagic one-liner:
convert WatchfaceName_packed_static.png -resize 110x110 -remap BipS_palette.png 0075.png
- To do this in GIMP:
- Replace the
- Update the JSON file
- Add the Bip S preview file:
- Old (Bip) JSON:
- Add the Bip S preview file:
{
"Background": {
"Image": {
"X": 0,
"Y": 0,
"ImageIndex": 0
}
},
...
}
- New (Bip S) JSON:
"Background": {
"Image": {
"X": 0,
"Y": 0,
"ImageIndex": 0
},
"Preview": {
"X": 0,
"Y": 0,
"ImageIndex": 75
}
},
- Add the new
Number
section to the following subsections ofActivity
(Calories
,Pulse
, andSteps
) and similarly to theBattery
's subsectionText
:- Old (Bip) JSON:
{
...
"Activity": {
"Calories": {
"TopLeftX": 24,
...
},
...
}
...
"Battery": {
"Text": {
"TopLeftX": 97,
...
},
...
}
}
- New (Bip S) JSON:
{
...
"Activity": {
"Calories": {
"Number": {
"TopLeftX": 24,
...
}
},
...
}
...
"Battery": {
"Text": {
"Number": {
"TopLeftX": 97,
...
}
},
...
}
}
- Compile the Bip S watchface with the new alpha Bip S tool.
mono ~/bin/AmazfitBipS_Tools_alpha_230420/WatchFace.exe WatchfaceName.json
mv WatchfaceName_packed.bin ../WatchfaceName.bin
To get an animated image to upload for distribution, use:
convert -delay 50 -loop 0 WatchfaceName_animated_*.png WatchfaceName_animated.gif
Install the app:
- https://play.google.com/store/apps/details?id=com.amazfitwatchfaces.st Watch this video:
- https://youtu.be/VzlsqHQJSic
This Reddit discussion on Android 11 file permission changes that are at the root of the issue for installing watchfaces using the traditional methods. This Explorer tool has the permission updates needed to perform a traditional installation as described below.
- On the phone, navigate to the following location in a file manager:
/Android/data/com.huami.watch.hmwatchmanager/files/watch_skin_local/
- Delete all files and/or directories in it.
- In the Zepp app, install a watch face from those available in the Online tab.
- This will create a directory on the phone named:
/Android/data/com.huami.watch.hmwatchmanager/files/watch_skin_local/<HexCharsX32>
- Copy your
.bin
file into this directory. - Delete the existing
<HexCharsX32>.bin
. - Rename your
.bin
file to the old<HexCharsX32>.bin
.