Comments (11)
Latest version should have solved this. Many thanks to @twhittock for integrating my latest work on the underlying meross_iot library. Great teamwork!
from meross-homeassistant.
Hi Smoz. Unfortunately, I have no MSL100 to test, so it's kinda hard for me to replicate the problem.
Moreover, there is little you can do to provide the info I'd need, unless you are familiar with MITM SSL sniffing.
However, there still is an option. You might create a new Meross account with some email/password that you'll share with me (sure you must not use your current user/password, but new random ones). Then, you login into the Meross APP and pair only one MSL100 bulb. Then you share the email/password with me (privately via email, for instance), so I can play with the bulb (even if I have no bulb in my house, I'll be able to "sniff" traffic from the APP to the bulb, which should be enough), and this should get me started in finding a fix for the library. Once I collect the traffic I need, I'd tell you, so you can unpair the device and pair it back to your original account. This is not the best option to go, but I'm afraid there is no other way for me to collect the ssl traffic I need to implement the dimmer functionality on my utility.
from meross-homeassistant.
@debsahu please don't poison this thread with unrelated questions. Start a new one instead.
from meross-homeassistant.
Hey @albertogeniola! I'm experiencing this issue as well. If @Smoz has not sent you an account I'd be happy to help out.
from meross-homeassistant.
@albertogeniola I can help out as well. I have actually gathered some data using mitmproxy including the MQTT commands sent by the app.
For the record, I actually was able to fix it by changing line 220 in the meross_iot/cloud/devices/light_bulbs.py (should be in your site packages) to read:
if self.type.lower() == 'mss560m' or self.type.lower() == 'msl100r':
Looks like there was a workaround for the mss560m implemented and the msl100r requires it too.
@Anonymike @Smoz this should hopefully be a workaround for the time being until @albertogeniola is able to properly diagnose?
Disregard the above -- it seemed to work once and never again. Dang. My python skills are nowhere near good enough to properly diagnose, either.
Here's the JSON sent by the app when changing brightness:
{ "header": { "from": "http://bulp.ip.here/config", "messageId": "7b01bb2cd44a0587cdfbb49248664ef3", "method": "SET", "namespace": "Appliance.Control.Light", "payloadVersion": 1, "sign": "b64b0b2f03257c3c0d107db9f2224b42", "timestamp": 1566435439 }, "payload": { "light": { "capacity": 4, "channel": 0, "luminance": 50 } } }
and here's what Home Assistant was sending, which was returning an error 5003: " Not supported type!" Note it was only ever sending onoff, regardless of what I was changing:
{ "header": { "messageId": "979a33cc590bce366cc202dd64a19b58", "namespace": "Appliance.Control.ToggleX", "method": "PUSH", "payloadVersion": 1, "from": "/appliance/1903044944927039080734298f1aaf62/publish", "timestamp": 1566433222, "timestampMs": 477, "sign": "b325168f4239f1d5c2368447845a5915" }, "payload": { "togglex": [{ "channel": 0, "onoff": 1, "lmTime": 1566433222 }] } }
from meross-homeassistant.
@Robodexter Great catch! Definitely missing the luminance
value. Also perhaps need to set the method to SET
instead of PUSH
? I'll poke around
from meross-homeassistant.
Looks like the component is okay, it's breaking in the library. There are notes all around the code stating he was unsure about color and dimming bulbs, 😛 so we're on the right track. I'm sure @albertogeniola could fix this in 2 seconds given your payload... Debugging here
from meross-homeassistant.
@Anonymike funny enough it seems if I make that change I'd strikethru'd earlier, eventually it will actually work. I don't know if this will help but looking at the logs, it seems to work once it receives an Appliance.System.Online message?
If it helps, here's my log file showing just the network_data: here . Line 75 is the last time I get an ERROR, and the first time we see Appliance.System.Online.
And here's everything related to the meross plugin in home assistant: here
Don't know if this will help, but maybe?
from meross-homeassistant.
@Robodexter I've got it to work consistently by removing the get_light_color
function. My guess is that it's attempting to get led color for a non-color bulb which is making the script unhappy. A workaround until this can be fixed correctly is:
if self.type.lower() == 'mss560m':
pl = {
'light': self.get_light_color()
}
pl['light']['channel'] = channel
pl['light']['luminance'] = luminance
payload = pl
elif self.type.lower() == 'msl100r':
pl = {
'light': {}
}
pl['light']['capacity'] = 4
pl['light']['channel'] = channel
pl['light']['luminance'] = luminance
payload = pl
from meross-homeassistant.
Hi guys and let me thank you all for the awesome collaborative debugging session here...!
So, I cannot reproduce the problem since my only Meross bulb is a RGB one.
I can integrate your suggestions in a beta library+component and make them available here, so that you can test them.for me and report back. As soon as I get some spare time, I'll do that.
from meross-homeassistant.
I've spent some time on looking at the code of the APP and the network communication and I think I got closer to the solution of the problem. I've released a new version of the underlying MerossIot library (0.3.1.6) which should be able to handle correctly luminance, temperature and rgb modes for Meross Bulbs. However, I hadn't enough time to integrate the new library with the meross-homeassistant component. I plan to do so next weekend.
In the meantime, I'd really appreciate if you can get a look at the new version of the underlying library and see if that works. Any feedback is really appreciated. In case your tests fail, please report your device model and the code snippet you tried.
from meross-homeassistant.
Related Issues (20)
- Meross Cloud Credentials saved in plain text HOT 5
- Unable to install package meross_iot==0.4.6.1 HOT 4
- problem with the latest update HOT 6
- Problemas con actualización v1.2.13 HOT 2
- Cloud-connected entities become unavailable in the integration HOT 4
- Failure to add device, fixed by hack to regexp HOT 5
- Validation of translation placeholders for localized (it) string component.meross_lan.issues.cloud_token_expired.fix_flow.step.profile.description failed HOT 1
- "Closing" and "Opening" state feedback HOT 6
- Incorrect colour on light strip
- Crypto package not found HOT 3
- BUG: Duplicate "do_not_disturb" entities HOT 2
- Deprecated alias in use HomeAssistantType HOT 2
- Unable to set colour via Scene or Automation
- cover.toggle on an open garage goes to transient state opening, requiring me to toggle a 2nd time to actually close HOT 2
- ms200 smart hub with window sensor HOT 1
- Setup error tras ultima actualización HA HOT 1
- Something came up
- Status incorrect
- async_forward_entry_setup
- Not able to log-in HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from meross-homeassistant.