# espressif/esp-at

AT application for ESP32/ESP32-C2/ESP32-C3/ESP32-C6/ESP8266

Repository: https://github.com/espressif/esp-at
Canonical: https://ross.abutalabs.com/products/esp-at
Language: C
License: Apache-2.0
License Family: permissive
Topics: esp32, esp-idf, at, uart, sdio, spi, ethernet, wifi, ble, esp8266, esp32c3, qcloud, esp32c2, esp32c6
Last push: 2026-08-19T04:36:50+00:00

## Health v2 (maintenance only)
Score: 90/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 98, release rhythm 74, longevity 100
- inputs: {"age_days": 3521, "days_push": 14, "days_rel": 16, "gap_med": 103.5, "n_releases_24m": 9}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1272, forks 1258 (observed 2026-08-28T04:04:12.107836+00:00)

## What it is
ESP-AT is Espressif's official AT command firmware and framework that turns ESP32-series and ESP8266 SoCs into wireless connectivity add-on modules controlled by a host MCU over UART, SPI, SDIO, or Ethernet. It provides an easy-to-parse command-response protocol so resource-constrained hosts can add Wi-Fi and Bluetooth without implementing the wireless stack themselves.

## Use cases
- add wifi to a microcontroller project without writing wireless drivers
- control an esp32 module from an arduino or stm32 host using at commands
- integrate ble connectivity into an existing product via a companion chip
- use esp32 as a network coprocessor over uart or sdio
- send http or mqtt requests from a resource-constrained mcu through an esp module
- customize at commands for a proprietary host protocol
- flash and build at firmware for esp32-c3, esp32-c6, or esp8266 modules

## When to choose
- your host mcu is too resource-constrained to run a full tcp/ip or ble stack
- you want official, maintained firmware with extensive documentation and prebuilt releases
- you need rapid integration of wifi/ble into an existing product with a simple command-response interface
- you want to customize or extend the at command set for your own module

## When to avoid
- you can run your application directly on the esp32 itself and don't need a separate host
- you need fine-grained, low-latency control better served by esp-hosted or a native sdk
- your host platform has plenty of resources and a native wireless stack is simpler
- you need protocols not covered by the at command set and don't want to write custom commands

## Facets
- artifact type: framework
- maturity: active
- function: embedded, networking, middleware, sdk
- domain: iot, embedded-systems, hardware
- platform: embedded, iot, cross-platform
- tags: at-commands, esp-at, espressif, wifi, bluetooth, uart, spi, sdio, firmware, esp8266, esp32-c3, esp32-c6, esp32-c2, esp32-s2, esp32-c5, esp32-c61, wireless-module, host-controller, wireless

## Member repositories
- espressif/esp-at (main) score 90

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:12.107836+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T05:03:16.973625+00:00, confidence not recorded.
  - readme: https://github.com/espressif/esp-at (fetched 2026-08-28T04:04:12.107836+00:00, sha bea161dcf9f0)
- Data as of 2026-08-30T08:39:29.467469+00:00.
