Homewizard climate local MQTT control!

I am still on version 1.07 of the appliance, maybe they added new bits.

  • You need to make sure that you are using Mosquitto v1.6.12. Later versions do not work.
  • Port 443 needs to be free, so MQTT can use it. If MQTT can’t bind to 433 It’s for sure not going to work.
  • DNS redirect is a crucial piece of the puzzle.

Given up in the end. I cant use an older Mosquitto so that stops me dead in the water.

The heater i was able to get in to the Tuya app and can control it via Tuya Local so its better than nothing. Would prefer MQTT but right now i am just happy to be able to control it via HA.

Good to know.

:wave: I bought a Princess smart heater fan a while ago, and created a cloud integration for it which is in a PR now, hopefully it gets merged pretty soon.

Would also welcome collaboration on adding support for more devices.

2 Likes

@mepla Anyway to already use your integration already?

@mhjansen79 Yes, you can copy the component directory under your custom_components and add a version field to manifest.json (as explained in this doc)

Ultimately you will need to have something like this image:

I will release this in HACS if I the PR takes longer than a week or two after new year.

2 Likes

Thanks! I’ve done this and I am able to add the integration using my email and password, but I don’t have any devices load into the integration. I currently use the dehumidifier, which works fine through the Homewizard Climate app.

Device info:
Software: 1.07
Dehumidifier HWCdhmG1

@mhjansen79 I should’ve mentioned that it currently only supports one type of device (HeaterFan). Main reason is I only had access to that one device. I might have a way to find out other device types’ websocket payloads, but I’m not sure yet. You are welcome to open a PR in the underlying library if you know what payloads are sent for your device type. Otherwise, I might have more supported devices in about a month or so.

2 Likes

Is there a way to find out those websocket payloads? I’m using the same infrared heater( ‘Princess 01.343350.01.001 Smart Infrared Panel Heater 350 | Princess’) as MaxiMIlliaz mentioned above.

I have a Princess Glass Smart Panel Heater, 2000 W, and I’d like to help find other device types and contribute to finding them and getting my heater in HA. Any suggestions @mepla?

2 Likes

Hi @mepla! Thanks for your work.

I have tried this component, but I get an authentication error. “invalid_auth”.
What could be the error?

Many thanks in advance!

So…long journey. I don’t know how I found them initially, but I think I was looking at who forked @mepla’s library and came across Dennis.

He helped me figure out my device type. I did this by:

  1. Installing python and pip on an old Linux PC I had.
  2. running the debug script found here.
  3. It said at the end of the script, ValueError: 'heater' is not a valid HomeWizardClimateDeviceType
  4. That is the device type, so I added HEATER = "heater" to homewizard_climate_websocket/model/climate_device.py

I’m still working on getting that into the custom component integration.

1 Like

Update: got it working by using this.

Someone asked me for a more detailed instruction on how I got my heater into HA. Here’s what I sent them:

Do you know how to use command line? If not, here’s a youtube video on that for windows. Install this:

Once you have python installed download this and go into the command line at the location of the extracted files you downloaded. In it is a debug.sh command which can log the devices that exist on your homewizard climate account. You just run it by typing: ./debug.sh

When I did it, this was the message I received:

This tells you what your device type is. “heater” is mine. Download this, but go into this file locally and edit it, putting in the device type you got above. Save the file.

Then install the component the same way @mepla suggests here. Once you’ve done that reboot your HA instance and then go into integrations and it should be there to add.

If you need any help, let me know.

2 Likes

With the help of Profile - MartiAbernathey - Home Assistant Community I also managed to get my infraredheater into HA. Thanks for all your great work.

Thanks. Btw, you can now add the integration via HACs by adding this repository

Successfully installed homewizard-climate-websocket-0.0.8
DEBUG:homewizard_climate_websocket.api.api:Logging in to https://api.homewizardeasyonline.com/v1/auth/login with username [email protected]
DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): api.homewizardeasyonline.com:443
DEBUG:urllib3.connectionpool:https://api.homewizardeasyonline.com:443 "GET /v1/auth/login HTTP/1.1" 200 696
DEBUG:homewizard_climate_websocket.api.api:Login ([email protected]) status code: 200
ERROR:homewizard_climate_websocket.api.api:Login failed for username [email protected], response was: <Response [200]>
Traceback (most recent call last):
  File "/home/atarian/Downloads/homewizard-climate-websocket-feature-debug-devices/homewizard_climate_websocket/debug.py", line 28, in <module>
    main()
  File "/home/atarian/Downloads/homewizard-climate-websocket-feature-debug-devices/homewizard_climate_websocket/debug.py", line 15, in main
    api.login()
  File "/home/atarian/.local/lib/python3.10/site-packages/homewizard_climate_websocket/api/api.py", line 52, in login
    raise InvalidHomewizardAuth()
homewizard_climate_websocket.api.api.InvalidHomewizardAuth

I try to add our HomeWizard compatible Dehumidifier. My login email and password are working 100% (for login to account on the website), however if I add these to debug.sh and run the script, I get a response 200.

Is this because the dehumidifier is not a climate type device or could I be doing something wrong?

btw, I exchanged my real email to [email protected] in the output above :slight_smile:

The api module expects content-type “application/json” but it receives “application/json; charset=utf-8”.
Let me create a PR if I can find the lib

It was already done 4 days ago Change content-type check · mepla/homewizard-climate-websocket@db59a72 · GitHub
Use version 0.0.10

It works great, thanks :smiley:

Only one thing when I click on the heat icon the cool icon lits
and it displays cooling instead of heating.