-
-
Notifications
You must be signed in to change notification settings - Fork 32.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
VeSync new device support #44865
Comments
Hey there @markperdue, @webdjoe, @TheGardenMonkey, mind taking a look at this issue as its been labeled with an integration ( |
Is there any way to add these changes? I'd edit the file myself, but I'm unfamiliar with it and I cannot find the the pevsync folder. I am using HassOS/Hass.io. Any help would be appreciated. |
Hi there,
As I understand “pevsync” it’s a python module preinstalled within HassOS.
As long as there is no root access to FileSystem and supporting pythons libs, I can’t edit the file directly.
However device models and types are hard corded to the python lib, for example:
https://github.com/markperdue/pyvesync/blob/master/src/pyvesync/vesync.py <https://github.com/markperdue/pyvesync/blob/master/src/pyvesync/vesync.py>
Lines 22-43, and the classes imported on top.
I actually went extra mile and was able to sniff the protocol, how those new devices are communicating to VeSync API, found some more calls with API V2.
Currently, I forked vesync component via placing a copy to “custom_components” and having my own local copy of “PyVeSync” library:
And it works, I’m still developing custom classes for new Levoit Humidifier/Purifiers:
Once I’m done, I can share that with you, but changes to the supporting python library will require.
Hope this helped, have a good one.
… On Jan 13, 2021, at 4:04 PM, comi8903 ***@***.***> wrote:
Is there any way to add these changes? I'd edit the file myself, but I'm unfamiliar with it and I cannot find the the pevsync folder. I am using HassOS/Hass.io. Any help would be appreciated.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub <#44865 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AAGV5VJVWGWY7CBWBYOQPNLSZYDGTANCNFSM4VWS4LUQ>.
|
I would love if you could share your fork. I've currently forked vesync into a custom component as well and edited the lines in the vesync.py file to include the Core200S purifier, but I'm not sure where to put that file itself and I'm totally unclear on the "local copy of the PyVeSync library. I don't know how to obtain that or where to store it within my system. Any help would be appreciated. |
Unless the Core200S has the same api calls, adding this line won't work. I am in the process of redesigning the library to make adding devices easier. If you would like to send the captures or submit a PR, I will be happy to add it |
Thank you. An updated component would be really nice. |
Classic300S would be awesome as well.
Here are some sample commands. Turn On
{
"acceptLanguage": "en",
"accountID": "removed",
"appVersion": "VeSync 3.0.54",
"cid": "removed",
"configModule": "WiFiBTOnboardingNotify_AirHumidifier_Classic300S_US",
"debugMode": false,
"deviceRegion": "US",
"method": "bypassV2",
"payload": {
"data": {
"enabled": true,
"id": 0
},
"method": "setSwitch",
"source": "APP"
},
"phoneBrand": "SM-G973U1",
"phoneOS": "Android 10",
"timeZone": "America/New_York",
"token": "removed",
"traceId": "1611977385269"
} Turn Off
{
"acceptLanguage": "en",
"accountID": "removed",
"appVersion": "VeSync 3.0.54",
"cid": "removed",
"configModule": "WiFiBTOnboardingNotify_AirHumidifier_Classic300S_US",
"debugMode": false,
"deviceRegion": "US",
"method": "bypassV2",
"payload": {
"data": {
"enabled": false,
"id": 0
},
"method": "setSwitch",
"source": "APP"
},
"phoneBrand": "SM-G973U1",
"phoneOS": "Android 10",
"timeZone": "America/New_York",
"token": "removed",
"traceId": "1611977385269"
} Get Humidifier Status
{
"acceptLanguage": "en",
"accountID": "removed",
"appVersion": "VeSync 3.0.54",
"cid": "removed",
"configModule": "WiFiBTOnboardingNotify_AirHumidifier_Classic300S_US",
"debugMode": false,
"deviceRegion": "US",
"method": "bypassV2",
"payload": {
"data": {},
"method": "getHumidifierStatus",
"source": "APP"
},
"phoneBrand": "SM-G973U1",
"phoneOS": "Android 10",
"timeZone": "America/New_York",
"token": "removed",
"traceId": "1611977539676"
} Set Target Humidity
{
"acceptLanguage": "en",
"accountID": "removed",
"appVersion": "VeSync 3.0.54",
"cid": "removed",
"configModule": "WiFiBTOnboardingNotify_AirHumidifier_Classic300S_US",
"debugMode": false,
"deviceRegion": "US",
"method": "bypassV2",
"payload": {
"data": {
"target_humidity": 34
},
"method": "setTargetHumidity",
"source": "APP"
},
"phoneBrand": "SM-G973U1",
"phoneOS": "Android 10",
"timeZone": "America/New_York",
"token": "removed",
"traceId": "1611977719771"
} Set Mist Level
{
"acceptLanguage": "en",
"accountID": "removed",
"appVersion": "VeSync 3.0.54",
"cid": "removed",
"configModule": "WiFiBTOnboardingNotify_AirHumidifier_Classic300S_US",
"debugMode": false,
"deviceRegion": "US",
"method": "bypassV2",
"payload": {
"data": {
"id": 0,
"level": 7,
"type": "mist"
},
"method": "setVirtualLevel",
"source": "APP"
},
"phoneBrand": "SM-G973U1",
"phoneOS": "Android 10",
"timeZone": "America/New_York",
"token": "removed",
"traceId": "1611977680498"
} Set to Auto
{
"acceptLanguage": "en",
"accountID": "removed",
"appVersion": "VeSync 3.0.54",
"cid": "removed",
"configModule": "WiFiBTOnboardingNotify_AirHumidifier_Classic300S_US",
"debugMode": false,
"deviceRegion": "US",
"method": "bypassV2",
"payload": {
"data": {
"mode": "auto"
},
"method": "setHumidityMode",
"source": "APP"
},
"phoneBrand": "SM-G973U1",
"phoneOS": "Android 10",
"timeZone": "America/New_York",
"token": "removed",
"traceId": "1611977701963"
} |
A fix for the Levoit131S would be fantastic. I'm not a dev, but happy to test any potential fixes. Thank you |
I would also love to see Core200S to be added. |
Likewise would love to see the Levoit 200S Humidifier added. Like @kitkat270, I am not a developer but am happy to test any enhancements. Once upon a time, software/hardware testing was my profession. |
Noob here ... can someone describe where I put what file to enable this as a custom component? Currently, the VeSync integration does not work for me. So I am trying to add it as a custom component but cannot find clear and easy to understand instructions anywhere. It might be that I can't understand something but there is talk of files and folders and sometimes neither exist. |
What exactly doesn’t work on the integration? There hasn’t been a working
custom component for a while.
…On Tue, Feb 9, 2021 at 2:29 PM derekisastro ***@***.***> wrote:
Noob here ... can someone describe where I put what file to enable this as
a custom component? Currently, the VeSync integration does not work for me.
So I am trying to add it as a custom component but cannot find clear and
easy to understand instructions anywhere. It might be that I can't
understand something but there is talk of files and folders and sometimes
neither exist.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#44865 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AB6JJBTIMNAGRBSE3X6G74DS6GEJPANCNFSM4VWS4LUQ>
.
|
The current integration now detects nothing, none of my switches or outlets show up as entities. I was pursuing the custom components as a way of getting around the failing integration. I have had previous versions of HA detect the switches and outlets. I can confirm, at this stage, that by downgrading from the current HA to 0.116.4 the switches and outlets are now visible and usable. |
Upgrading to 0.118.5 has broken them. They still exist as entities but are categorized as 'unavailable' and are not functional. |
I can confirm that 0.116.4 is the last update that worked correctly. Updating to 0.117.1 results in entities detected but not functional. Beyond that, at some point recently (perhaps the last update or 2 until this day) the entities were totally lost/missing/undetectable. Staying on 0.116.4 is one solution for me, alternatively, with a little direction, I'd be happy to upgrade to the most recent version of HA but make a copy of the 0.116.4 VeSync components and try to use the copied files as a custom component in the current HA build. I would need direction in how to do this, especially, what specific files I need to make copies of and the file structure I'd need to make in the custom components folder. Staying on 0.116.4 seems far easier at the moment. |
Is there any hope for the humidifier being included? |
Another +1 for Core 200S purifier support. This is Levoit's other smart purifier in addition to the 131. Any chance we can get this added? I have one and am happy to test anything. |
+1 for 300S humidifier support. Home assistant log: "Unknown device type - Classic300S" |
Hey there, I bought a Would someone mind to have a look into it? The auto/sleep mode of the humidifier works, but I don't know how I can add e.g. the "fan" option. In manual mode, it's possible to set the mist level between 1 to 9. It should work like a fan entity. Is it possible to combine two entities together? Or how would I add them together. My further goals:
If you want to help me bring this forward, feel free to work with my code or add PR to it. |
@provinzio if you want to add several entities together, you want to create a device. |
I found something about a If you know more about it. An example (maybe from another project) or a documentation link would help me a lot. |
I wish i knew it - just started to dig in too... Night light could be a light too :) |
@provinzio |
I wonder, why not use this |
Yeah, I would add the night light and display as light or switch. Might be the best idea. Just have to check how I can set a light with only three levels. It would be weird if the scale goes from 0 to 255 but changes the light after each 255/3.
Interesting idea. But might be cumbersome for HA cards. It might be harder to program a slider which changes the mist level this way. But your idea is definitely better than no implementation at all. Set percentage and SET Level are features of the FanEntity. That's the other option of which I can think. Combineing a Humidifier entity and a fan entity in a device. Just have to get an idea how it's done :D |
I read somewhere, that night light restrictions are just application-based,
and it actually can take 0-255.
…On Fri., Apr. 30, 2021, 14:35 Jeppy, ***@***.***> wrote:
Yeah, I would add the night light and display as light or switch. Might be
the best idea. Just have to check how I can set a light with only three
levels. It would be weird if the scale goes from 0 to 255 but changes the
light after each 255/3.
Or, looking on current implementation, it would be, maybe, possible to add
separate mode for each moist level, like "MANUAL_1" ... "MANUAL_9", and
modify code to parse it and set moist level.
Interesting idea. But might be cumbersome for HA cards. It might be harder
to program a slider which changes the mist level this way. But your idea is
definitely better than no implementation at all.
Set percentage and SET Level are features of the FanEntity. That's the
other option of which I can think. Combineing a Humidifier entity and a fan
entity in a device. Just have to get an idea how it's done :D
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#44865 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ACNF3RRQKIUG27TQXSYHOS3TLMPARANCNFSM4VWS4LUQ>
.
|
I tried to add multiple entities to a device in my dev branch. I think that it failed because I added the Fan in As this takes more time to implement for me as I'd like, I won't pursue this any further. (I am actually only using auto/sleep and on/off.) I'll setup a PR with my current progress. |
@provinzio Looks like your PR was rejected or cancelled but I don't see a reason given by the maintainers of the VeSync module. Do you have more context that I'm not seeing? |
It was stale, no development happened on it, therefore it was automatically closed. |
I made this extension to VeSync integration. added humidifier entity recognition and load; state update for humidifier is pretty slow, and often HA doesn’t know, that it actually turned device off, showing on state (physically device is off). It updates sometimes to correct state, but inconsistently. Gonna work on it more. |
There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates. |
The problem
Lack of support new devices from VeSync integration.
Especially Levoit Purifier C200, I was able to make it working with minor edits in "pyvesync" module.
It's generally responding to the same, API/Calls as existing LV-PUR131S.
I was editing a few lines:
fan_types = ['LV-PUR131S', 'Core200S']
Result:
Environment
Problem-relevant
configuration.yaml
Traceback/Error logs
Additional information
The text was updated successfully, but these errors were encountered: