Skip to content

Technik Blog

Programmieren | Arduino | ESP32 | MicroPython | Python | Raspberry Pi | Raspberry Pi Pico

Menu
  • Smarthome
  • Arduino
  • ESP32 & Co.
  • Raspberry Pi & Pico
  • Solo Mining
  • Über mich
  • Deutsch
  • English
Menu

Pixelmatrix Combo von Oxocard: So programmierst du die 5×5 LED Matrix

Posted on 29. September 202429. September 2024 by Stefan Draeger

Die Pixelmatrix Combo von Oxocard ist ein faszinierendes Tool für alle, die gerne mit LEDs arbeiten und kreative Projekte umsetzen möchten. Diese 5×5 RGB LED Matrix lässt sich direkt in den Mikrocontroller stecken und besticht durch ihre einfache Programmierbarkeit über einen leistungsstarken Online-Editor. Ganz gleich, ob du Anfänger oder fortgeschrittener Entwickler bist – die Pixelmatrix bietet dir unzählige Möglichkeiten, um beeindruckende Lichtanimationen und interaktive Projekte zu gestalten.

Pixelmatrix Combo von Oxocard: So programmierst du die 5x5 LED Matrix
Dieses Video auf YouTube ansehen.

In diesem Beitrag zeige ich dir, wie diese RGB LED Matrix aufgebaut ist, wie sie mit der Oxocard verbunden wird und wie du sie sowohl mit NanoPy als auch mit Blockly programmieren kannst. So kannst du Schritt für Schritt eigene Projekte entwickeln und das volle Potenzial der Pixelmatrix Combo ausschöpfen.

RGB Pixel auf der Pixelmatrix Combo
RGB Pixel auf der Pixelmatrix Combo
Pixelmatrix Combo mit Oxocard Connect
Pixelmatrix Combo mit Oxocard Connect
Vorderseite - Pixelmatrix Combo mit Oxocard Connect
Vorderseite – Pixelmatrix Combo mit Oxocard Connect
Rückseite - Pixelmatrix Combo mit Oxocard Connect
Rückseite – Pixelmatrix Combo mit Oxocard Connect

Hinweis: Dieses Produkt wurde mir vom Entwickler der Oxocard auf der Maker Faire 2024 in Hannover kostenlos zur Verfügung gestellt. Meine Meinung und Bewertung des Produkts basieren jedoch ausschließlich auf meinen eigenen Erfahrungen und sind unabhängig von dieser Bereitstellung.

Inhaltsverzeichnis

  • Vorstellung des Oxocard Connect Mikrocontrollers
  • Lieferumfang und Aufbau der Pixelmatrix Combo
  • Beispielprogramm auf dem Modul
  • Programmieren der Pixelmatrix in NanoPy
    • Aufbauen der WiFi-Verbindung für die Programmierung über NanoPy
    • Verbinden zu NanoPy
    • Ansteuern der NeoPixel
    • Beispiel – Zahlen & Buchstaben auf der Pixelmatrix anzeigen
      • Aufbau der Anzeige eines Buchstabens
      • Das fertige Programm zum Anzeigen von Zahlen und Buchstaben

Vorstellung des Oxocard Connect Mikrocontrollers

Für den Betrieb und die Programmierung der Pixelmatrix Combo benötigst du den Mikrocontroller Oxocard Connect. Dieser kleine ESP32 mit USB-Typ-C Schnittstelle und Farbdisplay dient als Schaltzentrale.

Oxocard Connect
Oxocard Connect
Oxocard Connet mit LED auf Breadboardmodul
Oxocard Connet mit LED auf Breadboardmodul

Der Vorteil der Oxocard Connect ist, dass diese in einem fertigen Gehäuse untergebracht ist und durch die seitliche Schnittstelle kannst du verschiedene Module anschließen und programmieren. Der Code wird dabei nicht auf dem Mikrocontroller gespeichert, sondern auf dem eingesteckten Modul. Das hat den Vorteil, dass man mehrere Schaltungen mit dem Mikrocontroller aufbauen und beliebig wechseln kann, ohne dass man zuvor die Pins zurücksetzt.

Wenn du mehr über diesen Mikrocontroller erfahren möchtest, dann empfehle ich dir einen Blick in den Beitrag Oxocard Connect enthüllt: Neue Horizonte für kreative Köpfe welchen ich dir dafür bereits veröffentlicht habe.

Lieferumfang und Aufbau der Pixelmatrix Combo

