Programme, mit denen sich der LEGO® Mindstorms® EV3 in C ähnlichen Programmiersprachen ansteuern lässt, gibt es einige. RobotC, MonoBrick oder ev3dev sind die bekanntesten Vertreter. Jedoch gibt es bei den einzelnen Programmen unterschiedliche Hürden. So muss für RobotC eine relativ teure Lizenz erworben werden und sowohl MonoBrick als auch ev3dev benutzen ein eigenes Betriebssystem, welches man erst auf eine microSD-Karte installieren muss, um dann den EV3 damit zu booten. Dies bedeutet viel Aufwand, bis man mit dem eigentlichen C-Programmieren anfangen kann. Wir haben lange nach einer simplen Möglichkeit gesucht, um mit dem EV3 schnell textuell in der Programmiersprache C zu programmieren.

Was ist c4ev3?

Da kommt nun c4ev3 ins Spiel. c4ev3 bedeutet frei übersetzt „C für den EV3“ und genau das ist es auch. Hinter c4ev3 steht eine Projektgruppe der Hochschule Aschaffenburg, die das Codepaket im Rahmen des EVELIN Projekts erstellt hat. Die für c4ev3 zuständige Projektgruppe unter Prof. Dr.-Ing. Jörg Abke ist aktuell sehr engagiert und entwickelt c4ev3 stetig weiter.

Der Clou an c4ev3 ist, dass die erstellten Programme nativ auf dem EV3 Betriebssystem laufen. Alles was du benötigt ist eine aktuelle Version von Eclipse für C/C++. Die Programmierumgebung wird durch ein c4ev3-Plugin angepasst und bekommt eine Schaltfläche, von der aus man direkt seinen Code auf den EV3 laden kann. So wie es aussieht, sollte der EV3 auf allen Kommunikationswegen ansprechbar sein. Jedoch funktioniert aktuell nur die Methode über USB-Kabel zuverlässig, Bluetooth und WLAN stellen momentan keine zufriedenstellende Alternative da. Des Weiteren wäre eine Auswahl wünschenswert, wo sich das geschriebene Programm auf dem EV3 befinden soll. Zur Auswahl stehen hierfür der EV3 interne Speicher, eine externe microSD-Karte oder ein USB-Stick, der am USB Port angeschlossen wird. Jedoch funktioniert aktuell nur die Variante über microSD-Karte einwandfrei. Der interne Speicher und ein externer USB-Stick können nur über die Schaltfläche „Upload and Run“ benutzt werden. Somit wir immer ein PC in der Nähe benötigt, um das Programm zu starten.

Lange Rede kurzer Sinn, nur die Variante mit microSD-Karte und USB-Kabel funktioniert zum aktuellen Zeitpunkt zuverlässig.  (Stand: August 2017). Das macht jedoch nichts, denn in einer kurzen Stellungnahme hat Professor Jörk Abke sich positiv geäußert, dass die bekannten Fehler behoben werden sollen: „c4ev3 ist noch sehr jung und wir freuen uns, es mit dem Feedback der Nutzer zu vollenden“. In einem separaten Artikel listen wir alle Probleme auf, die uns zum aktuellen Zeitpunkt bekannt sind und geben teilweise Tipps zum Umgehen dieser Probleme. Wenn wir von den Entwicklern Informationen bekommen was der aktuelle Status ist, lassen wir es euch dort wissen.

Installation + Beispiele

Die Installation von c4ev3 ist ein kleines bisschen komplizierter, zum Glück gibt es ein Installationsprogramm, das die Arbeit etwas vereinfacht. Wie man c4ev3 installiert, haben wir darum in einer Schritt-für-Schritt-Anleitung beschrieben. Nach der Installation kommt der eigentliche Spaß: Das Programmieren. Wenn man sich die EV3-API anschaut sind viele Befehle gut verständlich. Probieren geht über Studieren, darum haben wir ein kleines Tutorial mit Aufgaben vorbereitet.

Aktueller Stand

Zusammengefasst lässt sich sagen: c4ev3 macht vieles richtig. Auch wenn manchmal noch kleine Stolpersteine im Weg liegen ist c4ev3 eine der interessantesten C-Umgebungen für den EV3. Wir wünschen uns, dass die Entwickler die kleinen Unstimmigkeiten beseitigen.

Wie euch c4ev3 gefällt und was ihr davon haltet könnt ihr uns gerne in den Kommentaren mitteilen. Wir freuen uns auf Feedback von euch.