Produkttest

Oxocard: Programmieren lernen mit einem Schweizer Minicomputer

David Lee
31.1.2023

Auf den kreditkartengrossen Computer lädst du eigene Programme oder mitgelieferte Beispiele. Er wird so zur Mini-Spielkonsole, zum Messgerät oder was immer du willst. Beim Ausprobieren hat es mir vor allem das teurere Modell angetan.

Oxocards sind programmierbare Minicomputer. Erfunden haben es die Schweizer, genauer die Oxon AG, eine kleine Bude aus dem Kanton Bern. Die Oxocards sind in erster Linie dazu gedacht, das Programmieren zu erlernen. Bislang gibt es vier Modelle. Eines davon, die Oxocard Blockly für Kinder ab zehn Jahren, lasse ich hier weg. Die anderen drei, um die es hier geht, werden ab 14 Jahren empfohlen. Mit ihnen lassen sich auch komplexe Programme realisieren und sie können auch für Erwachsene spannend sein.

Die Oxocard Science, Galaxy und Artwork haben die Grösse einer Kreditkarte und werden auch als Oxocard Mini bezeichnet. Darauf befindet sich ein quadratischer Bildschirm mit 240 × 240 Pixeln und 2,5 Zentimeter Seitenlänge. Dazu gibt es fünf Tasten – vier Richtungstasten und eine Taste in der Mitte. Strom beziehen die Karten über den USB-Anschluss auf der Unterseite.

Programmiert wird – zum Glück – nicht auf der Oxocard selbst, sondern in einem webbasierten Editor. Du kannst also dein Notebook oder deinen Desktop-Computer verwenden. Der Minicomputer ist über das WLAN mit dem Editor verbunden. Die Programme im Editor können jederzeit direkt auf die Oxocard übertragen und laufen gelassen werden. Falls du irgendwo kein WLAN verwenden kannst, ist auch eine Verbindung über das USB-Kabel möglich. Dazu braucht der Computer aber einmalig eine Treiberinstallation und die Karte unter Umständen ein Firmware-Update (was dann ohne WLAN nicht geht).

Wozu braucht es eine eigene Hardware?

Die erste Frage, die bei mir aufgetaucht ist: Wieso brauche ich überhaupt eine Karte, wenn ich sowieso auf meinem normalen Computer programmiere? Wäre es nicht besser, ich könnte auch gleich dort die Programme laufen lassen – auf einem schönen grossen 4K-Bildschirm?

Für die Existenz der Hardware gibt es eine Reihe von Gründen. Erstens: Die Programme lassen sich auf der Karte dauerhaft speichern, damit sie unabhängig vom Editor funktionieren. Durch die Programmierung von Spielen kann sie zum Beispiel zu einer kleinen, einfachen Handheld-Konsole werden.

Zweitens: Alle drei Karten haben einen 3D-Beschleunigungssensor eingebaut. So können zum Beispiel Geschicklichkeitsspiele programmiert werden, die auf deinem «normalen» PC nicht funktionieren würden.

Eine der drei Karten, die Oxocard Science, verfügt über zahlreiche weitere Sensoren. Sie können die Temperatur, den Luftdruck, die Luftfeuchtigkeit, den CO2-Gehalt, die Licht- und Infrarotstärke, den Schallpegel und die dominante Schallfrequenz messen.

Dieses Programm gibt dir anhand diverser Messdaten Hinweise, ob du das Zimmer lüften solltest.
Dieses Programm gibt dir anhand diverser Messdaten Hinweise, ob du das Zimmer lüften solltest.
Quelle: David Lee

Einrichten der Oxocard

Der Hersteller hat mir eine Powerbank namens Oxocharger und ein sogenanntes Gooseneck-USB-Kabel mitgeliefert. Ich finde vor allem das Kabel sehr praktisch. Es lässt sich in eine bestimmte Form biegen und hält diese Position dann – ähnlich wie der Arm einer Leselampe. Die Powerbank ist schwer genug, um die Karte mit dem USB-Kabel zu halten. Strom verbraucht die Karte sehr wenig, das Akkupack hält schätzungsweise mehrere Tage.

Oxocard, Gooseneck-Kabel, Charger.
Oxocard, Gooseneck-Kabel, Charger.
Quelle: David Lee

Das Gerät wird in zwei Schritten mit dem heimischen Netz verbunden. Zuerst fotografierst du einen QR-Tag vom Bildschirm der Karte ab, wodurch eine Wifi-Direct-Verbindung entsteht. Dann übermittelst du das WLAN-Passwort an die Karte. Die Karte verbindet sich darauf hin mit deinem WLAN und lädt bei Bedarf Firmware-Updates herunter.

Danach rufst du den Webeditor auf. Bevor du loslegen kannst, musst du den Editor mit der Karte verbinden. Dazu gibst du einen dreistelligen Code ein, den dir die Karte anzeigt. Diesen Schritt musst du nur einmal ausführen, es sei denn, du hast mehrere Oxocards am Start.

Zahlreiche Beispiele

Mit diesem Editor hast du Zugriff auf zahlreiche Beispielprogramme, die du alle mit einem Klick ausprobieren kannst. Das Lernprinzip besteht darin, diese Programme abzuändern und so zu verstehen, was die einzelnen Befehle und Werte bewirken. Zu vielen Programmen – vor allem den grundlegenden – gibt es ein Tutorial, das dir Schritt für Schritt das Programm erklärt.

Programmiert wird in Oxoscript. Tatsächlich hat Oxon eigens eine Programmiersprache für die Karten erfunden. Oxoscript ist stark an Python angelehnt. Wenn du Oxoscript lernst, wirst du später schnell auch mit Python zurechtkommen. Python selbst ist für die Minicomputer zu leistungshungrig.

Ich finde die Programmbeispiele im grossen Ganzen sehr gut gelungen. Zum Beispiel wird das trockene, aber wichtige Thema Zufallszahlen mit hübschen Kreisen visualisiert. Das Programm bleibt mit nur sieben Zeilen trotzdem sehr simpel.

Dieses einfache, aber hübsches Beispiel veranschaulicht Zufallszahlen.
Dieses einfache, aber hübsches Beispiel veranschaulicht Zufallszahlen.
Quelle: David Lee

Neben dem Grundlagenteil gibt es für die drei Karten weitere Programmbeispiele. Die Karte «Galaxy» ist auf Spiele ausgerichtet und enthält neben zahlreichen Demos die drei Spiele-Klassiker Asteroids, Lunar Lander und Miner. «Artwork» ist ähnlich, hat den Fokus aber auf grafischen Effekten. Für «Science» gibt es Beispiele, was du mit den Messdaten der Sensoren anstellen kannst. So gibt dir ein Programm Hinweise, ob die Wohnung gelüftet werden sollte. Oder eine Blume zeigt durch ihr Gesicht an, ob sie glücklich ist – sprich, ob sie genug Licht bekommt.

Lichtsensor von der Hand verdeckt – die Pflanze ist unzufrieden.
Lichtsensor von der Hand verdeckt – die Pflanze ist unzufrieden.
Quelle: David Lee
Lichtsensor mit LED beleuchtet – die Pflanze ist happy.
Lichtsensor mit LED beleuchtet – die Pflanze ist happy.
Quelle: David Lee

Grundsätzlich sind alle Programme für alle Karten verfügbar. Du kannst also auch mit der Science-Karte Asteroids spielen und abändern. Es wird bloss kein Sound ausgegeben, weil die Science-Karte als einzige keinen Lautsprecher hat. Die Programme, die Luftdruck, Temperatur und ähnliches auslesen, funktionieren hardwarebedingt nur mit der Science-Karte.

Schnelle Erfolge

Obwohl ich mit Python kaum vertraut bin, komme ich schnell voran – viel schneller etwa, als wenn ich auf dem C64 etwas in Basic programmiere. Python, respektive Oxoscript, ist eine moderne Programmiersprache, in der du eigene Funktionen und Objekte definieren kannst. Dank der vielen Beispiele muss ich kaum je bei null beginnen. Zudem hilft mir die durchsuchbare Dokumentation. Wenn ich mal wieder vergessen habe, wie eine for-Schlaufe in Python/Oxoscript geht, kann ich das im Editor nachschlagen.

Nicht zuletzt befindet sich auf der Karte ein moderner Chip. Der ESP32 mit 2 MB RAM ist speziell für Entwicklerboards wie die Oxocard gemacht. Für die simplen Programme reicht seine Leistung locker aus. Es dauert ungefähr eine Sekunde, um ein Programm auf die Karte zu beamen und zu starten.

Durch die Beispiele und die Dokumentation habe ich in etwa einer halben Stunde ein Skript fertig, das die Umgebungslautstärke anzeigt. Und zwar nicht nur den aktuellen Messwert, der sehr zufällig ist, sondern den Durchschnitt der letzten zehn Messungen.

Schnell gemacht: Ein kleines Programm, das die Lautstärke anzeigt.
Schnell gemacht: Ein kleines Programm, das die Lautstärke anzeigt.
Quelle: David Lee

Die Oxocards haben jedoch auch ihre Limiten. Ich hatte beispielsweise die Idee, ein Gitarrenstimmgerät zu programmieren. Schliesslich kann die Oxocard Science mit dem eingebauten Mikrofon die dominante Frequenz messen. Allerdings wird der Wert nur auf 125 Hz genau berechnet. Für ein Stimmgerät viel zu wenig.

Auch meinen Versuch, ein Musikstück zu programmieren, gab ich nach einiger Zeit auf. Zwar lassen sich auf den Modellen Galaxy und Artwork neben fünf vorgefertigten Sound-Effekten auch Einzeltöne abspielen. Und damit eine Melodie. Mehrstimmig geht allerdings nicht, und der Ton überschlägt sich sehr schnell. Auch stürzte das Gerät bei der Soundausgabe wiederholt ab. Wenn Sound und Musik für dich wichtig sind, ist die Oxocard nicht das ideale Gerät.

Grösste Limite: Der Bildschirm

Für Games ist der Bildschirm etwas gar klein. Insbesondere, wenn sich Figuren schnell bewegen sollen. Diese müssen eine gewisse Grösse haben, damit man sie überhaupt erkennt und auseinanderhalten kann. Dadurch wird es eng auf dem Bildschirm. Sehr gut ist das am Beispiel-Game Asteroids zu sehen. Sobald die Asteroiden ins Bild kommen, sind sie schon fast beim Raumschiff. Das Spiel muss daher langsam laufen, um überhaupt spielbar zu sein, und es macht trotz besserer Grafik weniger Spass als das Original von 1979.

Man kann das aber auch sportlich nehmen: Auf einem so kleinen Bildschirm ein Spiel mit gutem Gameplay zu machen, ist eine spannende Herausforderung. Frogger, ein weiterer mitgelieferter Klassiker, ist ein Beispiel, wie das gelingen kann. Das Spiel ist trotz Mikro-Bildschirm gut spielbar. Natürlich hast du auch Zugriff auf den Quellcode des Spiels.

Frogger froggt auch auf der Oxocard ganz ordentlich.
Frogger froggt auch auf der Oxocard ganz ordentlich.
Quelle: David Lee

Fazit: Leichter Einstieg, macht Spass

Es gibt zahlreiche andere Entwicklerboards, die bekanntesten dürften der Arduino und der Raspberry Pi sein. Aber die Oxocard ist mit eigenem Bildschirm, Tasten und weiterer Hardware ein vollständiges System. Nicht so leistungsfähig wie ein Raspberry Pi, dafür fällt der Einstieg leichter. Du bekommst alles mit, was du brauchst, inklusive nützlicher und teilweise ausführlich erklärter Programmbeispiele. Ich finde das Konzept sehr gelungen.

Unabhängig vom Alter: Wer Freude am Programmieren hat, dürfte Gefallen an den Minicomputern finden. Die Science-Variante ist für Erwachsene eindeutig am interessantesten. Mit ihren Sensoren hat sie das Potenzial für nützliche Anwendungen, die über blosse Spielereien hinausgehen. Schade ist nur, dass sie keinen Lautsprecher hat. So lässt sich kein Warnton ausgeben, wenn ein Messwert über- oder unterschritten wird.

Die beiden anderen Karten Galaxy und Artwork verfügen über eine Soundausgabe, ansonsten haben sie, abgesehen vom Preis, keine Vorteile. Ihre Beispielprogramme lassen sich auch auf der Oxocard Science ausprobieren und abändern. Die Soundmöglichkeiten sind zudem recht rudimentär. Meine Empfehlung für programmierinteressierte Erwachsene ist somit die Oxocard Science und das sehr praktische Gooseneck-USB-Kabel.

Titelbild: David Lee

106 Personen gefällt dieser Artikel


User Avatar
User Avatar

Durch Interesse an IT und Schreiben bin ich schon früh (2000) im Tech-Journalismus gelandet. Mich interessiert, wie man Technik benutzen kann, ohne selbst benutzt zu werden. Meine Freizeit ver(sch)wende ich am liebsten fürs Musikmachen, wo ich mässiges Talent mit übermässiger Begeisterung kompensiere. 


Computing
Folge Themen und erhalte Updates zu deinen Interessen

Diese Beiträge könnten dich auch interessieren

  • Produkttest

    Oxocard Connect: Elektronik selber bauen und programmieren

    von David Lee

  • Produkttest

    Bastle deine eigene Retrokonsole mit dem Premium Raspberry Pi Gaming Kit

    von Quentin Aellen

  • Produkttest

    Die Filmbeere: Raspberry Pi 4 und Kodi

    von Martin Jud

Kommentare

Avatar