목차

, , , , ,

esptool

Espressif 칩의 serial bootloader와 통신해 flash read/write, erase, image 변환을 수행하는 Python 기반 CLI 도구. ESP32/ESP8266 계열 펌웨어 플래싱과 flash 점검에 자주 사용된다.

Summary

Install

공식 문서는 최신 esptool 사용 시 Python 3.10 이상을 요구한다. Python 3.7~3.9는 v4.x, Python 2.7/3.4~3.6은 v3.3.* 계열을 사용하라고 안내한다.
# 기본 설치
pip install esptool
 
# pip 직접 실행이 안 될 때
python -m pip install esptool
pip3 install esptool
 
# 가상환경 사용
python -m venv esptoolenv
source esptoolenv/bin/activate
pip install esptool
 
# 업그레이드
pip install --upgrade esptool
 
# 모듈 형태 실행
python -m esptool version

Usage

esptool [OPTIONS] COMMAND [ARGS]...

Options

Examples

# 설치 확인
esptool version
python -m esptool version
 
# flash ID 확인
esptool --port /dev/ttyUSB0 flash-id
 
# MAC 주소 읽기
esptool --chip ESP32 --port /dev/ttyUSB0 read-mac
 
# 앱/부트로더/파티션 테이블 플래시
esptool --chip ESP32 --port /dev/ttyUSB0 --baud 460800 \
  write-flash 0x1000 bootloader.bin 0x8000 partition-table.bin 0x10000 app.bin
 
# flash 전체 덤프
esptool --port /dev/ttyUSB0 read-flash 0 0x200000 flash.bin
 
# flash 전체 erase
esptool --port /dev/ttyUSB0 erase-flash
 
# 이미지 정보 확인
esptool image-info app.bin
 
# 여러 바이너리 병합
esptool --chip ESP32 merge-bin -o merged-flash.bin \
  0x1000 bootloader.bin 0x8000 partition-table.bin 0x10000 app.bin

Troubleshooting

Compatibility

Help

esptool --help

See Also

History