Saludos amigos, hace ya un tiempo que estaba pensando y dándole vueltas a cómo podía monitorizar todo el consumo eléctrico de mi casa, he encontrado muchas maneras diferentes, y al final me he decantado por la más barata y sencilla.
Una vez hayáis terminado este tutorial, tendréis algo similar a esto, es mejor darle varios días o semanas para ver el potencial entero:
Owl USB CM160 Electricity Monitor Compatible with Windows 10
Como os contaba, lo más barato que he encontrado, que funciona en mi caso, es el magnífico Owl USB CM160, que podéis encontrar aquí:
Este dispositivo se compone de varias piezas:
- El medidor que se conecta mediante una pinza a la salida de electricidad de nuestro domicilio.
- La base donde se recoge toda la información de manera inalámbrica, que podemos configurar de manera sencilla, que además nos da una conexión USB.
Este sencillo aparato funciona de la siguiente manera: El medido recoge en tiempo real el consumo de electricidad que está pasando por el cable, y lo envía a la base.
Ésta base almacena la información cada minuto, y presenta esta información mediante el display, cada minuto, acumulativo del día, mes, coste, etc.
La ventaja que tiene esta base, es que se puede conectar mediante USB a nuestro PC, o server, etc. Y ya allí instalar el software para que la información se guarde en un SQLite 🙂

Antes de comprarlo, aseguraros que tenéis acceso a vuestro cuadro de luces, y que tenéis algo similar a esta imagen, ya que será aquí donde tengamos que conectar la pinza.
Esta pinza, se conecta en apenas un minuto y no requiere que hagas ningún agujero ni nada. La base, si la quieres sujetar, puedes poner un clavito en la pared y listo.
Topología de Telegraf, InfluxDB y Grafana monitorizando un SQLite
Aunque ya os he mostrado en algunas ocasiones el diagrama de cómo sería la monitorización usando Telegraf, Grafana e InfluxDB, os dejo de nuevo el diagrama, esta vez monitorizando un SQLite:
Requisitos que necesitaremos para hacer funcionar todo
Para conseguir hacer funcionar todo vamos a necesitar varios componentes, dejo la lista:
- Comprar, y configurar el Owl CM160 – Medidor de Consumo eléctrico con USB inalámbrico
- Un equipo físico, o virtual, con Microsoft Windows 10 o Server 2016+ conectado por USB a la estación
- Software de Owl CM160 – http://thermalimage.idl.owlintuition.com/downloads/OWL+USB%20Software.msi
- SQLite assemblies para poder usar Powershell (descargar el que corresponda con vuestro .NET Framework) – https://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki
- Drivers extra para Owl CM160 Medidor de Consumo eléctrico con USB inalámbrico – https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers
Una vez tenemos todo instalado, siguiente-siguiente. Estamos listos para el siguiente paso.
Configuración fina para Owl CM160 – Medidor de Consumo eléctrico con USB inalámbrico
Este dispositivo al conectarlo por USB, nos debería de mostrar un nuevo COM en nuestro Administrador de Dispositivos, en caso de que no sea así, tenéis los drivers más arriba, descargar y a volar, tendremos que ver algo similar a esto:
Para dejar la configuración fina, yo he optado por cambiarlo a COM1, de la siguiente manera, botón derecho – Propiedades – Port Settings – Advanced Settings:
Comprobación rápida de que estamos recibiendo información mediante USB
Ejecutaremos nuestro software de Owl, y nos tendrá que aparecer que está conectado, y además si nos movemos entre las pestañas podremos ver información histórica.
Si tenemos todo bien, podemos irnos al siguiente paso. ¡Importante! No tenemos que cerrar el programa nunca si queremos que la información se siga guardando en el SQLite, con lo que USB y programa siempre conectado.
Utilizar una VM Windows para este menester
Yo en mi caso no me he complicado, ¿qué VM tengo siempre arriba? Mi Controlador de Dominio, asique he conectado la base del Owl a mi ESXi, y en la VM seleccionado he añadido un Host USB:
Ya en esta VM, he instalado el software mencionado más arriba y he dejado todo fino, y el software corriendo.
Descargar y configurar el script owlCM160_Influx.ps1
Vamos a descargar el script que hará que todo esto funcione, nos descargaremos la última versión desde el repositorio de Github:
Este PowerShell, se descargará y ejecutará desde esta VM, o equipo, con el USB conectado y todo el software. Tendremos que editar los parámetros de configuración:
# System variables, on here you need to replace the next ones with your own paths, IPs, pass, etc. #By default the SystemDataSQLLitePath on mi case was C:\Program Files\System.Data.SQLite\2015\bin\System.Data.SQLite.dll $SystemDataSQLLitePath="YOURPATHTOTHESQLLITEASSEMBLY" $NumberArray="THEMINUTESYOUWANTTORETRIEVE" $InfluxDBURL="https://YOURINFLUXDBSERVER" $InfluxDBPort="8086" $InfluxDBDB="YOURINFLUXDB" $InfluxDBUser='YOURINFLUXUSER' $InfluxDBPass='YOURINFLUXPASS' | ConvertTo-SecureString -asPlainText -Force
Prestar atención a la variable NumberArray, este valor depende de cada cuanto vais a programar el script que se lance, por ejemplo si lo ponemos cada 5 minutos, aquí pondremos 5. Si lo queremos cada 60, pues 60, y así.
Si fuera algo esporádico que queréis hacer cada día, poner 1440 o algún valor mayor.
Programando el script PowerShell cada 5 minutos
Yo supongo que queréis conocer cada cinco minutos que ha pasado durante los últimos 4, para tener una monitorización prácticamente en tiempo real de vuestra electricidad, con lo que os voy a enseñar cómo crear una tarea programada cada 5 minutos:
En el nombre de la tarea programa, el que os guste más, éste es el mío:
En los triggers, seleccionaremos que queremos ejecutarla cada cinco minutos:
En las acciones, en program/script, seleccionaremos donde tenemos Powershell, por defecto podéis ver la carpeta aquí, además en arguments seleccionaremos la ruta con el script incluido, y por último en start in, seleccionaremos la carpeta:
Lo lanzamos y vemos qué sucede:
Si queremos comprobar de manera muy rápida que tenemos información ya en InfluxDB, podemos ir a Grafana Explore y buscar dentro de la tabla owl_grafana:
Dashboards de Grafana
He creado un Dashboard desde cero seleccionando las mejores peticiones a la base de datos, rematando colores, pensando que gráfica y cómo mostrarla, y además todo está automatizado de manera que encaja con nuestro entorno sin ningún problema y sin tener que editar nada de forma manual. El Dashboard lo podéis encontrar aquí, una vez importado,ya podréis ver todas las gráficas:
Importar los Dashboard de Grafana de manera sencilla
Para que no tengáis que perder horas configurando un nuevo Dashboard, e ingerir y depurar queries, os he creado ya cuatro maravillosos Dashboards con todo lo necesario para monitorizar nuestro entorno de manera muy sencilla, os quedará como la imagen que os mostré más arriba.Desde nuestro Grafana, haremos Create – Import
Seleccionaremos el nombre que queramos e introduciremos el ID: 12226, que es la ID únicas del Dashboard, o la URL:

Espero que os guste, y me gustaría dejaros la serie completa aquí, para que empecéis a jugar con los plugins que os he ido contando todos estos años:
- En busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte I (Instalando InfluxDB, Telegraf y Grafana)
- En busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte II (Instalar agente Telegraf en Nodos remotos Linux)
- En busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte III Integración con PRTG
- En busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte IV (Instalar agente Telegraf en Nodos remotos Windows)
- En busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte V (Activar inputs específicos, Red, MySQL/MariaDB, Nginx)
- En busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte VI (Monitorizando Veeam)
- En busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte VII (Monitorizar vSphere)
- En busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte VIII (Monitorizando Veeam con Enterprise Manager)
- En busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte IX (Monitorizando Zimbra Collaboration)
- En busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte X (Grafana Plugins)
- En busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte XI
- En busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte XII – Plugin nativo de Telegraf para vSphere
- En busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte XIII – Veeam Backup for Microsoft Office 365
- En busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte XIV – Veeam Availability Console
- En busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte XV – Monitorización IPMI de nuestros Hosts ESXi
- En busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte XVI – Rendimiento y seguridad avanzada de Veeam Backup for Microsoft Office 365
- En busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte XVII – Mostrando los Dashboards en dos monitores usando Raspberry Pi 4
- En busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte XVIII – Monitorizar temperatura y estado de Raspberry Pi 4
- En busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte XIX (Monitorizando Veeam con Enterprise Manager) Shell Script
- En busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte XX (Monitorizando Certificados SSL x.509)
- En busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte XXI (Monitorizando HTTP Responses)
- En busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte XXII (Monitorizando Cloudflare con Mapa)
- En busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte XXIII (Monitorizando WordPress con Jetpack RESTful API)
- En Busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte XXIV (Monitorizando de Veeam for Microsoft Azure)
- En Busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte XXV (Monitorizando Consumo Eléctrico)
- En Busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte XXVI (Monitorizando Veeam Backup for Nutanix)
- En Busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte XXVII (Monitorizando ReFS y XFS (block-cloning y reflink)
- En Busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte XXVIII (Monitorizando HPE StoreOnce)
- En Busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte XXIX (Monitorizando PiHole)
- En Busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte XXX (Monitorizando Veeam Backup for AWS)
- En Busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte XXXI (Monitorizando Unifi Protect)
- En Busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte XXXII (Monitorizando Veeam ONE – experimental)
- En Busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte XXXIII (Monitorizando NetApp ONTAP)
- En Busca del Dashboard perfecto: InfluxDB, Telegraf y Grafana – Parte XXXIV (Monitorizando Goldshell Miners – JSONv2)





Hola
Yo para medir el consumo de casa utilizo un “shelly EM” (me costó unos 50€). Es una pinza amperimétrica que se puede conectar a la red por wifi (el modelo admite 2 pinzas aunque yo solamente uso una).
Soporta MQTT por lo que levantando y configurando un brocker MQTT en el equipo que tengas encendido (en mi caso una raspberry) y hablilitando y configurando en el fichero telegraf.conf el MQTT lo tienes funcionando
Un gran blog.
Saludos
Suena genial sin duda, es igual que este sistema, pero parece mucho mas limpio, voy a ver si me hago con una. Un saludo