Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

LYWSD03MMC new version B1.7 #145

Closed
ckyOL opened this issue Nov 17, 2021 · 11 comments
Closed

LYWSD03MMC new version B1.7 #145

ckyOL opened this issue Nov 17, 2021 · 11 comments

Comments

@ckyOL
Copy link

ckyOL commented Nov 17, 2021

The production date of my xiaomi thermometer is 202110. When i try to flash it, i find that it is B1.7. Does the latest firmware supports it?

the packaging picture
IMG_3156

PCB pictures
IMG_3152
IMG_3153

@jddonovan
Copy link

jddonovan commented Nov 17, 2021

Not to my knowledge. These appear to be rare. I'm guessing the sensor is new (shtv4) and same as 1.6 &1.8 but the display controller is same as v1.4. As such it appears to be a mix of features from different versions and thus everything seems to be supported. There is an autodetect for the version but I don't think there's any autodetect for individual components, so it probably requires a few lines of code.

It is likely that you can try flashing it. It's unlikely it will brick completely if the TLSR chip and (possible) flash chip remain the same.

Could you confirm the chip remains the same? (TLSR8251F512ET24) the picture is a bit blurry.

@atc1441
Copy link

atc1441 commented Nov 17, 2021

Both PVVX and my version use autodetect per component, so this version should be fully supported.

@jddonovan
Copy link

Both PVVX and my version use autodetect per component, so this version should be fully supported.

Good to know!

@ckyOL could you confirm if it works ok? If it does, it seems relatively safe to add this device to the list of supported versions.

@ckyOL
Copy link
Author

ckyOL commented Nov 17, 2021

@jddonovan It seems work fine after i flashed it and changing some config.
IMG_3162

Interestingly, the hardware revision string was changed to B1.4
flash
.

@jddonovan
Copy link

jddonovan commented Nov 17, 2021

@ckyOL I've looked at the code how it detects the revision, but frankly I cannot remember anymore. It's indeed captured before flashing as presented in the logs. But after flashing, it might autodetect it by e.g. the chip used for the screen..? Also possible that the stock version number gets stored at the time of flashing, which means that the devices flashed are "stuck" showing the wrong version now.

Regardless, if everything works and the temperature sensor autodetection code remains autodetected in the future as well, and not based on firmware, I think you're ok.

However, low priority patch for the version number is still warranted.

@ckyOL
Copy link
Author

ckyOL commented Nov 17, 2021

@ckyOL I've looked at the code how it detects the revision, but frankly I cannot remember anymore. It's indeed captured before flashing as presented in the logs. But after flashing, it might autodetect it by e.g. the chip used for the screen..? Also possible that the stock version number gets stored at the time of flashing, which means that the devices flashed are "stuck" showing the wrong version now.

Regardless, if everything works and the temperature sensor autodetection code remains autodetected in the future as well, and not based on firmware, I think you're ok.

However, low priority patch for the version number is still warranted.

I flashed origin firmware and hardware version string came back to B1.7 correctly.

@pvvx
Copy link
Owner

pvvx commented Nov 18, 2021

@jddonovan > Could you confirm the chip remains the same? (TLSR8251F512ET24)

Communication and the ability to reprogram remain on all versions of TLSR8251Fxx, TLSR8253Fxx, TLSR8258Fxx.
These chips have the same crystal. The difference is in contacts and packaging.


@ckyOL
Copy link
Author

ckyOL commented Nov 18, 2021

Yes, it is TLSR8251F512ET24.
IMG_3164

@pvvx
Copy link
Owner

pvvx commented Nov 21, 2021

@ckyOL
I do not have HW: B1.7 and B1.6 in stock. To search and test various options, I already ordered LYWSD03MMC from many suppliers and received dozens of HWs: B1.4 and B1.9 with different release dates. I have not found any other versions for today. The stores do not provide types of hardware version ...
You can tell that TelinkMiFlasher.html writes in the log line: "Hardware version: LYWSD03MMC B1.?, Software version: 3.4, Sensor :?"

@ckyOL
Copy link
Author

ckyOL commented Nov 22, 2021

@ckyOL I do not have HW: B1.7 and B1.6 in stock. To search and test various options, I already ordered LYWSD03MMC from many suppliers and received dozens of HWs: B1.4 and B1.9 with different release dates. I have not found any other versions for today. The stores do not provide types of hardware version ... You can tell that TelinkMiFlasher.html writes in the log line: "Hardware version: LYWSD03MMC B1.?, Software version: 3.4, Sensor :?"

It shows that " Hardware Version: LYWSD03MMC B1.4, Software Version: 3.4, Sensor: SHT4x". The hardware revision string was changed to B1.4 after flashing v3.3 firmware. And it was still B1.4 after updating to v3.4.

@pvvx
Copy link
Owner

pvvx commented Nov 22, 2021

Thanks. This makes it clear that version B1.7 uses an SHT4x type sensor and the display is controlled by the IST3055NA0 microcircuit.
In the next version I will fix the HW variant...
The differences between SHTV3 and SHT4x are well described by jddonovan:
#125 (comment)

For STH4x sensors, if you do not take into account the delay in readings, then to reduce consumption, it is better to set the <Sensor in "low power mode"> flag:
image

@ckyOL ckyOL closed this as completed Dec 3, 2021
@pvvx pvvx mentioned this issue Sep 23, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants