TonUINO Spiele - Umstieg von Nano auf Every

Boerge1 hat das Quiz-Spiel und nun auch ein Memory-Spiel implementiert, was den TonUINO von einem Abspielgerät auf die Ebene eines interaktiven Spielgerätes hebt und ihn damit nochmals interessant für Jugendliche und Erwachsene (also die ganze Familie) macht. Deshalb wollte ich auf meinem TonUINO beide Spielvarianten gern wahlweise spielen können, ohne die Firmware jedes Mal umflashen zu müssen.

Sind allerdings per „define“ beide Spielvarianten aktiv, stellt sich heraus, dass der Programmspeicher eines Arduino Nano zu klein und damit der Umstieg auf einen Arduino Nano Every erforderlich ist.
Da der Arduino Nano Every aber bereits in der TonUINO-TNG Firmware berücksichtigt ist, wollte ich die Firmware augenblicklich (zu nächst testweise) für den Nano Every kompilieren.

Meine Programmierumgebung ist die Arduino IDE V 2.3.2 mit den notwendigen und aktuellen Bibliotheken sowie der korrekt installierten „platform.local.txt“ auf Windows PCs (Win10 & Win11), so dass die TonUINO-TNG Firmware für einen Arduino Nano ohne jegliche Warnung oder Fehlermeldung kompiliert wird. Damit der Nano Every als Board zur Verfügung steht, musste noch die Bibliothek „Arduino megaAVR Boards“ installiert werden.

Nachdem nun das Board „Arduino Nano Every“ ausgewählt werden konnte, brach die Kompilierung jedoch mit etlichen Fehlermedungen ab und hinterließ neben großer Enttäuschung auch eine gehörige Portion Ratlosigkeit.

Ich erinnerte mich jedoch an Fehlermeldungen aus den Anfängen meiner „TonUINO-Zeit“, die erst über die korrekte Installation der „platform.local.txt“ gelöst werden konnten. Und siehe da:

Durch die Installation der Bibliothek für den Nano Every ist ein neuer Zweig entstanden, in den die Datei „platform.local.txt“ ebenfalls kopiert werden muss
„C:\Users\nobl\AppData\Local\Arduino15\packages\arduino\hardware\megaavr\1.8.8.“
(@Boerge1 Könnte vielleicht in die „README.md“ aufgenommen werden)

Nach dem Neustart der Arduino IDE wurde die Kompilierung nun ohne jegliche Meldung mit folgendem Ergebnis erfolgreich abgeschlossen:

Der Sketch verwendet 34624 Bytes (70%) des Programmspeicherplatzes. Das Maximum sind 49152 Bytes.

Globale Variablen verwenden 1475 Bytes (24%) des dynamischen Speichers, 4669 Bytes für lokale Variablen verbleiben. Das Maximum sind 6144 Bytes.

In Ermangelung eines Arduino Nano Every konnte zwar noch kein Funktionstest gemacht werden, die Bestellung eines entsprechenden Mikrocontrollers ist aber voller Zuversicht veranlasst.

1 „Gefällt mir“

Du könntest auch erstmal (bis der Every da ist) das Feature SerialInputAsCommand ausschalten (constants.hpp) und die Logs verringern (z. B. in logger.hpp Zeile 6 s_warning einsetzen).

1 „Gefällt mir“

Danke für den Tip :smiley:
Bei meiner Konfiguration genügt es sogar, nur in der logger.hpp von „debug“ auf „warning“ umzuschalten.
Jetzt muss ich erstmal ein Verzeichnis fürs Memory sinnvoll füllen.
Da heute eine selbstgezeichnete Platine von JLCPCB kommen soll, werden vermutlich Hardwarebasteleien zunächst eine höhere Priorität haben.
Wenn es so klappt, wie ich mir vorstelle, habe ich einen separaten Test TonUINO.