Lot of good information on this dehumidifier in this topic but I’ll talk a little bit about my own experience and ultimately my end result. This is from around 8-9 hours of trial, error and research.
Yes the TUYA integration works but features are missing. This is a deal breaker for me, plus the fact it’s cloud based. No thanks.
Local tuya I managed to get to connect but that’s all. Tuya currently hide the device key on the developer platform, but it’s still available in the query API on the free tier. However, even with all the manually added entities it wouldn’t send data to HA. Plus at the time of writing, the localTuya integration needs a patch to even get the thing to let you onboard a device, but that’s one character and documented in issues on the repo anyway.
Not to be dissuaded I decided to delve a bit deeper… Can anything actually control this outside of HA, Cloud and mobile apps? And yes, it can. By using the tinytuya python library I knocked up a quick script just to read the data off the dehumidifier and it worked…with protocol version 3.5. All I needed is the device key, device ID and the IP address.
If yours has stopped working, it’s more than likely because localTuya only goes up to protocol version 3.4
So using that, I wrapped the entire thing in an MQTT bridge in python to send data to HA (and auto create the entities). To control the device, the bridge listens on a handful of topics for timers, on/off, state and child lock. It’s not perfect, the HA UI glitches when you make any changes while everything “catches up” but it’s possible to control the thing over only a LAN now. A bit of tweaking later with binary sensors and template sensor for the bucket and I’ve got the status fully working.
Moving on to built in humidity sensors. The machine uses a smart algorithm to offset the read humidity. Because the sensor likely gets a more accurate reading with air moving over it, the dehumidifier has to turn the fan on. But it won’t do that if target = measured humidity. So it fudges the measured reading every so often to kick the fan on, runs normally, then turns off again (idles) if nothing has changed. It will not report this fudging via the TUYA API/HA etc.
You can validate this by setting it to eg 50%, letting it run to idle, then check the reading - it’ll be about 47-52%. Soft power cycle the dehumidifier and it’ll turn on but read eg 63% humidity and then come back down. I believe it behaves like this because some users can be a bit dumb and assume “I turned it on and nothing happens? It must be broken!”
So the humidity readings are fudged to try to ensure the dehumidifier maintains the target more accurately. I do have a Sonoff temp/humidity sensor (this is relevant in a minute). Despite the built in algorithm, I have seen humidity creep towards 60% and the dehumidifier not even turn on. To remedy that, I created an override humidistat in HA linked to the Sonoff sensor. If it turns on, it reads the current target of the dehumidifier, -5% and sets the dehumidifier target to that, forcing it to come in. When the Sonoff Humidistat turns off, it resets the dehumidifier back to where it was so it’ll turn back off.
I can share the MQTT bridge and some config if others find it useful. I’ll mention the bridge is running on Ubuntu, NOT the HA VM.