DadosCorp Dokumentation
Alles was Sie brauchen, um Hardware mit dem Web zu verbinden.
Uma ponte entre seu hardware e a internet. Você conecta sensores (temperatura, umidade, presença) a um ESP32 ou Arduino. O DadosCorp recebe esses dados e mostra em gráficos profissionais no navegador ou no celular. Você também pode controlar dispositivos remotamente: aperta um botão no painel e o LED acende do outro lado da cidade. Funciona com conta gratuita (5 dispositivos), sem cartão de crédito, sem instalar servidor. É só copiar o código de exemplo, colar na Arduino IDE e fazer upload. Em breve, muitas outras novidades.
Veja funcionando — exemplos interativos
Clique em Ligar LED no celular simulado abaixo. Você verá o código sendo executado e o terminal mostrando todo o ciclo de comunicação entre o dispositivo e o servidor.
Comandos — Controle remoto pelo celular
#include <DadosCorp.h> DadosCorp dc("WiFi","Senha", "DEVICE_KEY","SECRET"); // Cada dc.run() consulta comandos void loop() { dc.run(); delay(100); }
Telemetria — DHT22 enviando dados ao dashboard
#include <DadosCorp.h> #include <DHT.h> DHT dht(4, DHT22); DadosCorp dc("WiFi","Senha", "KEY","SECRET"); // Cada chave do JSON aparece no terminal void loop() { float t = dht.readTemperature(); float h = dht.readHumidity(); dc.send("{"temperatura":"+String(t) +","umidade":"+String(h)+"}"); dc.run(); delay(10000); }
Dashboard personalizado — Gráficos em tempo real
#include <DadosCorp.h> #include <DHT.h> DHT dht(4, DHT22); DadosCorp dc("WiFi","Senha", "KEY","SECRET"); // Cada chave vira um widget no dashboard void loop() { float t = dht.readTemperature(); float h = dht.readHumidity(); dc.send("{"temperatura":"+String(t) +","umidade":"+String(h)+"}"); dc.run(); delay(10000); }
Início rápido — Instale a biblioteca
- Öffnen Sie die Arduino IDE und gehen Sie zu Werkzeuge → Bibliotheksverwaltung (oder Sketch → Bibliothek einbinden → Bibliotheksverwaltung)
- Suchen Sie nach DadosCorp oder DadosCorpCore
- Klicken Sie auf Installieren bei der gewünschten Bibliothek
- Fertig! Verwenden Sie
#include <DadosCorp.h>oder#include <DadosCorpCore.h>
Hinweis: Halten Sie Ihre Arduino IDE aktuell (Version 2.x). Ältere Versionen zeigen möglicherweise nicht die neuesten Bibliotheken an.
Manueller Download (.zip)
Alternativ laden Sie die .zip herunter und installieren sie über Sketch → Bibliothek einbinden → .ZIP-Bibliothek hinzufügen...:
GitHub
Crie sua conta
- Acesse dadoscorp.com.br/cadastro e preencha nome, e-mail e senha.
- Confirme seu e-mail (verifique a caixa de spam). O link expira em 1 hora.
- Faça login em dadoscorp.com.br/login.
- No painel, clique em Novo Projeto e dê um nome.
- Dentro do projeto, clique em Novo Dispositivo. Dê um nome (ex: "Sensor Estufa").
- Copie DEVICE_KEY e SECRET_KEY — aparecem uma única vez. Guarde com segurança.
- Cole essas credenciais no código de exemplo e faça upload para o ESP32.
- Pronto! Seu dispositivo aparece no painel com gráficos automáticos.
Exemplos de código — copie e cole
HMAC é um cadeado digital. Seu ESP32 tem uma chave secreta. A cada mensagem, ele usa essa chave para criar um "carimbo" único. O servidor confere se o carimbo é legítimo. Ninguém no meio do caminho consegue forjar. Você não precisa entender criptografia — a biblioteca faz tudo.
Telemetria são os dados que o sensor envia (temperatura, umidade). É como se o dispositivo mandasse mensagens de texto para o servidor.
Comandos são o contrário: você manda uma mensagem do painel para o dispositivo dizendo "acenda o LED". Ele recebe, executa e confirma.
JSON é o formato das mensagens. Pares nome:valor entre chaves.
{"temperatura":23.5} significa temperatura é 23.5. Simples assim.
Enviar telemetria (Arduino / ESP32)
Após instalar a biblioteca, abra Arquivo → Exemplos → DadosCorp → Minimo na Arduino IDE:
#include <DadosCorp.h>
DadosCorp dc("NOME_DA_REDE", "SENHA_WIFI", "DEVICE_KEY", "SECRET_KEY");
void setup() {
dc.addVariable("temperatura", "float", "Temperatura em Celsius");
dc.addVariable("umidade", "float", "Umidade relativa do ar");
dc.begin(); // conecta WiFi, registra metadados, sincroniza estado
}
void loop() {
dc.send("{\"temperatura\":23.5, \"umidade\":68}");
dc.run(); // verifica comandos pendentes
delay(10000);
}
O que cada bloco faz
| Bloco | Explicação |
|---|---|
DadosCorp dc(...) | Cria o cliente. Parâmetros: nome da rede WiFi, senha, Device Key e Secret Key (do painel). |
dc.addVariable(...) | Declara o que o dispositivo envia. O painel cria gráficos automaticamente. Parâmetros: nome, tipo (float/int/string), descrição. |
dc.begin() | Inicia tudo: conecta WiFi, envia metadados, sincroniza último estado. Só chama no setup(). |
dc.send(json) | Envia telemetria. Cada chave do JSON vira uma linha no gráfico. HMAC incluso automaticamente. |
dc.run() | Verifica se há comandos pendentes do painel. Chame sempre no loop(). |
delay(10000) | Aguarda 10 segundos. Conta gratuita: 1 envio a cada 10s. |
Receber comandos (Arduino / ESP32)
Abra Arquivo → Exemplos → DadosCorp → Comandos_LED:
#include <DadosCorp.h>
DadosCorp dc("NOME_DA_REDE", "SENHA_WIFI", "DEVICE_KEY", "SECRET_KEY");
void setup() {
pinMode(LED_PIN, OUTPUT);
dc.addCommand("led", "Liga/Desliga o LED");
dc.onCommand([](const char* action, int value, uint32_t cmdId) {
if (strcmp(action, "led") == 0) {
digitalWrite(LED_PIN, value ? HIGH : LOW);
}
dc.ack(cmdId, true); // confirma ao servidor
});
dc.begin();
}
void loop() {
dc.run();
delay(100);
}
O que cada bloco faz
| Bloco | Explicação |
|---|---|
dc.addCommand(...) | Registra um comando que o dispositivo aceita. Nome + descrição. O painel cria um botão automaticamente. |
dc.onCommand(...) | Callback chamado quando um comando chega. action = nome do comando, value = 0 ou 1, cmdId = ID único. |
dc.ack(cmdId, true) | Confirma que o comando foi executado. false se falhou. O painel mostra o status. |
Biblioteca universal — DadosCorpCore
Para microcontroladores sem WiFi (STM32, Teensy, Arduino Uno). Você fornece o WiFi, ela fornece o HMAC:
#include <DadosCorpCore.h>
DadosCorpCore dc("DEVICE_KEY", "SECRET_KEY");
String body = "{\"temperatura\":23.5}";
String authHeader = dc.authHeader(body, String(millis()));
// Use authHeader no header Authorization do seu HTTP client
Referência completa
📊 Telemetria
Tutorial DHT22, gráficos em tempo real, Arduino e MicroPython.
⚡ Comandos
Controle remoto pelo painel ou celular. Ciclo completo.
🎨 Dashboards
Editor drag-drop, widgets, compartilhar publicamente.
📱 Dispositivos
Criar device, credenciais, vincular ao projeto.
📖 API
Endpoints, autenticação, 21 error codes em 7 idiomas.
📱 PWA
Instalar como app, ícone, botões, notificações.