The last of my cloud-dependent “critical” devices are a pair of Govee H714E humidifiers. I’ve just reverse-engineered their BLE protocol, and I’d like to add to home assistant. Since I only know enough about home assistant and BLE to be dangerous, I’m looking for help.
The devices send out advertisements with manufacturer data payloads (mfg. id 8802). The fifth byte tells us whether the humidifier is humidifying (1 = on, 0 = off).
The devices have a request-response mechanism, with the request being made on UUID 00010203-0405-0607-0809-0a0b0c0d2b11 and the response on UUID 00010203-0405-0607-0809-0a0b0c0d2b10. To turn the humidifier on -
TX: 3301010000000000000000000000000000000033
RX: 3301000000000000000000000000000000000032
RX: eeaa010000000000000000000000000000000045
RX: aa010100000000000000000000000000000000aa
and to turn it off -
TX: 3301000000000000000000000000000000000032
RX: 3301000000000000000000000000000000000032
RX: eeaa010000000000000000000000000000000045
RX: aa010000000000000000000000000000000000ab
My guess is that the first response acknowledges the command, and the third shows the new state of the humidifier in byte 3.
In order to reverse-engineer the protocol, I followed this excellent video by Matt Brown -
Thanks.