First and important, you MUST install HACS to be able to read LYWSD03MMC sensor because this intergration is different than the original intergration.
At first, I have a problem finding bind_key, too. Therefore, I wrote another instruction in iOS. This instruction is for LYWSD03MMC sensor. I don’t know the other sensors are different or not.
-
Open Stream -> HTTPS Sniffing -> CA Install. Then you will be directed to browser to download VPN profile.
-
Go to General -> Profile -> Stream Generated CA… -> Install the VPN profile
-
After installing VPN profile.
Open Stream -> HTTPS Sniffing -> hit trust CA in settings -
General -> About -> Certificate Trust Settings -> tick green on Stream Generated CA…
-
Logged in to MiHome and open Stream.
Then hit “Sniff now”.
Immediately go to MiHome and add LYWSD03MMC sensor.
Waiting for the app to read Temperature and Humidity.
Then close MiHome app. Go back to Stream and click “Stop Sniffing “ -
Now go to sniff history and search for keyword “bltbind”. Will see file
“POST https://api.io.mi.com/app/device/bltbind”
If you don’t see that file, go back to step 3 to check whether the CA was trusted or not.
You can click Edit -> Export HAR
Then use Charles Proxy on laptop to see HAR file.
Below is other way to find bind_key inside Stream app (if you don’t want to install more software to laptop).
-
Click on that file -> Request -> “Preview Form” at bottom -> Format -> Decode -> find “bind_key”
-
After finding bind_key, then add it to Configuration.yaml
-
Stop HA in Server management. Then, unplug and plug back power source. HA will be start working in about 10 minutes
-
Wait about 10 more minutes, you will see the sensor entities in Entities or States tab in HA.
Batteries level sensor will be showed up after an hour