상위 질문
타임라인
채팅
관점

ESP32

위키백과, 무료 백과사전

ESP32
Remove ads

ESP32와이파이블루투스 기능을 모두 통합한 저비용, 에너지 효율적인 마이크로컨트롤러 제품군이다. 이 칩들은 듀얼 코어 및 싱글 코어 변형으로 제공되는 텐실리카 Xtensa LX6 마이크로프로세서, Xtensa LX7 듀얼 코어 프로세서 또는 단일 코어 RISC-V 마이크로프로세서를 포함한 다양한 처리 옵션을 특징으로 한다. 또한 ESP32는 내장 안테나 스위치, RF 발룬, 전력 증폭기, 저잡음 수신기, 필터 및 전력 관리 모듈과 같은 무선 데이터 통신에 필수적인 구성 요소를 통합한다.

간략 정보 제조사, 종류 ...

일반적으로 ESP32는 특정 장치용 인쇄 회로 기판에 내장되거나 다양한 GPIO 핀 및 커넥터를 포함하는 개발 키트의 일부로 제공되며, 구성은 모델 및 제조업체에 따라 달라진다. ESP32는 에스프레시프 시스템즈에서 설계했으며 TSMC의 40 nm 공정을 사용하여 제조한다.[2] 이는 ESP8266 마이크로컨트롤러의 후속 제품이다.

Remove ads

특징

Thumb
ESP32 기능 블록 다이어그램
Thumb
ESP32 다이 샷. 칩 영역 대부분은 상단 금속층의 전력 분배 네트워크로 덮여 있다.

ESP32의 특징은 다음과 같다.[3]

  • 프로세서:
    • 중앙 처리 장치: 160 또는 240 MHz에서 작동하며 최대 600 DMIPS 성능을 내는 Xtensa 듀얼 코어 (또는 싱글 코어) 32비트 LX6 마이크로프로세서
    • 초저전력 (ULP) 코프로세서
  • 메모리: 520 KiB RAM, 448 KiB ROM
  • 무선 연결:
  • 주변 장치 인터페이스:
  • 보안:
  • 전력 관리
    • 내부 저전압 강하 레귤레이터
    • RTC를 위한 개별 전력 도메인
    • 5 μA 딥 슬립 전류
    • GPIO 인터럽트, 타이머, ADC 측정, 정전식 터치 센서 인터럽트로부터 깨어나기
Remove ads

ESP32-xx 제품군

요약
관점

오리지널 ESP32가 출시된 이래로 여러 변형이 소개되고 발표되었다. 이들은 ESP32 마이크로컨트롤러 제품군을 구성한다.[8] 이 칩들은 다른 중앙 처리 장치와 기능을 가지고 있지만, 모두 동일한 SDK를 공유하고 있으며 대부분 코드 호환성이 있다. 또한 오리지널 ESP32는 수정되었다 (예: ESP32 ECO V3 참조).

ESP32

  • Xtensa 싱글/듀얼 코어 32비트 LX6 마이크로프로세서
  • 단정밀도 부동소수점 장치 (FPU) 지원
  • 와이파이: 802.11 b/g/n
  • 블루투스: v4.2 BR/EDR 및 BLE (와이파이와 라디오 공유)
  • 34 GPIO
  • 2 × 12비트 SAR ADC, 최대 18채널[9]
  • 2 × 8비트 DAC[10]

ESP32-S2

ESP32-S3

Thumb
ESP32-S3-Wroom-1 보드

ESP32-C2

  • 최대 120 MHz로 작동하는 32비트 RISC-V 싱글 코어 프로세서, RV32IMC ISA 구현[16]
  • 온칩 576 KB ROM, 272 KB SRAM (16 KB 캐시용)
  • 와이파이 2.4 GHz (IEEE 802.11b/g/n)
  • 블루투스 5 (LE)
  • 14 GPIO (QFN24)
  • SPI, UART, I2C, LED PWM 컨트롤러, General DMA 컨트롤러 (GDMA), SAR ADC, 온도 센서
  • USB 미지원

ESP32-C3

