Integracion Meross MOD150 en Homey: driver defectuoso y solucion mediante HomeyScript

0 Replies, 23 Views

Portal Tutoriales Homey e Ideas
Os pongo en situación
Hace unos días adquirí un humidificador inteligente Meross MOD150 con la intención de integrarlo en mi Homey Pro y automatizar su funcionamiento mediante Flows.

Sobre el papel, la integración parecía sencilla. Existe una aplicación de Meross disponible para Homey y el dispositivo era detectado correctamente durante el proceso de emparejamiento.
Sin embargo, una vez añadido, comenzaron a aparecer comportamientos extraños que impedían su uso normal y hacían imposible crear automatizaciones fiables.

[Imagen: merosshumificador-homeydomotica.png]

En este artículo voy a documentar todo el proceso de diagnóstico, las pruebas realizadas y la solución final encontrada.



El dispositivo:
Marca:  Meross
Modelo: MOD150
Tipo: Humidificador inteligente WiFi
Compatibilidad anunciada:
  - Meross App
  - Apple HomeKit
  - Amazon Alexa
  - Google Home



Primer fallo: los controles no coincidían con el comportamiento real
Tras instalar el humidificador mediante la aplicación comunitaria de Meross para Homey, el dispositivo era detectado correctamente.
Sin embargo, los controles mostraban comportamientos incoherentes.

Al pulsar los botones desde Homey se observaba una secuencia muy extraña:

Estado mostrado en Homey
- Apagado
- Bajo
- Alto

Estado real del humidificador
- Bajo
- Alto
- Apagado

Es decir, cada pulsación desplazaba el estado una posición respecto a lo que indicaba la interfaz.




Segundo problema: imposibilidad de crear Flows útiles
Aunque Homey mostraba controles básicos para encender y apagar el dispositivo, no aparecían tarjetas para seleccionar las distintas velocidades de funcionamiento.

Esto impedía crear automatizaciones sencillas como:
- Encender durante 30 minutos.
- Activar al llegar a casa.
- Encender al abrir una puerta.
- Programar horarios de funcionamiento.

Y sobre todo, lo peor, sabía que el estado alta, apagaba el humidificador, pero como no existían tarjetas en los flows para cambiar los estados, no lo podía apagar nunca. Porque si los estados si se hubieran podido cambiar mediante tarjetas en los flows, pues de una manera "cochina" pero podría haberlo manejado

[Imagen: merosshumificador-homeydomotica1.png]


Intento alternativo mediante HomeKit

Como el MOD150 es compatible con Apple HomeKit, se intentó evitar la integración Meross y utilizar HomeKit Controller.
Las pruebas realizadas fueron:


1. Añadir el humidificador a HomeKit.
2. Verificar funcionamiento.
3. Eliminar el accesorio de HomeKit.
4. Buscarlo desde HomeKit Controller.

Resultado:
El dispositivo nunca fue descubierto por Homey.


Investigación mediante Homey Developer Tools
La clave para entender el problema llegó utilizando:
https://tools.developer.homey.app

[Imagen: merosshumificador-homeydomotica2.png]

Dentro de las capacidades del dispositivo aparecía:

```text
Class: humidifier
Driver: com.meross:diffuser
```

Esto ya resultaba sospechoso.
Aunque el dispositivo era un humidificador, estaba utilizando un driver denominado "diffuser".


Descubrimiento de la capacidad oculta
Entre las capacidades expuestas apareció:

```text
spray_mode
```

con tres posibles valores:
```text
off
small
large
```

A primera vista parecía lógico pensar:
```text
off  = apagado
small = potencia baja
large = potencia alta
```

Pero las pruebas demostraron que no era así.


Pruebas reales realizadas
spray_mode = off
Resultado:
El humidificador se encendía en potencia baja.

spray_mode = small
Resultado:
El humidificador cambiaba a potencia alta.

spray_mode = large
Resultado:
El humidificador se apagaba completamente.




Mapeado real descubierto
Tras numerosas pruebas descubrí el siguiente comportamiento real:

| Valor interno | Estado real  |
| ------------- | ------------- |
| off          | Potencia baja |
| small        | Potencia alta |
| large        | Apagado      |

Este comportamiento es completamente distinto a lo que cualquier esperaríamos.




Comportamiento de las tarjetas de Flow

Las tarjetas estándar disponibles eran:
* Encender
* Apagar
* Encender o apagar

Sin embargo, utilizaban una capacidad incorrecta.





Solución encontrada

La solución consistió en ignorar completamente las tarjetas estándar del dispositivo y controlar directamente la capacidad interna mediante HomeyScript.

Script OFF

```javascript
const device = await Homey.devices.getDevice({
  id: 'ID_DEL_DISPOSITIVO'
});

await device.setCapabilityValue('spray_mode', 'large');
```

Script LOW

```javascript
const device = await Homey.devices.getDevice({
  id: 'ID_DEL_DISPOSITIVO'
});

await device.setCapabilityValue('spray_mode', 'off');
```

Script HIGH

```javascript
const device = await Homey.devices.getDevice({
  id: 'ID_DEL_DISPOSITIVO'
});

await device.setCapabilityValue('spray_mode', 'small');
```

    [Imagen: merosshumificador-homeydomotica3.png]




Resultado final

Una vez creados los scripts, el humidificador pudo integrarse correctamente en Homey.

Ahora es posible:

* Encender al llegar a casa.
* Activar mediante sensores de puerta.
* Programar horarios.
* Apagar automáticamente tras un tiempo determinado.
* Integrarlo en Advanced Flows.

Todo ello sin depender del comportamiento erróneo del driver de Meross.

[Imagen: merosshumificador-homeydomotica4.png]




Conclusiones

El Meross MOD150 puede integrarse en Homey Pro, pero la implementación actual del driver presenta errores importantes en el mapeado de estados.

Aunque la interfaz estándar resulta poco fiable, el dispositivo expone internamente la capacidad `spray_mode`, lo que permite recuperar el control total mediante HomeyScript.

Para cualquiera que observe comportamientos extraños con este modelo, la recomendación es utilizar scripts personalizados y evitar las acciones estándar de encendido y apagado proporcionadas por la integración actual.

¿espero que le haya servido de alguien todo este rollo?
(Última modificación: 21-06-2026, 11:33 AM por Toni.)



Usuarios navegando en este tema: 1 invitado(s)