Construye un contador con tus suscriptores de Youtube con Arduino


En este tutorial podrás aprender a hacer un contador con Arduino como el de la foto.

Contenido

Te gustaría tener un LaMetric y lo sabes

Pero no estás dispuesto a gastarte 180€, este artículo te va a gustar ya que haremos algo parecido y más barato.


Ver LaMetric en Amazon

Acerca de este proyecto

Para hacer este tutorial me he basado en el vídeo de youtube de Sr Ferrete, que a su vez partió del proyecto original de Becky Stern.

He solucionado algunos problemas con el código original como por ejemplo que las peticiones SSL fallaban y he adaptado el código para que puedas mostrar una métrica a partir de un enlace.

Limitaciones técnicas

– El contador solo permite mostrar hasta 8 dígitos numéricos, si necesitas mostrar un valor más alto aparacerá un texto error.

– El contador está limitado a números enteros, no muestra decimales, ni los redondea, por ejemplo 3.90 se mostaría como 3.

– El contador solo puede mostrar una métrica.

– El contador de suscriptores de Youtube hace peticiones directamente a los servidores de Google, no hace falta tener contratado ningún hosting.

Resumen breve

He intentado redactar este tutorial para que lo pueda seguir cualquier persona sin conocimientos de Arduino, ni de programación, si algo no se entiende me lo puedes hacer saber en twitter o en los comentarios.

Es verdad que parecen muchos pasos, pero a grosso modo hay que hacer esto:

1- Comprar materiales.

2- Instalar programas y drivers necesarios.

3- Conectar Arduino al contador.

4- Conectar Arduino a un PC.

5- Conseguir acceso a las APIs de Google.

6- Configurar el programa.

7- Compilar código.

Requisitos

Carrito de la compra

Te dejo los enlaces de un mismo producto en varias tiendas:

Placa Arduino nano v3 ESP-12F con wifi
amazonaliexpressebay

Panel MAX7219 de 8 digitos
amazonaliexpressebay

Cable dupont de hembra a hembra
amazonaliexpressebay

Opcional

Cable micro USB, puedes usar el mismo cable para cargar el móvil si es micro USB
amazonaliexpressebay

Cable USB con interruptor macho a hembra
amazonaliexpressebay

Batería externa por si quieres tener el contador en un bonito marco
amazonaliexpressebay

Instalar programas y drivers necesarios

Los siguientes programas y drivers son multiplataforma para windows, mac y linux, aunque yo solo he podido probar con Windows me parece que puedes seguir los mismos pasos.

Arduino IDE

CP2102 USB-to-Serial Bridge

Descargar código fuente y librerías

[sociallocker id=”1842″]Descargar código[/sociallocker]

Conectar Arduino al contador MAX7219

Tan sólo hacen falta 5 cables, te recomiendo usar diferentes colores para cada conexión, abajo tienes un esquema, no hace falta que uses los mismos colores que los de la foto.

– VCC – 3v3

– GND – GND

– DOUT – D7

– LOAD – D3

– CLK – D5

Primeros pasos con Arduino

Ficheros

– Los ficheros proyectos con Arduino IDE tienen extensión .ino

– Las librerías pueden contener ficheros con extensiones .cpp y .h

Carpetas de Arduino

– Carpeta de proyectos: En mi PC está situada en la carpeta: Documentos/Arduino.

– Carpeta de librerías: En mi PC está situada en la carpeta: Documentos/Arduino/libraries.

Abrir proyecto

– Copia el proyecto contador_youtube.in en la carpeta de proyectos de Arduino.

– Abre el fichero contador_youtube.in

– Si te sale una alerta “el archivo necesita estar dentro de una carpeta de proyecto…” pulsa “Ok” para continuar.

Instalar placa en Arduino IDE

– Entra en el menú: Archivo – Preferencias

– Donde pone “Gestor de URLs Adicionales de Tarjetas” pega la siguiente URL y dale a OK:
http://arduino.esp8266.com/stable/package_esp8266com_index.json

– Entra en el menú: Herramientas – Placa – Selecciona: NodeMCU 1.0 (ESP-12E Module)

Configurar puerto de salida

– Enchufa la placa Arduino a tu PC mediante un cable Micro USB a USB.

– Selecciona el puerto en el menú: Herramientas – Puerto, aquí te debería salir COM y un número, a mi me sale COM3.

Instalar librerías

Puedes importar librerías de dos formas:

1- Sube la librería descomprimida en la carpeta de librerías, en mi caso la ruta es:
Documentos/Arduino/libraries

2- Usa el Gestor de Librerías, entra en el menú:
Programa – Incluir Librería – Administrar Bibliotecas

Y selecciona una de estas dos opciones: “Administrar bibliotecas” o “Añadir biblioteca ZIP”.

