Closed bbosilje closed 2 years ago
I have the same problem with 2 unit's. Both have CMIIT ID: 2019DP8115 (On the back of the carton box) After installing de original software back on the unit. The display shows 88% and LOW battery icon and says the temp is 27c when looking at the ESPHome log.
My first thermometer works fine, so I ordered some more. With he new ones I have the same problem. After flashing a custom firmware (31, 32n, 32z) the display freezes. When putting the battery out and back in the display stays empty. But I'm able to connect with the webupdater. After flashing the original firmware back, the display is like the picture in first post.
Here are pictures of the packaging and the PCB:
Besides the display problem, the measurement also doesn't work. After sucessfully connecting with the webupdater, at the top of the page, it says: "Temp/Humi: waiting notify for data after connecting". When using GraphMemo after some time: "load 0 samples."
Maybe @atc1441 knows the new ones and can help...?
I also have a similar problem. Except, using the original FW doesn't bring back the LCD. Is there someone helping with this problem?
Regards
Comparing the old and new pcb we can see they use a new lcd controller ic.
So that means we need to adapt the display communication
https://img.mysku.me/uploads/pictures/05/59/35/2020/02/19/30f83a.jpg
Would better images of the chip help, so you can read the printing?
And besides the display, the measurement seems also broken...
Pictures would help to, mostly these chinese chips are not known/without datasheet but we can try
I'm sorry for the image quality, I only have smartphone/tablet camera. I checked with a magnifying glass: MCBSLM01 V5K000EG3
Hello everybody,
there is a funny Information: Package of mine showed same date "2021.08" (see 3rd picture) but when I opened up my case, I realized that I have HW-B1.6 (2021-03) and not HW-B1.9 (2021-05). They change their HW very fast. Chip on the first picture has no description at all :-( TeLink chip on the 2nd picture is at least the same. 3rd Picture shows the package.
Question: Should I re-open https://github.com/pvvx/ATC_MiThermometer/issues/130 because it is a different HW? Or do we manage it in one issue, because the HW behaves the same?
Good morning,
I at least found a way to recover the Mi-Thermometer (screen and sensors).
Cheers Reimund
So that means they made a detection for what display controller they got in a device with just one firmware.
This is good as we can see how they detect it and copy it, as in the first model there was no way to read from the display controller just writing.
Can you maybe dump the firmware update file link? You need to be rooted if i remember correctly
Took a while to get it but here we go
Changed the MiHome plugin so it will alert with the firmware URL 😁
New firmware attached as reference LYWSD03MMC_0130_upd_miaomiaoce.sensor_ht.t2.zip
Update and downgrade from an to 0130 works fine. So can be developed with now and reversed further
Sounds great. Unbricking the device with webupdater and the zip you provided here worked. If you need testers, let us know ;)
I got mixed batches where you order for example 4 sensors at once.
Half of them got bricked and I was able to unbrick them with the given stock firmware.
Note that for me not only display was not working but also temperature reports.
BLE communication was the only thing that still worked.
So that means they made a detection for what display controller they got in a device with just one firmware.
Display controller on I2C:
PS: I don't have new versions of devices yet :(
Note that for me not only display was not working but also temperature reports.
BLE communication was the only thing that still worked.
Same issue here, only in my case it is also not possible to receive the settings from the device like explained here.
I got 6 of these new devices. So if I need to test something, let me know! :)
PS: I don't have new versions of devices yet :(
Do you need the vendor where I bought mine? V1.9. (German ebay, but shipping took 1 week...)
Thanks for all this info - it helped me reviving my two devices (both CMIIT id: 2019DP8115
).
For what's worth, @atc1441 custom firmware (https://github.com/pvvx/ATC_MiThermometer/issues/125#issuecomment-937552241) worked for me, so it did the method @Reimund-Koenig described (https://github.com/pvvx/ATC_MiThermometer/issues/125#issuecomment-937472617)
Both sensors are now working happily with my Homes Assistant, though sadly using Xiaomi firmware and the Mi bind codes.
@atc1441 if you decide to update your .bin to work with these new devices, also count me in for any testing you might need 😄
Need to get my hands on one of the newer devices or best on both of them.
Then its quite simple to add them.
Will order some.
Just got a donation from O. So its only fair to invest that money back into it :)
Any best links for odering from germany ?
Nice one; how can I chip in as well? BTW. Great work, you and @pvvx 💪
I got mine devices from here: https://www.aliexpress.com/item/4000427410383.html, and they arrived, albeit to the UK, reasonably quickly.
Good luck with getting yours soon.
Any best links for odering from germany ?
I ordered mine here on ebay and got V1.9. But shipping takes a week...
@vanMacG ordered one there because of speed.
@mariuszkorba thanks as well A link is in my Repo https://github.com/atc1441/ATC_MiThermometer
Maybe someone can send me one as well? As there are two new versions and not known what some will get
@atc1441 I can send you a B1.6 one if needed.
Got exactly the same problem, got the MCBSLM01 lcd controller, and the latest xiaomi firmware from @atc1441 doesn't work for me. I got 4 new ones, only did this to one of them, got other 3 running original firmware, is it possible to read the flash and dump the bin ?
Managed finally to connect to xiaomi home, added and downloaded latest firmware, it downloads a 0130 version also (same as @atc1441) but works, I suspect it may have been a problem flashing the firmware.....
@atc1441 I got two spares laying here. Other two in this 4-pack are already in use without any hiccups. Will check the versions and contact you if it are the newer versions. Shouldn't take too long from the Netherlands to get it to you. Btw... You guys are awesome! Thanks for sharing this with us and for all the effort you guys are putting into it. 🙏
I experienced same thing and was able to fix the display by upgrading in Mi Home app, as suggested above. However, afterwards when trying to set a bindkey for use with stock firmware, Telink flasher outputs:
12:08:36: Searching for devices
12:08:39: Connecting to: LYWSD03MMC
12:08:47: NotFoundError: No Services matching UUID 00010203-0405-0607-0809-0a0b0c0d1912 found in Device.
12:08:47: Reconnect 1 from 5
12:08:47: NotFoundError: No Services matching UUID 00010203-0405-0607-0809-0a0b0c0d1912 found in Device.
12:08:47: Reconnect 2 from 5
12:08:47: NotFoundError: No Services matching UUID 00010203-0405-0607-0809-0a0b0c0d1912 found in Device.
12:08:47: Reconnect 3 from 5
12:08:47: NotFoundError: No Services matching UUID 00010203-0405-0607-0809-0a0b0c0d1912 found in Device.
12:08:47: Reconnect 4 from 5
12:08:47: NotFoundError: No Services matching UUID 00010203-0405-0607-0809-0a0b0c0d1912 found in Device.
12:08:47: Reconnect 5 from 5
12:08:47: NotFoundError: No Services matching UUID 00010203-0405-0607-0809-0a0b0c0d1912 found in Device.
12:08:47: Something went wrong, to many reconnect's
Does upgrading break the ability to read with stock firmware?
@MrTheoW Thank you. Lets wait a bit to see what version i get got the one on order and one being send to me so maybe this is already enough
If you're in Australia, I'm happy to send you one. But if not, it probably won't beat your order haha.
Sorry, But the ones I have left are versions 1.4.
I got 3 V1.6 and oddly enough they don't brick themselves unless I reseat the battery. They can be reflashed but there are no measurements.
I experienced same thing and was able to fix the display by upgrading in Mi Home app, as suggested above. However, afterwards when trying to set a bindkey for use with stock firmware, Telink flasher outputs:
12:08:36: Searching for devices 12:08:39: Connecting to: LYWSD03MMC 12:08:47: NotFoundError: No Services matching UUID 00010203-0405-0607-0809-0a0b0c0d1912 found in Device. 12:08:47: Reconnect 1 from 5 12:08:47: NotFoundError: No Services matching UUID 00010203-0405-0607-0809-0a0b0c0d1912 found in Device. 12:08:47: Reconnect 2 from 5 12:08:47: NotFoundError: No Services matching UUID 00010203-0405-0607-0809-0a0b0c0d1912 found in Device. 12:08:47: Reconnect 3 from 5 12:08:47: NotFoundError: No Services matching UUID 00010203-0405-0607-0809-0a0b0c0d1912 found in Device. 12:08:47: Reconnect 4 from 5 12:08:47: NotFoundError: No Services matching UUID 00010203-0405-0607-0809-0a0b0c0d1912 found in Device. 12:08:47: Reconnect 5 from 5 12:08:47: NotFoundError: No Services matching UUID 00010203-0405-0607-0809-0a0b0c0d1912 found in Device. 12:08:47: Something went wrong, to many reconnect's
Does upgrading break the ability to read with stock firmware?
@bjeanes got the same issue : just cliqued on "clear log", then again on connect and issue disappeared. I maybe reloaded the page or manually disconnected the device from bluetooth before retrying...
I can't get rid of it. I get the error on https://atc1441.github.io/TelinkFlasher.html as well as https://pvvx.github.io/ATC_MiThermometer/TelinkMiFlasher.html (with this one device - other 5 are fine).
I've rebooted the computer, reset the sensor, taken battery out and back. It's not bricked as it still is updating temp/humidity and advertises on BLE, but the flashers can't seem to work with it :(
So out of curiosity, I tried a different computer and it was able to connect to that device and let me activate a bindkey. Not sure why my primary computer consistently fails to connect. Maybe some poisoned cache somewhere...
I bought 4 of these devices from aliexpress. On the first I flashed the firmware with ATC_Thermometer.bin file. The procedure was ok, but when I disconnected the battery and connect it again the screen is blank and I cannot use it anymore. However the device is reachable via bluetooth and seen as a ATC_XXXX device. On another device I did the same and of course the same issue happened. Then I tried to flash the original firmware to the device (d4135e135443ba86e403ecb2af2bf0af_upd_miaomiaoce.sensor_ht.t2.bin file, found on this page). What happened next is the device is bricked, It is not discoverable anymore via bluetooth and the screen is blank. I now have two other new devices to use but I don’t want to brick them too. I hope to find a solution very soon...
You can flash bricked devices via UART, they are not hopelessly dead...
Just to confirm:
I got 3 devices labeled (on box) 2021.08
Attached: PCB top and bottom of CHMLmini_TLW_V1.6 202103 HW: B1.6
A quick multimeter test indicates: The two i2c pins connect to the temphum sensor only, not to the new display controller (no marking / label). The test point names near the display controller (SCK, SDA) are a hint that this revision uses SPI (?).
From pictures: The production marking of 1.4 is 2021-13 (week 13 is 03/21) and design date of 2020-12 The production marking of 1.6 is 2021-23 (week 23 is 06/21) and design date of 2021-03 The production marking of 1.9 is 2021-31 (week 31 is 08/21) and design date of 2021-05
probed around the board with the logic analyzer: P7 looks like a SPI MOSI or I2C SDA, P11 looks like a MISO. PSDA/PSCK start to toggle as soon as the first data is sent on P7 Data on P7 / P11 repeats every ~6.9 seconds.
Inspecting this a bit closer... there is only 1 connected pin, and it is connected to pin 1 of the controller which supports UART. Bit time fits with 38400 baud UART and parsing as UART data seems reasonable... is this UART? Did they just add a 2nd microcontroller to drive the display? after initial power-on (all segments active): a few seconds later, display updates to a reading (I dont know what, display not attached):
00 00 00 00 AA seems to be the header, 55 the end of packet marker ; after the AA seems to be the control data, possibly 1 = segment switched on? next to the 55 seems to be some kind of check sum as it is 00 in the FF FF FF... packet and something else in the "real data" packet. 6 data bytes provide 6*8 = 48 bits, which should fit all the LCD segments. This is just an educated guess and needs to be confirmed...
I can provide logic analyzer traces of B1.6 or provide a B1.6 unit (shipping in Germany) if anyone is interested.
Is it worth the effort for B1.6 hardware or should I just (try to) get newer B1.9 hardware? I assume the rapid design changes are due to chip shortage, so it might be a good idea to support B1.6 as well in case they start to produce B1.6 again. I'll try to capture more info soon to provide enough data to figure out the checksum and map the segments to the bits of the 6 bytes.
As this issue is about B1.9 - where should B1.6 info go?
Edit: Regarding the checksum: bitwise XOR of 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF bytes --> 0x00 bitwise XOR of 0xD3 0xBE 0x15 0xA5 0xF6 0xBF bytes --> 0x94
This means it is possible to feed own UART data to the B1.6 display controller and figure out which segment maps to which bit in the 6 bytes.
Same issue here with the B1.6 version. Thanks for all the effort in trying to fix this!
I bought 4 of these devices from aliexpress. On the first I flashed the firmware with ATC_Thermometer.bin file. The procedure was ok, but when I disconnected the battery and connect it again the screen is blank and I cannot use it anymore. However the device is reachable via bluetooth and seen as a ATC_XXXX device. On another device I did the same and of course the same issue happened. Then I tried to flash the original firmware to the device (d4135e135443ba86e403ecb2af2bf0af_upd_miaomiaoce.sensor_ht.t2.bin file, found on this page). What happened next is the device is bricked, It is not discoverable anymore via bluetooth and the screen is blank. I now have two other new devices to use but I don’t want to brick them too. I hope to find a solution very soon...
To recover devices over the air use xiaomi app as described in: https://github.com/pvvx/ATC_MiThermometer/issues/125#issuecomment-937472617
Good morning,
I at least found a way to recover the Mi-Thermometer (screen and sensors).
- Connect though it with pvvx TelinkMiFlasher
- Click Original-FW
- Click Flash to Device
- Go to the Xiaomi Home App
- Connect your device (still possible)
- Go to Settings and select "Firmware Update"
- Done --> You can use your device again :)
Cheers Reimund
I tried but on my page I don't see any "Original Firmware" to click. The only thing I can do is to download the original firmware and flash it. But I don't know where to find the firmware file.
Just got in a few B1.6 version Thermometers and hooked one first up to a Logic Analyzer as well so that one can be started on now the B1.6 version, lets see what the other ordered one will bring :)
thanks for the donation to M4
Sensor, not really usefull:
Good morning, I at least found a way to recover the Mi-Thermometer (screen and sensors).
- Connect though it with pvvx TelinkMiFlasher
- Click Original-FW
- Click Flash to Device
- Go to the Xiaomi Home App
- Connect your device (still possible)
- Go to Settings and select "Firmware Update"
- Done --> You can use your device again :)
Cheers Reimund
I tried but on my page I don't see any "Original Firmware" to click. The only thing I can do is to download the original firmware and flash it. But I don't know where to find the firmware file.
Ok, I just made it! Thanks, I'll wait for a solution!
Just got in a few B1.6 version Thermometers and hooked one first up to a Logic Analyzer as well so that one can be started on now the B1.6 version, lets see what the other ordered one will bring :)
thanks for the donation to M4
Sensor, not really usefull:
Marking is similar to Sensirion SHT4x. Package is similar. Pinout fits. https://www.sensirion.com/fileadmin/user_upload/customers/sensirion/Dokumente/2_Humidity_Sensors/Datasheets/Sensirion_Humidity_Sensors_SHT4x_Datasheet.pdf
I2C trace shows: address of sensor on my B1.6 is 0x44. Fits the SHT4x. CRC algorithm of SHT4x fits the data from the B1.6 sensor. Formula to get measurement values from raw bytes calculates reasonable temperature and humidity for me.
"run measurement" command is 0x44 0xFD, which fits the SHT4x.
Run measurement:
Get results: 0x65 0x9A calculates to 24,45 °C ; CRC with help of http://www.sunshine2k.de/coding/javascript/crc/crc_js.html is 0x41, which is correct 0x77 0x8D calculates to 52,4 % rel. humidity ; CRC with help of link above is 0x22, which is correct
@TimeTravel-0 perfekt. Looks very good :)
I have made several orders in different stores and I am awaiting receipt. Hopefully new versions will come ... When I receive new versions in a few days, I will build support. There is nothing complicated here. The main thing is that the new version HW is at hand...
I ordered from https://www.aliexpress.com/item/1005001626975979.html and the 7 (of 10) which I have set up were all v1.9 hardware. The other 3 may also be, but I haven't opened the box.
Maybe someone can send me one as well? As there are two new versions and not known what some will get
Sure, in Berlin? Tell me where, got 4 here.
Maybe someone can send me one as well? As there are two new versions and not known what some will get
Sure, in Berlin? Tell me where, got 4 here.
Near Hamburg, got the B1.6 Version now so only if you may got the B1.9 version it is needed anymore :)
unfortunaly i am unable to open the screws. very small torx needed -.- can somebody tell which one exactly?
When I try to flash it with the latest firmware in the repo, the display remains "frozen" with the last values it displayed with the stock firmware.
When I flash back to the original firmware on the web page, the display comes back with all the segments lit up (ie: 1888.8 E, 88 %, Bluetooth icon, battery icon and full face).
I am still able to communicate with the device through the flashing webpage, but nothing I do seems to change the display.
Am I doing something wrong or does this revision of the unit (B1.9) not work with the existing firmwares in this repo?