top of page

Mikrocontroller-Programmierung

Verwendete Bibliotheken und Softwarekomponenten

Die Software für die Mikrocontroller wurde unter Verwendung von Arduino- und Teensyduino-Tools und -Frameworks entwickelt. Die Software verwendet die in der folgenden Tabelle dokumentierten Bibliotheken.

Title
Reference
Adafruit_MCP23X17.h
ArduinoJson.h
Joystick_ESP32S2.h
OpenFontRender.h
SPIFFS.h
TFT_eSPI.h
USBHIDKeyboard.h
WebServer.h

I. Grokhotkov

WiFi.h
WiFiManager.h

Portions of the MC1 software is based on the work of The FreeTypeProject. All rights reserved.

Bibliotheken und Software

Vorbereiten der Software auf Deinem Computer

Informationen zur Installation der Arduino IDE findest Du unter https://www.arduino.cc/en/software. Folge dort den Anweisungen für Deine jeweilige Zielplattform.


Für den Teensy sind noch ein paar weitere Schritte notwendig: Bitte beachte https://www.pjrc.com/teensy/tutorial.html und fahre nach „Arduino IDE-Software installieren“ mit dem nächsten Schritt fort.

Vorbereiten der Software

Flashen der Firmware

Du hast zwei Binärdateien erhalten, die die Firmware für die Mikrocontroller darstellen. Diese müssen mit den jeweiligen Entwicklungstools hochgeladen werden.


Daher muss das MyGamepad-Gerät über den USB-A-Anschluss mit dem Computer verbunden werden.

Flashen der Firmware

Arduino Nano ESP32 (MC1)

Bootloader und Dateisystem vorbereiten


Vor der ersten Installation der MyGamepad-Firmware muss ein spezielles Verfahren befolgt werden, um das interne Dateisystem des Arduino Nano ESP32 vorzubereiten. Dieses Verfahren wird hier beschrieben: https://docs.arduino.cc/tutorials/nano-esp32/spiff/. Bitte befolge die beschriebenen Schritte genau, einschließlich des Hochladens und Ausführens des SPIFFS_Test-Beispiels. Die MyGamepad-Firmware erfordert eine ordnungsgemäße Einrichtung der SPIFFS-Partition (erweitert) des Mikrocontrollers.


So findest Du das erforderliche dfu-util-Tool

 

Das Tool dfu-util wird benötigt, um eine binäre Firmware auf den Mikrocontroller zu übertragen. Es wird mit der Arduino IDE installiert. Der genaue Speicherort kann jedoch je nach Betriebssystem und Benutzerkontoeinstellungen variieren.


Du findest dies ganz einfach heraus, indem Du in den Einstellungen/Präferenzen der Arduino IDE die Option "Show verbose during compile and upload" („Beim Kompilieren und Hochladen ausführlich anzeigen“) aktivierst (siehe Abbildung unten).

Arduini IDE Einstellungen

Beim Kompilieren und Hochladen des erforderlichen SPIFFS_Test-Beispiels wie im vorherigen Absatz beschrieben, wird in der Ausgabe der Pfad des dfu-util-Tools angezeigt (siehe Abbildung unten).

Arduino IDE Konsolenausgabebe

Hochladen der Firmware

 

Öffne ein Befehlszeilen-Shell-Fenster (Terminal auf dem Mac oder CMD.exe auf dem PC) und gib den folgenden Befehl ein, während MyGamepad verbunden ist.

“<TOOL-PATH>/dfu-util” --device 0x2341:0x0070 -D “<FIRMWARE-PATH>/MyGamepad_MC1_ESP32.ino.bin”


Ersetze <TOOL-PATH> durch den richtigen Pfad, wie oben in „So findest Du das erforderliche dfu-util-Tool“ beschrieben, und <FIRMWARE-PATH> durch den Pfad, in dem Du die Firmware gespeichert hast.

Bitte berücksichtige, dass der Dateiname für das"dfu-util" Tool auf Windows Systemen "dfu-util.exe" ist. 

 

HINWEIS: Falls der Upload unterbrochen wird, drücke die Reset-Taste des Arduino Nano EPS32 zweimal mit einer Pause von ungefähr einer halben Sekunde dazwischen. Wenn die RGB-LED langsam grün blinkt, starte den Upload.

Arduino Nano ESP32

Teensy 4.0 (MC2)

Hochladen der Firmware

 

Der Upload-Vorgang ist für Teensy einfacher. Öffne die Teensy-App auf dem Mac oder Teensy.exe auf dem PC.

 

Öffne die Datei „<FIRMWARE-PATH>/MyGamepad_MC2_Teensy40.ino.hex“ und wähle im Menü Betrieb->Programm.

 

HINWEIS: Die MyGamepad-Firmware richtet den Teensy 4.0 im Controller/Xinput-Modus ein, wodurch er für die USB-Geräteauswahl unsichtbar wird. Nach dem ersten Upload müssen noch zwei weitere Schritte ausgeführt werden: Deaktiviere die Funktion „Automatisch“ in der Teensy-App, öffne das MyGamepad-Basisgehäuse und drücke die Reset-Taste am Teensy-Mikrocontroller, um ihn in den Programmiermodus zu versetzen.

Teensy Fenster
Teensy 4.0
bottom of page