Moin,
heute wollte ich mal meine beiden 5m WS2813 am ESP8266 in Betrieb nehmen.
Leider scheitere ich bisher komplett daran.
Hab mir ein 5V 30A Netzteil geholt, 2x 5m WS2813 Streifen, usw.
Getestet habe ich die Streifen schon mit einem kleinen Hardwarecontroller für 2-3€uro.
Funktioniert alles mit dem Controller, kein Problem.
Nu wollte ich aber selber loslegen mit dem programmieren, und da ist es mir bisher nicht gelungen auch nur eine LED zum leuchten zu erwecken.
Ich will nicht gleich alle 600 Leds in weiss volle Pulle aufreissen, sondern erstmal nur ausprobieren ob ich einzelne LEDs ansteuern kann.
Ich habe erstmal nur einen Streifen angeschlossen, und wollte von dem auch nur die ersten 10 LEDs ansteuern.
Dazu hab ich mir dann nacheinander zunächst die FastLED und danach die Adafruit Neopixel Library geholt und mit beiden rumprobiert. ....aber.... nix kommt dabei raus.
Den Streifen habe ich an D2 vom ESP8266 angeschlossen.
Das ist doch in Arduino der PIN 4, richtig?
Am D2 hab ich dann einen 330 Ohm Widerstand und der ist dann mit dem Streifen an DIN verbunden.
Außerdem ist ein GND vom ESP8266 mit dem GND des Streifens verbunden.
VIN vom Streifen habe ich nicht mit dem ESP8266 verbunden.
Der ESP8266 ist über USB mit dem Computer verbunden (so funktioniert er einwandfrei z.B. mit einem 3,5" Display daran, sollte also auch kein Problem sein.
Und dann habe ich aus der FastLED Library das Beispiel Blink aufs nötigste reduziert:
#include "FastLED.h"
#define NUM_LEDS 10
#define DATA_PIN 4
CRGB leds[NUM_LEDS];
void setup() {
// FastLED.addLeds<WS2811, DATA_PIN, RGB>(leds, NUM_LEDS);
FastLED.addLeds<WS2812, DATA_PIN, RGB>(leds, NUM_LEDS);
//FastLED.addLeds<WS2812B, DATA_PIN, RGB>(leds, NUM_LEDS);
// 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);
}
Aber nix passiert.
Was kann denn das Problem sein?
Ist die Einschaltreihenfolge egal?
Oder muss erst der Controller oder erst die LEDs mit Strom versorgt werden?
Wie muss ich einen WS2813 korrekt deklarieren? Als WS2811, WS2812, WS2812B oder NEOPIXEL? Weiss jemand was da der Unterschied ist?
Lieben Gruß,
Chris