Zum Lieferumfang der Pixelmatrix Combo gehört neben der Platine mit den 25 RGB NeoPixel welche seriell verbunden sind noch ebenso 25 Kappen, welche als Diffusor dienen, denn diese NeoPixel können sehr hell und grell sein. Die Helligkeit der NeoPixel LEDs lässt sich auch im Code manipulieren.

Stand von Oxocard auf der Maker Fair 2024
Stand von Oxocard auf der Maker Fair 2024

Auf der Maker Faire wurde gezeigt, wie multifunktional diese Matrix eingesetzt werden kann. Auf dem Bild siehst du einen Ball, welcher mit dieser Matrix aufgebaut wurde und auch das Herz ist recht einfach möglich.

Beispielprogramm auf dem Modul

Wie erwähnt befindet sich der Code nicht auf dem Mikrocontroller, sondern auf dem Modul welches du in den Mikrocontroller steckst. Auf der Pixelmatrix Combo befindet sich ein kleines Beispiel, welches die Zahlen von 9 bis 0 in unterschiedlichen Farben anzeigt.

Programmieren der Pixelmatrix in NanoPy

Der Editor NanoPy ist ein Online-Editor, welcher dir kostenfrei unter https://editor.nanopy.io/ zur Verfügung gestellt wird, der Mikrocontroller Oxocard Connect verfügt über einen ESP32, welchen wir wiederum via WiFi anbinden.

Im oben verlinkten Video erläutere ich dir im Detail, wie du die Pixelmatrix Combo in NanoPy mit der Oxocard Connect in NanoPy programmierst. Nachfolgend möchte ich dir diese Schritte mit Bildern aufzeigen.

Aufbauen der WiFi-Verbindung für die Programmierung über NanoPy

Wenn du den Mikrocontroller über die USB-Typ-C Schnittstelle mit Strom versorgst, startet das System automatisch. Im Hauptmenü kannst du den Menüpunkt ‚WiFi‘ auswählen. Von dort aus wählst du dein lokales WLAN-Netzwerk aus der Liste der verfügbaren Netzwerke. Im nächsten Schritt gibst du das Passwort mithilfe des kleinen Joysticks ein, indem du die einzelnen Zeichen auswählst. Um den Vorgang abzuschließen, bestätigst du deine Eingabe, indem du das Feld ‚OK‘ unten rechts auswählst. Der Mikrocontroller wird nun eine Verbindung zu deinem WLAN herstellen. Sobald die Verbindung erfolgreich ist, kannst du alle weiteren Schritte, wie die Programmierung über NanoPy, bequem durchführen. Diese stabile WiFi-Verbindung ist entscheidend, um den Mikrocontroller mit dem Online-Editor zu koppeln und Programme drahtlos auf das Gerät zu laden.

Verbinden zu NanoPy

Nachdem die WiFi-Verbindung erfolgreich hergestellt wurde, kannst du den Mikrocontroller mit NanoPy verbinden. Dazu wählst du im Hauptmenü des Mikrocontrollers den Eintrag ‚PAIRING‘. Nun öffnest du auf deinem PC den Browser und gehst zur Adresse https://editor.nanopy.io. Dort wirst du aufgefordert, den Pairing-Code einzugeben, der dir auf dem Display des Mikrocontrollers angezeigt wird. Gib diesen Code in das entsprechende Feld auf der Website ein, um die Verbindung herzustellen. Sobald die Verbindung erfolgreich aufgebaut wurde, wird das Display des Mikrocontrollers geleert. Du bist nun bereit, deinen Mikrocontroller direkt über den Browser zu programmieren und kannst auf alle Funktionen von NanoPy zugreifen. Diese einfache und schnelle Verbindungsmethode ermöglicht es dir, Programme drahtlos und in Echtzeit auf deinen Mikrocontroller zu übertragen.

Ansteuern der NeoPixel

Die NeoPixel auf der Pixelmatrix sind wie im folgenden Bild angeordnet. Du beginnst oben rechts mit dem Index 0 und endest unten links mit dem Index 24. Wichtig zu beachten ist, dass die NeoPixel zeilenweise nummeriert sind. Das bedeutet, nach dem letzten Pixel einer Zeile wird der Index in der nächsten Zeile an derselben Seite fortgeführt – es wird also nicht umlaufend nummeriert.

Anordnung der NeoPixel auf der Pixelmatrix Combo von Oxocard
Anordnung der NeoPixel auf der Pixelmatrix Combo von Oxocard

Die Programmiersprache für die Oxocard Connect im NanoPy ist Python, jedoch eine sehr spezielle Version, welche für die Oxocard optimiert wurde, daher findest du zusätzliche Features welche dir die Arbeit deutlich erleichter.

