Giter Site home page Giter Site logo

albertogeniola / ha-meross-local-broker Goto Github PK

View Code? Open in Web Editor NEW
30.0 30.0 8.0 1.12 MB

HomeAssistant addon that handles LAN-local MQTT and API service for Meross Devices.

License: Apache License 2.0

Dockerfile 2.04% Shell 4.26% JavaScript 1.27% TypeScript 36.25% HTML 9.16% SCSS 2.72% Python 43.85% Batchfile 0.09% PowerShell 0.36%
addon home-assistant homeassistant meross

ha-meross-local-broker's People

Contributors

albertogeniola avatar rsefer avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

ha-meross-local-broker's Issues

Cannot connect to host iot.meross.com - certificate verify failed: unable to get local issuer certificate

I am having an issue trying to configure my email and password using "Meross Link". It seems that the CA certificate that signs iot.meross.com is not valid (maybe is not installed).

I send the screendshot of the error and the log.

My system is fully updated with last stable versions available:

  • Meross Local Broket 0.0.1-rc0
  • Home Assistant 2023.1.5
  • Supervisor 2022.12.1
  • Operating System 9.4
  • HACS: 1.29.1

Thanks for your help and congratulations for the Meross Integration with Home Assistant, is really useful.
errorMeross

errorLoginMesos.txt

Can't update local broker addon

Homeassistant shows the avaiable update, but when i press update, after a short while the following message pops up:

Can't install ghcr.io/albertogeniola/amd64-meross_local_broker:0.0.1-alpha46: 500 Server Error for http+docker://localhost/v1.43/images/create?tag=0.0.1-alpha46&fromImage=ghcr.io%2Falbertogeniola%2Famd64-meross_local_broker&platform=linux%2Famd64: Internal Server Error ("manifest unknown")

Tried restarting Homeassitant with no success.

Issue when I configure custom integration

Hi! I'm a long-time user and a coffee contributor to the efforts for the local add-on. I figured I'd try it out today with one of my garage door opener. I have the local add-on configured according to your guide, and I have successfully paired the door opener (it shows as ONLINE in the custom pairer app and in the "paired devices" section of the add-on). The device also has an IP address in my router admin, so it appears to be fully connected.

The issue appears to occur when I setup the component integration. I select "Connect to LAN-only broker" and see "The discovery was unable to automatically find MQTT/API addresses. Default values have been selected." I leave the default values and fill in the same username and password that I used when I set up the add-on (I'm assuming that's what I'm supposed to do). I then get the success message that says "Created configuration for http://homeassistant.local:2003." However, in the integration page it says "Retrying setup: None."

The HA log says:

This error originated from a custom integration.

Logger: custom_components.meross_cloud
Source: custom_components/meross_cloud/__init__.py:196
Integration: Meross Cloud IoT
First occurred: 10:17:19 AM (46 occurrences)
Last logged: 11:19:47 AM

Error occurred. ------------------------------------- Component version: 0.4.5.0 Device info: <Unavailable> Error Message: "An exception occurred while setting up the meross manager. Setup will be retried..."
Traceback (most recent call last):
  File "/config/custom_components/meross_cloud/__init__.py", line 451, in async_setup_entry
    await meross_coordinator.initial_setup()
  File "/config/custom_components/meross_cloud/__init__.py", line 196, in initial_setup
    await self._manager.async_device_discovery()
  File "/usr/local/lib/python3.10/site-packages/meross_iot/manager.py", line 363, in async_device_discovery
    dev = await self._async_enroll_new_http_dev(d)
  File "/usr/local/lib/python3.10/site-packages/meross_iot/manager.py", line 446, in _async_enroll_new_http_dev
    mqtt_hostname=extract_domain(device_info.domain),
  File "/usr/local/lib/python3.10/site-packages/meross_iot/utilities/network.py", line 8, in extract_domain
    tokens = address.split(":")
AttributeError: 'NoneType' object has no attribute 'split'


And the MQTT Service log says:

2022-09-18 16:22:01.759397008 time="2022-09-18T11:22:01-05:00" level=warning msg="wrong password for user _agent"
2022-09-18 16:22:00.398775777 time="2022-09-18T11:22:00-05:00" level=info msg="error code: 401"
2022-09-18 16:20:00.336504901 time="2022-09-18T11:20:00-05:00" level=warning msg="wrong password for user _agent"
2022-09-18 16:19:58.927098082 New client connectedtime="2022-09-18T11:19:58-05:00" level=info msg="error code: 401"
2022-09-18 16:19:52.259497043 New connection from 192.168.2.25:64530 on port 2001.
2022-09-18 16:19:52.259487099 Client fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU disconnected.
2022-09-18 16:19:52.259476784 fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU 1 /appliance/2009106082461136100548e1e931f72a/subscribe
2022-09-18 16:19:52.259466062 New client connected from 192.168.2.25:64529 as fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU (p1, c1, k120, u'48:e1:e9:31:f7:2a').
2022-09-18 16:19:52.259454840 New connection from 192.168.2.25:64529 on port 2001.
2022-09-18 16:19:52.259444748 Client fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU disconnected.
2022-09-18 16:19:52.259434378 fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU 1 /appliance/2009106082461136100548e1e931f72a/subscribe
2022-09-18 16:19:52.259423711 New client connected from 192.168.2.25:64528 as fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU (p1, c1, k120, u'48:e1:e9:31:f7:2a').
2022-09-18 16:19:52.259412415 New connection from 192.168.2.25:64528 on port 2001.
2022-09-18 16:19:52.259402637 Client fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU disconnected.
2022-09-18 16:19:52.259392008 fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU 1 /appliance/2009106082461136100548e1e931f72a/subscribe
2022-09-18 16:19:52.259381156 New client connected from 192.168.2.25:64527 as fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU (p1, c1, k120, u'48:e1:e9:31:f7:2a').
2022-09-18 16:19:52.259369805 New connection from 192.168.2.25:64527 on port 2001.
2022-09-18 16:19:52.259359731 Client fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU disconnected.
2022-09-18 16:19:52.259349305 fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU 1 /appliance/2009106082461136100548e1e931f72a/subscribe
2022-09-18 16:19:52.259338601 New client connected from 192.168.2.25:64526 as fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU (p1, c1, k120, u'48:e1:e9:31:f7:2a').
2022-09-18 16:19:52.259327194 New connection from 192.168.2.25:64526 on port 2001.
2022-09-18 16:19:52.259317287 Client fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU disconnected.
2022-09-18 16:19:52.259306824 fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU 1 /appliance/2009106082461136100548e1e931f72a/subscribe
2022-09-18 16:19:52.259296046 New client connected from 192.168.2.25:64525 as fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU (p1, c1, k120, u'48:e1:e9:31:f7:2a').
2022-09-18 16:19:52.259284584 New connection from 192.168.2.25:64525 on port 2001.
2022-09-18 16:19:52.259274732 Client <unknown> disconnected, not authorised.
2022-09-18 16:19:52.259264639 New connection from 127.0.0.1:39879 on port 2001.
2022-09-18 16:19:52.259254806 Client fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU disconnected.
2022-09-18 16:19:52.259244288 fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU 1 /appliance/2009106082461136100548e1e931f72a/subscribe
2022-09-18 16:19:52.259233140 New client connected from 192.168.2.25:64524 as fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU (p1, c1, k120, u'48:e1:e9:31:f7:2a').
2022-09-18 16:19:52.259221473 New connection from 192.168.2.25:64524 on port 2001.
2022-09-18 16:19:52.259211325 Client fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU disconnected.
2022-09-18 16:19:52.259200455 fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU 1 /appliance/2009106082461136100548e1e931f72a/subscribe
2022-09-18 16:19:52.259189270 New client connected from 192.168.2.25:64523 as fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU (p1, c1, k120, u'48:e1:e9:31:f7:2a').
2022-09-18 16:19:52.259177622 New connection from 192.168.2.25:64523 on port 2001.
2022-09-18 16:19:52.259167326 Client fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU disconnected.
2022-09-18 16:19:52.259156789 fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU 1 /appliance/2009106082461136100548e1e931f72a/subscribe
2022-09-18 16:19:52.259145808 New client connected from 192.168.2.25:64522 as fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU (p1, c1, k120, u'48:e1:e9:31:f7:2a').
2022-09-18 16:19:52.259134641 New connection from 192.168.2.25:64522 on port 2001.
2022-09-18 16:19:52.259124530 Client fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU disconnected.
2022-09-18 16:19:52.259113642 fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU 1 /appliance/2009106082461136100548e1e931f72a/subscribe
2022-09-18 16:19:52.259102364 New client connected from 192.168.2.25:64521 as fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU (p1, c1, k120, u'48:e1:e9:31:f7:2a').
2022-09-18 16:19:52.259090753 New connection from 192.168.2.25:64521 on port 2001.
2022-09-18 16:19:52.259080272 Client fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU disconnected.
2022-09-18 16:19:52.259069309 fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU 1 /appliance/2009106082461136100548e1e931f72a/subscribe
2022-09-18 16:19:52.259057531 New client connected from 192.168.2.25:64520 as fmware:2009106082461136100548e1e931f72a_TKlAxDiPg8f12cbU (p1, c1, k120, u'48:e1:e9:31:f7:2a').
2022-09-18 16:19:52.259044161 New connection from 192.168.2.25:64520 on port 2001.

Can't Install the addon

Hello,

I am trying to install the addon for local LAN Meross control of my MSS310 plugs and avoid Cloud API limitations.
But after adding the repos to my HA system, i can't install the addon.

I get this error :
Can't install ghcr.io/albertogeniola/aarch64-meross_local_broker:0.0.1-alpha43: 500 Server Error for http+docker://localhost/v1.41/images/create?tag=0.0.1-alpha43&fromImage=ghcr.io%2Falbertogeniola%2Faarch64-meross_local_broker&platform=linux%2Farm64: Internal Server Error ("manifest unknown")

I am using HA on an Odroid N2+.

Thanks

AppArmor Errors

Issues running this under Debian. I'm receiving the following AppArmor errors. Please tweak your AppArmor settings for this container.

image

raise e
  File "/opt/custom_broker/mdns_register.py", line 50, in register_service
    return _register_service(service_name=service_name, service_name_template=service_name_template, service_type=service_type, service_port=service_port, service_priority=service_priority, service_weight=service_weight, data=data)
  File "/opt/custom_broker/mdns_register.py", line 32, in _register_service
    bus = SystemBus()
  File "/usr/local/lib/python3.7/dist-packages/dbus/_dbus.py", line 196, in __new__
    private=private)
  File "/usr/local/lib/python3.7/dist-packages/dbus/_dbus.py", line 102, in __new__
    bus = BusConnection.__new__(subclass, bus_type, mainloop=mainloop)
  File "/usr/local/lib/python3.7/dist-packages/dbus/bus.py", line 124, in __new__
    bus = cls._new_for_bus(address_or_type, mainloop=mainloop)
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender="(null)" (inactive) interface="org.freedesktop.DBus" member="Hello" error name="(unset)" requested_reply="0" destination="org.freedesktop.DBus" (bus)
usage: mdns_register.py [-h] {register,unregister} ...
mdns_register.py: error: unrecognized arguments: /run/s6/basedir/bin/halt
usage: mdns_register.py [-h] {register,unregister} ...
mdns_register.py: error: unrecognized arguments: /run/s6/basedir/bin/halt
[06:01:52] INFO: Advertising the Mosquitto daemon
[06:01:52] INFO: Advertising the Meross API service
Traceback (most recent call last):
  File "/opt/custom_broker/mdns_register.py", line 94, in <module>
    exit(main())
  File "/opt/custom_broker/mdns_register.py", line 82, in main
    path = register_service(service_name=args.service_name, service_name_template=args.service_name_template, service_type=args.service_type, service_port=args.service_port, service_priority=args.priority, service_weight=args.weight, data=args.set, update_if_present=args.update_if_present)
  File "/opt/custom_broker/mdns_register.py", line 55, in register_service
    raise e
  File "/opt/custom_broker/mdns_register.py", line 50, in register_service
    return _register_service(service_name=service_name, service_name_template=service_name_template, service_type=service_type, service_port=service_port, service_priority=service_priority, service_weight=service_weight, data=data)
  File "/opt/custom_broker/mdns_register.py", line 32, in _register_service
    bus = SystemBus()
  File "/usr/local/lib/python3.7/dist-packages/dbus/_dbus.py", line 196, in __new__
    private=private)
  File "/usr/local/lib/python3.7/dist-packages/dbus/_dbus.py", line 102, in __new__
    bus = BusConnection.__new__(subclass, bus_type, mainloop=mainloop)
  File "/usr/local/lib/python3.7/dist-packages/dbus/bus.py", line 124, in __new__
    bus = cls._new_for_bus(address_or_type, mainloop=mainloop)
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender="(null)" (inactive) interface="org.freedesktop.DBus" member="Hello" error name="(unset)" requested_reply="0" destination="org.freedesktop.DBus" (bus)
Traceback (most recent call last):
  File "/opt/custom_broker/mdns_register.py", line 94, in <module>
    exit(main())
  File "/opt/custom_broker/mdns_register.py", line 82, in main
    path = register_service(service_name=args.service_name, service_name_template=args.service_name_template, service_type=args.service_type, service_port=args.service_port, service_priority=args.priority, service_weight=args.weight, data=args.set, update_if_present=args.update_if_present)
  File "/opt/custom_broker/mdns_register.py", line 55, in register_service
    raise e
  File "/opt/custom_broker/mdns_register.py", line 50, in register_service
    return _register_service(service_name=service_name, service_name_template=service_name_template, service_type=service_type, service_port=service_port, service_priority=service_priority, service_weight=service_weight, data=data)
  File "/opt/custom_broker/mdns_register.py", line 32, in _register_service
    bus = SystemBus()
  File "/usr/local/lib/python3.7/dist-packages/dbus/_dbus.py", line 196, in __new__
    private=private)
  File "/usr/local/lib/python3.7/dist-packages/dbus/_dbus.py", line 102, in __new__
    bus = BusConnection.__new__(subclass, bus_type, mainloop=mainloop)
  File "/usr/local/lib/python3.7/dist-packages/dbus/bus.py", line 124, in __new__
    bus = cls._new_for_bus(address_or_type, mainloop=mainloop)
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender="(null)" (inactive) interface="org.freedesktop.DBus" member="Hello" error name="(unset)" requested_reply="0" destination="org.freedesktop.DBus" (bus)
usage: mdns_register.py [-h] {register,unregister} ...
mdns_register.py: error: unrecognized arguments: /run/s6/basedir/bin/halt
usage: mdns_register.py [-h] {register,unregister} ...
mdns_register.py: error: unrecognized arguments: /run/s6/basedir/bin/halt
[06:01:53] INFO: Advertising the Mosquitto daemon
[06:01:53] INFO: Advertising the Meross API service
Traceback (most recent call last):
  File "/opt/custom_broker/mdns_register.py", line 94, in <module>
    exit(main())
  File "/opt/custom_broker/mdns_register.py", line 82, in main
    path = register_service(service_name=args.service_name, service_name_template=args.service_name_template, service_type=args.service_type, service_port=args.service_port, service_priority=args.priority, service_weight=args.weight, data=args.set, update_if_present=args.update_if_present)
  File "/opt/custom_broker/mdns_register.py", line 55, in register_service
    raise e
  File "/opt/custom_broker/mdns_register.py", line 50, in register_service
    return _register_service(service_name=service_name, service_name_template=service_name_template, service_type=service_type, service_port=service_port, service_priority=service_priority, service_weight=service_weight, data=data)
  File "/opt/custom_broker/mdns_register.py", line 32, in _register_service
    bus = SystemBus()
  File "/usr/local/lib/python3.7/dist-packages/dbus/_dbus.py", line 196, in __new__
    private=private)
  File "/usr/local/lib/python3.7/dist-packages/dbus/_dbus.py", line 102, in __new__
    bus = BusConnection.__new__(subclass, bus_type, mainloop=mainloop)
  File "/usr/local/lib/python3.7/dist-packages/dbus/bus.py", line 124, in __new__
    bus = cls._new_for_bus(address_or_type, mainloop=mainloop)
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender="(null)" (inactive) interface="org.freedesktop.DBus" member="Hello" error name="(unset)" requested_reply="0" destination="org.freedesktop.DBus" (bus)
Traceback (most recent call last):
  File "/opt/custom_broker/mdns_register.py", line 94, in <module>
    exit(main())
  File "/opt/custom_broker/mdns_register.py", line 82, in main
    path = register_service(service_name=args.service_name, service_name_template=args.service_name_template, service_type=args.service_type, service_port=args.service_port, service_priority=args.priority, service_weight=args.weight, data=args.set, update_if_present=args.update_if_present)
  File "/opt/custom_broker/mdns_register.py", line 55, in register_service
    raise e
  File "/opt/custom_broker/mdns_register.py", line 50, in register_service
    return _register_service(service_name=service_name, service_name_template=service_name_template, service_type=service_type, service_port=service_port, service_priority=service_priority, service_weight=service_weight, data=data)
  File "/opt/custom_broker/mdns_register.py", line 32, in _register_service
    bus = SystemBus()
  File "/usr/local/lib/python3.7/dist-packages/dbus/_dbus.py", line 196, in __new__
    private=private)
  File "/usr/local/lib/python3.7/dist-packages/dbus/_dbus.py", line 102, in __new__
    bus = BusConnection.__new__(subclass, bus_type, mainloop=mainloop)
  File "/usr/local/lib/python3.7/dist-packages/dbus/bus.py", line 124, in __new__
    bus = cls._new_for_bus(address_or_type, mainloop=mainloop)
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender="(null)" (inactive) interface="org.freedesktop.DBus" member="Hello" error name="(unset)" requested_reply="0" destination="org.freedesktop.DBus" (bus)
usage: mdns_register.py [-h] {register,unregister} ...
mdns_register.py: error: unrecognized arguments: /run/s6/basedir/bin/halt
usage: mdns_register.py [-h] {register,unregister} ...
mdns_register.py: error: unrecognized arguments: /run/s6/basedir/bin/halt

