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

Nice job putting it all together - VeSync integration is waaaay outdated in Core.

If you need my help, I will do whatever I can - just take to the count, that I’m not really Python dev - I just desperately needed it for myself. :slight_smile:

I’ve been using the formatBCE VeSync custom integration for about a year now, for my 300s humidifier. A couple of weeks ago it stopped working. I think something in the API calls must be triggering some sort of intrusion detection system (IDS) response on the VeSync server end, because as soon as I try to use the custom integration I lose the ability to access the VeSync server even through their mobile app. The mobile app gives an immediate “the server is busy” response, not a network timeout. If I disable the custom integration, I’m able to use the mobile app again. Has anyone else noticed this?

Interesting. Just checked my 300s, works still…
Probably, makes sense to create separate account for integration, and share 300s to it.

I’m not sure what you’re saying about the separate account. A separate VESync account? I only know of one way to create a VESync app, and that’s through their mobile app. I’m not able to create a second account because I only have one phone.

Yeah, I was doing it, while developing. Log out, create another account, log in with main account again, invite your 2nd acc to your home - and then use 2nd account in HA.

Okay, I created separate accounts, but it’s the same problem. As soon as the vesync_formatbce integration is enabled, I get the ‘server is busy’ error on my phone (even using the alternate account). I think they must be blocking my IP on the server end when they see traffic from vesync_formatbce.

Can’t say anything meaningful about it… It works for me still.

In case anyone else runs into this problem, I switched to a different custom component and it’s working for me. GitHub - vlebourl/custom_vesync: Custom VeSync component for Home Assistant

Is that component using pyvesync too?

P.S. yeah, looks like. Curious, what could differ.

I will check that integration - it looks well-maintained, so maybe it’s time to ditch my humble fork :slight_smile:

It seems to be a custom modification of the core pvesync integration. I was actually using both versions of pvesync before (the core version and the formatbce custom component) because the formatbce version didn’t work with my Core 600s air purifier. But this custom component works with everything I have (Core 400s and 600s air purifiers and 300s humidifier), so it’s probably better for me anyway. Many thanks for your integration, it was working for me for a long time.

1 Like

Can confirm the custom integration restored functionality immediately - no matter what I did the old integration did not work any longer.

I’m curious why it stops working for everyone. Mine is working still, no lags…

Everything seemed to be ok until the last few Core updates where I noticed the integration said there was no connection - I was once able to bring it back online by restarting the integration however this time with the latest Core installed it’s a no go. Installing the custom integration worked immediately after installing and restarting HA.

NOT WORK

First - never install both integrations together. They have same ID, so custom integration won’t work, if HA original one is installed.

Second - I don’t think stated model has support as of now. It does have support in pyvesync library, on the first glance, so could be aded here - however, still needs work and debugging.

Perfect, I’ve put the screenshot of all three integrations to prove that it doesn’t work.
I hope for a new update, I’m available for any tests.
Thank you

@formatBCE if I wanted to modify your integration to include my levoit vital 100s Air Purifier would that be possible? I have attempted to simply add it to the fan.py file and update the pyvesync verion in the manifest. I have been able to remove the error that shows up in the logs about an incompatible device but it does not show up as a new device in home assistant.

If pyvesync supports it, should be fine. Check all places, where Pur131s is mentioned, and make same stuff (as you’re trying to get purifier to work). It’s not just fan file, but also init function. Anyway, make text search and duplicate everything you found. It’s easiest way.

Good luck!

I was told by @vlebourl that using the same ID meant that HA always used the Custom one over the core and then, once core is updated, you can just remove the custom one :slight_smile:

Never had it working like that. Not 100% sure, but afaik core integration gets registered on HA start, and custom one is rejected.