Falls Sie beim Einspielen einen Fehler erhalten, prüfen Sie zuerst den eingestellten Port. Die Einstellungen finden Sie im Menü direkt unter Werkzeuge, der gewählte Port sollte auf (Spresense) enden. Stoßen Sie beim Einrichten der IDE auf weitere unerwartete Probleme, werfen Sie am besten einen Blick in die englischsprachige Originalanleitung [7].
Hello World
So wie Software-Entwickler sich beim Einstieg in eine neue Programmiersprache oder -umgebung zuerst an einem “Hello World” versuchen, probiert man es bei Mikrocontrollern zuerst mit einem einfachen Blink-Programm.
Ein solches finden Sie unter Datei | Beispiele | 01. Basics | Blink. Nach dem Laden übertragen Sie das Programm durch einen Klick auf das Hochladen-Icon (Kreis mit Pfeil nach rechts) auf das Spresense-Board. Die nun blinkende LED lässt sich allerdings leicht übersehen, denn die auf der Platine neben der USB-Buchse angebrachte LED ist sehr klein und aus vielen Blickwinkeln kaum zu erkennen.
Ein wirklich interessanter Bestandteil des Spresense-Boards ist der integrierte GPS-Empfänger. Unter den Beispielprogrammen liefert das System eine Demo mit, über die sich die aktuelle Position auslesen lässt. Das Programm laden Sie über Datei | Beispiele | Beispiele für Spresense | GNSS | gnss in die Entwicklungsumgebung. Als Resultat erhalten Sie eine Position mit Breiten- (lat) und Längengrad (lon). Um aus diesen Koordinaten eine Adresse zu ermitteln, bietet sich zum Beispiel Google Maps [8] an.
Neben den genannten Programmen für Blink und GPS finden sich unter den Demos auch Beispiele für Audioanwendungen, die Kamera, einfache neuronale Netzwerke, den Zugriff auf EEPROM, eMMC, Servo, SPI, I2C sowie vieles mehr. Sie können alle Beispiele einfach ausprobieren und den Code in eigene Projekte integrieren. Weitere interessante Projekte mit dem Spresense-Board sammelt die Webseite Hackster [9] in einer eigenen Kategorie.
Spresense SDK
Das Spresense SDK ist im Vergleich zur Arduino IDE erheblich leistungsfähiger, gerät dadurch aber auch wesentlich komplexer. Sony stellt die Software auf der Homepage des Projekts für alle gängigen Betriebssysteme zur Verfügung.
Sony erfindet für die hauseigene Software das Rad nicht neu, sondern setzt auf das Echtzeit-Betriebssystem NuttX auf, das direkt auf dem Mikrocontroller läuft. Es stellt eine Bash-ähnliche Kommandozeile bereit. Bevor Sie NuttX auf dem Spresense verwenden können, fallen einige Vorarbeiten an, die wir hier für Ubuntu 18.04 beschreiben. Möchten Sie die Installation für ein anderes Betriebssystem vornehmen, folgen Sie den Anweisungen des Herstellers [10].
Als Erstes müssen Sie sicherstellen, dass das von Ihnen genutzte Benutzerkonto der Gruppe dialout angehört. Das sollte eigentlich schon bei der Installation der Arduino IDE geschehen sein, eine Prüfung kann aber nicht schaden. Taucht beim Ausführen des Kommandos grep dialout /etc/group Ihr Benutzername nicht auf, müssen Sie ihn noch hinzufügen, unter Ubuntu beispielsweise mit dem Kommando sudo usermod -aG dialout $USER.
Anschließend laden Sie die Software herunter und spielen das Programm ein (Listing 2, Zeilen 1 und 2). Um das installierte Environment zu verwenden, müssen Sie es noch aktivieren (Zeile 3). Dieser Schritt fällt jedes Mal an, wenn Sie mit dem Spresense SDK arbeiten wollen. Jetzt laden Sie noch die aktuelle Version von NuttX herunter, indem Sie einen Klon der entsprechenden Quellcode-Repositories erstellen (Zeile 4).
Listing 2
$ wget https://raw.githubusercontent.com/sonydevworld/spresense/master/install-tools.sh $ bash install-tools.sh $ source ~/spresenseenv/setup $ git clone --recursive https://github.com/sonydevworld/spresense.git
Das Spresense SDK steht nun bereit, um das erste Testprogramm zu bauen (“Hello World”). Das erledigen Sie mit den Kommandos aus Listing 3. Dabei erscheinen im Terminal eine Reihe von Warnungen, die Sie vorerst ignorieren dürfen. Sie weisen darauf hin, dass der Bootloader noch nicht in der aktuellen Version auf dem Spresense-Board vorhanden ist.
Um nach einem ersten Durchlauf des Testprogramms die richtige Version zu ermitteln, führen Sie das Kommando, das die Warnung auswirft, noch einmal aus. Dabei liefert das Programm Hinweise zur aktuellen Firmware-Version und zur Installation der neuen Software (Listing 4).
Listing 3
$ cd ~/spresense/sdk $ tools/config.py --kernel release $ tools/config.py examples/hello $ make buildkernel $ make
Listing 4
$ tools/config.py examples/hello
WARNING: New loader v1.3.0 is required, please download and install.
Download URL : https://developer.sony.com/file/download/download-spresense-firmware-v1-3-000
Install command:
1. Extract loader archive into host PC.
./tools/flash.sh -e <download zip file>
2. Flash loader into Board.
./tools/flash.sh -l /home/mmohr/spresense/firmware/spresense -c <port>