Im nachfolgenden kleinen Beispiel aktiviere ich die Neopixel in allen vier Ecken in unterschiedlichen Farben.

#initialisieren der NeoPixel
initDigitalLeds(C_PIN_01, 25, C_LED_TYPE_WS2812)
#setzen des Modus für die Farben der NeoPixel
setDigitalLedMode(C_LED_MODE_GRB)

#aktivieren der NeoPixel mit Index 0 in der Farbe grün
setDigitalLed(0, 0, 100, 0)
#aktivieren der NeoPixel mit Index 4 in der Farbe blau
setDigitalLed(4, 0, 0, 100)
#aktivieren der NeoPixel mit Index 24 in der Farbe rot
setDigitalLed(24, 100, 0, 0)
#aktivieren der NeoPixel mit Index 20 in der Farbe gelb
setDigitalLed(20, 100, 100, 0)

#setzen der Status & Farben der NeoPixel              
applyDigitalLeds()  

Der Code lässt wie erwähnt die vier NeoPixel in den Ecken in unterschiedlichen Farben aufleuchten. Mit dieser Logik und so wenig Code können wir nun unterschiedliche Formen, Buchstaben und Zahlen darstellen.

Pixelmatrix Combo mit aktivierten NeoPixel
Pixelmatrix Combo mit aktivierten NeoPixel

Beispiel – Zahlen & Buchstaben auf der Pixelmatrix anzeigen

Du findest im NanoPy Editor viele Beispiele zu den vorhandenen Cartridges, unter anderem auch für die Pixelmatrix. Eines der Beispiele ist die Darstellung von Zahlen (siehe Screenshot rechts).

Aufbau der Anzeige eines Buchstabens

In meinem Fall habe ich die Zeile in ein Bitmuster maskiert, d.h. jede Stelle in dem digitalen Wert repräsentiert einen Status der LED in der Zeile.

Die Pixelmatrix hat 5 Spalten und 5 Zeilen. Daraus resultiert eine Bitmuster wie folgt:

0b01110, 0b01010, 0b01110, 0b01010, 0b01010, #Buchstabe A

Jede Zeile ist hier durch ein Komma getrennt und somit ist es recht einfach Zahlen und Buchstaben mit diesem einfachen Muster zu erstellen.

Das fertige Programm zum Anzeigen von Zahlen und Buchstaben

Nachfolgend das fertige Programm zum Anzeigen von Zahlen und Buchstaben auf der Pixelmatrix von Oxocard.

#initialisieren der NeoPixel
initDigitalLeds(C_PIN_01, 25, C_LED_TYPE_WS2812)
#setzen des Modus für die Farben der NeoPixel
setDigitalLedMode(C_LED_MODE_GRB)


digits =[ 
	0b01110, 0b01010, 0b01010, 0b01010, 0b01110, #Zahl 0
	0b00100, 0b00110, 0b00100, 0b00100, 0b01110, #Zahl 1
	0b01110, 0b01000, 0b01110, 0b00010, 0b01110, #Zahl 2
	0b01110, 0b01000, 0b01110, 0b01000, 0b01110, #Zahl 3
	0b01010, 0b01010, 0b01110, 0b01000, 0b00010, #Zahl 4
	0b01110, 0b00010, 0b01110, 0b01000, 0b01110, #Zahl 5
	0b01110, 0b00010, 0b01110, 0b01010, 0b01110, #Zahl 6
	0b01110, 0b01000, 0b00100, 0b00010, 0b01000, #Zahl 7
	0b01110, 0b01010, 0b01110, 0b01010, 0b01110, #Zahl 8
	0b01110, 0b01010, 0b01110, 0b01000, 0b01110, #Zahl 9
	0b01110, 0b01010, 0b01110, 0b01010, 0b01010, #Buchstabe A
	0b01110, 0b00010, 0b01000, 0b00010, 0b01110, #Buchstabe C
	0b01110, 0b00010, 0b01110, 0b00010, 0b01110, #Buchstabe E
	0b01110, 0b00010, 0b01110, 0b00010, 0b01000 #Buchstabe F
]

#Alle RGB NeoPixel deaktivieren
def clearMatrix():
	for index in [0..24]
		setDigitalLed(index, 0, 0, 0)

def checkLed(row, index)->bool:
	return row & (1 << index)

clearMatrix()
applyDigitalLeds() 

count = -1

