2021년 02월 10일
ESP32 처음사용기
아두이노 정품 보드는 아두이노IDE에 드라이버가 기본 설치되어 있어 연결만 하면 잘 된다.
다른 보드는 제조사나 유저그룹의 보드 매니져를 통해 설치를 해야 한다.

ESP8266(3,000 전후) ESP32(5,000천원 전후)차이는 가격은 1.5배정도 나는것 같다.
ESP8266, ESP32 비교 사이트
ESP32 Chip

ESP32-CAM(개중에는 usb포트가 있는것도 있다)

그런데 이런 칩들은 별도로 usb-시리얼 장치가 없어서 업로드가 단독으로 힘들다.
별도로 USB 시리얼 블록을 2-3천원에 사거나, 아두이노 우노, 나노처럼 USB시리얼이 있는것을 사용하거나 심지어 OTA(무선으로 업로드)도 가능한데 익숙하지 않으면 좀 불편하긴 하다. 개발에는 시리얼이 달린 개발용 보드가 역시 편하다.
[추가적인 보드 매니저 URLs에 추가해서 드라이버를 설치]
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_dev_index.json
이 경로는 블로그별로 다양한것 같다.
[본가]
https://dl.espressif.com/dl/package_esp32_index.json, http://arduino.esp8266.com/stable/package_esp8266com_index.json
어디서 받던 3~40mb정도 되고 몇분 걸린다.
보드매니져를 통해 "esp32"로 필터링 해서 최신 버젼을 설치한다.
나는 "ESP32 Dev Module"을 선택했다.
30pin과 38pin이 있는데 배열(?)이 좀 틀리다. 커뮤니티 글을 보니 38핀은 잘 안쓰는 메모리 관련pin이 있어 30pin이 적절하다 한다. 구매시 참고.
38PIN PINOUT

30PIN PINOUT

[시리얼 드라이버]
USB시리얼 통신을 하는데 이를 위해 드라이버를 설치해야 한다.
그런데 이건 붙어있는 칩에 따라 틀리다. "SILABS" 라는 글씨가 보인다. 너무 작아 확대경이나 핸드폰으로 찍어서 확대하던가 봐야 한다. 2104는 "SIL"이라고만 써있는거 같다.

실리콘랩스 말고 CH340C, FTDI 같은 칩은 7-800원 저렴한것 같다.
다른 보드는 제조사나 유저그룹의 보드 매니져를 통해 설치를 해야 한다.
내가 사용한 보드는 Espressif사의 듀얼코어에 통신기능이 탑재된 만능(?)칩이다. 대칭, 비대칭키 연산기능도 있어 보안/IoT에도 준비된 스펙. 여기에 USB통신을 위한 실리콘랩사의 시리얼 칩이 포함된 것이다.
아무래도 통신 기능을 활용하려면 ESP만한 칩이 없는것 같다.

