Add support for Levoit Classic 300S Smart Ultrasonic Top-Fill Cool Mist Humidifier in the VeSync integration

Nope, it’s not related.

If you want to dig further, you may try pyvesync library.
There’s repository

Just follow the instructions, and try to get information about your humidifier there. If it’s there, then we have some trouble with integration itself. If not, then it’s most probably something wrong with VeSync services…

I don’t know how to use Python so i will wait for a update or something :frowning:
By the way thanks!!

Sorry for not being able to help. :frowning:
I don’t have exactly same device in hands to debug.

1 Like

Im trying To use the pyvesync but i have This error
After login

manager.login()

True

VeSync.get_devices()

Traceback (most recent call last):

File “”, line 1, in

TypeError: VeSync.get_devices() missing 1 required positional argument: ‘self’

I guess you need to call
manager.update()
instead.

And then
humidifier = manager.fans[0]

im doing something wrong…

manager.login()
True
manager.update()
humidifier = manager.fans[0]
Traceback (most recent call last):
File “”, line 1, in
IndexError: list index out of range

I go to CMD and type python… them

from pyvesync import VeSync

manager = VeSync(“*@gmail.com", "”, “Europe/Madrid”)
manager.login()
True
manager.update()
my_switch = manager.outlets[0]
Traceback (most recent call last):
File “”, line 1, in
IndexError: list index out of range

Well, from logs it’s clear, that library was able to log you in and update list of devices, but didn’t receive device.
2 possible reasons:

  • device is not supported by pyvesync (check, that you have latest version, but it shouldn’t be the case, as pyvesync, included into HA integration, should support Dual);
  • device is not in list (please, try to reset device and re-configure it in VeSync Android/iOS app, and retry library flow).

thanks Andrii, i will try 2 things, because i deleted the device 2 times and no way…
1- create a new vesync account
2- try to pair with an Android device (im using iOS right now)

I will tell u the result.

Edit: Nah, doesn’t work,

Can you maybe open issue for pyvesync library?
Since device is not there, library owner should be aware of bug.

Thanks!

Reported, my model is LUH-301S-WEU

maybe is the problem.

Hello!

I’m trying to follow this thread so that I can have my Levoit Classic 300S humidifier in HA; however, I can’t seem to be able to find the integration. I’ve done the following:

  1. Download and Extract GitHub - formatBCE/HA_VeSync_Classic300s to /config/custom_components/
  2. Reboot HA

I’ve ensured I have the following root directory: config/custom_components/vesync_formatbce
Restarted HA and I don’t see the integration in the list (besides the VeSync one)

When looking at the logs, I see this:

2022-01-31 15:57:00 WARNING (SyncWorker_0) [homeassistant.loader] We found a custom integration vesync_formatbce which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant

Hmm, you seem to do everything right.
That log is usual for all third-party integrations (e.g. that ones in custom_components folder), which means that HA loaded it.
Can’t really say, what’s wrong. Maybe, browser cache or something.

Can you reboot once more and then check with another browser?

Also, just for HA sanity testing: do you have another custom integrations there? Can you install one from HACS, for example, and see if you can find it in list?

1 Like

@formatBCE Thank you so much!!! I was banging my head against the wall and the one thing that nobody had mentioned before… “try another browser” hahaha

For anyone reading this… keep that in mind, I was able to make it work jus trying from a fresh browser

@formatBCE Now that my integration is working with the Levoit Humidifier Classic 300S, I noticed that I’ve only have 3 entities:

  1. Humidifier ON/OF - Humidity target
  2. Humidifier Display (on/off)
  3. Humidifier Night Light (on/off)

Is there a way to control the following:

  1. Humidifier Mode
  2. Other data as shown in @Kertz1954 post:
    Add support for Levoit Classic 300S Smart Ultrasonic Top-Fill Cool Mist Humidifier in the VeSync integration - #31 by Kertz1954

I’m glad it worked :slight_smile:

Yes, all humidifier-related things (target humidity, mode etc.) are state attributes of humidifier entity itself.
You may find them via Developer Tools → state of humidifier.
You can set that options from automation/service (humidifier.set_mode for example), or make template sensors for that fields, if you want them as separate entities.
Or use click on humidifier from Lovelace, and there you are, target humidity and mode are there for you.

Thank you for building this and sorry for the basic question, but I can’t get this working… here’s what I did:

  1. Clicked the link you provided here
  2. Clicked the green “Code” button
  3. Selected “Download Zip”
  4. After the download completed, I unzipped the directory “HA_VeSync_Classic300s-main”
  5. Within that directory is one titled “vesync_formatbce”
  6. I copied this “vesync_formatbce” directory and all of the files within it to my home-assistant/custom_components directory
  7. I restarted Home Assistant
  8. I then open Configuration, click “+ Add Integration” and search VeSync… and there’s nothing there other than the official green VeSync integration.

Is there something I need to do to get Home Assistant to look at this new integration repo? I’ve looked in HACS also… Sorry and please help!

1 Like

Hey!
I guess we had something similar here before.
Could you please reboot HA once more, and then try launch interface from different browser?
Last time someone had similar thing, and it was related to cache.

Of course! I should have done that. Fixed. Thank you!!

1 Like

Any thoughts about making this compatible with HACS? Would make it easier to install and update.

First I need to merge with official integration - guys done a lot of things there, mine are just quick dirty patches here.
Would be actually good to make pull-request to main repo, but all of it requires a fair amount of time, which I don’t really have now…