# ESP-IDF Component

Published articles for ESP-IDF Component.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Connect an ESP device and iPhone directly using Wi-Fi Aware

DevFeed: [Connect an ESP device and iPhone directly using Wi-Fi Aware](<https://devfeed.tech/articles/connect-esp-with-an-iphone-directly-using-wi-fi-aware-the-new-cross-platform-p2p-standard-13793.md>)

Original publisher: [Read original article](<https://developer.espressif.com/blog/2026/08/wifi-aware-esp-to-iphone/>)

Author: John Lee

Published: 2026-08-25T00:00:00Z

Content type: tutorial

Language: en

Sources: [Blog on Developer Portal](<https://devfeed.tech/sources/blog-on-developer-portal.md>)

Topics: [Wi-Fi](<https://devfeed.tech/topics/wi-fi.md>), [iOS](<https://devfeed.tech/topics/ios.md>), [iphone](<https://devfeed.tech/topics/iphone.md>), [cross-platform](<https://devfeed.tech/topics/cross-platform.md>), [P2P](<https://devfeed.tech/topics/p2p.md>), [Internet of things](<https://devfeed.tech/topics/iot.md>), [networking](<https://devfeed.tech/topics/networking.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [app](<https://devfeed.tech/tags/app.md>), [blog](<https://devfeed.tech/tags/blog.md>), [cross-platform](<https://devfeed.tech/tags/cross-platform.md>), [esp-idf](<https://devfeed.tech/tags/esp-idf.md>), [esp-idf-component](<https://devfeed.tech/tags/esp-idf-component.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [ios](<https://devfeed.tech/tags/ios.md>), [iot](<https://devfeed.tech/tags/iot.md>), [iphone](<https://devfeed.tech/tags/iphone.md>), [ipv6](<https://devfeed.tech/tags/ipv6.md>), [p2p](<https://devfeed.tech/tags/p2p.md>), [pairing](<https://devfeed.tech/tags/pairing.md>), [practitioner](<https://devfeed.tech/tags/practitioner.md>), [security](<https://devfeed.tech/tags/security.md>), [wi-fi](<https://devfeed.tech/tags/wi-fi.md>), [wi-fi-aware](<https://devfeed.tech/tags/wi-fi-aware.md>)

### AI overview

This tutorial explains how to connect an ESP device directly to an iPhone using Wi-Fi Aware. It describes service discovery, mandatory six-digit PIN pairing, and an encrypted IPv6 data link without an access point, DHCP server, or internet connection. On supported devices running iOS 26 or iPadOS 26, the connection can operate concurrently with normal Wi-Fi connectivity.

### Source excerpt

iOS 26 brings Wi-Fi Aware™ support on iPhone 12 and later, enabling compatible devices to securely discover, pair, and communicate directly. This requires no Access Point and does not affect iPhone's network connectivity over Wi-Fi. This article walks through the steps to set up an ESP device and an iPhone so they can pair and connect using Wi-Fi Aware.

## Introducing ESP-IDF button component

DevFeed: [Introducing ESP-IDF button component](<https://devfeed.tech/articles/introducing-esp-idf-button-component-13748.md>)

Original publisher: [Read original article](<https://developer.espressif.com/blog/2026/02/component-introduction-button/>)

Author: John Lee

Published: 2026-02-18T00:00:00Z

Content type: tutorial

Language: en

Sources: [Blog on Developer Portal](<https://devfeed.tech/sources/blog-on-developer-portal.md>)

Topics: [ESP-IDF](<https://devfeed.tech/topics/esp-idf.md>), [Embedded Systems](<https://devfeed.tech/topics/embedded-systems.md>), [ESP32](<https://devfeed.tech/topics/esp32.md>), [Embedded Software Dev](<https://devfeed.tech/topics/embedded-software-dev.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [adc](<https://devfeed.tech/tags/adc.md>), [blog](<https://devfeed.tech/tags/blog.md>), [callback](<https://devfeed.tech/tags/callback.md>), [community-software](<https://devfeed.tech/tags/community-software.md>), [embedded](<https://devfeed.tech/tags/embedded.md>), [embedded-systems](<https://devfeed.tech/tags/embedded-systems.md>), [esp-idf](<https://devfeed.tech/tags/esp-idf.md>), [esp-idf-component](<https://devfeed.tech/tags/esp-idf-component.md>), [esp32](<https://devfeed.tech/tags/esp32.md>), [examples](<https://devfeed.tech/tags/examples.md>), [gpio](<https://devfeed.tech/tags/gpio.md>), [home-automation](<https://devfeed.tech/tags/home-automation.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [iot](<https://devfeed.tech/tags/iot.md>), [practitioner](<https://devfeed.tech/tags/practitioner.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>), [wi-fi](<https://devfeed.tech/tags/wi-fi.md>)

### AI overview

This tutorial introduces the ESP-IDF button component and shows how to handle physical buttons in ESP32 projects. It covers GPIO buttons, ADC button matrices, event detection, software debouncing, callbacks, thread safety, low-power support, and a basic GPIO example.

### Source excerpt

Learn how to use the ESP-IDF button component to handle GPIO buttons with event detection, debouncing, and callbacks. A step-by-step guide with practical code examples.

## Porting a library to an ESP-IDF component

DevFeed: [Porting a library to an ESP-IDF component](<https://devfeed.tech/articles/porting-a-library-to-an-esp-idf-component-13732.md>)

Original publisher: [Read original article](<https://developer.espressif.com/blog/2025/10/porting-external-library-as-component/>)

Author: John Lee

Published: 2025-10-20T00:00:00Z

Content type: tutorial

Language: en

Sources: [Blog on Developer Portal](<https://devfeed.tech/sources/blog-on-developer-portal.md>)

Topics: [ESP-IDF](<https://devfeed.tech/topics/esp-idf.md>), [Library](<https://devfeed.tech/topics/library.md>), [Testing](<https://devfeed.tech/topics/testing.md>), [ide](<https://devfeed.tech/topics/ide.md>), [Code](<https://devfeed.tech/topics/code.md>), [Hardware](<https://devfeed.tech/topics/hardware.md>), [Template](<https://devfeed.tech/topics/template.md>), [GitHub](<https://devfeed.tech/topics/github.md>)

Tags: [app](<https://devfeed.tech/tags/app.md>), [blog](<https://devfeed.tech/tags/blog.md>), [build](<https://devfeed.tech/tags/build.md>), [build-system](<https://devfeed.tech/tags/build-system.md>), [code](<https://devfeed.tech/tags/code.md>), [component](<https://devfeed.tech/tags/component.md>), [esp-idf](<https://devfeed.tech/tags/esp-idf.md>), [esp-idf-component](<https://devfeed.tech/tags/esp-idf-component.md>), [esp-idf-extension-for-vs-code](<https://devfeed.tech/tags/esp-idf-extension-for-vs-code.md>), [esp32-c3](<https://devfeed.tech/tags/esp32-c3.md>), [esp32c3](<https://devfeed.tech/tags/esp32c3.md>), [github](<https://devfeed.tech/tags/github.md>), [hardware](<https://devfeed.tech/tags/hardware.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [porting](<https://devfeed.tech/tags/porting.md>), [repo](<https://devfeed.tech/tags/repo.md>), [testing](<https://devfeed.tech/tags/testing.md>)

### AI overview

This tutorial explains how to port an external library into a reusable ESP-IDF component. Using tinyexpr, it covers obtaining the source code, creating a test project and component, configuring the build system, resolving compatibility issues, and testing on an ESP32-C3 board.

### Source excerpt

This article shows how to port an external library into an ESP-IDF project by converting it into a reusable component. Using tinyexpr as an example, it covers obtaining the source code, creating a new project, building a component, configuring the build system, and testing on hardware.

## ESPHome 2025.10.0: Z-Wave Proxy and Arduino as an IDF component

DevFeed: [ESPHome 2025.10.0: Z-Wave Proxy and Arduino as an IDF component](<https://devfeed.tech/articles/esphome-2025-10-0-z-wave-proxy-and-arduino-as-an-idf-component-16702.md>)

Original publisher: [Read original article](<https://esphome.io/blog/2025/10/15/esphome-2025-10/>)

Author: Jesse Hills

Published: 2025-10-15T00:00:00Z

Content type: release

Language: en

Sources: [ESPHome - Smart Home Made Simple - Blog](<https://devfeed.tech/sources/esphome-smart-home-made-simple-blog.md>)

Topics: [ESP32](<https://devfeed.tech/topics/esp32.md>), [ESP-IDF](<https://devfeed.tech/topics/esp-idf.md>), [Home Assistant](<https://devfeed.tech/topics/home-assistant.md>), [Security](<https://devfeed.tech/topics/security.md>), [Architecture & Design](<https://devfeed.tech/topics/architecture-design.md>), [Ethernet](<https://devfeed.tech/topics/ethernet.md>), [Low Latency](<https://devfeed.tech/topics/low-latency.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [api-security](<https://devfeed.tech/tags/api-security.md>), [architecture](<https://devfeed.tech/tags/architecture.md>), [bridge](<https://devfeed.tech/tags/bridge.md>), [communication](<https://devfeed.tech/tags/communication.md>), [connectivity](<https://devfeed.tech/tags/connectivity.md>), [esp-idf](<https://devfeed.tech/tags/esp-idf.md>), [esp-idf-component](<https://devfeed.tech/tags/esp-idf-component.md>), [esp32](<https://devfeed.tech/tags/esp32.md>), [ethernet](<https://devfeed.tech/tags/ethernet.md>), [framework](<https://devfeed.tech/tags/framework.md>), [hardware](<https://devfeed.tech/tags/hardware.md>), [home-assistant](<https://devfeed.tech/tags/home-assistant.md>), [latency](<https://devfeed.tech/tags/latency.md>), [low-latency](<https://devfeed.tech/tags/low-latency.md>), [memory](<https://devfeed.tech/tags/memory.md>), [network](<https://devfeed.tech/tags/network.md>), [new-features](<https://devfeed.tech/tags/new-features.md>), [performance](<https://devfeed.tech/tags/performance.md>), [releases](<https://devfeed.tech/tags/releases.md>), [security](<https://devfeed.tech/tags/security.md>)

### AI overview

ESPHome 2025.10.0 adds a Z-Wave Proxy for connecting Z-Wave hardware to Z-Wave JS over Wi-Fi or Ethernet, changes ESP32 Arduino builds to use Arduino as an ESP-IDF component, and introduces a unified SPI ePaper component. The release also includes OTA and API security hardening, memory optimizations, API improvements, and new temperature sensor components.

### Source excerpt

ESPHome 2025.10.0 adds the Z-Wave Proxy component, rebuilds ESP32 Arduino builds on top of ESP-IDF, introduces a unified SPI ePaper component, and hardens OTA and API security.

## How to create an ESP-IDF component

DevFeed: [How to create an ESP-IDF component](<https://devfeed.tech/articles/how-to-create-an-esp-idf-component-13673.md>)

Original publisher: [Read original article](<https://developer.espressif.com/blog/2024/12/how-to-create-an-esp-idf-component/>)

Author: John Lee

Published: 2024-12-02T00:00:00Z

Content type: tutorial

Language: en

Sources: [Blog on Developer Portal](<https://devfeed.tech/sources/blog-on-developer-portal.md>)

Topics: [ESP-IDF](<https://devfeed.tech/topics/esp-idf.md>), [Embedded Software Dev](<https://devfeed.tech/topics/embedded-software-dev.md>), [Embedded Systems](<https://devfeed.tech/topics/embedded-systems.md>), [Development](<https://devfeed.tech/topics/development.md>), [ESP32](<https://devfeed.tech/topics/esp32.md>), [Hardware](<https://devfeed.tech/topics/hardware.md>)

Tags: [architecture](<https://devfeed.tech/tags/architecture.md>), [blog](<https://devfeed.tech/tags/blog.md>), [code](<https://devfeed.tech/tags/code.md>), [component](<https://devfeed.tech/tags/component.md>), [components](<https://devfeed.tech/tags/components.md>), [driver](<https://devfeed.tech/tags/driver.md>), [embedded](<https://devfeed.tech/tags/embedded.md>), [embedded-systems](<https://devfeed.tech/tags/embedded-systems.md>), [esp-idf](<https://devfeed.tech/tags/esp-idf.md>), [esp-idf-component](<https://devfeed.tech/tags/esp-idf-component.md>), [esp32-c3](<https://devfeed.tech/tags/esp32-c3.md>), [hardware](<https://devfeed.tech/tags/hardware.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [i2c](<https://devfeed.tech/tags/i2c.md>), [library](<https://devfeed.tech/tags/library.md>), [maintenance](<https://devfeed.tech/tags/maintenance.md>), [project](<https://devfeed.tech/tags/project.md>), [registry](<https://devfeed.tech/tags/registry.md>), [reuse](<https://devfeed.tech/tags/reuse.md>), [sensor](<https://devfeed.tech/tags/sensor.md>)

### AI overview

This tutorial explains how to create and add project components in ESP-IDF. It covers component structure, placement in an application or separate project, and an example sensor driver for an I2C device using an ESP32-C3 development board with an integrated SHTC3 sensor.

### Source excerpt

Using a monolithic architecture to develop complex applications tightly integrated with all the business logic, peripheral drivers, protocols, cloud connectivity, and so on, might sound like a nightmare. Yet, this is common in embedded systems, because it helps keep the resource overhead to the minimum. Inevitably, such approach makes collaborative development, maintenance, and reuse of code challenging to say the least.

## What's new in the ESP-IDF extension for VSCode

DevFeed: [What's new in the ESP-IDF extension for VSCode](<https://devfeed.tech/articles/what-s-new-in-the-esp-idf-extension-for-vscode-13972.md>)

Original publisher: [Read original article](<https://developer.espressif.com/blog/whats-new-in-the-esp-idf-extension-for-vscode/>)

Author: John Lee

Published: 2022-01-30T00:00:00Z

Content type: release

Language: en

Sources: [Blog on Developer Portal](<https://devfeed.tech/sources/blog-on-developer-portal.md>)

Topics: [ESP-IDF](<https://devfeed.tech/topics/esp-idf.md>), [Visual Studio Code](<https://devfeed.tech/topics/visual-studio-code.md>), [Espressif](<https://devfeed.tech/topics/espressif.md>), [Emulator](<https://devfeed.tech/topics/emulator.md>), [Extension](<https://devfeed.tech/topics/extension.md>), [qemu](<https://devfeed.tech/topics/qemu.md>)

Tags: [blog](<https://devfeed.tech/tags/blog.md>), [debug](<https://devfeed.tech/tags/debug.md>), [docker](<https://devfeed.tech/tags/docker.md>), [emulator](<https://devfeed.tech/tags/emulator.md>), [esp-idf](<https://devfeed.tech/tags/esp-idf.md>), [esp-idf-component](<https://devfeed.tech/tags/esp-idf-component.md>), [esp-idf-extension-for-vs-code](<https://devfeed.tech/tags/esp-idf-extension-for-vs-code.md>), [esp-idf-tool](<https://devfeed.tech/tags/esp-idf-tool.md>), [espressif](<https://devfeed.tech/tags/espressif.md>), [extension](<https://devfeed.tech/tags/extension.md>), [features](<https://devfeed.tech/tags/features.md>), [qemu](<https://devfeed.tech/tags/qemu.md>), [release](<https://devfeed.tech/tags/release.md>), [theia](<https://devfeed.tech/tags/theia.md>), [usability](<https://devfeed.tech/tags/usability.md>), [vs-code](<https://devfeed.tech/tags/vs-code.md>), [vscode](<https://devfeed.tech/tags/vscode.md>)

### AI overview

This release announcement describes new features in the ESP-IDF extension for Visual Studio Code, including QEMU-based ESP32 emulation, debugging and monitoring in containers, partition table editing and flashing, importing existing projects, and integration with the ESP-IDF Component registry.

### Source excerpt

Co-authored with Kondal Kolipaka The ESP-IDF extension for Visual Studio Code aims to help users to write code with Espressif chips using ESP-IDF and other frameworks. We constantly try to improve the extension usability and add features to enhance the user developing experience. The latest features we have added are: ESP-IDF QEMU integration QEMU is an open-source machine emulator commonly used to emulate operating systems and many hardware devices.