← Back to site

DadosCorp Documentation

Everything you need to connect hardware to the web.

🌐
O que é DadosCorp?
O DadosCorp é a ponte entre sua placa e a internet. Você conecta um sensor de temperatura, umidade ou presença num ESP32 ou Arduino. Os números chegam na hora: no computador, no navegador ou no celular. Dá pra controlar coisas de longe também: aperta um botão no painel e o LED acende do outro lado da cidade. Funciona com conta gratuita (2 placas), sem cartão de crédito, sem montar servidor. É copiar o código de exemplo, colar na Arduino IDE e mandar pra placa. Pronto.
Ada, the DadosCorp AI assistant

✨ Stuck at 2 a.m.? Ada is awake with you.

Ada is our AI assistant. Send a photo of the error, ask anything you want — she writes the code, explains what went wrong and fixes it, without judging you. Late at night, on a Sunday, whenever you need her.

Meet Ada → Try Ada Pro for 7 days · no credit card

Veja funcionando — exemplos interativos

Clique em Ligar LED no celular simulado abaixo. O código roda de verdade e você vê cada etapa acontecendo.

Controle remoto pelo celular

📱 Seu Celular
Meu Dispositivo
LED
ESP32_DadosCorp.ino
#include <DadosCorp.h>
DadosCorp dc("WiFi","Senha",
             "DEVICE_KEY","SECRET");

// Cada dc.run() consulta comandos
void loop() {
  dc.run();
  delay(100);
}
▶ Serial Monitor
Conectado ao WiFi...
Dispositivo registrado no DadosCorp.
Pressione Ligar LED no celular.

DHT22 — Sensor de temperatura enviando dados ao vivo

📊 Dashboard personalizado no site
[SYS]Aguardando dados do dispositivo...
DHT22_DadosCorp.ino
#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);
}
▶ Serial Monitor — ESP32
Conectado ao WiFi...
Dispositivo registrado no DadosCorp.
Enviando dados a cada 10 segundos...

Gráficos ao vivo — Monte do seu jeito

🎨 Dashboard personalizado no site
Sensor Estufa — Dashboard #1
Temperatura
Umidade
LED Status
Desligado
DHT22_DadosCorp.ino
#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);
}
▶ Serial Monitor — ESP32
Conectado ao WiFi...
Enviando dados...

Início rápido — Instale a biblioteca

  1. Open Arduino IDE and go to Tools → Manage Libraries (or Sketch → Include Library → Manage Libraries)
  2. Search for DadosCorp or DadosCorpCore
  3. Click Install on the desired library
  4. Done! Use #include <DadosCorp.h> or #include <DadosCorpCore.h>

Note: keep your Arduino IDE updated (version 2.x). Older versions may not show the latest libraries.

Manual download (.zip)

Alternatively, download the .zip and install via Sketch → Include Library → Add .ZIP Library...:

⬇ DadosCorp.zip (18 KB) ⬇ DadosCorpCore.zip (12 KB)

GitHub

🔗 github.com/edilsonmaia/DadosCorp 🔗 github.com/edilsonmaia/DadosCorpCore

Crie sua conta

  1. Acesse dadoscorp.com.br/cadastro e preencha nome, e-mail e senha.
  2. Confirme seu e-mail (verifique a caixa de spam). O link expira em 1 hora.
  3. Faça login em dadoscorp.com.br/login.
  4. No painel, clique em Novo Projeto e dê um nome.
  5. Dentro do projeto, clique em Novo Dispositivo. Dê um nome (ex: "Sensor Estufa").
  6. Copie DEVICE_KEY e SECRET_KEY — aparecem uma única vez. Guarde com segurança.
  7. Cole essas credenciais no código de exemplo e faça upload para o ESP32.
  8. Pronto! Sua placa fica online e os dados que ela enviar aparecem na tela.

Exemplos de código — copie e cole

🔒
Pra não se perder — tradução rápida:

HMAC é o cadeado digital. Sua placa tem uma chave secreta. A cada mensagem, ela usa essa chave pra criar um carimbo único. O servidor confere se o carimbo é legítimo. Ninguém no meio do caminho consegue falsificar. Você não precisa entender criptografia — a biblioteca faz tudo sozinha.

Envio de dados é o que o sensor manda: temperatura, umidade, presença. É como se a placa mandasse mensagens de texto pro servidor.

Controle remoto é o contrário: você manda uma mensagem do painel pra placa dizendo "acenda o LED". A placa recebe, executa e responde "pronto".

JSON é o formato da mensagem. Pares nome:valor entre chaves. {"temperatura":23.5} quer dizer que a temperatura é 23.5. Só isso.

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

BlocoExplicaçã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 a placa envia. Os dados aparecem na tela do dispositivo. 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 os dados. Cada valor que você mandar aparece na tela do dispositivo. A segurança (HMAC) é incluída 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

BlocoExplicação
dc.addCommand(...)Registra um comando que o dispositivo aceita. Nome + descrição. Você pode configurar botões para esses comandos no painel.
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ê faz a conexão WiFi com a sua biblioteca de rede; a DadosCorpCore cuida da autenticaçã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

✨ Ada (IA)

Assistente que escreve código, manda pra placa e resolve o que travou. Sem julgamento.

📊 Envio de dados

Tutorial DHT22, dados ao vivo, Arduino e MicroPython.

⚡ Controle remoto

Controle remoto pelo painel ou celular. Do clique ao LED aceso.

🎨 Dashboards

Monte painéis com gráficos, texto, imagens. Compartilhe publicamente.

📱 Dispositivos

Criar dispositivos, gerar chaves, vincular ao projeto.

📖 Referência técnica

Endpoints, autenticação, códigos de erro.

📱 App no celular

Instalar como app, ícone na tela, botões, notificações.