#anzeigen einer Zahl / eines Buchstabens
def displayDigit(row, count)->int:
	innerCounter = count
	for index in [0..4]:
		innerCounter++
		if checkLed(row, index):
			setDigitalLed(innerCounter, 0, 0, 100)
		else:
			setDigitalLed(innerCounter, 0, 0, 0)
	return innerCounter

rowCount = -1
count = -1
for row in digits:
	rowCount++
	if rowCount % 5 == 0:
		count = -1
		delay(500);

	count = displayDigit(row, count)
	applyDigitalLeds()

1 thought on “Pixelmatrix Combo von Oxocard: So programmierst du die 5×5 LED Matrix”

  1. Pingback: LED-Würfel: Zufallszahlen auf der Pixelmatrix darstellen - Technik Blog

Schreibe einen Kommentar Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Fragen oder Feedback?

Du hast eine Idee, brauchst Hilfe oder möchtest Feedback loswerden?
Support-Ticket erstellen

Newsletter abonnieren

Bleib auf dem Laufenden: Erhalte regelmäßig Updates zu neuen Projekten, Tutorials und Tipps rund um Arduino, ESP32 und mehr – direkt in dein Postfach.

Jetzt Newsletter abonnieren

Unterstütze meinen Blog

Wenn dir meine Inhalte gefallen, freue ich mich über deine Unterstützung auf Tipeee.
So hilfst du mit, den Blog am Leben zu halten und neue Beiträge zu ermöglichen.

draeger-it.blog auf Tipeee unterstützen

Vielen Dank für deinen Support!
– Stefan Draeger

Kategorien

Tools

  • Unix-Zeitstempel-Rechner
  • ASCII Tabelle
  • Spannung, Strom, Widerstand und Leistung berechnen
  • Widerstandsrechner
  • 8×8 LED Matrix Tool
  • 8×16 LED Matrix Modul von Keyestudio
  • 16×16 LED Matrix – Generator

Links

Blogverzeichnis Bloggerei.de TopBlogs.de das Original - Blogverzeichnis | Blog Top Liste Blogverzeichnis trusted-blogs.com

Stefan Draeger
Königsberger Str. 13
38364 Schöningen

Tel.: 01778501273
E-Mail: info@draeger-it.blog

Folge mir auf

  • Impressum
  • Datenschutzerklärung
  • Disclaimer
  • Cookie-Richtlinie (EU)
©2025 Technik Blog | Built using WordPress and Responsive Blogily theme by Superb
Cookie-Zustimmung verwalten
Wir verwenden Technologien wie Cookies, um Geräteinformationen zu speichern und/oder darauf zuzugreifen. Wir tun dies, um das Surferlebnis zu verbessern und um personalisierte Werbung anzuzeigen. Wenn Sie diesen Technologien zustimmen, können wir Daten wie das Surfverhalten oder eindeutige IDs auf dieser Website verarbeiten. Wenn Sie Ihre Zustimmung nicht erteilen oder zurückziehen, können bestimmte Funktionen beeinträchtigt werden.
Funktional Immer aktiv
Die technische Speicherung oder der Zugang ist unbedingt erforderlich für den rechtmäßigen Zweck, die Nutzung eines bestimmten Dienstes zu ermöglichen, der vom Teilnehmer oder Nutzer ausdrücklich gewünscht wird, oder für den alleinigen Zweck, die Übertragung einer Nachricht über ein elektronisches Kommunikationsnetz durchzuführen.
Vorlieben
Die technische Speicherung oder der Zugriff ist für den rechtmäßigen Zweck der Speicherung von Präferenzen erforderlich, die nicht vom Abonnenten oder Benutzer angefordert wurden.
Statistiken
Die technische Speicherung oder der Zugriff, der ausschließlich zu statistischen Zwecken erfolgt. Die technische Speicherung oder der Zugriff, der ausschließlich zu anonymen statistischen Zwecken verwendet wird. Ohne eine Vorladung, die freiwillige Zustimmung deines Internetdienstanbieters oder zusätzliche Aufzeichnungen von Dritten können die zu diesem Zweck gespeicherten oder abgerufenen Informationen allein in der Regel nicht dazu verwendet werden, dich zu identifizieren.
Marketing
Die technische Speicherung oder der Zugriff ist erforderlich, um Nutzerprofile zu erstellen, um Werbung zu versenden oder um den Nutzer auf einer Website oder über mehrere Websites hinweg zu ähnlichen Marketingzwecken zu verfolgen.
Optionen verwalten Dienste verwalten Verwalten von {vendor_count}-Lieferanten Lese mehr über diese Zwecke
Einstellungen anzeigen
{title} {title} {title}