Para seguir este tutorial te recomiendo instalar las siguientes librerías:
– ArduinoJson 5.13.4 (hay una versión más nueva, pero no es compatible con este proyecto)
– arduino-youtube-api
– GeneralAPI
– libreria_MAX7219

Te recomiendo descomprimir cada una de las librerías de “librerias arduino” en la carpeta de librerías de Arduino, en mi caso:
Documentos/Arduino/libraries

Ejecutar código

1- Conecta la placa Arduino a tu ordenador con un cable micro USB a USB.

2- Pulsa el botón “Subir”, el segundo botón que aparece en la barra de herramientas que tiene una flecha apuntado a la derecha.

Puede que tarde unos minutos en compilar, si te aparece algo como “Writing at 0x00000000… (5 %)” y parpadea un led de la placa eso singifica que el código ya se está enviando a la placa, si hubiera algún problema de ejecución te saldría en la terminal de abajo en Arduino IDE.

Si en la consola sale el mensaje “Hard resetting via RTS pin…”, a partir de ese momento a los diez segundos más o menos el contador debería actualizar la información.

Configurar wifi

Modifica estas variables según los datos de tu conexión Wifi:

#define WIFI_SSID “MOVISTAR_CM1C”
#define WIFI_PASSWORD “jC1TBkuT3LQNjo2d4x55”

Configurar frecuencia de actualización

Para no hacer muchas peticiones he puesto una frecuencia de actualización cada 5 minutos, esto está definido en milisegundos con la variable API_TIMEOUT:

#define API_TIMEOUT 300000

Si quires actuallizar con más frecuencia 1 minuto en milisegundos equivale a 60000

#define API_TIMEOUT 60000

Truco: Puedes usar el conversor de google y buscar: 1 minuto a milisegundos.

Google API Console

Si quieres recoger información de un servicio de Google como puede ser Youtube, Analytics, Adsense, etc. necesitarás una cuenta de gmail para poder acceder a Google Console API.

Crear proyecto

– Visita la siguiente web Google API Console – Google Cloud Platform

– Si es la primera vez que entras, tras aceptar los términos y condiciones te debería salir a la derecha un enlace “Crear proyecto”.

– En el campo de nombre introduce un nombre claro para que luego te acuerdes para que servia esto, una vez creado el proyecto si no te lo abre automáticamente, lo seleccionas desde el menú al lado del logo.

Activar APIs

– En el menú lateral izquierdo entra en “Biblioteca”.

– Busca y habilita las APIs que quieras, puedes aprovechar el mismo proyecto para hacer varios contadores si lo deseas.
– YouTube Data API v3
– Google Analytics API
– AdSense Management API

Importante: Si quieres activar la API de adsense y tienes algún tipo de adblock, desactivalo temporalmente o no podrás activarla.

Crear clave de API

– Entra en Google API Console.

– Haz clic en: Crear credenciales – Clave de API.

– Unos segundos más tarde te debería salir la clave abajo en el apartado Claves de API.

Definir la Clave API en el proyecto Arduino

Copia la clave y pega la clave en la variable del proyecto de Arduino:

#define GOOGLE_API_KEY “BIzaSyBEGf3HS2EOMz9odS77UQU1dWnhJHTC_Us”

Youtube

Averiguar el ID de un canal de youtube

– Para que esto funcione el canal tiene que tener público el total de suscriptores.

– Para saber el ID de un canal de youtube a partir de la URL del canal, puedes usar esta web.

– También puedes hacerlo de otra forma, tienes que entrar en el canal de youtube que te interesa, por ejemplo el mío (guiño, giuño)
https://www.youtube.com/vivirenremoto

– Si entras en la pestaña “Más información”, en la barra de dirección del navegador deberías ver esto:
https://www.youtube.com/channel/UCGC8KyzN1E-nV1An61wZXwQ/about

En este caso el ID del canal de youtube es:
UCGC8KyzN1E-nV1An61wZXwQ

Definir el ID del canal de Youtube en el proyecto Arduino

– Copia y pega el ID del canal de youtube en el proyecto de Arduino:

#define YOUTUBE_CHANNEL_ID “UCGC8KyzN1E-nV1An61wZXwQ”

Ahora toca probarlo

Asegúrate de conectar la placa de Arduino a tu ordenador y el programa Arduino IDE pulsa el botón “Subir”, si no ha aparecido ningún error te debería salir el total de suscriptores en el contador, para más información revisa el apartado “Primeros pasos con Arduino – Ejecutar código”.

Quizás te pueda interesar leer

Construye un contador con las visitas en tiempo real de una web con Google Analytics y Arduino

Construye un contador para mostrar cualquier métrica con Arduino

Publicado en: DIY