I’m working on it…
I’m trying too…!
No success till now. Quite a shame!
This meross have now a cheap full line of products
You can get now two Meross smart plugs on amazon for a little more than the tplink hs110 costs. I hope someone will soon write a Hass component for meross. I‘d be super excited…
I was not able to capture packets.
My 2 cents about Meross are these two links I’ve found:
https://github.com/albertogeniola/MerossIot and https://github.com/Apollon77/ioBroker.meross.
I hope someone could implement the Meross switches in HA…
I have never understood what they gain with thislock to the cloud. Iam sure they would sell more if tjey had an open api.
That’s good news! The first project supports exactly the plugs I’ve bought. I will try it out over the holidays.
I’ve wrote to Meross in order to have news about API support. This is the answer:
" Thanks for your support.
Currently we only have one model MSS110 with API. We will develop API for more models, but it takes sometime, maybe a couple of weeks or even months. Sorry for the inconvenience.
Regards
Eric on behalf of meross"
Hi all I just got one of this WiFi surge protector MSS425E.
Do you think someone is developing compatibility with Home Assistant?
So, I’ve made some progress in figuring out the challenge & auth scheme for this Note: Please see the two updates below for my progress.
I have the smart strip (mss425) for the record.
If you are able to capture a REST request in flight, you can keep using their signature scheme to send new requests and they will continue to work.
All Meross devices have a REST API that is located at
http://<IP>/config
You can only send POST requests to this path.
The payload for the request is in the form:
{
"header": {
"messageId": "<messageid>",
"method": "GET",
"namespace": "Appliance.System.All",
"payloadVersion": 1,
"sign": "<signature>",
"timestamp": <unixtimestamp>
},
"payload": {}
}
Both the sign field and the messageid field are 32 characters long.
I’m currently working on reversing the implementation of the signing scheme.
P.S. If anyone wants to assist me in implementing this into home assistant, I could use the help
Update: messageid seems to be the the MD5 of the concatenation of a 16 random set of characters in the set: “abcdefghijklmnopqrstuvwxyz0123456789” and the current unix time stamp.
Update 2: the sign field seems to be the md5(messageid+key+unixtimestamp)
Trying to figure out how to retrieve key easily. (I have managed to retrieve mine but in a very obscure way).
Hi, I have a smart strip (mss425) and I solved this way, via IFTTT:
input_boolean:
switch1:
name: Switch1
initial: off
switch2:
name: Switch2
initial: off
switch3:
name: Switch3
initial: off
usb:
name: USB
initial: off
automations:
- id: '1543954481217'
alias: Switch1 ON
trigger:
- entity_id: input_boolean.switch1
from: 'off'
platform: state
to: 'on'
condition: []
action:
- data:
event: switch1_on
service: ifttt.trigger
- id: '1543954513639'
alias: Switch1 OFF
trigger:
- entity_id: input_boolean.switch1
from: 'on'
platform: state
to: 'off'
condition: []
action:
- data:
event: switch1_off
service: ifttt.trigger
- id: '1543955359803'
alias: Switch2 OFF
trigger:
- entity_id: input_boolean.switch2
from: 'on'
platform: state
to: 'off'
condition: []
action:
- data:
event: switch2_off
service: ifttt.trigger
- id: '1543955433401'
alias: Switch2 ON
trigger:
- entity_id: input_boolean.switch2
from: 'off'
platform: state
to: 'on'
condition: []
action:
- data:
event: switch2_on
service: ifttt.trigger
- id: '1543955465192'
alias: Switch3 OFF
trigger:
- entity_id: input_boolean.switch3
from: 'on'
platform: state
to: 'off'
condition: []
action:
- data:
event: switch3_off
service: ifttt.trigger
- id: '1543955504048'
alias: Switch3 ON
trigger:
- entity_id: input_boolean.switch3
from: 'off'
platform: state
to: 'on'
condition: []
action:
- data:
event: switch3_on
service: ifttt.trigger
- id: '1543955532383'
alias: USB OFF
trigger:
- entity_id: input_boolean.usb
from: 'on'
platform: state
to: 'off'
condition: []
action:
- data:
event: usb_off
service: ifttt.trigger
- id: '1543955560430'
alias: USB ON
trigger:
- entity_id: input_boolean.usb
from: 'off'
platform: state
to: 'on'
condition: []
action:
- data:
event: usb_on
service: ifttt.trigger
Where and how can I find device ‘ID’?
@Miki_Mercuri that’s a rather clever way to get around this limitation!
I’m a bit swamped with work right now, but I should have some time in the next few weeks to cleanup my work so that it can be integrated with home assistant.
That way, you don’t have to go through an intermediary like IFTTT.
Is it possible to monitor the consumption for smart plug ? (mss310 )
I don’t have your device but if you look at the post above and replace
"namespace": "Appliance.System.All",
with:
"namespace": "Appliance.Control.Consumption",
it should work.
Thanks @deus
To gather the messageid for my mss310, there is a interesting way to do it here : https://github.com/albertogeniola/MerossIot/wiki/Device-pairing
I’ll test it
Glad to help @bonilla
I found some time to cludge together a rough script.
Use this to retrieve your messageid, sign and timestamp to be used for the REST request.
It worked , thanks @deus
Do you have found a way to have a tile with consumption and status on lovelace?