본문 바로가기

프로젝트/AWS LED Button (WIFI, AWS)

[AWS IoT 프로젝트] AWS LED Button 개발 환경

IDE는 이클립스, 툴체인은 xtensa-esp32-elf를 사용했습니다. xtensa-esp32-elf는 ESP32 제조사인 Espressif가 gcc 툴체인을 ESP32의 코어인 Xtensa LX6에 맞도록 수정한 것으로 알고 있습니다. 아두이노를 사용하는 방법도 있습니다. 아두이노 역시 xtensa-esp32-elf 툴체인을 사용하지만, 아두이노 특성상 항상 loop() 함수 안에서 모든 것을 처리해야 하기 SDK 이용이 약간 제한된다고 알고 있습니다.


그리고 맥 운영체제에서 개발했습니다. 윈도우(2015 i3 그램), 맥(2010 P8600 13인치 프로) 둘 다 사용해 봤는데, CPU 차이에도 불구하고 맥이 윈도우보다 20배 정도 빠릅니다. 이유는 Espressif가 리눅스용 gcc로만 xtensa-esp32-elf를 만들었기 때문입니다. 그래서 윈도우에서는 가상 리눅스 환경을 만들고, 1개 파일을 컴파일할 때마다 윈도우 명령어로 변환하는 과정을 반복합니다. 제 윈도우 노트북에서는 아무리 작은 프로젝트라도 컴파일하는데 약 20-30분 정도 걸렸습니다. 물론 menuconfig을 변경하지 않는 한 변경된 부분만 컴파일되기 때문에 처음에만 오래걸리지만, 이 프로젝트를 수행하면서 ESP32 제어 공부도 같이 했기때문에, menuconfig을 수정할 일이 많았습니다. 


맥에서 아래 링크 정도면 개발환경 셋팅은 될 것 같습니다.

툴체인 설치

ESP-SDK(IDF) 설치

이클립스 설정(리눅스용이지만 맥과 거의 비슷)


윈도우도 위 링크에서 찾아보면 있습니다.