Xiaomi Mi Band 2 - Firmware | Fitness bracelet



Rep: (1200)
Fitness braceletXiaomi Mi Band 2 - Firmware
PictureXiaomi Mi Band 2
Discussion пїЅ | Purchase пїЅ | Firmware пїЅ | Accessories пїЅ | Marriage пїЅ | Android app пїЅ | IOS application пїЅ | Xiaomi club пїЅ | Sleep Watch Club пїЅ | Wearable Electronics Club пїЅ | Our achievements in Mi Fit пїЅ | Club owners Xiaomi Mi Band 2

Attached Image

In the subject are all Forum Rules | Rules section "Wearable electronics"

FAQ
Q - Question
O - Answer


AT: Is it possible to return the original firmware?
ABOUT: Yes , can. For this there is several ways .

AT: What is the name of the firmware file and fonts?
ABOUT:
  • Mili_pro .fw - firmware
  • Mili_pro.ft - fonts

AT: How to see the version of the bracelet to understand which firmware is suitable?
ABOUT: One way is with the Gadgetbridge app. We read here .

AT: What should be the minimum charge level of the bracelet before installing the firmware?
ABOUT: When charging below 10%, the bracelet itself will not allow to flash.
It is recommended to flash at a rate not lower than 15%.

AT: The bracelet has permanent breaks and the inability to connect it after reflashing.
ABOUT: We read here .

AT: Caller name display on Android 9.0 does not work. How to fix?
ABOUT: No !
Properly make out the post
  • Device manufacturer, model
  • Firmware version
  • Official or custom firmware
  • What software do you use to sync your device
  • Your problem (the more you specify the information, the better)

Modified firmware design template
For different versions of bracelets do a separate post!
In the spoiler "Download"it is necessary to enter which version number of the firmware will be as a result (preferably with an explanation).
This was done specifically to prevent flashing the original from the application itself!


Picture

It should look like this:


Title: ...
Based on firmware: ...
For bracelets version HW: ...
What is done
Here is a description of what has been done.

A photo
Here is a photo.

Download
Here is the firmware and description (archive or rename), in .rar not desirable.

Image archive
Here is the archive itself with pictures.


Picture

In the code:

[B] Name: [/ B] ...
[B] Based on firmware: [/ B] ...
[SPOILER = [B] For bracelets version HW: [/ B] ...]
[SPOILER = [B] [SIZE = 1] What has been done [/ SIZE] [/ B]] Here is a description of what has been done. [/ SPOILER]
[SPOILER = [B] [SIZE = 1] Photo [/ SIZE] [/ B]] Here is the photo. [/ SPOILER]
[SPOILER = [B] [SIZE = 1] Download [/ SIZE] [/ B]] here is the firmware. [/ SPOILER]
[SPOILER = [B] [SIZE = 1] Archive of pictures [/ SIZE] [/ B]] Here is the archive itself with pictures. [/ SPOILER]
[/ SPOILER]
Firmware and fonts
Original firmware
For all revisions

For HW: v.0.1.3.2 (3)

For HW: v0.16.2.2 (3)

Custom firmware(dials, dates, fonts, icons)
How to flash
For smartphones with MIUI, it is recommended to disable the Mi Band smart unlock before starting the firmware!

Before starting to read firmwarerecommendation !

For bracelets HW: v.0.1.3.2(3)(4)

For bracelets HW: v.0.9.3.3(4)

For bracelets HW: v.0.16.2.2(3)

Fonts

Instructions
Instruments
Polls archive
Poll 30.03.2018
Attached Image
Poll 04/28/2018
Attached Image


Post has been editedKenny - 03.07.19, 18:16
Reason for editing: SimpleMod v.1



Rep: (1200)
Dear forum users and users of fitness tracker Mi Band 2!
In the created topic, everything related to the firmware of this device will be discussed:
  • - editing tools
  • - the possibility of applying changes in the firmware
  • - test results.

This topic is still at the stage of learning firmware.
For now, it is only possible to edit the text (font, numbers) and change the notification icons.
No opportunity:
changes in the computation of algorithms, additional functions and display on the display of any other information besides that available in the MiFit application.
We kindly ask you to refrain from such questions.
These kind of messages will be deleted!




Post has been editedDupleXSPb - 14.10.17, 11:46
Reason for editing: Addition to the topic of discussion.



Rep: (916)
My modifications of firmware for Mi Band 2

