Hallo und willkommen zum heutigen Blog-Beitrag.
Unsere Blog-Beiträge und eBooks richten sich vorwiegend an Einsteiger.
Es gibt jedoch auch einen sehr aktiven Teil unserer Community mit hochqualifizierten Fachkräften, Amateurfunkern, Ingenieuren, Software-Entwicklern usw.
Menschen die seit vielen Jahren Beruflich in der Forschung und Entwicklung arbeiten, und Tools wie Atmel Studio blind beherrschen, oder sogar freiwillig Eclipse als Code-Editor verwenden.
Die Arduino IDE eignet sich sehr gut für den Einstieg. Die meisten Kunden starten die IDE, fügen einen Beispielcode per Copy & Paste ein, passen eventuell noch ein Paar Zeilen an, und laden das ganze auf Ihren Mikrocontroller.
Wer aber größere Projekte umsetzen möchte, stößt schnell an die Grenzen der IDE. Das fängt an bei der fehlenden Versionsverwaltung, über fehlende Features wie Codevervollständigung, und spätestens wenn man an mehreren Projekten arbeitet welche unterschiedliche Versionen der gleichen Bibliothek benötigen, wird es frustrierend.
Heute möchten wir Ihnen daher die derzeit vermutlich beliebteste Alternative vorstellen: PlatformIO.
Wer sich erst seit kurzem mit Mikrocontrollern beschäftigt, auf auf die Herstellerseite geht, wird vermutlich erst mal abgeschreckt. Da ist die Rede von "IoT", "ecosystem", "frameworks". Dann kommt eine Liste mit Features, und überladene Screenshots.
Wenn man sich davon noch nicht hat abschrecken lassen, und auf "Install PlatformIO Now" geht, werden einem 2 Optionen angeboten: Atom oder VSCode.
Ich könnte mir vorstellen dass viele es bis auf diese Seite geschafft haben, und sich dann dachten "das ist nichts für mich - Ich bleibe lieber bei der Arduino IDE".
Dies ist sehr schade, weil PlatformIO um einiges mächtiger ist, als die Arduino IDE.
1. Der Einsteiger
Dieser Abschnitt richtet sich an Menschen die bisher nur wenig oder gar nicht programmiert haben, und deren bevorzugtes Programm zum editieren von Texten und speichern von Bildschirmfotos MS Word ist.
Vielleicht fragen Sie sich wozu man einen eigenen "Code-Editor" benötigt?
Auf einem normalen PC befinden sich in der Regel mehrere Programme um einen Text zu erstellen:
- Notepad
- Wordpad
- Word (Office) oder Writer (LibreOffice/OpenOffice)
Möchte man nun einen Brief schreiben, mit Briefkopf, Kopf- und Fußzeile usw., greift man in der Regel zu einer Textverarbeitung wie Word. Eine Textverarbeitung ist ein mächtiges Werkzeug, und bietet eine Vielzahl an Funktionen und Optionen wie z.B. die Rechtschreibprüfung. Es macht also Sinn für ein derartiges Textdokument eine Textverarbeitung zu nehmen.
Natürlich könnte man den Brief auch in Notepad schreiben. Notepad ist keine Textverarbeitung, sondern ein Texteditor. Dieser wird in der Regel dazu verwendet Konfigurationsdateien zu bearbeiten. Sobald jemand jedoch versucht einen Brief in Notepad zu schreiben, stößt man schnell an die Grenzen.
Ähnlich verhält es sich mit einem Codeeditor. Sie können ohne weiteres in Notepad ein Programm für den Arduino schreiben, und abspeichern. Hier sehen Sie den gleichen Code sowohl in einem einfachen Texteditor und in der Arduino IDE:
Am auffälligsten ist die Tatsache, dass in der Arduino IDE der Quellcode farblich dargestellt wird. Jedoch bietet die Arduino IDE einige praktische Werkzeuge, die es im einfachen Texteditor nicht gibt. Es ist z.B. möglich einen Textbereich mit der Maus zu markieren, und mit der TAB Taste den gesamten Textblock einzurücken. In den Optionen können wir außerdem die Zeilennummerierung einschalten, und Code-Faltung aktivieren, um logisch zusammengehörende Quelltextabschnitte wie Klassen oder Methoden einfach ein- und auszublenden.
Diese Funktionalität macht das arbeiten mit Quellcode schon um einiges komfortabler. Jedoch gibt es eine Vielzahl anderer Editoren, welche die Arduino IDE in den Schatten stellen.
2. Der Code Editor
Das Angebot an Texteditoren ist ziemlich unübersichtlich. Auf die Frage welcher nun am besten für die Programmierung ihres Mikrocontrollers geeignet ist, wird Ihnen jeder etwas anderes antworten. Ich habe meine ersten Gehversuche in der Programmierung in einem Editor mit dem Namen "vi" unter Solaris gemacht. Jahrelang war ich der festen Überzeugung, dass ich nie einen anderen Texteditor benötigen würde, da ich im "vi" alles viel schneller machen kann als in diesen "klickibunti"-alternativen. Inzwischen bin ich froh wenn ich es beim ersten Versuch schaffe eine Konfigurationsdatei im vi Editor zu bearbeiten, ohne einen ungewollten Zeilenumbruch einzufügen, die Änderung zu verwegen und die Datei nochmal zu öffnen.
Da wir PlatformIO einsetzen möchten, bleibt uns also die Wahl zwischen dem Atom Editor, oder VSCode. Beides sind sehr beliebte und mächtige Editoren. Falls Sie bereits den Atom Editor verwenden und lieben, werden Sie mit ziemlicher Sicherheit dabei bleiben wollen, und die PlatformIO erweiterung für Atom installieren. Für alle die von der Arduino IDE kommen empfehle ich jedoch die Installation von VSCode.
Es gibt 2 Argumente die ich immer wieder höre wenn es um VSCode geht:
- VS steht für Visual Studio, und ich möchte kein Visual Studio verwenden
- VSCode kommt von Microsoft
VSCode steht für Visual Studio Code und ist ein kostenloses, quelloffenes Programm. Der Name ist etwas unglücklich gewählt, da es ein neu entwickeltes Produkt ist, und mit den bestehenden Visual Studio Produkten nur den Namen teilt. Auch wenn Microsoft den open source Gedanken früher nur müde belächelt hat, und in der Open Source Gemeinde nicht den besten Ruf hat, ist die Firma seit 2004 aktiv in diesem Bereich. Eine Auflistung aller open source Releases gibt es unter https://opensource.microsoft.com/. Microsoft hat sich über die Jahre an einer Vielzahl von open source Projekten aktiv beteiligt.
Microsoft selbst bewirbt den Editor mit folgenden Highlights:
- es verwendet IntelliSense - Farbliche Syntaxhervorhebung und Autovervollständigung
- umfangreiche Debuggingfunktionen
- Versionsverwaltung mittel Git
- erweiterbar über Extensions
Die ersten drei Highlights beschreiben genau die Funktionen die uns in der Arduino IDE fehlen. Und das vierte Highlight, die Einbindung von Erweiterungen, ermöglicht es uns PlatformIO zu nutzen.
3. Installation von VSCode
Als erstes gehen wir auf die Seite https://code.visualstudio.com/, laden uns die aktuelle Version herunter und installieren diese.
Nach dem Download installieren wir die Software. Bei den Installationsoptionen gibt es nichts was man wirklich beachten muss. Sie können diese nach Ihren Wünschen anpassen, oder immer auf "Weiter" klicken:
Nach dem ersten Start erscheinen rechts unten ein Paar Meldungen. Die erste erlaubt die Installation eines Sprachpakets. Wir gehen auf "Installieren und neu starten".
Nach dem Neustart erscheint die Meldung dass Git nicht installiert ist. Git ist ein Werkzeug zur Versionsverwaltung, und sollte an dieser Stelle mit einem Klick auf "Git herunterlden" installiert werden.
Es öffnet sich ein Browserfenster mit der Git Seite. Über den Link "Download 2.18.x for Windows" können wir die aktuelle Version herunterladen, und die Installation starten.
Bei der Installation von Git sind einige Optionen zu beachten. Daher dokumentiere ich die komplette Installation mittels Bildschirmfotos:
In diesem Fenster wählen wir Visual Studio Code als Editor aus. Falls das Feld "Weiter >" ausgegraut bleibt, gehen Sie bitte auf "< Zurück" und dann sollte es weiter gehen.
Nach einem Neustart von VSCode sollte nun folgender Bildschirm erscheinen.
Nun haben wir einen mächtigen Texteditor installiert, der uns in der derzeitigen Form jedoch wenig bringt. Wenn ich meinen Arduino Code einfüge sieht es nicht viel anders aus wie im Notepad.
Es gibt keine Möglichkeit den Code zu kompilieren, Bibliotheken zu installieren, oder einen Mikrocontroller auszuwählen. Hier kommen die Extensions ins Spiel: PlatformIO erweitert VSCode genau um diese Funktionen.
3. Die PlatformIO Erweiterung installieren
Auf der linken Seite des VSCode Fensters befinden sich 5 Symbole. Das unterste Symbol (Viereckig) öffnet das Panel zur verwaltung der Erweiterungen.
Im Suchfeld geben wir nun PlatformIO ein, und installieren die aktuelle Version der PlatformIO IDE mit einem Klick auf "Installieren".
Nach einigen Augenblicken ändert sich der Button in "Neu starten" . Nach dem Neustart wird dann noch automatisch die "Microsoft C/C++ Extension for VS Code" installiert. Hier ist ein wenig Geduld gefragt.
In der Ausgabe erscheint die Meldung "Installing PlatformIO Core...". Die Installation wird je nach System einige Zeit in Anspruch nehmen.
Bitte warten Sie bis die Meldung "PlatformIO IDE has been successfully installed! Please reload window" erscheint:
Nach dem Neustart erscheint vermutlich eine Meldung dass Erweiterungen auf der Festplatte geändert wurden, und werden aufgefordert das Fenster erneut zu laden.
Nach wenigen Augenblicken erscheint dann die Startseite von PlatformIO.
Hier können Sie ein neues Projekt starten, ein bestehendes Arduino Prijekt importieren, und sich die Neuigkeiten anschauen.
Nun ist es geschafft. So schwer war das ganze nun auch wieder nicht.
Ich hoffe der heutige Beitrag war Ihnen eine kleine Hife bei der Installation von PlatformIO.
In einem zukünftigen Beitrag zeigen wir Ihnen dann die Installation von Bibliotheken, und und wie Sie ihr erstes Projekt kompilieren und hochladen können.
Bis dahin verabschiede ich mich, und wünsche allen viel Spaß beim experimentieren mit PlatformIO.
Ihr Markus Neumann
9 comments
Michael aka Tyrannus
Ist zwar schon was älter der Blog, aber
ich möchte gerne dem VS-Code noch eine Info hinzufügen wenn ich darf.
Ich persönlich arbeite schon längere Zeit fast ausschliesslich mit VSC und möchte es nicht mehr missen.
Wer sich für die Zukunft für VSC entscheidet als quasi Backend für das proggen, dem sei als plugin für VSC auch Flutter zu empfehlen. Flutter basiert auf dart, ist easy zu erlernen (falls man das überhaupt noch muss) und bietet die Möglichkeit in einen Code native frontends für IOS, Android und Web zu entwickeln.
Gruss nach Deggendorf
Michael
Thorsten Papendorff
Nachtrag zu meinem Kommentar von vorhin……. ich habe keine Möglichkeit über meine Tastatur Eingaben zu tätigen, sprich nach Boards suchen oder auch ein Projekt benennen
Thorsten Papendorff
Bei mir kam nach der Installation keine Meldung das Git fehlt und auch die Installation eines Sprackpaketes wurde nicht angeboten…..
Kann das an der Version von VSCode liegen?
Heiko Hobein
Hallo,
mit Interesse habe ich Ihren Artikel gelesen.
Prima und sehr informativ.
Eine drängende Frage habe ich:
Für ein Druckerprojekt habe ich zwei Projektdateien, welche für die PlatformIO vorbereitet waren, heruntergeladen. Die eine Datei war für Atom, die andere für VScode.
Nun habe ich die für VSCode unter Atom bearbeitet und wollte sie kompilieren, erhielt jedoch ständig eine Fehlermeldung. Dann habe ich sie unter VSCode kompiliert, da lief alles einwandfrei.
Aber ich möchte sehr ungern mit zwei unterschiedlichen Editoren (VSCOde und Atom) arbeiten.
Habe ich etwas falsch gemacht und dürfte der Editor gar nicht das Problem sein? Und wie kann ich ein Projekt so abspeichern, dass es beispielsweise von VSCOde kommt und für Atom vorbereitet ist?
Ich weiß, dass noch viele Angaben fehlen, aber ich wollte meinen Text nicht noch weiter aufblähen und hoffe, er ist einigermaßen verständlich rübergekommen.
Herzlichen Dank
Martin Fitzke
Hallo Markus Neumann,
danke für den Artikel. Ich habe VS Code eigentlich als reinen Editor abgetan, nach dem Artikel habe ich dem Ganzen noch mal eine Chance gegeben. PlattformIO kannte ich noch garnicht, Installation war gut zu machen. Nach ein bisschen hin und her hat es prima geklappt. Danke für die Information :) Ich finde auch: tolle Arbeit.
Viele Grüße,
Martin
Heiner
Hallo,
die Installation von VS Code hat funktioniert. Bei der Installation des Sprachpakets und der PlatformIO startet in beiden Fällen die Installation, kommt aber jeweils zu keinem Ende. Obwohl sich die Installationsanzeige bewegt, scheint es als ob nichts installiert werden würde. Habe das ganze über 2 Stunden laufen lassen.
Weiß jemand hierzu einen Rat wie man diese zwei Pakete installiert bzw. woran es liegt, dass sie sich nicht installieren lassen (Windows 7, 64Bit) ?
Grüße, Heiner
Markus Neumann
Hallo Peter,
Hat Ihre Installationsdatei den Namen "VSCodeUserSetup-x64-1.26.0.exe " ?Ich nutze auch Win 10 64 Bit, Version 1803. Die Fehlermeldung habe ich so noch nie gesehen. Ist das der genaue Wortlaut der Fehlermeldung?
Sigi
Installation auf Win 10, Home, 64bit, Version 1803 hat nach eurer Anleitung bestens geklappt.
Freue mich auf die nächsten Blogs.
Tolle Arbeit!!!
Peter Necas
Ich wollte VSCode unter Win 10, Home, 64bit, Version 1803 installieren.
Leider kommt die Meldung: “Dieses Programm unterstützt die auf ihrem Computer installierte Version nicht.”
Was nun?
LG Peter