IoT

esp32-s3 보드 아두이노 IDE에서 테스트하기

검정비니 2022. 11. 2. 14:39
728x90
반응형

설명에 앞서, 여기서 사용된 환경은 MacOS  Monterey로, 다른 운영체제에서는 약간 해결법이 다를 수 있다.

 

우선, 아두이노 IDE에서 esp32-s3 보드를 사용하기 위해서는 최신 버전 esp32 보드 매니저가 있어야 한다.

Preferences 탭을 연 뒤, Additional board manager's URL에다가 다음 url을 추가해야 한다.

https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_dev_index.json

 

board manager url 추가

추가로, 컴파일 및 업로드 시에 자세한 정보를 얻기 위해 compile과 upload에 둘 다 가능하면 체크를 하는 것이 좋다.

보드 매니저 추가 후, 보드 설치 안내가 나오면 install all을 누르면 esp32 보드가 설치가 된다.

 

다음으로, Tools>board 에서 esp32>ESP32S3 Dev Module을 선택한 뒤, 아무 예제 코드나 컴파일 및 업로드를 해 보면 된다. 이 때 발생하는 주된 에러로는 아래 3가지가 경우가 있다.

 

1) esptool 실행을 위해 esptool.py 대신 바이너리 파일을 실행해서 생기는 이슈

2) eseptool.py 실행을 위한 파이썬 환경이 뭔가 잘못된 경우

3) esptool.py 실행 중 pyserial 등 필요한 파이썬 모듈이 설치가 안 되어 있어서 생기는 이슈

 

만약 발생한 에러가 다음과 같다면 esptool 바이너리의 flashing 관련 에러이다.

출처: https://openmicrolab.com/4779-2/

이 경우, 기존 esptool을 esptool.py로 다음과 같이 변경을 하면 해결이 된다.

cd /Users/USER_NAME/Library/Arduino15/packages/esp32/hardware/esp32/2.0.5

cp tools/esptool.py /Users/USER_NAME/Library/Arduino15/packages/esp32/tools/esptool_py/4.2.1

 

그 후, python --version을 실행시켰을 때 버전이 python3.6 이상이 아니라면 실행 오류가 발생할 수 있다. 만약 python --version의 결과가 python2.7 등이라면 python3.6이나 그 이상 버전을 설치한 뒤, python 기본 버전을 설치한 python3가 되도록 심볼릭 링크를 수정해 주어야 한다.

# 설치된 모든 파이썬의 위치 확인
ls -l /usr/local/bin/python*

# python3.9가 설치되었다는 가정하에, 기본 파이썬으로 파이썬 3.9를 사용하도록 심볼릭 링크 변경
ln -s -f /usr/local/bin/python3.9 /usr/local/bin/python

이에 대한 자세한 내용은 다음 링크를 참조하길 바란다.

https://minnit-develop.tistory.com/15#toc-%ED%8C%8C%EC%9D%B4%EC%8D%AC%20%EB%B2%84%EC%A0%84%20%EB%B3%80%EA%B2%BD%ED%95%98%EA%B8%B0

 

그 후, pyserial이 설치되었는지 확인하기 위해 pyserial을 다시 설치하도록 하자.

python -m pip install pyserial --user

위의 코드를 실행했을 때 "Already installed"가 나오면 이미 설치가 되어 있는 것이고, 그렇지 않다면 pyserial 모듈을 설치하게 된다.

설치가 완료되면 다시 업로드를 실행해보면 정상적으로 업로드가 될 것이다.

 

반응형