MTS200 thermostat

I have a Meross MTS200 thermostat for several months now. Everything works well with the Meross app on the smartphone.
Everything seemed fine with the Meross LAN Home Assistant integration activation and climate card in HA, but after a few months the current temperature in HA was no longer up to date. Then I activated the Meross Iot addon via Meross cloud, but the same problem. Now I try to activate the Meross addon with local broker, but I cannot pair the MTS200, the device is in pairing mode. I can start the pairing app and log in, I have Http and Mqtt codes but the pairing does not work; Any idea what else I can do?
regards
Robert

CPU Usage

With the latest release i'm seeing huge CPU usage after several hours of running - only way it resolves is with a reboot. Checked all the various logs and not seeing anything obvious... Anyone else getting this?

MSH300HK PUSH request

Ciao Alberto,

Grazie per aver condiviso il bellissimo lavoro fatto per rendere Local i device Meross.
Ho preso spunto dai tuoi contributi e dalla tua libreria per integrare via MQTT questi dispositivi su Openhab.

Sono riuscito ad integrare praticamente tutto ciò che serve per governare in locale le valvole termostatiche, ad eccezione di questo singolo messaggio che l'MSH300HK continua ad inviare perchè non riceve la risposta adeguata.

Ti è mai capitato di imbatterti in un messaggio simile?
Sai indirizzarmi su quale sarebbe la risposta corretta?

