• Administrator
  •  
    Support Ukraine
    If you experience any problems with the forum (it is not visible, there is no way to post messages, or some functionality does not work), please let us know. If you have problems with registration or you did not receive confirmation letter, let us know and we will activate your account manually.
    If you get an "The submitted form was invalid. Try submitting again" error, delete cookies, then try again.
     

MiBandWFTool

This forum is designed to discuss and develop tools creating watch faces.

Moderators: asoo, lvpokka, Internal error, Watchmens

Forum rules
All communication in this branch should only be in English.
To discuss tools that are not in this section, use the “Watchfaces tools (discussion)” forum.
lvpokka
Posts: 178
Joined: 07 Jul 2019, 20:22
Location: L1
Has thanked: 19 times
Been thanked: 152 times
Contact:

MiBandWFTool

Post by lvpokka »

Author
lvpokka

Tool Description
1. The tool is based on a modified version of AmazfitBipTools, thanks to the original open source .
2. The tool supports unpacking, packing of the official watch face bin file.
3. Mi band 4 supports 16,581,375 colors.
4. Mi band 5 supports 15,499,008 colors.

How to
1. Unzip MiBandWFTool_X.X.zip.
2. Download .bin file from catalog or get standard watchface file.
3. Drag the .bin file to WatchFace.exe (in step 1. , get the decompressed file)
(if there is only one log file, the decompression failed).

4. There are two ways to modify the dial.
  • is to modify the corresponding image file and replace it with what we want.
  • is to modify the corresponding json file and modify the position of the image.
5. After all the modifications are completed, drag the modified json into WatchFace.exe in step 1 to get the corresponding bin file
(the file name depends on the name of the bin. If the .bin file is not generated, the package is wrong)

6. Copy the newly generated bin file to the corresponding directory of the mobile phone, and the synchronization will be completed. (This step is not very clear, you can refer to the original tutorial) above, you're done!
History log
What's new
  • added animation support
  • fixed pulse and weather
  • removed color restrictions for images
  • analog clock support
ver1.2
- Added compatibility for Pulse progress bar

ver1.3
- added full support for transparent images
- drawing 20 frames for preview GIF

ver1.3.2
- bug fixes
- added 2 versions, both with transparency but Palette version uses less memory if images are simple.

ver1.3.3
- Added circular/linear step progress on preview

Stable v1.3.6
- locked transparency for palette mode, support only (0 and 255) values
- palette mode fix

Stable v1.3.7
v1.3.7 (cosmetic changes, you can use 1.3.6 if everything suits)
- Fixed GIF preview (Pulse rendering, Step segments, Kilometer drawing, Calories)
- Added the ability to choose which Set of images to use for WeekDays. (Config file WatchFace.exe.config)
- STRONGLY fixed json examples in README.
(to avoid problems, pack 1.3.6 and unpack 1.3.7 for a smooth transition)

Stable v1.3.8
- Removed image order dependency for json (sorting images no longer required)
- Fixed display bugs
Important: the order of the images should be from 0000 to XXXX without gaps.

v1.3.9
- Removed dependence on images order 0000->XXXX
- Calories rendering fixed
- Added ability to change Preview Speed (available from 50ms - 1000ms)
- TimeElement DrawingOrder hardcoded to 1234 (not used by MiBand4)

v1.4.1
- Other bugfixes
- New WF support
- Added new elements (time delimiter / step icon / linear progress )

v2.1.4
- Added support Mi Band 5 wfaces
- Pandafix (new unknown element)
- BugFixes

v2.1.5
- Preview bugfixes
- [WFPreview] Added Copy/Paste/Save ability
- [WFPreview] Added ability to replace watchface header
Mi Band 4 WF Tool
v1.4.2
- Added miles image support
NOTE:
- if your using image for MilesSuffixImageIndex, then KmSuffixImageIndex is required! you can use the same image for it

Mi Band 5 WF Tool
v2.1.6
- Preview bugfixes
- Watchfaces generating with random header identifier
- Fixed problem with Windows scaling, DPI is tied to 96
- [WFPreview] Removed ability to clone watchface header

Mi Band 6 WF Tool
v4.1.0
- Added Lunar calendar
- Bug fixes
- New preview generator, should be pixel perfect (big thx to Johnson070)

MiBandWFTool_4.1.0.zip

MiBandWFTool_2.1.6.zip [alt url] [alt url 2]

MiBandWFTool_1.4.2.zip [alt url] [alt url 2]
Last edited by lvpokka on 02 Aug 2020, 19:41, edited 24 times in total.
lvpokka
Posts: 178
Joined: 07 Jul 2019, 20:22
Location: L1
Has thanked: 19 times
Been thanked: 152 times
Contact:

Post by lvpokka »

user_test wrote: 11 Jul 2019, 13:21

Sorry buy I can't understand you. So the problem in my json is that some BottomRightX and BottomRightY are not correct, and for that reason the Watchface is not showing the elements right?

It means that if I adjust the BottomRights positions to match exactly the size of elements, all the elements will be shown?

Thank you in advice.
Yes please) it can be bigger but ideally the same as size because it trying to fix some elements in miband4
also i assume AnimationImage -> X3 should be set to 100
user_test

Post by user_test »

lvpokka wrote: 11 Jul 2019, 13:42
Yes please) it can be bigger but ideally the same as size because it trying to fix some elements in miband4
also i assume AnimationImage -> X3 should be set to 100
I made this one with all your recomendations, X3 = 100, and all the BottomRight setted right.

But the problem persists, maybe I am forgetting something in the json? Could you please provide a correct Json to check if there is any difference which could be causing the problem?

Thank you for your help, hope I can fix it or at least detect where the problem is.
Attachments
ILoveRock_packed.zip
(400.19 KiB) Downloaded 264 times
User avatar
lukbe
WF maker
Posts: 18
Joined: 02 Jun 2018, 08:09
Location: Czech
Has thanked: 1 time
Been thanked: 8 times
Contact:

Post by lukbe »

lvpokka wrote: 11 Jul 2019, 11:32
thankkien wrote: 11 Jul 2019, 10:38
* Does anyone know how to add calories?
It is not supported yet?

** My proposal for the new version
/ Why don't we allow it to be named freely. I think adding new languages ​​to the watch face will be simpler.

/ Now if I remove the day of the week in Chinese, it will fail. I have to add 14 image files for Chinese weekdays and 2 image files for morning and afternoon. Memory waste is too great
-named freely, there is just 1,2,3,4,5.. text is just for linking with data and sequence ) btw English is universal language

WeekDay
DayAmPm
Battery>Icon
Is required, but you can use ultra small memory)) please x=0 y=0 and make image of 1 black pixel!
btw. you can use only 7 images for WeekDay or 14 or 21 but remember all files should go from 0000 -> X without missing if you remove image you should rename all images after

I have questions to the images for weekday.
In the case when I used only 7 images, I changed name of each image and I edited json file. After loading bin file in to mi band, here was not week day displayed!


Why?
lvpokka
Posts: 178
Joined: 07 Jul 2019, 20:22
Location: L1
Has thanked: 19 times
Been thanked: 152 times
Contact:

Post by lvpokka »

[mention]lukbe[/mention] Please provide files, i will verify)
Anonymous86

Post by Anonymous86 »

[mention]lvpokka[/mention]

Maybe a documentation or similar would be really nice. What is possible with which json part. I don't want to look thousand examples.

What means X2, Y2, X3? What is BottomRight, etc.?
What must be used in the json?

I often get error in rendering. Its really annoying.
Last edited by Anonymous86 on 11 Jul 2019, 21:53, edited 3 times in total.
User avatar
lukbe
WF maker
Posts: 18
Joined: 02 Jun 2018, 08:09
Location: Czech
Has thanked: 1 time
Been thanked: 8 times
Contact:

Post by lukbe »

lvpokka wrote: 11 Jul 2019, 17:09
@lukbe Please provide files, i will verify)
Attachments
00_v2_czech_04072019_packed.7z
(250.79 KiB) Downloaded 240 times
DarkForgotten

Post by DarkForgotten »

Hi! How can I add day, month and week day to a watchface?
lvpokka
Posts: 178
Joined: 07 Jul 2019, 20:22
Location: L1
Has thanked: 19 times
Been thanked: 152 times
Contact:

Post by lvpokka »

[mention]DarkForgotten[/mention] unpack similar watchface with existing items, and combine with you owrn
2Dead2Live

Post by 2Dead2Live »

I`m having problem with animations bcs after i proced my json to bin it`s unable to instal on my mi band 4 but prievew is ok. When i tried proceding other working theme with animation it couldn`t work . Is there some solution to it or i`m doing something wrong ? :/
User avatar
lukbe
WF maker
Posts: 18
Joined: 02 Jun 2018, 08:09
Location: Czech
Has thanked: 1 time
Been thanked: 8 times
Contact:

Post by lukbe »

Can you tell me size of the bin file? I think that maximum size of the WF is 300 kB...
lvpokka
Posts: 178
Joined: 07 Jul 2019, 20:22
Location: L1
Has thanked: 19 times
Been thanked: 152 times
Contact:

Post by lvpokka »

lukbe wrote: 11 Jul 2019, 17:27
lvpokka wrote: 11 Jul 2019, 17:09
@lukbe Please provide files, i will verify)
please swap in json
Activity <-> Date
its wrong position thats why he skip it on miband4
lvpokka
Posts: 178
Joined: 07 Jul 2019, 20:22
Location: L1
Has thanked: 19 times
Been thanked: 152 times
Contact:

Post by lvpokka »

You also could try to check https://yadi.sk/d/YlLUcnz7VD9MqA

PaletteImageMode
you can create in raw.cfg near .json with content like 1,3,66, and it will user RAW storage for 1 3 and 66 images.) it could help you to save space
p.s read log for more info
user_test

Post by user_test »

lvpokka wrote: 11 Jul 2019, 19:35
You also could try to check https://yadi.sk/d/YlLUcnz7VD9MqA

PaletteImageMode
you can create in raw.cfg near .json with content like 1,3,66, and it will user RAW storage for 1 3 and 66 images.) it could help you to save space
p.s read log for more info
Well I have been trying your last version 1.3.5 to compile the watchface with animation and thanks to the raw.cfg file I've been able to create a bin of 290Kb compressing only the animation and the weekDays (i mean I put in raw.cfg all the files except the ones for animation and the weekDay)

When I install the bin, all the digits, background, icons are shown correctly but the animation and the weekDays.

I think there is a problem with the Palette version which makes the images invisibles or something?

Could you check it please? I can attach you my working watchface if you need it.

Thank you, really appreciate your tool and hope it can be improved to make animated watchfaces properly.
Anonymous86

Post by Anonymous86 »

[mention]lvpokka[/mention]

I like your tool, but its not matured. I try now over 10h to make a watch face but often i get render errors.
Maybe a documentation or similar would be really nice. What is possible with which json part. I don't want to look thousand examples.

What means X2, Y2, X3? What is BottomRight, etc.?
What must be used in the json?

I often get error in rendering. Its really annoying.

Maybe you make a Github-Repository to work with others together?
Thank You really much for your work.
Attachments
Forest Watchface.zip
(449.44 KiB) Downloaded 251 times
Last edited by Anonymous86 on 11 Jul 2019, 21:51, edited 2 times in total.
lvpokka
Posts: 178
Joined: 07 Jul 2019, 20:22
Location: L1
Has thanked: 19 times
Been thanked: 152 times
Contact:

Post by lvpokka »

[mention]user_test[/mention] Yes sure i need data for testing...
[mention]Anonymous86 [/mention] Please add your files for check
Last edited by lvpokka on 11 Jul 2019, 22:14, edited 2 times in total.
lvpokka
Posts: 178
Joined: 07 Jul 2019, 20:22
Location: L1
Has thanked: 19 times
Been thanked: 152 times
Contact:

Post by lvpokka »

Anonymous86 wrote: 11 Jul 2019, 21:49

I like your tool, but its not matured. I try now over 10h to make a watch face but often i get render errors.
Maybe a documentation or similar would be really nice. What is possible with which json part. I don't want to look thousand examples.
matured??)))) after verifying your work i can sudgest you to be more patient and carefull.. too many mistakes in json

Right json, please compare with yours

Code: Select all

