NodeMCU(ESP8266) LED Matrix wird nicht ordnungsgemäß angesteuert

~K~

Cadet 4th Year
Registriert
Sep. 2016
Beiträge
64
Hallo,
zu den Daten:
- NodeMCU V3 (ESP8266 12E)
- Arduino IDE (benutze Library: FastLED)
- LED Matrix bestehend aus WS2812B's (16x16)
- 5V 20A Netzteil

Mein Problem:
Ich möchte über den ESP die LED Matrix ansteuern, was auch soweit funktioniert. Als Test benutze ich das "Blink" Beispiel aus der FastLED Library.

C++:
#include "FastLED.h"

// How many leds in your strip?
#define NUM_LEDS 256

// For led chips like Neopixels, which have a data line, ground, and power, you just
// need to define DATA_PIN.  For led chipsets that are SPI based (four wires - data, clock,
// ground, and power), like the LPD8806 define both DATA_PIN and CLOCK_PIN
#define DATA_PIN 3
#define CLOCK_PIN 13

// Define the array of leds
CRGB leds[NUM_LEDS];

void setup()
{
        FastLED.addLeds<NEOPIXEL, DATA_PIN>(leds, NUM_LEDS);
}

void loop() {
  // Turn the LED on, then pause
  leds[0] = CRGB::Red;
  FastLED.show();
  delay(500);
  // Now turn the LED off, then pause
  leds[0] = CRGB::Black;
  FastLED.show();
  delay(500);
}

Wie im Code steht blinkt die erste LED in rot. Allerdings blinkt dann mindestens noch eine beliebige andere LED auf der Matrix rot auf. Als ob es "aus Versehen" überspringen würde. Das Problem wurde auch in anderen Beispielen wie dem "DemoReel100" festgestellt. Hat jemand eine Idee was diesen Fehler verursacht?

Grüße und danke für konstruktive Beiträge. :D
 
Ganz spontan würde ich mal versuchen die Anzahl der LEDs auf 255 zu setzen. Offensichtlich fängt er ja bei 0 an zu zählen (leds[0]). Ich würde dann allerdings prüfen ob mit leds[255] = CRGB::Red auch die letzte LED angeht und nicht nur die erste.
 
Auch mit dem Wert 255 tritt der selbe Fehler auf, könnte es an der Verkablung liegen?
nodemcu.PNG
So ist der Aufbau in etwa. Nur eben kein Arduino, sondern NodeMCU.
Ausschnitt aus
.
 
Solange du alles sauber verkabelt hast passt das so. Den Kondensator hast genau so dimensioniert wie der Herr im Video?

Ich hab zufällig deine ganzen teile hier (ausser die Matrix LED, ich hab nur einen Streifen wie im Video). Wenn ich am WE zeit finde werde ich deine Schaltung nachstellen und berichten ob ich das gleiche Problem habe.
 
Ja, hab exakt das gleiche verwendet. Wäre nett wenn du's mal probieren könntest. :D
Hab parallel dazu auch noch einen Streifen angeschlossen, da trat das Problem nur sehr selten bzw. gar nicht auf... könnte also an der Matrix liegen?
 
Also ich habs gestern abend nachgestellt, hatte allerdings keinen Kondensator zur hand, weswegen ich den einfach weggelassen hab. Ich hatte mit dem Aufbau keine Probleme meine LEDs sauber anzusteuern. Ich würde daher vermuten das deine LED Matrix irgendwie einen Schuss hat. Welche Matrix ist das den? Für die gibts doch sicher Tutorials vom Hersteller oder?
 
  • Gefällt mir
Reaktionen: ~K~
Naja das die Matrix ein Schuss weg hat hab ich mir auch schon gedacht... allerdings ist es komisch das die LEDs ja sonst ordentlich funktionieren. Ich habe die LEDs bei amazon von BTF-Lightning gekauft (https://www.amazon.de/BTF-LIGHTING-...8-1-fkmr2&keywords=btflighting+ws2812b+matrix). In den Bewertungen habe ich nur eine wirklich negative Erfahrung gesehen, dass die Hälfte der LEDs nicht ging. Ich werde mal weiter probieren und gucken ob es an was anderem liegt. Danke für's testen! :)
 
Mhm, ja ein paar sagen ja das die "Anschlussstellen schlecht verlötet sind". Ich kauf mir jetzt auch so ein Ding, ich weiß noch nicht für was, aber da fällt mir schon noch was ein :D
 
Naja die Anschlussstellen sehen sehr vernünftig aus, zumindest kann ich mich nicht beschweren. Ich wollte damit z.B. 8-Bit Grafiken anzeigen lassen. :cool_alt:
 
Kann es vielleicht daran liegen, dass der ESP nur 3,3V auf seinen Datenleitungen hat, der Dateneingang der Neopixel aber erst bei 0,7 x VCC (= 3,5V) einen logischen High-Pegel erkennt?
 
Das könnte tatsächlich sein... ich werde mal einen 3V zu 5V shifter ausprobieren. :D
 
Halte Dein Netzteil für 256 Leds für viel zu schwach dimensioniert, rechnerisch und theoretisch wird zwar maximal nur 18 Watt verbraucht, aber dazu kommen Leitungsverluste und das Netzteil geht dann schon in die Knie. An mehreren Stellen eingespeist hast Du? Weil so viele Leds muss man anders verdrahten als auf dem Bild oben. Ansonsten wenn Led ungewöhnlich und wild aufblitzen liegt es meistens an einer kalten Lötstelle/Kontaktprobleme etc. an der Masse.
 
@juwa

Er hat eine fertige Matrix gekauft und ich gehe mal davon aus, dass es keine Möglichkeit gibt, an mehreren Stellen einzuspeisen. Und die 20A sind auf jeden Fall ausreichend.

Ich würde mal einen schnöden Arduino an die Matrix hängen, um zu schauen, ob der Fehler auf der Seite der Matrix oder auf der Seite des Mikrocontrollers liegt.
 
Das Netzteil hat auf jeden Fall genug Saft. Die Matrix verbraucht max. 77W das Netzteil kann bis zu 100 liefern. Ja ich habe an mehreren Stellen eingespeist, wie würdest du es denn verkabeln @juwa ? Einen Arduino habe ich gerade leider nicht zur Hand. Muss ich mal schauen ob ich mir einen besorgen kann, hatte wenig Zeit weil ich im Urlaub war.
 
So sollte es doch eig. funktionieren oder nicht?
Skizze.PNG
 
Wie wird NodeMCU versorgt?

Wenn die Matrix 77W benötigt (gilt aber nur, falls alle LEDs ein sind?), fließt ein Strom von 15.4 A bei 5V. Damit das ganze nicht in Rauch aufgeht, braucht es eine vernünftige Verkabelung (Leitungsquerschnitt!). Das Steckbrett ist für solche Stromstärken auch nicht ausgelegt.
 
Zuletzt bearbeitet:
Ich habe bisher alles auf dem Steckbrett. Um den Leitungsquerschnitt mach ich mir keine Sorgen weil die Kabel max. 5 cm lang sind und ich zum testen nicht alle LEDs einschalte(1-10). Die NodeMCU wird momentan noch über den PC also USB versorgt, sollte ja kein Problem darstellen. Ich verlöte demnächst mal die Lötstellen an der Matrix neu.
 
Zurück
Oben