1. Como usar o WebSerial com Arduino & ESP32 (C++)
USB CDC / UART
O parser automático do SerialPulse Studio reconhece pares Chave:Valor e atribui automaticamente os nomes às variáveis na legenda do gráfico. Utilize 115200 baud (ou superior) para minimizar a latência de transmissão série:
// Exemplo C++ para Arduino / ESP32 (50Hz Telemetry)
#include <Arduino.h>
unsigned long lastSampleMs = 0;
const unsigned long SAMPLE_INTERVAL_MS = 20; // 50 Hz
void setup() {
Serial.begin(115200);
while (!Serial) { delay(10); }
Serial.println("[SYS] Sensor Node Initialized @ 115200 baud");
}
void loop() {
unsigned long now = millis();
if (now - lastSampleMs >= SAMPLE_INTERVAL_MS) {
lastSampleMs = now;
float t = now / 1000.0f;
// Leituras de sensores reais ou sinais de teste
float tempC = 24.5f + 2.5f * sin(2.0f * PI * 0.5f * t);
float humPct = 55.0f + 5.0f * cos(2.0f * PI * 0.25f * t);
int adcRaw = analogRead(A0);
// Formato Key:Value (Recomendado para multi-canal)
Serial.print("Temp:");
Serial.print(tempC, 2);
Serial.print(" Hum:");
Serial.print(humPct, 2);
Serial.print(" ADC:");
Serial.println(adcRaw);
}
}