FastLED 3.0/3.1 News

Hi, FastLED 3.0 stable ist released mit folgenden Neuerungen:

Download FastLED 3.0

New Microcontroller Support Added * Arduino Due * Teensy 3.1 * Digistump DigiX * Continued support for most other Arduino boards (Uno, Leonardo, Nano, Micro, etc.), the Adafruit Trinket, Gemma, and Flora, as well as PJRC Teensy 2 and Teensy 3.0.

New LED Chip Support Added * APA102 * APA104 * GW6205 / GW6205_400 * LPD1886 * P9813 Total Control Lighting LEDs * USC1903_400 * SmartMatrix * Continued support for NeoPixel, WS2811, WS2812, WS2812B, WS2801, LPD8806, TM1809, TM1804, TM1803, and SM16716!

New Color, Light, and Power Controls * Programmable Color Palettes (CLUTs) * High-speed temporal dithering for smooth dimming with the master brightness control * Ability to calibrate each strip's RGB colors * Ability to adjust the LED white point / temperature * Ability to automatically limit LED power draw (current)

Perlin/Simplex Noise * 1- 2- and 3-dimensional Perlin/Simplex noise * Multiple octave noise support * Example sketches using 'noise' for animated texture generation

New Example Sketches * XYMatrix - show how to use a 2-D matrix of leds * Fire2012 - simple, fast fire simulation * Perlin/Simplex Noise - dynamic texture animation examples * ColorPalette - showing how to use color palettes (CLUTs) * ColorTemperature - color correction and white point adjustment * Examples showing how to drive multiple independent LED strips

High Performance Math Package * High-speed sine and cosine * Cubic, triangle, and quadratic wave functions * In/Out easing functions

And Also... * Many bug fixes and performance improvements * A big, shiny new version number to go with all this great code

Außerdem neu: Beatgeneratoren zum einfachen Erzeugen von Sinus-/Sägezahn Funktionen mit oberen und unterem Limit. Z.B. so:

#define BPM       60
#define DIMMEST   128
#define BRIGHTEST 255

void loop()
{
  // Put something visible on the LEDs
  static uint16_t hue16 = 0;
  hue16 += 9;
  fill_rainbow( leds, NUM_LEDS, hue16 / 256, 3);

  // set the brightness to a sine wave that moves with a beat
  uint8_t bright = beatsin8( BPM, DIMMEST, BRIGHTEST);
  FastLED.setBrightness( bright );

  FastLED.show();
}

Außerdem heute neu: FastLED v3.1 Beta mit 8, 12 und 16 Kanal Paralleloutput (!) für Teensy 3/3.1 und Integration der OctoWS2811 lib. Auch auf Due und Digix 8 Kanäle parallel.

Mehr Infos zum Paralleloutput hier.

N.B. - this code is currently only available on the FastLED3.1 branch and may set your leds on fire!

;)

Download FastLED 3.1

Viel Spaß!

Helmuth

Hallo Helmut, Die neue Version läuft auch auf einem Teensy 3/3.1 also Coretex M4.

Es sollte dann auch die Möglichkeit geben die Lib mit wenig Aufwand auf einen Nucleo L152RE mit Coretex M3 zu portieren. Wie ist deine Einschätzung dazu ?

Cortex M4 Architektur gibt es von verschiedenen Herstellern in jeweils eigenen Chips.

Die STM32L152RE MCU, die Du verwendest, kenne ich selbst nicht.

Auf dem Tennsy ist ein MK20DX64VLH7 drauf. Ich würde also nicht davon ausgehen,
dass sich das easy portieren lässt, so hardwarenah wie FastLED geschrieben ist.

Bei Boards mit identischen ARM Prozessoren, wie auf offiziell unterstützten Boards verbaut, sollte
es dagegen keine Probleme geben.

Grüße

Helmuth

Ok, danke.
War mehr eine rhetorische Frage, meine aktuelle Baustelle ist eine Uhr aus WS2812 zur Zeigeranimierung und in der Mitte eine Platine zur Datumsanzeige mit 31 Ws2812B SMD Led’s.

Plattform eine Eigenbau Pcb mit Atmega328P ohne Bootloader.

Erste Tests laufen mit einer alten Version von FastLED ohne Probleme.
Den größten Vorteil im Vergleich zur fastspi Lib sehe ich im viel geringerem Flash Verbrauch.

Die neue Version wird in dieser Hinsicht wohl zwangläufig etwas mehr ressourcen brauchen.
Teste es aber auf jedem Fall.

Sieht bestimmt gut aus, so ein auf die Uhr gemapptes Noise. Kann sich ja auch im Sekundentakt mitdrehen... Siehe mein Beitrag vorhin mit den 32 LEDs im Kreis.

Beste Grüße

Helmuth