AI Store에서 AI코딩으로 만들어진 앱을 만나보세요!
지금 바로 방문하기

초보자가 자주 하는 ESP32 프로젝트 실수 5가지 및 방지 방법

카테고리

프로그래밍/소프트웨어 개발

서브카테고리

개발 툴

대상자

초보자 및 중급자(하드웨어 개발, 임베디드 시스템 분야)

핵심 요약

  • GPIO 핀 사용 규칙 무시: GPIO12와 같은 핀은 HIGH로 설정 시 부팅 모드에 락킹됨. 안전한 핀(예: 2, 4, 5 등) 사용 권장
  • 전원 공급 불충분: Wi-Fi/Bluetooth 사용 시 5V/2A 어댑터 또는 470μF 이상의 커패시터 사용
  • 복잡한 코드 구조: FreeRTOS 대신 delay(), millis()기본 함수부터 시작
  • 디버깅 기술 부족: Serial.print()를 통해 코드 조각별 테스트 수행
  • 보안 취약점: Wi-Fi 인증 정보는 .gitignore에 포함된 secrets.h 파일로 관리

섹션별 세부 요약

1. 핀 사용 규칙 무시

  • ESP32의 GPIO는 입력 전용, 부팅 시 사용, 부팅 락킹 핀 등 다양한 제한이 있음
  • GPIO12가 HIGH로 설정 시 부팅 모드 고정
  • 안전한 핀 목록: 2, 4, 5, 18, 19, 21, 22, 23 등 사용 권장

2. 전원 공급 문제

  • USB 포트는 500mA 미만으로 ESP32의 최대 요구 전력(최대 500mA) 충족 못함
  • Wi-Fi/Bluetooth 사용 시 전압 하강 발생 가능
  • 해결책: 5V/2A 어댑터 또는 470μF 커패시터 사용

3. 코드 복잡성 과도

  • FreeRTOS, 멀티태스킹 사용 시 기초 개념(Serial Monitor, delay()) 미스터리
  • 초보자 전략: delay()로 시작 → millis() 활용 → 비동기 처리로 이동

4. 디버깅 기술 부족

  • 코드 업로드 후 즉시 실행 시도 → 오류 발생 시 추측
  • 효율적인 디버깅: Serial.print() 사용, 코드 조각별 테스트, PlatformIO/Visual Studio Code 도구 활용

5. 보안 취약점

  • 코드에 SSID, API 키 직접 입력 → GitHub 등 공개 시 보안 위험
  • 대안: .gitignore에 포함된 secrets.h 파일 사용 또는 EEPROM 기반 설정
  • 추가 보안: Wi-Fi 설정을 위한 캡티브 포털 생성 권장

결론

  • GPIO 핀 사용 규칙 확인, 전원 안정화, 기본 함수부터 학습, Serial.print() 활용, secrets.h 파일 사용 등 실무 적용 시 주의사항을 체크리스트로 활용하세요.