Integración oficial de Xiaomi que incorpora dispositivos inteligentes Xiaomi IoT a Home Assistant mediante Xiaomi Cloud o una pasarela central local.
rytilahti/python-miio
Biblioteca Python y herramienta de línea de comandos miiocli para controlar dispositivos Xiaomi de hogar inteligente mediante los protocolos miIO y MIoT.
Alternativa open source a:Mi Home
- Estrellas
- 4,331
- Forks
- 601
- Issues abiertos
- 317
- Último commit
- hace 3 meses
¿Qué es?
python-miio es una biblioteca Python y una herramienta de línea de comandos complementaria, miiocli, para controlar electrodomésticos Xiaomi de hogar inteligente. Se comunica mediante los protocolos miIO y MIoT de Xiaomi, de modo que puedes consultar y controlar un dispositivo a través de la red local si conoces su dirección IP y su token.
Para los dispositivos MIoT modernos, la integración genérica de MIoT lee el archivo de especificaciones del dispositivo para enumerar sensores, ajustes y acciones, y permite cambiar ajustes o ejecutar acciones desde la línea de comandos o con código Python. Los dispositivos miIO más antiguos, como robots aspiradores, purificadores de aire, ventiladores, humidificadores y lámparas, cuentan con módulos específicos, y una utilidad DeviceFactory detecta automáticamente el modelo. Puedes obtener los tokens desde tu cuenta de Xiaomi Cloud con el comando cloud integrado.
El proyecto también incluye simuladores sencillos de miIO y MIoT que ayudan a los desarrolladores a probar código sin hardware físico. Es un proyecto comunitario sin afiliación con Xiaomi y sirve de base para las integraciones de Xiaomi de Home Assistant.
Funciones clave
- 01Controla dispositivos miIO y MIoT a través de la red local mediante la dirección IP y el token.
- 02La integración genérica de MIoT muestra el estado, los ajustes y las acciones definidos en los archivos de especificaciones del dispositivo.
- 03Incluye módulos específicos para muchos robots aspiradores, purificadores de aire, ventiladores, humidificadores, lámparas y enchufes Xiaomi.
- 04El comando miiocli permite consultar información y el estado del dispositivo, cambiar ajustes y ejecutar acciones.
- 05Obtiene tokens de dispositivos desde una cuenta de Xiaomi Cloud mediante el comando cloud.
- 06Incluye simuladores de miIO y MIoT para hacer pruebas sin hardware.
Casos de uso
- Crear scripts o automatizar dispositivos Xiaomi desde un programa Python.
- Desarrollar una integración o un panel de hogar inteligente personalizado para electrodomésticos Xiaomi.
- Probar un cliente miIO o MIoT sin tener el dispositivo físico.
- Consultar el estado del dispositivo y cambiar ajustes desde una terminal.
Inicio rápido
- 1
Instala la biblioteca desde PyPI
pip install python-miio - 2
Obtén la dirección IP y el token de tu dispositivo (por ejemplo, mediante el comando cloud)
miiocli cloud - 3
Consulta el dispositivo para conocer su modelo y el comando para controlarlo
miiocli device --ip <ip> --token <token> info
Antes de usarlo
- La compatibilidad con dispositivos MIoT modernos requiere la versión de git o una versión preliminar hasta que se publique la versión 0.6.0.
- Para controlar los dispositivos, necesitas conocer la dirección IP y el token de cada uno.
- Este es un proyecto comunitario voluntario, no afiliado a los fabricantes de los dispositivos.
- Licenciado bajo GPL-3.0, una licencia copyleft.
Temas
Preguntas frecuentes
- ¿Qué es python-miio?
- Biblioteca Python y herramienta de línea de comandos miiocli para controlar dispositivos Xiaomi de hogar inteligente mediante los protocolos miIO y MIoT. python-miio es una biblioteca Python y una herramienta de línea de comandos complementaria, miiocli, para controlar electrodomésticos Xiaomi de hogar inteligente. Se comunica mediante los protocolos miIO y MIoT de Xiaomi, de modo que puedes consultar y controlar un dispositivo a través de la red local si conoces su dirección IP y su token.
- ¿python-miio es gratuito? ¿Qué licencia tiene?
- python-miio es open source bajo la licencia GPL-3.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿python-miio sigue mantenido?
- Actualizado en los últimos 6 meses. El último commit de python-miio fue el 25 jul 2026.
- ¿Para qué puedo usar python-miio?
- Crear scripts o automatizar dispositivos Xiaomi desde un programa Python. Desarrollar una integración o un panel de hogar inteligente personalizado para electrodomésticos Xiaomi. Probar un cliente miIO o MIoT sin tener el dispositivo físico. Consultar el estado del dispositivo y cambiar ajustes desde una terminal.
- ¿Cómo se instala python-miio?
- Instala la biblioteca desde PyPI: pip install python-miio Obtén la dirección IP y el token de tu dispositivo (por ejemplo, mediante el comando cloud): miiocli cloud Consulta el dispositivo para conocer su modelo y el comando para controlarlo: miiocli device --ip <ip> --token <token> info
- ¿Dónde consigo python-miio?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/rytilahti/python-miio
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Cliente de escritorio para Windows con el que controlar dispositivos domésticos inteligentes Xiaomi Mijia, desarrollado sobre la biblioteca mijiaAPI y con interfaz gráfica, bandeja del sistema y widget de escritorio.
Una app para la barra de menús y iPhone que muestra tu hogar como un modelo 3D en tiempo real y controla sus luces y aires acondicionados mediante Smart Life, Home Assistant, Hue y Apple Home.
Plataforma de domótica de código abierto que funciona localmente y prioriza el control y la privacidad, a menudo en una Raspberry Pi o un servidor local.
Un puente que conecta dispositivos Zigbee para el hogar inteligente con MQTT y permite usarlos sin el hub o gateway del fabricante.
Plataforma autohospedada de integración de video para el hogar y NVR, con detecciones inteligentes y transmisión de cámaras a HomeKit, Google Home y Alexa.