ESP32 BLE mit VS Code und PlatformIO

2. November 2018 at 19:12
Print Friendly, PDF & Email

Da ich für ein Projekt Bluetooth verwenden möchte, habe ich mir ein ESP32 Modul zugelegt. Die ArduinoIDE mag für einfache Programme o.k. sein, ich benutze aber lieber eine sinnvolle Umgebung wie Eclipse oder VS Code. Mit Eclipse hatte ich schlechte Erfahrungen bzgl. der frameworks, so dass ich letztendlich zu PlatformIO gewechselt habe. Dies basierte bisher auf Atom und seit einiger Zeit auf Visual Studio Code. Bei mir gab es einige Hürden, bevor ich in der Lage war BLE auf dem ESP32 fehlerfrei zu kompilieren. Nachfolgend beschreibe ich meine Konfiguration.

Einstieg: Die Arduino IDE

Das ist optional, um die Module zu verifizieren.

Den Board Manager installieren : https://github.com/espressif/arduino-esp32/blob/master/docs/arduino-ide/boards_manager.md

Unter Datei/Voreinstellungen die folgende URL eintragen: https://dl.espressif.com/dl/package_esp32_index.json

Danach Board auswählen: ESP32 Dev Module

Nun findet man bereits den Beispiel-Code: Datei/Beispiele (ganz unten)

 

VSCode / PlatformIO

Plattform installieren: Espressif 32

Bibliothek installieren: ESP32 BLE Arduino

Projekt anlegen

Wenn man die Bibliothek öffnet, kann man unten rechts auf “Repository” klicken und gelangt zu github, wo die Beispiele hinterlegt sind.
Hier der link: https://github.com/nkolban/ESP32_BLE_Arduino/tree/master/examples

In den code muss man noch die Arduino.h hinzufügen.

 

platformio

; PlatformIO Project Configuration File
;
; Please visit documentation for the other options and examples
; https://docs.platformio.org/page/projectconf.html
 
; Espressif 32;         platform=espressif32; version 7a758c4 = 1.4.0
; Espressif 32 (Stage); platform=espressif32; version c26e5ac = 1.4.0; https://github.com/platformio/platform-espressif32.git#feature/stage
[env:esp32dev-scan]
; platform - no comments allowed after platform name
; platform =espressif32           # o.k., using the latest version
; platform =espressif32@7a758c4   # o.k.
; platform =espressif32@c26e5ac   # o.k.
platform =espressif32
; board = esp32doit-devkit-v1     # o.k.
board = esp32dev
framework = arduino
; enable the next line if you want to upload and monitor directly after build
; targets = upload, monitor
 
lib_deps = 
  # Using a library name
  ESP32 BLE Arduino
 
upload_protocol = esptool
upload_speed = 921600
monitor_speed = 115200

 

Ausgabe im Monitor für den scanner: