FastLED "ColorWavesWithPalettes" - wandlen zu analogOut flackert

Hallo in die Runde,

um mich mal ein bischen von den FastLed- Effekten inspirieren zu lassen und damit mal etwas zu spielen habe ich mir folgendes tolles Beispiel runtergeladen: ColorWavesWithPalettes - demo of using cpt-city palettes in FastLED code · GitHub

Das läuft auch super...

Also- kurzer Hand in eine meiner Lampen integriert- mit der Ergänzung, dass ich einen normalen RGB- LED- Streifen damit ansteuern will- also dieser soll die Farbe der ersten WS2812- LED annehmen... nun flackert das ganze aber und zeigt die Farben nicht an....

Der Sketch ist zum einfügen zu groß.... Ich poste daher erstmal nur den Ausschnitt, wo ich die Farbe der ersten LED auf dem WS2812 Streifen auf den normalen Streifen übertrage- zu 99% liegt da der Fehler...

      analogWrite(redLedPin, leds[0].r);
      analogWrite(greenLedPin, leds[0].g);
      analogWrite(blueLedPin, leds[0].b);

Es lebe das letzte 1%
Grüße Uwe

Na gut… dann wars nix mit der Hoffnung, dass ich es mir zu leicht gemacht hätte die Farben zu holen… Dann muss ich euch den kompletten Sketch zumuten… :wink: Ich hängs dann einfach mal an…

Lampe_Bad_10_2016.ino (4.86 KB)

Farbpalette.ino (17.6 KB)

Ich habe einen kleinen Testsketch basierend auf dem Beispiel DemoReel100 geschrieben. Anstelle von einer RGB-LED habe ich drei einzelne LEDs angeschlossen. Sowohl die WS2812 wie auch die LEDs an PWM sehen sehr harmonisch aus.

#include "FastLED.h"

FASTLED_USING_NAMESPACE

#define DATA_PIN    8
#define LED_TYPE    WS2811
#define COLOR_ORDER RGB
#define NUM_LEDS    10
#define FRAMES_PER_SECOND  120
#define BRIGHTNESS  50
CRGB leds[NUM_LEDS];

const byte redLedPin = 5;
const byte greenLedPin = 6;
const byte blueLedPin = 3;
uint8_t gHue = 0; // rotating "base color" used by many of the patterns

void setup()
{
  pinMode(redLedPin,   OUTPUT);
  pinMode(greenLedPin, OUTPUT);
  pinMode(blueLedPin,  OUTPUT);

  FastLED.addLeds<LED_TYPE, DATA_PIN, COLOR_ORDER>(leds, NUM_LEDS).setCorrection(TypicalLEDStrip);
  FastLED.setBrightness(BRIGHTNESS);
  LEDS.showColor(CRGB(0, 0, 0));  // alle LEDs aus
}

void loop()
{
  rainbow();
  FastLED.show();
  analogWrite(redLedPin, leds[1].r);
  analogWrite(greenLedPin, leds[1].g);
  analogWrite(blueLedPin, leds[1].b);
  // insert a delay to keep the framerate modest
  FastLED.delay(1000 / FRAMES_PER_SECOND);

  // do some periodic updates
  EVERY_N_MILLISECONDS( 20 ) {
    gHue++;  // slowly cycle the "base color" through the rainbow
  }
}

void rainbow()
{
  // FastLED's built-in rainbow generator
  fill_rainbow( leds, NUM_LEDS, gHue, 7);
}

Grundsätzlich ist das, was Du vorhast, möglich :slight_smile:

Danke für den Test... dann ist mein Ansatz wie ich die Werte übernehme ja schon mal richtig.... dann muss ich mal anfangen den Fehler irgendwie einzugrenzen....

Juuuuuuuuut..... habs hinbekommen- danke für die Unterstützung :slight_smile:

Bei diesen Eclipse-Lampen, strahlen die Lampen zur Wand hin oder von der Wand weg und werden Reflektiert vom Gehäuse?