{
	"Background": {
		"Image": {
			"X": 0,
			"Y": 0,
			"ImageIndex": 0
		}
	},
	"Time": {
		"Hours": {
			"Tens": {
				"X": 5,
				"Y": 25,
				"ImageIndex": 1,
				"ImagesCount": 3
			},
			"Ones": {
				"X": 30,
				"Y": 25,
				"ImageIndex": 1,
				"ImagesCount": 10
			}
		},
		"Minutes": {
			"Tens": {
				"X": 70,
				"Y": 25,
				"ImageIndex": 1,
				"ImagesCount": 6
			},
			"Ones": {
				"X": 95,
				"Y": 25,
				"ImageIndex": 1,
				"ImagesCount": 10
			}
		}
	},
	"Date": {
		"MonthAndDay": {
			"Separate": {
				"Month": {
					"TopLeftX": 60,
					"TopLeftY": 75,
					"BottomRightX": 74,
					"BottomRightY": 84,
					"Alignment": "Center",
					"Spacing": 1,
					"ImageIndex": 11,
					"ImagesCount": 10
				},
				"Day": {
					"TopLeftX": 40,
					"TopLeftY": 75,
					"BottomRightX": 54,
					"BottomRightY": 84,
					"Alignment": "Center",
					"Spacing": 1,
					"ImageIndex": 11,
					"ImagesCount": 10
				}
			},
			"TwoDigitsMonth": true,
			"TwoDigitsDay": true
		},
		"WeekDay": {
			"X": 45,
			"Y": 90,
			"ImageIndex": 47,
			"ImagesCount": 7
		},
		"DayAmPm": {
			"TopLeftX": 78,
			"TopLeftY": 74,
			"ImageIndexAMCN": 46,
			"ImageIndexPMCN": 47,
			"ImageIndexAMEN": 46,
			"ImageIndexPMEN": 47
		}
	},
	"Activity": {
		"Steps": {
			"Step": {
				"TopLeftX": 20,
				"TopLeftY": 225,
				"BottomRightX": 58,
				"BottomRightY": 234,
				"Alignment": "TopCenter",
				"Spacing": 1,
				"ImageIndex": 11,
				"ImagesCount": 10
			}
		},
		"Distance": {
			"Number": {
				"TopLeftX": 66,
				"TopLeftY": 225,
				"BottomRightX": 113,
				"BottomRightY": 234,
				"Alignment": "Center",
				"Spacing": 1,
				"ImageIndex": 21,
				"ImagesCount": 10
			},
			"SuffixImageIndex": 41,
			"DecimalPointImageIndex": 42
		}
	},
	"Status": {
		"DoNotDisturb": {
			"Coordinates": {
				"X": 2,
				"Y": 2,
				"X2": 1,
				"Y2": 1,
				"X3": 1
			},
			"ImageIndexOn": 43
		},
		"Lock": {
			"Coordinates": {
				"X": 15,
				"Y": 2,
				"X2": 1,
				"Y2": 1,
				"X3": 1
			},
			"ImageIndexOn": 44
		},
		"Bluetooth": {
			"Coordinates": {
				"X": 28,
				"Y": 2,
				"X2": 1,
				"Y2": 1,
				"X3": 1
			},
			"ImageIndexOff": 45
		},
		"Battery": {
			"Text": {
				"TopLeftX": 0,
				"TopLeftY": 0,
				"BottomRightX": 0,
				"BottomRightY": 0,
				"Alignment": 0,
				"Spacing": 0,
				"ImageIndex": 0,
				"ImagesCount": 0
			},
			"Text2": {
				"TopLeftX": 71,
				"TopLeftY": 3,
				"BottomRightX": 88,
				"BottomRightY": 12,
				"Alignment": "Center",
				"Spacing": 0,
				"ImageIndex": 21,
				"ImagesCount": 10
			},
			"Icon": {
				"X": 92,
				"Y": 2,
				"ImageIndex": 31,
				"ImagesCount": 9
			}
		}
	}
}
Attachments
tool is not ready for public btw)
tool is not ready for public btw)
Screenshot 2019-07-12 00.55.03.png (390.47 KiB) Viewed 71508 times
user_test

Post by user_test »

lvpokka wrote: 11 Jul 2019, 21:49
@user_test Yes sure i need data for testing...
@Anonymous86 Please add your files for check
Here you have.

As you can see, the raw.cfg contains all except the WEEKDay's images, the ones for AM/PM and one of the Animation images. If you install the bin you can see everything right but the animation (which only shows the img which is in raw) and the WeekDays.

I've tryed same resources and Json in Tools0.0.2 and it makes the bin with all the images and low size.

Hope you can fix it. If you need some help, I will do my best.

Thank you very much
Attachments
Pokeball_with_rawcfg.rar
(54.95 KiB) Downloaded 239 times
lvpokka
Posts: 178
Joined: 07 Jul 2019, 20:22
Location: L1
Has thanked: 19 times
Been thanked: 152 times
Contact:

Post by lvpokka »

[mention]user_test[/mention]
one more time
"Activity" should go AFTER "Date" structure in JSON!

upd.
your animation x y is ok but it's overlapping Steps! make image smaller size for test
and fix steps coordinates also
"Step": {
"TopLeftX": 30,
"TopLeftY": 213,
"BottomRightX": 124,
"BottomRightY": 238,
upd.
Why your using so many raw images? it's consuming space, or you want different quality or it's not showed in miband4? if not then maybe animation is also not showed because your not using raw for it? also what for 69 index in raw.cfg
Last edited by lvpokka on 11 Jul 2019, 22:40, edited 1 time in total.
DarkForgotten

Post by DarkForgotten »

I've tried to edit a watchface I really like adding date, month and day of the week. I managed to add all (more or less) but when I sync the watchface with the band the background is completely black.
lvpokka
Posts: 178
Joined: 07 Jul 2019, 20:22
Location: L1
Has thanked: 19 times
Been thanked: 152 times
Contact:

Post by lvpokka »

[mention]DarkForgotten[/mention] black is because you should use raw or create or save image differently. black images meaning that previosly transparency effect was cut off and you should unpack it at least with 1.2 version to get old images without transparency
user_test

Post by user_test »

lvpokka wrote: 11 Jul 2019, 22:16
@user_test
one more time
"Activity" should go AFTER "Date" structure in JSON!

upd.
your animation x y is ok but it's overlapping Steps! make image smaller size for test
and fix steps coordinates also
"Step": {
"TopLeftX": 30,
"TopLeftY": 213,
"BottomRightX": 124,
"BottomRightY": 238,
upd.
Why your using so many raw images? it's consuming space, or you want different quality or it's not showed in miband4? if not then maybe animation is also not showed because your not using raw for it? also what for 69 index in raw.cfg
I really appreciate your work, but please read my previous comment in which I told you that after tests I send you the files prepared with all in raw except the 69 img (which is one from the animation) and if you install the bin in the mi band 4, you can see that all the images which are in RAW are ok and the band shows them. But that ones that I've not included in raw AREN'T shown in mi band.

The order or the coordinates are not the problem because if I add all the images as RAW, the watchface looks well (obviusly for that I've to keep some of the images not in raw in order to decrease size).

The problem is about the images which we want to get compressed in Palette mode (that images which I've not included in raw.cfg are not shown in mi band 4. The resto of images which are included in raw.cfg are shown correctly without any problem of Json order or coordinates).

Please check the bin in a mi band 4 so you can understand what I'am writting.


Anyway, here I attach you the json fixed as you said with Activity after Date and coordinates perfectly fitted. If you compile the bin with your PaletteImage version 1.3.5, and try to install it in Mi Band 4 you will see nothing.
And as I said, that's because with the Palette version the images seems to disappear, so if you put some of the images in raw.cfg, you will see that images in the Mi Band 4, but not the rest.


Thank you
Attachments
Pokeball_all_black_in_mi_band_4.rar
(274.07 KiB) Downloaded 238 times
Last edited by user_test on 11 Jul 2019, 22:59, edited 1 time in total.
DarkForgotten

Post by DarkForgotten »

Using RawImageMode the background is now on, my other issues are that the day of the week (LUN, MAR, GIO, ...) doesn't appear on the band and the days have wrong yellow font but I used the same files of the month (the grey one).
Attachments
new5_packed_animated.gif
new5_packed_animated.gif (172.27 KiB) Viewed 71348 times
zmr1992
WF maker
Posts: 2
Joined: 26 Jun 2019, 14:46
Contact:

Post by zmr1992 »

How do you synchronize bin files larger than 300kb to the bracelet?
DarkForgotten

Post by DarkForgotten »

Hi managed to move all in the correct position but I think there's an error in the date. The day has random numbers and wrong fonts.
Also the day of the week doesn't appear on the band.
Spoiler
"Date": {
"MonthAndDay": {
"Separate": {
"Month": {
"TopLeftX": 98,
"TopLeftY": 100,
"BottomRightX": 74,
"BottomRightY": 84,
"Alignment": "Center",
"Spacing": -1,
"ImageIndex": 66,
"ImagesCount": 10
},
"Day": {
"TopLeftX": 78,
"TopLeftY": 100,
"BottomRightX": 54,
"BottomRightY": 84,
"Alignment": "Center",
"Spacing": -1,
"ImageIndex": 66,
"ImagesCount": 10
}
},
"TwoDigitsMonth": true,
"TwoDigitsDay": true
},
"WeekDay": {
"X": 94,
"Y": 116,
"ImageIndex": 76,
"ImagesCount": 7
Attachments
new10_packed_animated.gif
new10_packed_animated.gif (162.69 KiB) Viewed 71336 times
Last edited by DarkForgotten on 12 Jul 2019, 07:18, edited 1 time in total.
user_test

Post by user_test »

zmr1992 wrote: 12 Jul 2019, 07:03
How do you synchronize bin files larger than 300kb to the bracelet?
You can't, that's why the PalleteImage version of the Tool is very interesting. Because with that tool you are supposed to get lower size bins altought you get poor quality.

But as you can read in my earlier messages, there seems to be a problem with the tool and the images compressed are not shown in Mi Band 4.

I am waiting for the author of the tools to have a fix for that
Post Reply

Return to “Watchfaces tools”

Who is online

Users browsing this forum: Google Adsense [Bot] and 1 guest