beelogger

beelogger-STM32 … Programme laden

Für das beelogger-System ist die ARDUINO IDE als Entwicklungsumgebung erforderlich.
(IDE = Integrated Developement Environment)

Der Download der Software ARDUINO IDE kann unter https://www.arduino.cc/en/Main/Software vorgenommen werden.

Um den STM32 über die serielle Schnittstelle programmieren zu können, wird ein USB-zu-Seriell-Adapter (z.B. FTDI) benötigt.
Hinweis: Alternativ ist die Programmierung über einen ST-Link Adapter möglich.
Für die Debug-Ausgaben des Sketch, welche über die serielle Schnittstelle “Serial/Serial1” erfolgen, ist ein FTDI-Adapter erforderlich.

Das BluePill-/BlackPill- Board ist mit einem USB-Anschluß ausgestattet und könnte nach Laden einer Firmwareerweiterung via FTDI über USB programmiert werden. Wegen der diversen Features des STM32Fxyz, die für das beelogger Projekt notwendig ist, ist die Nutzung der Firmwareerweiterung und des USB-Port nicht möglich.

 

Ardunio IDE für STM32 Microcontroller konfigurieren

Für den Microcontroller STM32F103 auf dem “BluePill”  bzw. STM32F4x1 (“Blackpill”) werden spezielle Erweiterungen für den Bordverwalter benötigt.
Dafür wird in der Arduino-IDE im Menu “Datei” unter “Voreinstellungen” im Feld “Zusätzliche Bordverwalter URLs” folgende Zeile eingetragen:

https://github.com/stm32duino/BoardManagerFiles/raw/main/package_stmicroelectronics_index.json

und das Fenster mit “OK” verlassen.

Danach unter “Werkzeuge” den “Boardverwalter” aufrufen.
Nach Laden der Informationen steht der Eintrag “STM32 MCU based boards” zur Verfügung.
Für die korrekte Funktion der Sketche ist mindestens Version 2.1.0 zu installieren.
Mit dem Button “Installieren” das Paket installieren. Das kann einige Zeit dauern.

Der beelogger-STM32 wird über einen FTDI-Adapter programmiert.
Dazu muss der STM32CubeProgrammer installiert sein. Dazu sind unter Windows folgende Schritte notwendig:

  • Oracle Java downloaden und installieren; https://java.com.de
  • Stm32CubeProg – Programmer von ST downlad und installieren
    verfügbar nach Anmeldung auf der ST Developer Webseite
    www.st.com/en/development-tools/stm32cubeprog.html

installiert werden.

Die Beschreibung zur Installation unter macOS für das Tool STM32CubeProg – Programmer  findet sich in dieser Anleitung STM32CubeProgrammer macOS.

In der Arduino-IDE über die Voreinstellungen die Update-Funktion der Bibliotheken “Beim Start nach Updates suchen” deaktivieren.
Danach die für den beelogger notwendigen Bibliotheken installieren.
Die Bibliotheken aus dem beelogger-Paket nicht über die Arduino-Software aktualisieren.

Weitere Bibliotheken sind im beelogger-Blue Sketch-Paket enthalten.

 

Ardunio IDE und FTDI-Adapter für den beelogger mit STM32F …µC:

Hinweis: Alternativ ist die Programmierung über einen ST-Link Adapter möglich.
Für die Debug-Ausgaben des Sketch, welche über die serielle Schnittstelle “Serial/Serial1” erfolgen, ist ein FTDI-Adapter erforderlich.

Der beelogger-Blue wird beim Programmieren mit eingebautem Akku versorgt.
Eine Stromversorgung über den FTDI-Adapter ist nicht im Layout enthalten.
Der Akku sollte einen guten Ladezustand (min. 4,0V) aufweisen. Neue Akkus müssen vorher geladen werden.

Es kann erforderlich sein für den FTDI-Adapter notwendige Treiber zu installieren. Windows Anwender sollten die Gerätesteuerung kontrollieren, ob ein angeschlossener FTDI-Adapter erkannt wird.