ESP8266(3,000 전후) ESP32(5,000천원 전후)차이는 가격은 1.5배정도 나는것 같다.
ESP8266, ESP32 비교 사이트
ESP32 Chip
ESP32-CAM(개중에는 usb포트가 있는것도 있다)
그런데 이런 칩들은 별도로 usb-시리얼 장치가 없어서 업로드가 단독으로 힘들다.
별도로 USB 시리얼 블록을 2-3천원에 사거나, 아두이노 우노, 나노처럼 USB시리얼이 있는것을 사용하거나 심지어 OTA(무선으로 업로드)도 가능한데 익숙하지 않으면 좀 불편하긴 하다. 개발에는 시리얼이 달린 개발용 보드가 역시 편하다.
[추가적인 보드 매니저 URLs에 추가해서 드라이버를 설치]
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_dev_index.json
이 경로는 블로그별로 다양한것 같다.
[본가]
https://dl.espressif.com/dl/package_esp32_index.json, http://arduino.esp8266.com/stable/package_esp8266com_index.json
어디서 받던 3~40mb정도 되고 몇분 걸린다.
보드매니져를 통해 "esp32"로 필터링 해서 최신 버젼을 설치한다.
나는 "ESP32 Dev Module"을 선택했다.
30pin과 38pin이 있는데 배열(?)이 좀 틀리다. 커뮤니티 글을 보니 38핀은 잘 안쓰는 메모리 관련pin이 있어 30pin이 적절하다 한다. 구매시 참고.
38PIN PINOUT
30PIN PINOUT
[시리얼 드라이버]
USB시리얼 통신을 하는데 이를 위해 드라이버를 설치해야 한다.
그런데 이건 붙어있는 칩에 따라 틀리다. "SILABS" 라는 글씨가 보인다. 너무 작아 확대경이나 핸드폰으로 찍어서 확대하던가 봐야 한다. 2104는 "SIL"이라고만 써있는거 같다.
실리콘랩스 말고 CH340C, FTDI 같은 칩은 7-800원 저렴한것 같다.
Espressif 사 사진을 보면 실리콘 랩스것이 많아 호환성이 좋은가 싶긴한데.. 모두 중국칩이고 사용느낌은 별 차이는 없어 보인다.
실리콘 랩스의 CP210x 드라이버는 2102, 2104등 여러가지 있는데 210x라는거 보니 다 호환 되나보다.
CP210x USB가상시리얼 장치 (CP210x USB to UART Bridge VCP Drivers)
드라이버가 잘 설치가 된 후, ESP32를 연결하면 추가적인 시리얼 장치가 아래처럼 보여야 한다.
시리얼 포트 선택

둘다 잘 동작한다.
시리얼 장치가 보이지 않는 문제
컴파일 업로드
이부분이 문제가 되어 몇시간을 허비했다. 아두이노와 달리 프로그램 업로드때 자동 진행되지를 않았다.
맨위 사진의 "업로드 버튼"(다른 용도도 있는지는 아직 모르겠다)을 1초정도 눌러야 진행이 된다.
업로드 버튼을 누른후에 아두이노 보드는 컴파일후 업로드까지 자동으로 진행 되었다.
버튼이 따로 있다는건 온라인 업데이트를 불가능하게 하려는 보안에 대한 조치일 수 있다.
(IDE에 따라 틀린건지, 제품에 따라서인지 안눌르고도 잘된다.)
실리콘 랩스의 CP210x 드라이버는 2102, 2104등 여러가지 있는데 210x라는거 보니 다 호환 되나보다.
CP210x USB가상시리얼 장치 (CP210x USB to UART Bridge VCP Drivers)
드라이버가 잘 설치가 된 후, ESP32를 연결하면 추가적인 시리얼 장치가 아래처럼 보여야 한다.
시리얼 포트 선택
둘다 잘 동작한다.
시리얼 장치가 보이지 않는 문제
- 충전 전용 케이블 문제 :주로 microUSB에서 나왔는데 집에 굴러다니는걸 쓰다가 충전 전용인지 알게 되었다. 되도록 통신용을 구매해 사용하는게 좋다.
- usb허브문제: usb허브에 따라서 시리얼 장치가 인식 안해서 그럴수 있다. 몇개 해본결과 썬더볼트/USB-C 모니터에 달린 USB장치는 모두 안되었고 USB-C허브도 인식하는 것과 아닌것이 있었다. apple제는 되었던것 같은데 이번엔 해보지 않았다. 가급적 PC와 직접 연결하면 문제 없다.
컴파일 업로드
이부분이 문제가 되어 몇시간을 허비했다. 아두이노와 달리 프로그램 업로드때 자동 진행되지를 않았다.
맨위 사진의 "업로드 버튼"(다른 용도도 있는지는 아직 모르겠다)을 1초정도 눌러야 진행이 된다.
업로드 버튼을 누른후에 아두이노 보드는 컴파일후 업로드까지 자동으로 진행 되었다.
버튼이 따로 있다는건 온라인 업데이트를 불가능하게 하려는 보안에 대한 조치일 수 있다.
(IDE에 따라 틀린건지, 제품에 따라서인지 안눌르고도 잘된다.)
# by | 2021/02/10 09:31 | 아두이노 | 트랙백 | 덧글(0)




☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]