Blynk.Edgent Is Now Available as a Native ESP-IDF Component

Blynk.Edgent for ESP-IDF: BLE provisioning, network management, OTA updates, and secure MQTT for ESP32 production firmware. Available on the Espressif Component Registry.

Published

Author

Teams building connected products on ESP-IDF have typically had to build their own provisioning, OTA, and connectivity management. That changes today.

Blynk.Edgent is now available as a native ESP-IDF component on the Espressif Component Registry. One dependency adds BLE-assisted device provisioning, over-the-air firmware updates, network management, and secure MQTT connectivity to any ESP-IDF project. idf.py add-dependency "blynk/edgent^0.9.0-beta.4"

What's Included

  • BLE-assisted provisioning (Blynk.Inject). End users provision WiFi credentials from the Blynk mobile app via Bluetooth. No hardcoded SSIDs, no captive portals, no WiFi AP switching.
  • Network Manager. Up to 16 saved WiFi networks plus Ethernet. Automatic failover between connections. DHCP and static IP configuration.
  • Over-the-air firmware updates (Blynk.Air). Push firmware to individual devices or entire fleets from the Blynk console. OTA is push-only (initiated from the console); there is no automatic rollback mechanism on the device side.
  • Secure MQTT. TLS 1.2/1.3 encrypted connection to Blynk cloud by default. Standard MQTT protocol — no custom binary protocols or vendor-specific connectivity layers.
  • Ethernet support. Optional, enabled via menuconfig. Pin configuration per adapter. Example config included for LilyGO T-Internet-POE.

Cellular connectivity is planned for a future release.

Initially supported targets: ESP32, ESP32-S3, ESP32-C3, ESP32-C6. Support for ESP32-C2 and ESP32-C5 is coming soon.

Requires 4 MB flash minimum. OTA updates use a dual-bank partition table (two OTA partitions), so the device can fall back to the previous firmware if a flash fails.

What This Replaces

ESP-IDF is Espressif's production development framework. It provides direct access to Espressif's hardware capabilities, receives feature updates first, and is the standard environment for professional firmware teams. Most production ESP32 projects end up here.

Until now, Blynk.Edgent wasn't available as a native ESP-IDF component. That meant teams working in ESP-IDF had no access to Blynk.Inject (app-based device provisioning), no managed OTA through Blynk, and no network management. To use these features, a team would need to either port their project to Arduino or build the equivalent infrastructure from scratch.

Blynk.Inject is one of the most valuable features for product companies shipping connected devices. It allows an end user to unbox a device, open the Blynk app, and provision it over BLE without any technical knowledge. Building equivalent provisioning infrastructure from scratch typically takes a team months of development time. For ESP-IDF teams, that capability is now available as a single component dependency.

The ESP-IDF implementation also includes capabilities beyond other Edgent variants: BLE-assisted provisioning (rather than WiFi AP mode), support for up to 16 saved networks with automatic failover, and mixed WiFi and Ethernet connectivity. These reflect the requirements of real deployment environments where devices need to handle multiple access points, network outages, and varied connectivity options.

Setup to First Connection

The component integrates into a standard ESP-IDF development workflow. After adding the dependency, the developer configures the Blynk Template ID and Template Name through menuconfig, then builds and flashes as usual. On first boot, the device enters BLE provisioning mode automatically.

From the end user's perspective, setup is straightforward: open the Blynk app, tap to add a device, and the phone discovers it over Bluetooth. The user selects their WiFi network, credentials transfer over BLE, and the device connects to Blynk cloud. No serial console access required, no configuration files to edit.

Once connected, sensor data flows to the cloud and appears in dashboards and the native mobile app immediately. Firmware updates can be pushed remotely through the Blynk console whenever needed.

The firmware development workflow stays entirely within ESP-IDF and follows standard ESP-IDF conventions. The component handles connectivity, provisioning, OTA, and secure MQTT — the firmware code stays focused on the product's core functionality. See the example code for the complete integration.

Setup

  1. Add the component to an ESP-IDF project: idf.py add-dependency "blynk/edgent^0.9.0-beta.4"
  2. In your main.c, the key calls are edgent_init() and edgent_start(), plus subscribing to callbacks for handling incoming data. Refer to the example code for the complete setup.
  3. Configure the Blynk template: idf.py menuconfig
    Navigate to Component config → Blynk.Edgent → Application configuration. Set the Template ID and Template Name from the Blynk console.
  4. Build and flash. On first boot, the device enters provisioning mode. The Blynk app discovers the device via BLE and provisions WiFi credentials.
  5. The default board button controls provisioning state. Double-click to reconfigure while keeping existing settings. Long press for a full factory reset.

What Else Is Included

The Edgent component handles device-to-cloud connectivity. On the platform side, every Blynk project includes:

  • Native iOS and Android apps with a no-code builder for dashboards, controls, and notifications
  • Web console for fleet management, user roles, data history, and automations
  • OTA management with targeting by individual device, group, or entire fleet
  • REST API and MQTT for external integrations

The platform works the same way regardless of whether device firmware uses Arduino or ESP-IDF.

Who This Is For

  • Professional firmware teams already working in ESP-IDF. The component integrates with existing toolchains and build systems. No need to change frameworks or development environments.
  • OEMs and equipment manufacturers adding connectivity to existing products. Firmware teams working in ESP-IDF now have access to Blynk's full device management capabilities, including app-based provisioning for end users.
  • Teams moving from prototype to production. Projects validated on Arduino with Blynk carry over completely. Same dashboards, same automations, same mobile app. Only the firmware framework changes.

Getting Started

The component is available on the Espressif Component Registry. It's released under the MIT license.

Documentation: docs.blynk.io/en/blynk.edgent/overview

The free tier includes 5 devices. Paid plans scale to 1,000 devices. blynk.io/pricing.

Sign up for a newsletter
Get latest news from Blynk
Over 500,000 people already signed up our newsletter.
We never spam.
Thank you!
Your submission has been received.
Oops! Something went wrong while submitting the form.