아두이노 나노 ESP32 블루투스 로우 에너지(BLE) 튜토리얼 DIYables 블루투스 앱
개요
이 튜토리얼은 DIYables 블루투스 앱을 사용하여 Arduino Nano ESP32에서 블루투스 로우 에너지(BLE)를 사용하는 방법을 설명합니다. 추가적인 블루투스 하드웨어가 필요 없으며, BLE가 보드에 직접 내장되어 있습니다.
Arduino Nano ESP32는 내장 BLE 지원을 포함하고 있어 Android 및 iOS의 DIYables 블루투스 앱에 직접 연결할 수 있습니다.
참고: Arduino Nano ESP32는 BLE만 지원하며 클래식 블루투스는 지원하지 않습니다. DIYables 블루투스 앱은 Android에서 BLE와 클래식 블루투스를 모두 지원하고, iOS에서는 BLE를 지원하므로 두 플랫폼 모두와 호환됩니다.

기능
- 무선 범위: 최대 10미터 거리에서 아두이노 제어
- 크로스 플랫폼: Android 및 iOS 모두 호환
- 자동 연결: BLE는 수동 페어링 없이 연결
- 풍부한 위젯 세트: 슬라이더, 조이스틱, 모니터, 플로터, 게이지, 온도, 채팅, 테이블, 로테이터 등
- 저전력: BLE는 클래식 블루투스보다 훨씬 적은 전력 소비
- 간편한 설정: 단일 라이브러리 설치로 모든 통신 처리
필요한 하드웨어
| 1 | × | 아두이노 나노 ESP32 | 쿠팡 | 아마존 | |
| 1 | × | USB 케이블 타입-A to 타입-C (USB-A PC용) | 쿠팡 | 아마존 | |
| 1 | × | USB 케이블 타입-C to 타입-C (USB-C PC용) | 아마존 | |
| 1 | × | (추천) 아두이노 나노용 스크루 터미널 확장 보드 | 쿠팡 | 아마존 | |
| 1 | × | (추천) 아두이노 나노용 브레이크아웃 확장 보드 | 쿠팡 | 아마존 | |
| 1 | × | (추천) 아두이노 나노 ESP32용 전원 분배기 | 쿠팡 | 아마존 |
공개: 이 포스팅 에 제공된 일부 링크는 아마존 제휴 링크입니다. 이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.
펌웨어 요구사항
> 권장: Arduino Nano ESP32의 WiFi 모듈 최신 펌웨어로 업데이트하세요. 참조: Arduino Nano ESP32 펌웨어 업그레이드 방법
소프트웨어 설정
빠른 시작
- Arduino Nano ESP32가 처음이신가요? Arduino Nano ESP32 시작 가이드를 참조하세요.
- USB 케이블로 Arduino Nano ESP32를 컴퓨터에 연결하세요.
- Arduino IDE를 열어주세요.
- Arduino Nano ESP32 보드와 올바른 COM 포트를 선택하세요.
보드 코어 설치
- 도구 보드 보드 매니저...를 열어주세요.
- "Arduino SAMD Boards"를 검색하세요.
- 버전 1.8.13 이상을 설치하세요.
DIYables 블루투스 라이브러리 설치
- Arduino IDE 왼쪽 사이드바에서 라이브러리 아이콘을 클릭하세요.
- "DIYables Bluetooth"를 검색하고 DIYables의 DIYables Bluetooth 라이브러리를 찾으세요.
- 설치를 클릭하세요.

- 종속성 설치 메시지가 나타나면 모두 설치를 클릭하세요 (ArduinoBLE 1.3.6 이상 포함).

모바일 앱
참고: DIYables 블루투스 앱은 Android에서 BLE와 클래식 블루투스를 모두 지원하고, iOS에서는 BLE를 지원합니다. Arduino Nano ESP32는 BLE를 사용하므로 앱은 Android와 iOS 모두 호환됩니다. BLE는 수동 페어링이 필요 없으며 스캔 후 바로 연결할 수 있습니다.
- DIYables 블루투스 앱을 실행하세요.
- 처음 실행 시 다음 권한을 허용하세요:
- 근처 기기 (Android 12+) / 블루투스 (iOS) — 블루투스 기기 스캔 및 연결에 필요
- 위치 (Android 11 이하에만 해당) — 구형 Android 버전에서 BLE 기기 스캔에 필요
- 기기에서 블루투스가 활성화되어 있는지 확인하세요.
- 홈 화면의 연결 버튼을 탭하세요. 앱이 주변 BLE 기기를 스캔합니다.

- 검색된 기기 목록에서 Arduino Nano ESP32를 선택하세요.
예제
다음 예제들은 Arduino Nano ESP32와 호환되는 ArduinoBLE 플랫폼(BLE 전용)을 사용합니다.
- 아두이노 나노 ESP32 블루투스 슬라이더 예제 - BLE를 통한 듀얼 슬라이더 제어 튜토리얼 - 하나 또는 두 개의 슬라이더로 값 조정
- 아두이노 나노 ESP32 블루투스 디지털 핀 예제 - BLE를 통한 GPIO 핀 제어 튜토리얼 - 디지털 출력 핀을 켜고 끄기
- 아두이노 나노 ESP32 블루투스 모니터 예제 - BLE를 통한 무선 시리얼 모니터 튜토리얼 - 무선 시리얼 모니터로 텍스트 송수신
- 아두이노 나노 ESP32 블루투스 플로터 예제 - BLE를 통한 실시간 데이터 시각화 튜토리얼 - 실시간 차트로 센서 데이터 시각화
- 아두이노 나노 ESP32 블루투스 아날로그 게이지 예제 - BLE를 통한 게이지 표시 튜토리얼 - 아날로그 스타일 게이지 다이얼로 값 표시
- 아두이노 나노 ESP32 블루투스 온도 게이지 예제 - BLE를 통한 온도 표시 튜토리얼 - 온도 및 습도 데이터 확인
- 아두이노 나노 ESP32 블루투스 조이스틱 예제 - BLE를 통한 2D 방향 제어 튜토리얼 - 앱에서 2D 조이스틱 입력 캡처
- 아두이노 나노 ESP32 블루투스 로테이터 예제 - BLE를 통한 각도 제어 튜토리얼 - 앱을 사용하여 회전 또는 다이얼 값 조정
- 아두이노 나노 ESP32 블루투스 채팅 예제 - BLE를 통한 양방향 메시징 튜토리얼 - 텍스트 메시지 주고받기
- 아두이노 나노 ESP32 블루투스 테이블 예제 - BLE를 통한 구조화된 데이터 표시 튜토리얼 - 깔끔한 테이블 레이아웃으로 데이터 정리 및 표시
- 아두이노 나노 ESP32 블루투스 RTC 예제 - BLE를 통한 실시간 시계 동기화 튜토리얼 - 앱을 사용하여 실시간 시계 동기화
- 아두이노 나노 ESP32 블루투스 다중 앱 예제 - 올인원 BLE 튜토리얼 - 단일 스케치에 여러 앱 위젯 결합
문제 해결
| 문제 | 원인 | 해결 방법 | |
|---|---|---|---|
| 앱 스캔에서 기기가 보이지 않음 | 블루투스 펌웨어가 오래됨 | 도구 → 펌웨어 업데이터를 통해 펌웨어를 버전 1.4.8 이상으로 업데이트 | |
| BLE.begin()이 false를 반환함 | 오래된 펌웨어 또는 잘못된 보드 코어 | 블루투스 펌웨어와 Arduino SAMD 코어 업데이트 | |
| 연결은 됐지만 데이터가 수신되지 않음 | ArduinoBLE 라이브러리가 오래됨 | 라이브러리 매니저를 통해 ArduinoBLE를 버전 1.3.6 이상으로 업그레이드 | |
| 컴파일 오류 | ArduinoBLE.h를 찾을 수 없음 | ArduinoBLE 라이브러리가 설치되지 않음 | 라이브러리 매니저를 통해 ArduinoBLE 설치 |
| 보드 관련 컴파일 오류 | 잘못된 보드 코어가 설치됨 | Arduino SAMD Boards 버전 1.8.13 이상 설치 | |
| 앱이 연결 후 즉시 끊김 | 간섭 또는 불안정한 전원 | 안정적인 USB 전원을 사용하고 기기를 5미터 이내에 유지 |
참고 사항
- ArduinoBLE_ 예제를 사용하세요. Esp32BLE_ 또는 Esp32Bluetooth_는 다른 하드웨어용으로 설계되었으므로 사용하지 마세요.
- BLE 광고를 유지하려면 USB 또는 외부 전원으로 보드에 전원을 공급하세요.