Einführung ins Espruino-Board
Seite 4: Alternative: Die Web-IDE
Etwas Komfort
Die Shell des Espruino-Boards bietet ein Mindestmaß an Komfort. Beispielsweise speichert es die bisher eingegebenen Befehle wie eine moderne Unix-Shell. Mit den Cursor-Up- und -Down-Tasten kann man sich durch diese Historie bewegen und zuvor eingegebene Kommandos erneut ausführen.
Darüber hinaus kann man mit der edit-Funktion die Definition von Funktionen bearbeiten. Um zum Beispiel die toggle-Funktion zu verändern, muss man lediglich folgendes eingeben:
>edit(toggle)
Der “Komfort-Modus” ist etwas gewöhnungsbedürftig, weil man nach Änderungen, die man aus der Historie geholt hat, den Cursor erst immer bis zum Ende der Zeile bringen muss, um das neu geschriebene Kommando auszuführen. Tut man das nicht, fügt die Shell an der aktuellen Cursor-Position ein Zeilenende-Zeichen ein.
Dieses Verhalten wirkt sich auch auf die Definition von Funktionen aus. Eine Funktion wie die folgende einzugeben, ist zum Beispiel kein Problem:
function foo() {
}
Anders sieht es für Anhänger alternativer Formatierungen aus:
function foo()
{
}
Gibt man nur “function foo()” ein und drückt dann die Return-Taste, führt das zu einer Fehlermeldung:
ERROR: Got EOF expected ‘{‘ at line 1 col 15
Web-IDE
Alternativ zur spartanischen Schnittstelle eines seriellen Monitors bieten die Entwickler eine Web-IDE an, die zurzeit nur in Googles Chrome-Browser läuft. Sie kann per Mausklick über den Google Chrome Store installiert werden.
Die IDE ist in der Mitte geteilt. Auf der linken Seite gibt es ein Fenster mit einem seriellen Monitor und auf der rechten Seite einen Editor für JavaScript-Code. Über Buttons und Menüs in der Toolbar kann man eine serielle Schnittstelle aussuchen und sich mit dem daran angeschlossenen Espruino-Board verbinden. Dann kann man JavaScript-Code auf der rechten Seite editieren und per Knopfdruck nach links verschieben.
Das Ganze funktioniert sogar “graphisch”, das heißt, Code lässt sich auch mit der Maus visuell modellieren. Sonderlich praktisch ist das im täglichen Gebrauch allerdings nicht.
Prinzipiell ist die IDE eine nette Idee, aber sie ist in vielen Belangen noch recht wackelig, so dass halbwegs erfahrene Benutzer mit einem guten Text-Editor und einem seriellen Monitor deutlich besser bedient sein dürfen.
Eine wichtige Option bietet die IDE aber: Sie ermöglicht ein komfortables Upgrade auf die aktuelle Firmware-Version.
Fazit
Espruino hat prinzipiell das Zeug zu einem ernsthaften Arduino-Konkurrenten, denn JavaScript ist allemal einsteigerfreundlicher als C/C++ und auch die Hardware bietet deutlich mehr. Allerdings steckt die IDE noch in den Kinderschuhen und mit der Unzahl an Arduino-Bibliotheken und -Shields kann das Projekt lange nicht konkurrieren. Darüber hinaus macht Espruino den Sprung von JavaScript zu C nicht ganz einfach und ab einer gewissen Komplexität der Anwendung wird dieser unvermeidlich sein.
Gemessen an der direkten Konkurrenz, wie zum Beispiel dem Tessel-Projekt, schneidet Espruino hervorragend ab. Das Board ist deutlich preiswerter und bereits jetzt verfügbar. Die Software läuft sogar auf einigen anderen Mikrocontroller-Boards und die Portierung auf weitere Plattformen sollte kein großes Problem darstellen. Insgesamt bildet es eine hervorragende Grundlage für die iterative und prototypische Entwicklung von Elektronik-Projekten. (phs)