소개
ESP32-C6
라는 보드를 샀는데 빌드 및 동작이 잘 되는지 확인하는 방법에 대해 알아보겠습니다.
1. 드라이버 설치하기
ESP32-C6 개발 보드를 맥북과 연결하려면 USB 드라이버가 필요할 수 있습니다. 칩셋 종류에 따라 CP210x나 CH34x 드라이버를 설치해야 합니다.
제가 산 모델에서는 CH34x 칩셋을 사용하고 있으므로 CH34x 드라이버를 설치하고 macOS를 재부팅합니다.
- CP210x 드라이버 설치:
- Silicon Labs 웹사이트로 이동합니다.
- “CP210x VCP 드라이버”를 선택하고, Mac OS용 드라이버를 다운로드하여 설치합니다.
- CH34x 드라이버 설치:
- WCH 웹사이트(중국어)에서 Mac용 CH34x 드라이버를 다운로드합니다.
- 드라이버 파일을 열고 설치합니다.
2. 개발 환경 설정하기
ESP32-C6를 프로그래밍하기 위해서는 개발 환경이 필요합니다. 가장 많이 사용되는 것은 VS Code와 ESP-IDF (Espressif IoT Development Framework)입니다.
- VS Code 설치:
- VS Code 웹사이트에서 macOS용 설치 파일을 다운로드하고 설치합니다.
- ESP-IDF 설치:
- ESP-IDF 설치 페이지로 이동합니다.
- 설치 페이지의 “macOS” 섹션을 따라 ESP-IDF 설치 스크립트를 실행합니다. 설치 스크립트를 사용하면 ESP-IDF와 관련 툴들이 자동으로 설치됩니다.
bash -c "$(curl -fsSL https://dl.espressif.com/dl/idf-install.sh)"
- 설치가 완료되면, ESP-IDF가 설치된 경로를 환경 변수에 추가합니다. 터미널에서 다음 명령어를 입력합니다.
3. ESP-IDF 플러그인 설치하기
VS Code에서 ESP32-C6를 개발하기 위해서는 ESP-IDF 플러그인을 설치해야 합니다.
- VS Code를 열고, 왼쪽의 확장 탭(사각형 아이콘)을 클릭합니다.
- “Espressif IDF”를 검색하고, “Espressif IDF” 확장을 설치합니다.
4. 기본 예제 빌드 및 플래시하기
기본 예제가 설치되지 않은 경우 아래 명령어를 통해 GitHub로부터 클론합니다ㅣ.
mkdir -p ~/esp cd ~/esp git clone --recursive https://github.com/espressif/esp-idf.git cd esp-idf ./install.sh
flash: 마이크로컨트롤러나 다른 임베디드 시스템의 플래시 메모리에 프로그램 코드를 기록하는 작업
-
- VS Code를 열고, 새 터미널을 엽니다.
esp-idf/examples/get-started/hello_world
디렉토리로 이동합니다:
cd $IDF_PATH/examples/get-started/hello_world
idf.py set-target esp32c6 idf.py build idf.py flash
아래와 같은 메시지가 나와야 정상적으로 플래시된 것입니다.
5. 시리얼 모니터 확인하기
펌웨어가 정상적으로 플래시되었는지 확인하려면, 다음 명령어로 시리얼 모니터를 실행합니다:
idf.py monitor
모니터를 종료하려면 Control + ]
를 누르면 됩니다.
6. 다른 예제 빌드 및 플래시 해보기
get-started 폴더의 다른 예제 blink 빌드 해보기
경로 cd $IDF_PATH/esp/esp-idf/examples/get-started/blink
idf.py build idf.py flash idf.py monitor
문제가 발생한 경우
Python3가 설치되지 않은 경우
brew install python@3.9
Python3을 설치했으나 관련 에러가 발생하는 경우
pip install esptool pyserial requests future setuptools
CMake 및 Ninja 빌드 도구가 설치되지 않은 경우
brew install cmake ninja dfu-util
ESP32-C6 보드 연결 및 확인
ls /dev/cu.*
이 과정을 따르면 ESP32-C6 보드와 맥북 간의 기본 설정이 완료됩니다!
🤖 이 포스트는 ChatGPT-4o 등의 생성형 AI의 도움을 받아 작성되었습니다. 🤖
0개의 댓글