[WIP] Smart dehumidifier

I’ve looked for a dehumidifier that can be connected to Home Assistant. I’ve found none, so I’ve done my own research.

Rohnson Genius Wi-Fi dehumidifiers have their cloud and app. After some research, the app is basically slightly modified Tuya app and seems to use Tuya cloud. Further research has revealed that some user reports that you can use Tuya app instead of the Rohnson. Yes, you can, and the UI is mostly the same.

Tuya has API and a Home assistant integration. (I haven’t tried the local Tuya integration yet. Until I get sufficient control via Home Assistant, I don’t want to change it.) After adding Tuya to HA, it has offered me to add the dehumidifier. It has noted that the dehumidifier was an unsupported device. I have added it anyway. It offers me to control target humidity (it doesn’t work) and on/off state (works well). Now, I can control the dehumidifier based on humidity on my window, not just its own humidity sensor.


  • I can automatically control only on/off state and nothing more at the moment. Essentially, one could do the same with a smart socket, although Rohnson warns against them for some reason.
  • Beep. Beep. After any configuration change, it beeps. I get why it beeps when I touch the buttons on the dehumidifier, but why on Earth it beeps when I control it remotely? Even if I send turnoff command to device that is already turned off, it beeps. I think there is no easy fix without disassembling the device.
  • It is sometimes quite noisy.
  • HA cannot show properly the history of power status. It tries to draw an empty plot.

I have a work-around: I have a Frigidaire dehumidifier that returns to the previous state after a power failure. Then I have a humidity sensor (well, several: a Ecobee remote & an Ecowitt – a platform I highly recommend) & have the dehumidifier plugged into a Sengled plug which has energy monitoring.

I then use an automation to turn off the dehumidifier when the basement’s dry enough & turn it back on when it’s getting too damp. I also have one that tells me when the dehumidifier is full (when it’s drawing very little power for longer than 3 minutes & should be running because it’s humid), sending me a push notification.


I’ve tried localtuya. It is a bit unfriendly. It finds the dehumidifier, then you can add various properties of the dehumidifier. Once you are done, you can edit and remove the existing ones, but you cannot add a new one (except by removing the whole device and adding it again). You cannot change the property type. The properties are just numbered, without any explanation. I’ve experimented a bit. This is my best guess:

