einfache Textdarstellung für 16x16 LED Matrix?

Moin,
für den fortgeschrittenen Entwickler mag meine Frage profan klingen, aber ich verzweifele gerade an einer wahrscheinlich banalen Aufgabe.
Ich möchte über einen Arduino NANO ein WS2812 16x16 LED Matrix Board derart ansteuern, dass bis zu zwei Ziffern (dynamisch) gleichzeitig und vollständig angezeigt werden.
Diverse Libraries sollen das können, allerdings fehlen überall Beispiele für eine derart profane Aufgabe.
Den besten Versuch konnte ich noch mit der Adafruit_NeoMatrix Library erzielen. Allerdings gibt es da nur zwei verschiedene Schriftarten, die eine zu klein, die andere zu breit.
Da ich nur die Ziffern 0-9 benötige, hab ich mir schon mal einen Font entsprechend angepasst und im Adafruit_Gfx/Fonts Ordner abgelegt. Der lässt sich auch fehlerfrei mit compilieren, das ist nicht mein Problem.
Ich hab irgendwo einen Beispielcode gefunden, der mit

matrix.setFont(Fontname);

den Font umstellt. Das läuft bei mir aber direkt auf einen Compiler-Fehler.
Ich brauche auch keine Laufschrift, kein BlinkiBlinki oder sonst was. Und da ich kein Programmierer bin, brauche ich leider auch immer etwas, wo dran ich mich lang hangeln kann.
Vielleicht kann mir ja jemand mit einem Codeschnipsel oder einem Link zu einem einfachen Beispiel geben, mit dem ich weiter machen kann?!
Anbei mal der Adafruit_Matrix Code, mit dem ich bisher die besten Ergebnisse erziele:

#include <Adafruit_GFX.h>
#include <Adafruit_NeoMatrix.h>
#include <Adafruit_NeoPixel.h>
#include <Fonts/DSEG14_Modern_Regular_16Bitmaps.h>
#define PIN 6
Adafruit_NeoMatrix matrix = Adafruit_NeoMatrix(16, 16, PIN,
  NEO_MATRIX_TOP     + NEO_MATRIX_LEFT +
  NEO_MATRIX_COLUMNS + NEO_MATRIX_ZIGZAG,
  NEO_GRB            + NEO_KHZ800);
const uint16_t colors[] = {
  matrix.Color(247, 20, 210), matrix.Color(0, 255, 0), matrix.Color(0, 0, 255) };
void setup() {
  matrix.begin();
  matrix.setTextWrap(false);
  matrix.setBrightness(10);
  matrix.setTextColor(colors[0]);
  matrix.setTextSize(2);
//  matrix.setFont(&DSEG14_Modern_Regular_16Bitmaps);
}
int x    = matrix.width();
int pass = 0;
void loop() {
  int cnt = 0;
  for (int cnt = 0; cnt <= 39; cnt++) {
  
    matrix.fillScreen(0);
    matrix.setCursor(0, 1);
    matrix.print(cnt);
    if(--x < -36) {
      x = matrix.width();
      if(++pass >= 3) pass = 0;
      matrix.setTextColor(colors[pass]);
    }
    matrix.show();
    delay(100);
  }
}

Die Zeile, in der ich versuche die Schriftart zu ändern, ist auskommentiert. Ich hab mir auch so was wie FastLED und LEDText angeschaut. Komme aber mit deren Beispielen und der jeweiligen Doku nicht weiter, da ich die tatsächliche Syntax hinter den Befehlen nicht kapiere und die Beispiele wieder mal komplett mit für mich nutzlosem Zeug überfrachtet sind. :frowning:
Dieses "keep it simple" scheint bei der Darstellung von Text nicht sonderlich beliebt zu sein.
Gruß
Sven

na dann stell mal deinen Font auch dazu also deine Fonts/DSEG14_Modern_Regular_16Bitmaps.h

Hallo Sven,

Also wie sieht denn das Originalbeispiel aus das sich compilieren lässt?

Du schreibst mit

matrix.setFont(Fontname);

bekommst du eine Compiler-Fehlermeldung poste auch die Fehlermeldung

quer von einem Programm ins anderes einen einzelnen Befehl übertragen funktioniert nur sehr bedingt.
Dazu müssen schon in beiden Programmen exakt die gleichen libraries verwendet werden.

viele Grüße Stefan

Ich habe mal gegoogelt.

Hast du dieses Codebesipiel auch schon mal ausprobiert?

Das erzeugt eine Laufschrift. Trotzdem erscheint mir das vielversprechend als Ausgangspunkt zu sein.

viele Grüße Stefan

das Problem ist nicht die grundsätzliche Darstellung von Text (weil das geht mit seinem Sketch ja eh mit dem Standard Font) sondern das Umschalten auf einen anderen Font.

Spiel mich da gerade rum... klappt auch nicht mit den Standard fonts aus der GFX Grahics Using Fonts | Adafruit GFX Graphics Library | Adafruit Learning System ... erscheint alles nur in den ersten beiden Zeilen (die ersten "32 Pixel").

Wäre halt schön wenn die Original-Poster sich bereit halten und auf Fragen zeitnah eingehen könnten. Man sieht ja den Online-Status. Naja. Vieleicht ist es auch gar nicht wichtig. Räum' ich das Display halt wieder weg, und schau mir mal ESP now und RTC ^^ an ...

StefanL38:
Ich habe mal gegoogelt.

Hast du dieses Codebesipiel auch schon mal ausprobiert?

Neomatrix scrolling text example on an Arduino - Arduino Learning

Das erzeugt eine Laufschrift. Trotzdem erscheint mir das vielversprechend als Ausgangspunkt zu sein.

viele Grüße Stefan

Hallo Stefan,
das entspricht als Basis genau meinem Sketch. Dem hab ich die Laufschrift abgewöhnt und statt dessen einen simplen Counter gebaut. Das Problem ist, dass man der entsprechenden Library über diesen Befehl:

matrix.setTextSize(2);

genau zwei Textgrößen mitgeben kann. Setze ich eine 1, ist der Text nur 8 Pixel hoch. bei der 2 dann mit der richtigen Höhe, aber viel zu breit. Ich konnte leider auch nicht ermitteln, welcher font verwendet wird, sonst hätte ich dort angesetzt.
Gruß
Sven

noiasca:
das Problem ist nicht die grundsätzliche Darstellung von Text (weil das geht mit seinem Sketch ja eh mit dem Standard Font) sondern das Umschalten auf einen anderen Font.

Spiel mich da gerade rum... klappt auch nicht mit den Standard fonts aus der GFX Grahics Using Fonts | Adafruit GFX Graphics Library | Adafruit Learning System ... erscheint alles nur in den ersten beiden Zeilen (die ersten "32 Pixel").

Habe eben nochmal einen vorgegebenen Font probiert. Damit bekomme ich ein neues Ergebnis. Immerhin scheint so etwas angezeigt zu werden, wenn auch stark verschoben. Da forsche ich mal weiter.
Gruß
Sven

So,
ich habe eine vorläufige Lösung. Leider hat die 7 Segment Schrift, welche ich für am besten lesbar halte (zumal auf größere Distanzen) die unangenehme Eigenschaft, dass da "unsichtbare" Pixel am Rand sind, wodurch das am Ende mit der Breite nicht passt. Die Schriftart "Crushed" in der Größe 18 passt aufs Display. Ach ja, auf dieser Seite generiert:
http://oleddisplay.squix.ch/#/home

Vielleicht hat ja hier noch jemand eine besser geeignete Schriftart oder eine für 16x16 optimierte 7-Segment Schrift, Zahlen reichen mir vollkommen.
Mein Fehler war übrigens, dass ich das "Bitmaps" mit in den Aufruf der Schrift gepackt habe.

 matrix.setFont(&DSEG14_Modern_Regular_16Bitmaps);

Deswegen funktioniert das Compilieren am Ende nicht.
Anfängerfehler... Jetzt kann ich mich dem eigentlichen Script widmen. Die Anzeige hab ich erstmal.

Gruß

Sven