Thumb
ESP32-C3-32S가 장착된 NodeMCU 보드
  • 싱글 코어 32비트 RISC-V CPU, 최대 160 MHz[17]
  • 400 KiB SRAM, 384 KiB ROM, 및 8 KiB RTC SRAM
  • 와이파이 2.4 GHz (IEEE 802.11b/g/n)[18]
  • 블루투스 5 (LE)[18]
  • 22 (QFN32) 또는 16 (QFN32) 또는 15 (ESP8685 QFN28) GPIO[19]
  • 2 × 12비트 SAR ADC
  • ESP8266과 핀 호환
  • USB 장치

ESP32-C6

  • 고성능 32비트 RISC-V CPU, 최대 160 MHz,[20] RV32IMAC 구현
  • 저전력 32비트 RISC-V CPU, 최대 20 MHz, RV32IMAC 구현
  • 512 KiB SRAM 및 320 KiB ROM
  • IEEE 802.11ax (Wi-Fi 6) 2.4 GHz에서, 11ax 모드에서 20 MHz 대역폭, 11b/g/n 모드에서 20 또는 40 MHz 대역폭 지원
  • IEEE 802.15.4 (스레드 + 직비)
  • 블루투스 5.3 (LE)
  • 30 (QFN40) 또는 22 (QFN32) GPIO
  • USB 장치

ESP32-H2

Remove ads

발표됨

ESP32-C5

  • 싱글 코어 32비트 RISC-V CPU, 최대 240 MHz[22]
  • 저전력 32비트 RISC-V CPU, 최대 40 MHz.
  • 384 KB SRAM 및 320 KB ROM
  • IEEE 802.11ax (Wi-Fi 6) 2.4 및 5 GHz에서, 11ax 모드에서 20 MHz 대역폭, 11b/g/n 모드에서 20 또는 40 MHz 대역폭 지원
  • IEEE 802.15.4 (스레드 + 직비)[23]
  • 블루투스 5 (LE)
  • 20개 이상 GPIO

ESP32-P4

  • 고성능 듀얼 코어 32비트 RISC-V CPU, 최대 400 MHz
    • RV32IMAFC_Zicsr_Zifencei 및 사용자 지정 AI/벡터 명령어 구현
    • 단정밀도 부동소수점 장치 (FPU) 지원
  • 저성능 싱글 코어 32비트 RISC-V CPU, 최대 40 MHz
    • RV32IMAC_Zicsr_Zifencei ISA 확장 구현
  • 고성능 코어 시스템에 768 KiB SRAM
  • 고성능 코어 시스템에 8 KiB TCM
  • 저전력 서브시스템에 32 KiB SRAM
  • PSRAM 지원
  • H.264를 포함한 다양한 미디어 인코딩 프로토콜을 위한 통합 하드웨어 가속기
  • 와이파이 또는 블루투스 없음
  • 50개 이상 GPIO[24]

QFN 패키지 칩 및 모듈

요약
관점

ESP32는 49개의 패드를 가진 다양한 크기의 QFN 패키지에 담겨 있다. 구체적으로는 측면에 48개의 연결 패드와 하단에 하나의 큰 열 패드 (접지 연결)가 있다.

ESP32 시스템 온 칩 집적회로는 6 mm × 6 mm 및 5 mm × 5 mm 크기의 QFN 패키지에 담겨 있다.

자세한 정보 시리즈, 식별자 ...

2020년, ESP32-D0WDQ6 및 ESP32-D0WD 칩은 V3 버전 (ESP32 ECO V3)이 출시되어 일부 버그를 수정하고[25] 이전 버전보다 개선되었다.

모듈

ESP32 PICO system in package 모듈은 ESP32 실리콘 칩, 크리스탈 발진기, 플래시 메모리 칩, 필터 커패시터 및 RF 매칭 링크를 단일 7 mm × 7 mm 크기의 QFN 패키지에 결합한다.

처음 출시된 PICO는 ESP32-PICO-D4로, 240MHz의 듀얼 CPU, 4MiB 내장 플래시, 40MHz 발진기 및 34개의 GPIO를 갖추고 있다.[26]