Grazie

{
"header": {
"messageId": "b58cd1cadba3eb43ae01481cab47XXXX",
"namespace": "Appliance.Hub.SubdeviceList",
"method": "PUSH",
"payloadVersion": 1,
"from": "/appliance/XXX/publish",
"timestamp": 1669216809,
"timestampMs": 592,
"sign": "de62fe92ac87f005ea0d4db9822eXXXX"
},
"payload": {
"subdeviceList": {
"subdevice": [
{
"id": "0300XXXX",
"status": 1,
"time": 1669216199,
"hardware": "1.1.5",
"firmware": "6.1.7"
}
],
"needReply": 1
}
}
}

Compatible with HA Docker?

Hi,

I am trying to achieve cloudless Meross device control in my HA install. I run HA via the official docker image.
In the Local Broker .md it mentions; "This addon has been tested on Homeassistant Docker environment..."

Yet I understand installation is not possible via the provided link as HA docker environments do not support the store/addons. Clicking the following results in the message "This redirect is not supported by your Home Assistant installation. It needs either the Home Assistant Operating System or Home Assistant Supervised installation method. For more information, see the documentation.".

https://my.home-assistant.io/redirect/supervisor_add_addon_repository/?repository_url=https%3A%2F%2Fgithub.com%2Falbertogeniola%2Fha-meross-local-broker

Is there another way to use or install with HA docker?

Thanks!

problem pair device

the installation on the HA side went very well thanks to the explanations, the MQTT is well active on the port 2001 and it is possible to connect to it via an MQTT client W/ parameters.
On the GSM side, the application sees my device (MSS310 with the last FW) but in the "pairing" process it blocks every time (see screenshot).
the message in French is "a problem has occurred. The application has cancelled the request to select a device".
Screenshot_20221213-202701
As it is much more difficult to debug on the mobile side, I don't really see where it blocks.

Difference Between This Add-on vs Meross LAN?

I've been using the Meross LAN HA add-on along with you custom pairer Android app. Recently I've having a lot of issues with my devices going unavailable. I need to find a more reliable solution and wonder what the difference is with your add-on? It seems like the one I've been using has been highlighted more but if I can't use my devices reliably I don't care which add-on is the popular choice.

[Info request] Can i update MTS200 last Firmware?

Hi Alberto!

Thank you for your excellent work. I've purchased several MTS200 devices and require a complete local integration.

I've set up my Home Assistant server with the ha-meross-local-broker addon and the meross-homeassistant custom component (version 1.2.8 for local compatibility). Additionally, I've installed the Meross Custom Pairer App on my phone.

I'm currently awaiting the arrival of the device for the final step, but I do have a few questions:

  1. Can I update the firmware on the MTS200 solely through the official app?
  2. Will the new firmware only be compatible with a new server setup, or can it connect with the current local server version?