1 – switch
2 – mode: 0-normal, 1=continuous, 2=strong, 3=dry clothes
4 – target humidity
5 – uv
6 – fan speed: 1=low, 3=high (value 2 is unused for my model)
7 – child_lock
11 – status; 0 = OK, 8 = tank full or missing
12 – timer
102 – sleep mode
103 – temperature
104 – humidity
101 – related to timer (don't know exactly)
105 – defrost

I expected the items to be mapped to the official documentation at Standard Instruction Set-Tuya IoT Development Platform-Tuya Developer . However, it is not that easy. Some items from the official documentation are apparently not supported (e.g., medium fan speed), some aren’t documented (e.g. dry clothes). The documentation still might give someone a hint, though.

EDIT summary: edited description of 101 and 105 based on later findings.


The 101 seems to be True when the dehumidifier is disconnected from the power.

I’ve tried three Tuya integrations so far:

  1. Cloud Tuya – very basic, you can just switch it on/off. It considers the dehumidifier to be a humidifier. It has an input for target humidity, but it is apparently ignored.
  2. Localtuya. Not user friendly, but it seems to allow you to configure everything. Just after adding a device, it looks dodgy (device becomes unavailable), but after few Home Assistant restarts, it seems to work perfectly fine. At the moment, I’ve mostly replicated the functions of Tuya/Rohnson apps in Home Assistant. I don’t decode the dehumidifier state number. Target humidity cannot be set and it doesn’t work well at all (sometimes, it’s unavailable. Maybe it would work as an enum or a string. However, I don’t care much. This more or less duplicates the purpose of Home Assistant. There is also a timer field, which also works read-only, but maybe it cannot be set by the API; Even the official app doesn’t allow user to set it.
  3. Tuya Local (not to be confused with localtuya). I was able to connect the devices but it doesn’t seem to be much powerful with this particular device. It didn’t even allow me to use dehumidifier type for this.

At this point, I am pretty ready to disable outbound connection for the dehumidifier. I’ve a basic dashboard that mostly replaces the app (and adds few extra things):

1 Like

Just a correction to 101 and 105: As far as I see, they are always of or unavailable. I still think one of them signifies defrost, but I cannot confirm it in this weather.

So, 105 is defrost, 101 is still unknown.

Automation: I take values from multiple sensors, compute maximum and decide based on this maximum. There is a tri-state sensor (on/keep/off) that tells the dehumidifier what to do. The ”keep“ state is essentially a hysteresis.

Future automation: I’d like to put a humidity sensor on my drying rack. The automation will be a bit different, as it should probably start the dehumidifier at lower levels.

1 Like


can you share the configuration you used to build the buttoms and getting the values (for temp and humidify).
I’m having a bit of issue trying to pull the values, I already identified which DP controls what and what’s the values that can be used but putting everything together it’s another fight.
The target humidify used by your config is a slider, on mine I have define values between 30% and 70%, does yours use something similar and you used the slider to go to those values in the background?

thanks in advanced for your time

@v6ak How far did you get with this? It looks absolutely close enough for my use case. I just want to turn on/off based on weather and/or Windows open, etc.

I have localtuya installed and am using it for a space heater but what do I need to do to make this happen?

Would love your assistance.

I am sorry, I’ve missed your replies. I just wanted to note that 101 is somehow related to the timer.

@Maverick0984 There are two options:

A. Cloud Tuya. No addon needed. It requires Internet and developer account. It just allows on/off.

B. Local Tuya. The easiest way is probably something like this:

  1. Use Tuya app to pair with the dehumidifier.
  2. Create developer (Cloud API) account and authenticate it (the same way as for Cloud Tuya.
  3. Log in with your developer account to Local Tuya addon (needs to be installed)
  4. Add your dehumidifier and use my table (in some older post) for the configuration.

@tretabyte What form of configuration do you want? I have YAML+Jinja2 (some parts are generated, e.g. the buttons for mode) or the resulting YAML.

Well, I don’t use target humidity and timers. They seem to be broken, maybe I’d have to use a different type. Maybe select would do the trick.

@tretabyte here are the latest Jinja-based config fragments: Dehumidifier config for Home Assistant · GitHub

They include:

  • dashboard
  • dehumidifier control based on max room humidity, hysteresis included
  • sensors for full/missing tank

Not included:

  • Initial setup of Tuya Local – config files are no longer supported :frowning:
  • Notification related to dehumidifier status (most notably full/missing tank) – I’ve more complex processing for that.

I’ve gotten to this part, Home Assistant found it within the localtuya integration. Not sure which to pick here though?


I guess ‘climate’ but that’s all about a thermostat. Did you add a custom platform?

I’ve added all the field as separate entities. (This is true even for a fan that has it’s own entity type – the dedicated entity type didn’t work well.) You can look at the table above. The types aren’t explicitly mentioned (and I don’t remember them by heart), but they should be more or less obvious from the description.

So, as first, you can pick switch type, select id=1 (assuming you have the same numbering – I am afraid there isn’t easier way than to try it) and add entity for switch. When you finish adding the entity, you will be asked if you want to add another one. It isn’t much user friendly, but it’s doable.

Yeah, I think I’m getting there. My dehumidifier isn’t the same as yours so the mappings are a little different.

I can control it on/off and view current humidity and target humidity right now.

I can view fan speed too, also weirdly 0 and 3 for low and high but can’t set it or target humidity for some reason.

There are worse integrations though, heh.

EDIT: Actually, I was wrong with fan speed, it’s 0 and 2 for me and I am able to control it now. Attempting to control Target Humidity has been unsuccessful though. A sensor type allows me to view just fine. I’ve tried number type and select type and both, if I try and change anything at all, reset it back down to “CO”.

@tretabyte The slider comes from using the number type. It doesn’t work for me either though.


I ended up finding running status as well. So I have 1 variable left unmapped, no idea what it does. Been 0 every time I looked at it. Probably timer related but who knows. Don’t really use that.

could it be the bucket being full or empty?

What dehumidifier do you have?

I don’t use target humidity, because I control the dehumidifier via HA instead. In HA, I can use multiple humidity sensors and pick the highest value. Actually, the humidity at windows differs much from humidity at dehumidifier.

It very well might be. I do have my hooked up to a hose though so it never fills up.

I have this: https://www.amazon.com/gp/product/B085NY3S63

Obviously, I could do the same though. I have the humidity reading of course and can turn on/off on whatever I want. Just more about trying to get full functionality exposed.

Give a look to Inventor Eva ION Pro Wifi line of dehumidifiers: they’re wifi enabled and Home Assistant integrated through HACS… I’ve read excellent comments and probably I’ll go for one of them…

Is this available in the US? 5 minutes on Google doesn’t turn up much around here.

Either way though, the dehumidifier needs to be a dehumidifier first. Any bells and whistles are really secondary.

That being said, the one I linked above has been great and it’s integration through localtuya works perfectly now. I can’t imagine needing anything else.


I am new to HA and i am trying to put my Rohnson dehumidifier on a proper tab

Your work looks nice but i cant figure where i put all that code.
Can you help me ?

I am considering splitting this topic to multiple parts:

  1. For adding the dehumidifier to the HA, you need nothing from the code. You just need to decide between Tuya cloud (requires Internet, easier to do, supports just on/off) and localtuya (works without Internet, needs more initial config, all the features except timer and target humidity work for me, I think). More details are in [WIP] Smart dehumidifier - #9 by v6ak
  2. You also might want to add some automation (e.g., run the dehumidifier when some humidity sensors reports high humidity) or a dashboard. That’s only useful after you have successfully added the dehumidifier. And that’s the point where you might want to use some of the code.