Pulsync
Pulsync is an ESP32 IoT platform built around a non-blocking task scheduler plus real-time cloud sync, OTA updates, and remote config. Write firmware the way you’d write JavaScript — setInterval, setTimeout, event handlers — without ever blocking your main loop.
What you get
- Non-blocking scheduler — run many tasks concurrently, JavaScript-style, with no
delay()stalls. - Real-time cloud transport — MQTT for the live link (TLS to the hosted platform), HTTP(S) for enrollment and OTA.
- OTA firmware updates — signed, versioned, with rollback. Triggered from the server.
- Remote config — push key-value settings to devices; register typed callbacks.
- Zero-friction enrollment — a pairing code in firmware; the device claims a token on first boot.
Works everywhere
The same library compiles on both Arduino (via PlatformIO or the Arduino IDE) and native ESP-IDF. The same wire protocol talks to our hosted platform at pulsync.in or to a server you self-host — the device can’t tell the difference.
#include <Pulsync.h>
void setup() {
Pulsync.setWiFi("SSID", "password");
Pulsync.begin("PUL-A7K9X2");
Pulsync.setInterval([]() {
Pulsync.send("temperature", analogRead(34) * 0.1f);
}, 5000);
}
void loop() {
Pulsync.loop();
} Head to the Quick Start to flash your first device.