Índice:
Imagine ter um dispositivo físico na sua mesa que mostra, em tempo real, quantos inscritos você tem no YouTube. Neste projeto, vamos construir exatamente isso utilizando:
- ESP8266 (com WiFi) Display OLED embutido
- API oficial do YouTube
Além de ser um projeto visualmente muito interessante, ele envolve conceitos fundamentais de eletrônica e programação embarcada, como:
- Comunicação com APIs
- Tratamento de dados em JSON
- Conexão com internet via WiFi
- Interface gráfica em display
Materiais necessários
1x Placa ESP8266 com OLED embutido (como a da imagem)
Cabo USB
Computador com Arduino IDE
Sobre a placa utilizada
A placa utilizada já possui um display OLED integrado, conectado via I2C. Os pinos utilizados internamente são:
Função GPIO
SDA 12
SCL 14
Passo 1 – Criar a API do YouTube
Para acessar o número de inscritos, utilizamos a YouTube Data API v3.
- Criar projeto no Google Cloud
- Acesse: https://console.cloud.google.com
- Clique em Selecionar projeto → Novo projeto
- Dê um nome e crie
- Ativar a API do YouTube
- Vá em APIs e Serviços → Biblioteca
- Procure por:
YouTube Data API v3 - Clique e depois em Ativar
- Criar a chave da API
- Vá em APIs e Serviços → Credenciais
- Clique em Criar credenciais
- Escolha Chave de API
- Copie a chave gerada
Passo 2 – Obter o Channel ID
Você precisa do ID do seu canal. Forma simples:
- Acesse seu canal do YouTube
- Clique com botão direito → Ver código-fonte
- Procure por: channelId
Você encontrará algo assim:
“channelId”:”UCxxxxxxxxxxxxxxxx”
Esse é o seu Channel ID
Passo 3 – Testar a API
Antes de usar no ESP8266, teste no navegador:
https://www.googleapis.com/youtube/v3/channels?part=statistics&id=SEU_CHANNEL_ID&k
ey=SUA_API_KEY
Se estiver correto, você verá:
“subscriberCount”: “12345”
Bibliotecas necessárias
No Arduino IDE, instale:
- ESP8266WiFi
- ESP8266HTTPClient
- ArduinoJson
- SSD1306Wire (ThingPulse)
Código completo
include <ESP8266WiFi.h>
include <ESP8266HTTPClient.h>
include <WiFiClientSecure.h>
include <ArduinoJson.h>
include <Wire.h>
include "SSD1306Wire.h"
// OLED embutido
SSD1306Wire display(0x3c, 12, 14);
// WiFi
const char* ssid = "SEU_WIFI";
const char* password = "SUA_SENHA";
// YouTube
String apiKey = "SUA_API_KEY";
String channelId = "SEU_CHANNEL_ID";
void mostrarOLED(String subs)
{
display.clear();
display.setTextAlignment(TEXT_ALIGN_LEFT);
display.setFont(ArialMT_Plain_10);
display.drawString(0, 0, "YouTube");
display.drawString(0, 15, "Inscritos:");
display.setFont(ArialMT_Plain_24);
display.drawString(0, 35, subs);
display.display();
}
void setup()
{
Serial.begin(115200);
display.init();
display.setI2cAutoInit(true);
display.flipScreenVertically();
display.clear();
display.drawString(0, 0, "Conectando WiFi…");
display.display();
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED)
{
delay(500);
Serial.print(".");
}
display.clear();
display.drawString(0, 0, "WiFi conectado!");
display.display();
delay(1000);
}
void loop()
{
if (WiFi.status() == WL_CONNECTED)
{
WiFiClientSecure client;
client.setInsecure();
HTTPClient http;
String url = "https://www.googleapis.com/youtube/v3/channels?part=statistics&id="
channelId + "&key=" + apiKey;
http.begin(client, url);
int httpCode = http.GET();
if (httpCode == 200)
{
String payload = http.getString();
DynamicJsonDocument doc(2048);
deserializeJson(doc, payload);
String subs = doc["items"][0]["statistics"]["subscriberCount"];
Serial.println(subs);
mostrarOLED(subs);
}
http.end();
}
delay(30000);
}
Resultado final
O display OLED mostrará:
Inscritos YouTube:
12345
Atualizando automaticamente a cada 30 segundos.
Observações importantes
- A API do YouTube pode arredondar números
- Evite muitas requisições (limite diário)
- Nunca compartilhe sua API Key publicamente
- Para projetos finais, use chave restrita
Possíveis melhorias
Você pode evoluir esse projeto adicionando:
- Animação do contador
- Alerta ao ganhar inscritos
- Relógio junto
- Dashboard com múltiplas métricas
- Caixa personalizada (produto final)
Conclusão
Esse projeto mostra como a eletrônica moderna vai muito além de circuitos básicos.
Com um microcontrolador e acesso à internet, você pode criar dispositivos inteligentes
conectados a serviços reais.
Esse é exatamente o tipo de projeto que diferencia quem apenas estuda de quem
realmente sabe fazer.
Saiba mais sobre a parceria Saravati e Sara Educação
Este “Guia de Montagem” é uma colaboração especial entre a Saravati e a Sara Educação, criado pelo Professor Felipe Rosa. Nosso objetivo é enriquecer a comunidade de entusiastas da eletrônica, IoT e automação com recursos educacionais de alta qualidade. Através dessa parceria, buscamos inspirar e capacitar criadores em seus projetos, disponibilizando esses guias em nosso blog e nas redes sociais.
