Bibliotheks- und Boardverwaltung mit Arduino IDE

In diesem Artikel lernst du die Bibliotheks- und Boardverwaltung der Arduino IDE kennen und wie du damit erfolgreich arbeitest.

Jedem, auch mir, ist es schon einmal passiert. Da findet man ein interessantes Projekt oder hat sich eines ausgedacht und am Ende kommt man in der Arduino IDE nicht weiter. Meist fehlen Bibliotheken für Peripherie. Noch ärgerlicher ist es, wenn der genutzte MicroController, z.B. ein ESP32, nicht per Standard in der Arduino IDE auswählbar ist.

Damit du nicht auch an dieser Stelle hängen bleibst, zeige ich dir heute, wie einfach es ist, die Boardverwaltung und die Bibliotheksverwaltung zu nutzen und welche Vorarbeit ggf. notwendig ist. Dieser Blog behandelt nur die Arduino und ESP-Produktfamilie. Der Raspberry Pi Pico wird hier nicht behandelt. Dieser läuft zwar auf der Arduino IDE, allerdings gibt es noch einige Fallstricke.

Die Software

Für diesen Blogbeitrag braucht es nur die Arduino IDE (Link zum Download). An dieser Stelle empfehle ich die aktuelle Version, die es für alle gängigen Betriebssysteme gibt. Gerade bei Linux solltest du zusätzlich darauf achten, dass du in den erforderlichen Gruppen bist.

Die Boardverwaltung der Arduino IDE erweitern

Wenn die Arduino IDE zum ersten Mal installiert wird, dann kann zunächst nur die Arduino-Produktfamilie programmiert bzw. geflasht werden. Ein Vorteil der Arduino IDE ist es aber, dass weitere MicroControllerboards, wie der ESP32 oder ESP8266, fast mühelos nachgerüstet werden können.

Dazu müssen die zusätzlichen Boardverwalter-URLs hinzugefügt werden. Zunächst öffnest du die Voreinstellungen unter Datei -> Voreinstellungen oder mit der Tastenkombination STRG + Komma, siehe Abbildung 1.

Abbildung 1: Voreinstellungen öffnen

Direkt darauf öffnet sich das Voreinstellungsfenster, hier können auch die Boardverwalter-URLs nachgetragen werden, siehe Abbildung 2.

Abbildung 2: Geöffnete Voreinstellung mit Boardverwalter-URL

Der gelb markierte Bereich wird bei dir wahrscheinlich leer sein, da bei einer frischen Installation keine zusätzlichen BoardURLs eingetragen wurden. Tabelle 1 zeigt gängige Board-URLs.

PosBoard-FamilieBoardverwaltungs-URL
1ESP8266http://arduino.esp8266.com/stable/package_esp8266com_index.json
2ESP32https://dl.espressif.com/dl/package_esp32_index.json
3Adafruit-Controllerhttps://adafruit.github.io/arduino-board-index/package_adafruit_index.json
4Arduinohttps://github.com/Optiboot/optiboot/releases/download/v8.0/package_optiboot_optiboot-additional_index.json
Tabelle 1: Boardverwaltungs-URLs für Board-Familien

Trag einfach zeilenweise die gewünschten Board-URLs ein. Pos 4 der Tabelle 1 ist eine reine Option Hierbei handelt es sich um ein Repository, dessen Kernfunktionen mittlerweile in die Arduino-Firmware übernommen wurde. In meinem Fall habe ich diese Board-URL noch, da meine ältere Arduino Nanos mit der neusten Arduino-Firmware nicht 100% korrekt funktionieren.

Bestätige alles mit OK. Am besten startest du die Arduino IDE einmal neu, um Probleme zu vermeiden.

Als nächstes öffnest du über Werkzeuge -> Board -> Boardverwaltung… die Boardverwaltung, siehe Abbildung 3.

Abbildung 3: Öffnen der Boardverwaltung

Im nachfolgenden Dialog kannst du zunächst einmal durch alle Board-URLs die Boardbibliotheken aktualisiert. Dies kann, je nach Netzwerkverbindung, einen kurzen Moment dauern. Im nächsten Schritt suchen wir den MicroController, hier als Beispiel die ESP32-Boardfamilie, im Suchfenster und drücken den Button installieren, siehe Abbildung 4.

Abbildung 4: Installation einer weiteren Board-Familie, hier ESP32

Jetzt dauert es wieder einen kurzen Moment, bis alle Daten für die ausgewählte Board-Familie heruntergeladen und installiert wurden. Danach wird unter Werkzeuge -> Board die neue Board-Familie angezeigt, siehe Abbildung 5.

Abbildung 5: Neue Board-Familie in Boardverwaltung

Wie du siehst, ist eine weitere Boardfamilie hinzugefügt worden. In meinem Fall die ESP32-Boardfamilie mit allen gängigen ESP32-Modellen, die von Espressif Systems unterstützt werden. Ähnlich verhält es sich bei anderen MicroControllerboards.

Die Bibliotheksverwaltung der Arduino IDE

Jetzt kommt ein Thema, was gerade zu Beginn der Arduino IDE, einen Maker zur Verzweiflung bringen konnte. Die Rede ist von der Bibliotheksverwaltung bzw. das manuelle Installieren von Bibliotheken.

Die Installation von Bibliotheken via zip

