hassio-addons: Body Composition Scale 2 (XMTZC05HM) - Wrong results for Visceral Fat and Body Fat

Select Add-On (place a lowercase x for the relevant add-on)

  • [ x] Mi Body Composition Scale 2 (XMTZC05HM)

Describe the bug

Wrong results for Visceral Fat and Body Fat I have a Mi Body Composition Scale 2 (XMTZC05HM) and get wrong results when calculating, especially for Visceral Fat and Body Fat. If I query these values from other scales, then they are correct.

What can be the reason? Is it the scales or the application cannot be used for the Mi Body Composition Scale 2 (XMTZC05HM)?

To Reproduce Running python 3.8 on a raspberry pi

Expected behaviour Maybe based on the Mi Body Composition Scale 2 ??

Screenshots NOP

Scale (please complete the following information):

  • Mi Body Composition Scale 2
  • Model XMTZC05HM
  • Manufacturerdata: “57015ccad34cee74”

Device running Home Assistant (please complete the following information): Raspberry PI

Additional context

## Person 1:
{
    "Weight": "72.50",
    "BMI": "22.88",
    "Basal Metabolism": "1248.68",
    "Visceral Fat": "15.37", <-----  ! ERROR
    "Lean Body Mass": "57.20",
    "Body Fat": "23.76", <-----  ! ERROR
    "Water": "52.30",
    "Bone Mass": "2.87",
    "Muscle Mass": "52.40",
    "Protein": "19.98",
    "Body Type": "Balanced",
    "Metabolic Age": "41",
    "TimeStamp": "2020-09-03 11:59"
}

## Person 2:
{
    "Weight": "51.05",
    "BMI": "18.09",
    "Basal Metabolism": "930.34",
    "Visceral Fat": "1.00", <-----  ! ERROR
    "Lean Body Mass": "47.17",
    "Body Fat": "23.36", <-----  ! ERROR
    "Water": "52.57",
    "Bone Mass": "2.09",
    "Muscle Mass": "37.04",
    "Protein": "19.98",
    "Body Type": "Balanced-skinny",
    "Metabolic Age": "27",
    "TimeStamp": "2020-09-03 11:59"
}

Person 1: Height 178, Age 64.7, miimpedance: 502

Xiaomi_Scale.py mi.app Medisana TargetScale
Weight 72.50 72.50 72.50
BMI 22.88 22.60 22.80
Basal Metabolism 1.248.68 1.222.00 1569.00
Visceral Fat 15.37 14.00 6.10
Lean Body Mass 57.20
Body Fat 23.76 21.50 13.10
Water 52.30 53.80 55.40
Bone Mass 2.87 2.80 3.60
Muscle Mass 52.40 52.20 44.20
Protein 19.98 20.60
Body Type Balanced Balanced
Metabolic Age 41 39

Person 2: Heigt 168, Age 62.71, miimpedance: 523

Xiaomi_Scale.py mi.app Medisana TargetScale
Weight 51.05 51.05 51.20
BMI 18.09 18.00 18.5
Basal Metabolism 930.34 934.00 1260.00
Visceral Fat 1.00 3.00 3.00
Lean Body Mass 47.17
Body Fat 23.36 19.03 14.60
Water 52.57 55.30 56.90
Bone Mass 2.87 2.00 2.65
Muscle Mass 37.04 39.00 32.56
Protein 19.98 20.60
Body Type Balanced-skinny Balanced-skinny
Metabolic Age 27 26

Some other values also deviate, but this is not so critical.

What can I do so that the values are evaluated in a similar way to other scales?

About this issue

  • Original URL
  • State: closed
  • Created 4 years ago
  • Comments: 20 (9 by maintainers)

Most upvoted comments

ok. I can make tests. It is easy to do as it is possible to simulate the scale values, it’s easier like that than always standing on the scales and then evaluating the data. 😃 I suspect it is because of the age that the getFatPercentageScale are not correct. Will investigate this further.