I'm concerned that if I update the firmware using the official app, I won't be able to connect to the custom app and the local server.

P.S. i have read the update is necessary for the 0.1° step on the temp setup

Thank you very much!

Roberto

Pairing fails when providing custom userid and key

Hello,

I am trying to switch from meross app (and cloud) to a local integration. When trying to pair a smartplug mss310 via custom pairer app, it does not pair when providing custom userid and key. If I do not provide it, the pairing works.

What I am doing wrong ?

Thanks for any help!

Possible to run this standalone to HA

Hi,

Thanks for the work on this, I am looking forward to giving it a go. I have my HA installed manually, so can't install it using the addon. I have been trying to get it to work via docker, however I seem to have come accross quite a few issues. Is this something that is possible? Or am I trying in vain?

Thanks again

Devices dont reconnect

On restarting the modem the devices dont automatically reconnect to the broker/wifi. I need to switch off the devices after a modem restart to enable them to reconnect. The problem with this is, I am using devices to monitor energy of the server rack so I cant switch off my entire network everytime.

Unable to launch the addon with docker locally

Good morning,

Being a Home Assistant user under Docker, I would like to use your addon in standalone mode with Docker. I used your files: https://github.com/albertogeniola/ha-meross-local-broker/tree/main/.local_debug

I correctly executed: build_addon_locally.sh = OK
I then wanted to run: run_addon_locally.sh = KO

However I have the following error:

WARNING: The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested
s6-rc: info: service s6rc-oneshot-runner: starting
s6-rc: info: service s6rc-oneshot-runner successfully started
s6-rc: info: service fix-attrs: starting
fix-attrs: info: applying /etc/fix-attrs.d/50-mosquitto
s6-chown: fatal: unable to chown /etc/mosquitto/certs/ca.conf
server.conf: No such file or directory
fix-attrs: warning: fix-attrs is deprecated, please fix volume permissions in your container manager instead
fix-attrs: warning: some fix files failed to apply
s6-rc: warning: unable to start service fix-attrs: command exited 1
/run/s6/basedir/scripts/rc.init: warning: s6-rc failed to properly bring all the services up! Check your logs (in /run/uncaught-logs/current if you have in-container logging) for more information.
/run/s6/basedir/scripts/rc.init: fatal: stopping the container.
s6-rc: info: service s6rc-oneshot-runner: stopping
s6-rc: info: service s6rc-oneshot-runner successfully stopped

Looks like it can't find "server.conf".

Have you encountered this problem?

Thank you so much !

Pagination Errors

I've got over 15 devices (default pagination), but unfortunately cannot see more once paired. The data is there in the JSON response, but missing from the table. Comparing the source code here and the example here, it looks like the paginator needs to reside outside of the <table> element to function properly.

mss310 plug switch working but not reporting sensor values (power, energy, voltage, current)

I have 4 mss310 configured. Previously using them with merosss app and cloud. Unpaired them and paired to local addon using Custom Pairer app. Went fine and flawlessly, 4 devices added and 4 are capable of switching on and off.

But I have constant 0 value for all sensors in all 4 devices.

Searching into Local Agent logs I've seen lots of "GET" Appliance.Control.ConsumptionX and Appliance.Control.Electricity messages but no "GETACK" messages in return.

local addon version 0.0.1-alpha49 and meross component version 1.2.10

Wrong time on logs and MTS100 valvles

I've started using this addon and paired all my meross devices, unfortunately time stamp on logs and the time set on MTS100 is wrong (about 2h earlier). It's not a big deal but if it could be fixed it would be awesome!

Thank you

Meross Home Assistant configured, I think?

Hello Alberto

I just now donated about 20 Euro today through Paypal. Thank you for the awesome effort you have put into making Meross devices work locally with HA! Very impressive work!

I believe that I have set it up correctly, and at this stage, using the steps below, the plugs are all showing in the devices tab in HA:

  1. HA is running on Pi 3B+
  2. Previously installed Mosquitto broker Add-On (Unsure if the Meross addons use this?? I needed it for Zigbee2MQTT anyway)
  3. Added "Meross Local Broker Addon" to the Addon store using below URL to inject it into the store:
    http://homeassistant.local:8123/_my_redirect/supervisor_add_addon_repository?repository_url=https%3A%2F%2Fgithub.com%2Falbertogeniola%2Fha-meross-local-broker
  4. Then installed and configured that addin
  5. Installed the Pairer app on android device from the Android app store
  6. Used that pairer app to successfully connect several MSS310 Meross plugs, and they showed up in the "Local Meross Broker"
  7. I already had HACS installed
  8. I added "Meross Cloud IoT" from HACS UI
  9. I installed and configured "Meross Cloud IoT" using the "Add Integration" button in Devices & Services
  10. At this point, my plugs showed up in the "Devices tab", and they are available in Node-Red

I have some questions if I may:

  1. While researching this using Google search, I also installed "Meross LAN" by @krahbb using HACS, but I am unsure if this is needed at all given the above setup? Should I uninstall that, or was it really needed? Meross Lan is at the Github URL below https://github.com/krahabb/meross_lan
  2. Initially, I set up SSL certs using the link below, but I assume this is not needed at all, and the files can be deleted?
    https://wltd.org/posts/how-to-use-meross-smart-devices-as-cheap-offline-iot
  3. I am most interested in creating a Node-Red flow to sense the amps being used by a Meross plug, and turning the plug off when the Amp draw is below a set Amperage. Do you have any Node-Red flows that do something similar that you could send me to get started with creating this flow? I am new to Node-Red and am unsure how to integrate detection and control of the Meross plugs using Node Red
  4. This is less important, but when the plugs were connected to the Meross cloud, and using the Meross android app, there was a way to set a plug to turn off after x minutes whenever it is turned on. I am assuming that this was something that is not done in the Android app? It is not important if I can control it from Node-Red and HA.
  5. I am happy to help out with testing, and maybe coding if that helps?

Again, huge thanks for your efforts on this.

Edit: I can confirm that I can see the on/off status of the plugs in the HA dashboard, and can turn them on/off from there. But I cannot see the Volts, amps, or watts in there, they are all 0 no matter what I have plugged in. Is this something I have to do more configuration for?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.