Fangen wir mit der oldschool-Variante an, die Zip-Installation. Ich musste ein bisschen suchen, aber fand für den Gas-Sensor MQ135 noch eine zip-Bibliothek. Auf GitHub reicht es, einfach unter Code->Download ZIP die Bibliothek herunterzuladen, siehe Abbildung 6.

Abbildung 6: Download der Bibliothek als zip

In der Regel endet die zip-Datei mit „-master“, was wir so später nicht als Bibliotheksname haben wollen. Daher muss der Name direkt nach dem Download umbenannt werden. Es reicht im Grunde die Erweiterung -master zu löschen.

In der Arduino IDE öffnen wir anschließend den Dialog zum Hinzufügen von .ZIP-Bibliotheken über Sketch -> Bibliothek einbinden -> .ZIP-Bibliothek hinzufügen…, siehe Abbildung 7.

Abbildung 7: Dialog zum Hinzufügen einer Zip-Datei

Im darauffolgenden Dialogfenster navigierst du zum Pfad der heruntergeladene Zip-Datei, die du umbenannt hast und wählst diese aus, siehe Abbildung 8.

Abbildung 8: Zip-Datei auswählen

Es dauert wieder je nach Bibliothek einen Augenblick, bis diese erfolgreich geöffnet wurde, dies liegt an der Größe der Zip-Datei. Eine Erfolgs- oder Fehlermeldung wird es nicht geben, der einzige Anhaltspunkt ist, ob die Bibliothek nun unter Sketch -> Bibliothek einbinden zu finden ist oder nicht, siehe Abbildung 9.

Abbildung 9: Installierte Bibliothek

Die hier gezeigte Variante hat einen großen Haken, den ich nicht vorenthalten möchte. Gerade bei Bibliotheken, die von anderen Bibliotheken abhängen, wird das Kompilieren von Code recht mühsam. Es sollte im Vorfeld geklärt werden, welche weiteren Bibliotheken benötigt werden, um diese dann ebenfalls zu installieren.

Die Installation über Bibliotheksverwalter

Die mittlerweile viel bequemere Variante der Installation einer Bibliothek, ist die Installation über den Bibliotheksverwalter. Diesen erreichst du über Sketch -> Bibliothek einbinden -> Bibliotheken verwalten bzw. STRG + Umschalten + I, siehe Abbildung 10.

Abbildung 10: Bibliotheksverwalter öffnen

Im Anschluss öffnet sich der Bibliotheksverwalter, der einige Features mitbringt. Zunächst hast du die Möglichkeit den Typ der Bibliothek zu bestimmen, siehe Abbildung 11.

Abbildung 11: Bibliotheksverwalter Typ

Damit kannst du gut sortieren, welche Bibliotheken du sehen willst. Gerade bei Aktualisierbar, Installiert oder Alle hast du eine gute Übersicht über die vorhandenen und bereits installierten Bibliotheken. Der Punkt Aktualisierbar ist insofern interessant, da hier direkt angezeigt wird, welche Bibliotheken ein Updaten brauchen. Du kannst aber auch auf eine ältere Version zurückgehen, wenn du Probleme feststellst.

Die Sortierung nach Thema hingegen ist in meinen Augen weniger interessant, da man als Maker ja meist etwas genaues sucht, siehe Abbildung 12.

Abbildung 12_ Bibliotheksverwalter Thema

Beim Thema hast du die Möglichkeit nach verschiedenen Schwerpunkten der Bibliotheken zu filtern. Das Ergebnis hängt aber stark davon ab, welche Keywords der Entwickler bei der Bibliothek hinterlegt hat. Teilweise finde man die gleiche Bibliothek in unterschiedlichen Themen, was dann doch eher verwirrt. Daher lieber Typ und Thema auf „Alle“ stellen lassn und nach Keywords suchen. In meinem Beispiel möchte ich, um noch einmal auf die DIY CO2-Ampel zu kommen, die Bibliothek für den Adafruit SCD30 installieren. Dazu einfach den Suchbegriff „Adafruit SCD30“ in die Suchmaske eingeben und Enter drücken. Je nach Internetverbindung dauert es einen kurzen Moment und die Ergebnisse werden aufgelistet, siehe Abbildung 13.

Abbildung 13: Bibliotheksverwalter suche nach “Adafruit SCD30”

Mit einem Klick auf Installieren kannst du die neueste Version der Bibliothek herunterladen. Im Falle von Abhängigkeiten, wird direkt gefragt, wie du verfahren möchtest, siehe Abbildung 14.

Abbildung 14: Bibliotheksverwalter Umgang mit Abhängigkeiten

Hier empfehle ich dir immer „Install all“ zu wählen, damit es beim Kompilieren später keine Probleme gibt. Wenn alles funktioniert hat, siehst du hinter der Bibliothek den Vermerk Installed, siehe Abbildung 15.

Abbildung 15: Bibliotheksverwalter Bibliothek installiert

Zusammenfassung

Wie du siehst, ist die Installation von weiteren Boardbibliotheken und auch von Peripheriebibliotheken recht einfach. Man muss nur wissen, wie die einzelnen Varianten funktionieren. Bei Updates informiert dich die Arduino IDE immer direkt auf der Programmieroberfläche mit einem Popup. Damit du immer wieder das Wissen auffrischen kannst, kannst du hier alles noch einmal nachlesen.

Die mobile Version verlassen