이후 2020년에 ESP32 ECO V3 웨이퍼를 기반으로 하는 ESP32-PICO-V3 및 ESP32-PICO-V3-02 모듈이 출시되었다.[27][28]

2022년에는 USB OTG 및 내부 PSRAM이 포함된 ESP32-S3-PICO-1 모듈이 출시되었다.[29]

자세한 정보 식별자, 프로세서 코어 ...
Remove ads

인쇄 회로 기판

요약
관점

표면 실장 모듈 보드

ESP32 기반 표면 실장 인쇄 회로 기판 모듈은 ESP32 SoC를 직접 포함하며 다른 회로 기판에 쉽게 통합할 수 있도록 설계되었다. 아래 나열된 모듈의 PCB 트레이스 안테나에는 구불구불한 역F형 안테나 디자인이 사용된다. 플래시 메모리 외에도 일부 모듈에는 슈도정적 RAM (pSRAM)이 포함된다.

자세한 정보 공급업체, 이름 ...

개발 및 기타 보드

Thumb
SparkFun Thing Plus  ESP32 WROOM
Thumb
ESP32 개발 보드, SH1106 OLED 디스플레이, 브레드보드에 USB 전력 측정기 연결

개발 및 브레이크아웃 보드는 배선을 확장하고 기능을 추가할 수 있으며, 종종 ESP32 모듈 보드를 기반으로 하여 개발 목적으로, 특히 브레드보드와 함께 사용하기 쉽도록 만들어진다.

자세한 정보 공급업체, 이름 ...

† ESP32 SoC가 개발 보드에 직접 통합됨; 모듈 보드는 사용되지 않음.

Remove ads

프로그래밍

ESP32 프로그래밍에 사용되는 프로그래밍 언어, 프레임워크, 플랫폼 및 환경:

  • ESP-IDF[73][74] – ESP32, ESP32-S, ESP32-C 및 ESP32-H 시리즈 SoC를 위한 에스프레시프의 공식 IoT 개발 프레임워크.
  • 아두이노-ESP32[75] – ESP32, ESP32-S2, ESP32-S3 및 ESP32-C3를 위한 아두이노 코어.
  • ESP32forth[76] – ESP32를 위한 FORTH 구현
  • 에스프루이노Node.js를 밀접하게 에뮬레이트하는 JavaScript SDK 및 펌웨어
  • 마이크로파이썬 (및 CircuitPython) – 마이크로컨트롤러를 위한 파이썬 3의 간결한 구현
  • Mongoose OS – 마이크로컨트롤러의 연결된 제품을 위한 운영체제; JavaScript 또는 C로 프로그래밍 가능. 에스프레시프 시스템즈[77], AWS IoT[78], Google Cloud IoT[79]에서 권장하는 플랫폼.
  • ESP32를 위한 mruby
  • ESP32를 위한
  • NodeMCULua 기반 펌웨어
  • 러스트[80][81]
  • 스위프트[82][83]
  • 공식적으로 지원되는 Espressif 통합 개발 프레임워크 (ESP-IDF) 확장 프로그램을 포함한 비주얼 스튜디오 코드[84]
  • Zerynth – ESP32를 포함한 사물인터넷 및 마이크로컨트롤러를 위한 파이썬
  • Matlab 시뮬링크
Remove ads

수용 및 사용

ESP32의 상업적, 산업적, 학문적 사용:

상업용 장치에서의 사용

  • 알리바바 그룹의 IoT LED 손목 밴드, 2017년 그룹 연례 모임 참가자들이 사용. 각 손목 밴드는 "픽셀"로 작동하며, 조율된 LED 조명 제어 명령을 수신하여 "라이브 무선" 화면을 형성할 수 있도록 한다.[85]
  • 딩톡의 M1, 생체 인식 출퇴근 기록 시스템.[86]
  • Pium, 가정용 향수 및 아로마테라피 장치.[87]
  • 하드커널의 오드로이드 고, 오드로이드 10주년을 기념하여 제작된 ESP32 기반 휴대용 게임 장치 키트.[88]
  • 플레이데이트, 패닉 Inc.틴에이지 엔지니어링이 공동 개발한 휴대용 비디오 게임 콘솔.
  • Octopus Energy Mini, ESP32-C6 기반 실시간 에너지 모니터.[89]
  • Mysa 스마트 온도 조절기, ESP32-WROOM 기반.[90]