Firmware for Chinese / global bracelets:
Firmware based on version 1.0.1.53
(04.11.2017) Current version:
Description
1. Russian date format with full names of the day of the week and month.
2. The clock font in the format with the date is redrawn - the merge with the date is removed.

Version 1.0.1.53 version:Attached filemod_Mili_pro.zip(126.56 KB)

Version 1.0.1.99 version:Attached filemod_Mili_pro_1.0.1.99.zip(126.58 KB)


Previous versions
(07/09/2017) Firmware with Russian names of the day of the week and month (beta)
Description
Of the possible disadvantages:
  1. There will probably be an overlay of letters in December and February, since the width of the letter F is 9px, D is 8px. And in English letters a maximum of 7.
    This is fixable. In time, I think, we will resolve this issue.
  2. Russian letters use the resources of English letters and Chinese characters, which were used to display the date.
    Therefore, if you have Chinese, you will see not hieroglyphs, but 'junk' of pixels.

Additional Information:
  1. It is not yet possible to change the format from "Sep 7" to "7 Sep": the firmware at the moment is poorly understood.
  2. On other firmwares I will do the same, but only after the appearance of the utility for editing firmware Mi Band 2.
  3. I do not know how others, but I flash the firmware in the bracelet throughNotify & Fitness for Mi Band.


Russian week and month
Attached Image

Attached fileMili_pro.zip(126.37 KB)




Firmware based on version 1.0.1.54
(06.11.2017) Current version:
Description
1. Russian date format with full names of the day of the week and month.

Version 1.0.1.54 version:Attached fileMod_Mili_pro.zip(126.96 KB)

Version 1.0.1.99 version:Attached fileMod_Mili_pro_99.zip(126.96 KB)



Firmware for Indian bracelets:
Firmware based on version 1.0.1.53
(06.11.2017) Current version:
Description
1. Russian date format with full names of the day of the week and month.

Version 1.0.1.53 version:Attached fileMod_Mili_pro_tph.fw.zip(126.98 KB)

Version 1.0.1.99 version:Attached fileMod_Mili_pro_tph_99.fw.zip(126.99 KB)



Picture


Post has been edited-baw- - 10.12.17, 11:28
Reason for editing: In the header / firmware versions



Rep: (5053)
* santax, and you can call v1.0.1.53_ at the end in the prosh or there the neighboring cell does not allow it to be busy ... I just thought it might be possible to flash the version of v1.0.1.53_ in the mifit assembly
Ps and so well done the guy said, and he did)))) and 7 is a feature, not a bug: drinks:

Post has been editedlolex - 07.09.17, 20:17



Rep: (916)
Santax, but you can call v1.0.1.53_ at the end in the prosh or there the neighboring cell does not allow it to be busy

Any mifit update and he will upload his firmware instead of this one.
And you can write, I will do it in the utility.
and 7 is a feature, not a bug

On the 10th we will see)



Rep: (5053)
* santax, will not flood if your firmware will be called by a higher version, for example v4.0.1.53



Rep: (916)
* lolex According to my theory, the end figures are not compared at all. A simple comparison of the entire version line in mifit and in the bracelet, if different, then flashing. But I can be wrong.



Rep: (5053)
* santax, Comparison with the line v1.0.1.53 with the fact that it is in the bracelet, if less it will sew. For example, in a bracelet 52, then yes, if 54 then no. In rollbacks, I artificially overestimated and did forcibly, but the firmware was in a circle because of this
If you make the firmware number obviously higher and register it in the myth, it will flash, and when the myth comes out new in the line, the firmware will be less and the firmware will not flash and your firmware will remain. But this is a theory, I hope so far)))

Post has been editedlolex - 07.09.17, 21:12



Rep: (5053)
* santax, here renamed and assembled with your firmware, while so 54 and everything was done
ready option

screen
Attached Image
Attached Image


Post has been editedlolex - 07.09.17, 21:54



Rep: (1200)
On the 10th we will see)
set September 18 Monday, that's what happened
Attached Image



Rep: (230)
The number 7 and in the English version is also located slightly higher.
absolutely not higher.
barely aimed
Attached Image


Post has been editedm0t1x - 07.09.17, 23:29



Rep: (1200)
* m0t1x , I agree. Here are two bracelets, with different options.
Attached Image



Rep: (230)
* DupleXSPb It looks like a Chinese fake: lol:
Attached Image



Rep: (250)
* DupleXSPb,
Maybe an optical illusion, but on the left image
, it seems to me that above. Maybe paralax in the eyes.

Post has been editedhimchen - 08.09.17, 10:57



Rep: (916)
* himchen I’ll just stretch the images of the date numbers and drop them a pixel below. And everything will be fine.



Rep: (250)
* santax,
So I have no complaints. For me, everything is fine.



Rep: (916)
lok316 @ 09/09/17, 14:13*
Maybe it's easier to finish
Mon 18/09 or
Mon, 18-09

Not a bit easier.
Digging into the firmware is similar to finding a needle in a thousand haystacks, since I have no names for the functions and addresses of the RAM. And you have to wade, hoping for intuition and luck, trying to understand what the function is responsible for at 0x12345678 and for which the RAM 0x87654321 is responsible.
And trying to flash your bracelet with a modified firmware is a big risk. Indeed, in the event of an error, the brick of the bracelet is no longer for me, but I don’t have a spare bracelet. Therefore, I only flashed it 2 times with a modification, when I was 100% sure of success.
* lok316, but if you are ready to volunteer at the testers and flash my firmware during the experiments, then I can gladly try to change the date format to Mon. 18/09 or whatever you want.

For those who are interested in how the firmware was localized under the Russian language:
1. In the firmware were found icons that pop up with notifications on the bracelet. Further search expanded the image map: notification icons, action labels, 4 sets of numbers, icons of elements on the screen (steps / distance / calories, etc.) were found.
2. After structuring the data, it became clear that the developers of the firmware all data used in the functions (p.1) were loaded at the end of the firmware, and not after the description of each firmware. Therefore, byte by byte, step by step, an approximate table of firmware resources was compiled: first of all, these were icons and English letters, as well as hieroglyphs (it turned out that they were there too), as well as tagging with table resources and certain indices.
3. Then, on the basis of the obtained data, a table was found with the indication of addresses in English letters. The letters 27 (or 28) were in upper and lower case. As I expected, these were the letters used to output the month and the week. + A bit later, the indexes of the letters used were found, to display the month or date.
4. Accordingly, the localization plan was as follows:
a) under the space allocated for English letters, load our Russian letters.
b) in the address table for letters change the links to Russian.
c) interrupt the indices of the months and days of the weeks with analogous indices for Russian names.
5. But then problems surfaced:
a) The data in the firmware is not structured: icons can go, then letters appear, then tables are some, then letters again, then hieroglyphs, etc.
b) The width of the Russian letters (min 4, max 9) I got wider than the English (max width 7, min 1 [for i]) and they would not fit on the English letters.
c) Russian letters turned 29 and the table with links to the letters became wider and sneaked onto the next resource with icons.
6. Therefore, a cardinal decision was made - to rewrite one block the size of which is slightly less than 1,400 bytes of firmware from English. letters / hieroglyphs / tables of letters and tables of indexes of days of weeks and months on your unit with Russian letters, a table of Russian letters and indices of new days of weeks and months (I will say in advance - it took about a little more than 1300 bytes - due to no need to search for free space in the firmware).
7. But in order to do this, it was also necessary to change the links to these resources in the firmware functions. The search found the calls of these resources in the firmware and interrupted the addresses to the new ones used by me. It turned out in the end where it is 7-8 edits in different places.
8. Well, the result was the conclusion of the date in the Russian localization.
9. Although there are shoals, they are associated with the display (set the date of February 23), but this is fixable, change in the future.
10. To change the date format, as I said earlier, I still do not have enough knowledge in the firmware.



Rep: (408)
I learned to replace the icons in the firmware of the bracelet :) By the way, there are a lot of unused icons in it (car, house, etc.).
Attached Image
Attached Image
Attached Image
Attached Image
* the screen is broken

UPD: Attached the firmware, in which the APP is replaced with a smiley.

Attached files

Attached fileMili_pro_mod.zip(126.46 KB)


Post has been editedXtracer - 12.09.17, 00:07



Rep: (408)
Xplodk4 @ 10.09.17, 22:27*
XTracer, oh, twist, how?

I picked up the firmware file, found where the pictures are, decoded, changed, encoded back, flashed the bracelet. In fact, it is similar to the way santax recently added Russian days of the week.



Rep: (22)
* XTracer,
So you can wait in your next update version?



Rep: (408)
dimas842009 @ 09/10/17, 10:30 PM*
So you can wait in your next update version?

Yes, but only custom firmwares will not be there yet, only original ones.


Full version    

Help     rules

Now: 07/19/19, 02:07