In der Arduino IDE wird für den “beelogger-Blue” unter “Werkzeuge”
folgendes eingestellt:

  • “Board”  –  “Generic STM32F1 series”
  • “Board Part Numer”  –  “BluePill F103C8”  oder  “BluePill F103CB (or C8 with 128k)”
  • “USART support”   –  “Enabled generic serial”
  • “USB support”  –   “keine /none”
  • “Optimize”  –  “smallest”
  • “C Runtime Lib”  –  “NewLib Nano default”
  • “Upload method”   –  “STM32 Cube Programmer Serial”   (das ist der FTDI)

Für den STM32F4x1 sind diese Einstellungen anzupassen

  • “Board”  –  “Generic STM32F4 series”
  • “Board Part Numer”  –  “BlackPill F411CE”  oder  “BlackPill F401CC”

Wenn der FTDI-Adapter für den beelogger-Blue angeschlossen ist, kann unter “Werkzeuge”, “Port” die Verbindung eingestellt werden.

Sketch Laden mit dem BluePill-Modul:

Damit ein Sketch über FTDI geladen werden kann, muss der FTDI-Adapter auf 3,3V eingestellt und die Jumper auf dem BluePill-Modul richtig gesetzt sein.

  • “Boot1”  immer auf Postion “0” (Richtung USB-Buchse)
  • “Boot0”  zu Laden eines Sketch Jumper auf “1” und Reset-Taste drücken
  • Wenn der Sketch nach dem Laden dauerhaft gespeichert bleiben soll, dann den Jumper auf “0” stecken.
    Anmerkung: Jumper auf “0” ist beim beelogger normalerweiler nur für die Mutli-Sketcher notwendig.

    Achtung: Mit “Boot0” -Jumper auf 1 wird das Programm gelöscht durch:
                   – Betätigen des Reset-Tasters auf dem Bluepill-Modul
                   – Neustart des STM32Fxyz über interne Timer
                   – Betätigen des Service-Schalter in Verbindung mit den Multi-Sketchen (WLAN/GSM/LTE)
     

  • Im Dauerbetrieb: Beide Jumper in Position “0” (Richtung USB-Buchse gesteckt.)

Sketch Laden mit dem BlackPill-Modul:

Damit ein Sketch über FTDI geladen werden kann, muss der FTDI-Adapter auf 3,3V eingestellt sein.
Über die Tasten Boot0 und Reset wird der Programmiermode hergestellt:

  • Taster “Boot0” drücken und halten
  • Taster “Reset” kurz drücken
  • Taster “Boot0” loslassen

Nach dem Programmieren verlässt der STM32F4xy automatisch den Programmiermode.

 

 

Bezug FTDI-Adapter:

Bild Bezugsquelle Preis ab Suchbegriffe* Bemerkungen
 beelogger FTDI eBay 1,50€ FTDI Adapter Modul FTDI-Adapter muss die Möglichkeit bieten, auf eine Spannung von 3,3V umzustellen  und
die DTR-Leitung an der Anschlussleiste verfügbar haben.

Tabelle 1:  FTDI-Adapter
Achtung: Der Jumper oder Schalter auf dem FTDI-Adapter ist nicht zwangsläufig für die Umstellung der Spannung am VCC-Pin vorgesehen. Teilweise dienen diese Einsteller nur für die Pegelumstellung 3,3V/5V der Schnittstelle.
Der Einsteller muss auf 3,3V eingestellt werden.

*Einkaufstipps

 

Beschaltung FTDI-Adapter

Der FTDI-Adapter wird mit dem FTDI-Header des beelogger-STM32 verbunden. Wie die Anschlüsse miteinander verbunden werden, findet sich in nachstehender Tabelle.

beelogger Solar FTDI Header 

FTDI-Adapter beelogger-Blue (FTDI-Header)
DTR  nicht belegt
RX TX
TX RX
   nicht belegt
CTS  nicht belegt
GND GND

Tabelle 2: Verbindung beelogger-Blue an FTDI-Adapter


Der beelogger-STM32 wird über den geladenen Li-Ion Akku (min. 4,0V) versorgt.