산업 장치에서의 사용

  • TECHBASE의 Moduino X 시리즈 X1 및 X2 모듈은 산업 자동화 및 모니터링을 위한 ESP32-WROVER / ESP32-WROVER-B 기반 컴퓨터로, 디지털 입출력, 아날로그 입력 및 다양한 컴퓨터 네트워킹 인터페이스를 지원한다.[91]
  • NORVI IIOT 산업 장치는 산업 자동화 및 모니터링을 위한 ESP32-WROVER / ESP32-WROVER-B SOC를 갖추고 있으며, 디지털 입력, 아날로그 입력, 릴레이 출력 및 여러 통신 인터페이스를 제공한다. 확장 모듈로 LoRa 및 Nb-IoT를 지원한다.[92]

학문적 사용

  • ESP32 장치는 교육 환경[93] 및 학술 연구 프로젝트에 활용된다. 예를 들어, 이 장치들은 다른 전기 가전제품의 현재 소비량과 계약된 전력 용량을 고려하여 전기차 충전을 모니터링하고 제어하도록 설계된 스마트 홈 시스템을 개발하는 데 사용되었다.[94] 또한 ESP32는 저렴한 드론 제작과 같은 DIY 프로젝트에도 사용된다.[95]
Remove ads

ESP32의 문서화되지 않은 HCI 명령어

2025년 3월, Tarlogic Security의 연구원들은 ESP32 블루투스 펌웨어에서 문서화되지 않은 HCI(Host Controller Interface) 명령어를 발견했으며, 이는 그 기능과 잠재적 영향에 대한 논의를 촉발했다.[96] 이 발견은 2025년 3월 6일 RootedCON 컨퍼런스에서 Tarlogic Security 팀에 의해 발표되었다.[97]

식별된 명령어(예: Write Memory (0xFC02))는 주로 디버깅 및 테스트 목적으로 사용되는 공급업체별 HCI 명령어이다. 이러한 유형의 명령어는 개발 및 문제 해결에 도움을 주기 위해 블루투스 컨트롤러 구현에서 흔히 사용된다. 이들은 표준 HCI 명령어 세트의 일부가 아니며 일반적으로 통제된 환경에서 사용된다.[98] 처음에는 "백도어"로 묘사되었지만, 추가 설명에서는 "문서화되지 않은 디버깅 기능"으로 분류되었다. 이 명령어는 표준 블루투스 연결을 통해 원격으로 접근할 수 없지만, 개체가 장치에 물리적으로 접근하거나 HCI-UART 구성으로 작동하는 경우 상호 작용할 수 있다.

에스프레시프 시스템즈는 이 명령어에 대해 명확하게 설명하며, 이들은 디버깅을 위한 것이며 정상 작동 조건에서는 보안 위험을 초래하지 않는다고 밝혔다. 회사는 이 명령어들이 원격으로 트리거될 수 없으며 표준 블루투스 작업에서 사용되지 않는다고 강조했다. 이 명령어들은 ESP32 칩에만 존재하며, ESP32-C, ESP32-S, ESP32-H 시리즈에는 포함되어 있지 않다. 보안 커뮤니티에서 제기된 우려를 해소하기 위해 에스프레시프는 향후 ESP-IDF 버전에 이 디버깅 명령어에 대한 접근을 제한하고 공급업체별 HCI 명령어에 대한 문서화를 개선하는 업데이트를 포함할 것이라고 발표했다. 이러한 조치는 투명성을 높이고 개발자들이 사용 가능한 기능에 대해 잘 알 수 있도록 하는 것을 목표로 한다.[99]

Remove ads

같이 보기

각주

외부 링크

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads