Prof. J. Walter - Informationstechnik, Mikrocomputertechnik, Digitale Medien Konzeptentwicklung
Hochschule Karlsruhe Logo Informationstechnik
MalRob-EVA-ESP32
Wintersemester 2019/2020
Maximilian Melch
Carsten Artischewski

Konzeptentwicklung


Beim versuch ein erstelltes Programm aus der Arduino IDE zu übertragen, erscheint folgende Fehlermeldung:




Als Lösung muss ein 10 uF Kondensator wie im Bild unten gezeigt eingebaut werden. Dieser ermöglicht, dass der ESP32 selbstständig in den Flash-Modus geht. Alternativ kann auch der BOOT-Taster betätigt werden. Dies ist jedoch nicht praktikabel, da der BOOT-Taster dann bei jeder Programmübertragung betätigt werden müsste. Eine Übertragung via WLAN wäre somit auch nicht möglich.





Daten für das Übertragen auf das ESP32 Development Module:

Board: ESP32 Dev Module
Upload Speed: 115200
CPU Frequency: 240MHz
Flash Frequenzy: 80MHz
Flash Mode: QIO
Flash Size: 4MB 
Partition Scheme: Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS)
Core Debug Level: Keine
PSRAM: Enabled


1. Arduino IDE
    Installation Arduino IDE, Version: 1.8.10

    a. Übertragung via USB-Kabel
    
   - Herstellen einer hardwaretechnischen Verbindung zum ESP32
        - Anschluss USB-Kabel – USB A / micro USB B



Abb.: Blockschaltbild Übertragung via USB-Kabel


   b. Übertragung via WLAN
    
   - Herstellen einer drahtlosen Verbindung (Wi-Fi 2,4 GHz band) zum ESP32



Abb.: Blockschaltbild Übertragung via WLAN


2. Transferskript in EVA-ESP32 Software integrieren
   
- Schnittstelle zwischen EVA-ESP32 kann ebenfalls auf zwei Möglichkeiten realisiert werden. Entweder hardwaretechnisch über USB-             Kabel oder eine drahtlose Verbindung via WLAN.

- Im Transferskript muss dies dementsprechend implementiert werden.

Ansatz:
Damit auf den ESP32 eine Applikation (ohne Arduino IDE) ausführbar übertragen werden kann sind gewisse Vorbereitungen zu treffen.

- Hardware
  
 a. ESP 32 Board
    b. USB-KAbel USB A / micro USB b
    c.  PC mit laufenden Betriebssystem (Windows, Linux oder macOS)


- Software
    a. Toolchain => zum kompilieren vom Code
    b. Build Tools => CMake und Ninja zur Erstellung einer vollständigen Anwendung für ESP32
    c. ESP-IDF => Enhält im Wesentlichen API (Software-Bibliotheken und Quellcode) für ESP32 und Skripte zum Betreiben von Toolchain
    d. Text Editor zum Schreiben des Skriptes


Da es sich bei diesem Ansatz, um eine recht komfortable Konzeption handelt, sofern das Transferskript später eiwandfrei funktioniert, wurde diese Konzeption von uns als Gruppe zeitaufwändig getestet. Der ESP32 konnte hierbei erfolgreich in Betrieb genommen werden und es wurden verschiedene Beispielprojekte übertragen. Nachfolgend sind kurz die durchgeführten Schritte aufgeführt:

1.  Installation der ESP-IDF

2. Anlegen eigenes Projekt

3. Herstellung einer hardwaretechnischen Verbindung (USB-Kabel) zur Hardware (ESP32)

4. Konfiguration der Schnittstelle (COM-Port, Baud-Rate, etc.)

5. Erstellen des Projektes

6. Flashen der Beispielprogramme auf die Hardware (ESP32)

7. Test der geflashten Programme

Anmerkung:

Die Beispielprogramme wurden aufgrund der Einfachheit in C-Code geschrieben und vom Compiler entsprechend verarbeitet und übersetzt. Für eine zielführende Lösung müsste das Programm jedoch als Arduino-Code geschrieben und entsprechend übertragen werden.  



Abb.: Blockschaltbild Transferskript in EVA-ESP32 Software integriert



Abb.: Erstellen des Projektes



Abb.:
Serielle Ausgabe des Testprogramms

  Mit Unterstützung von Prof. J. Walterd> Wintersemester 2019/2020