English Click this button for the international website

M5Stack RGB Unit gebruiken met de M5StickC

De M5StickC is op zichzelf al een erg compleet ESP32-ontwikkelplatform, maar meer LEDs is natuurlijk altijd beter! Gelukkig zijn er talloze uitbreidingen verkrijgbaar die je op de Grove-poort kunt aansluiten. Eén zo’n uitbreiding is de “M5Stack RGB Unit (SK6812)”: een Grove-module met 3 RGB-LEDs. Wil je meer dan 3 LEDs, dan kun je meerdere van deze modules aan elkaar koppelen.

M5StickC en de Arduino IDE

In dit voorbeeld programmeren we de M5StickC met de Arduino library. Hoe je deze kunt installeren en geschikt kunt maken voor het programmeren van de M5StickC kun je lezen in het eerdere artikel “De M5StickC programmeren met de Arduino IDE“.

M5StickC ESP32 PICO Color LCD Mini IoT Development Board
Getest en aanbevolen door OneGuyOneBlog.com:

M5StickC ESP32 PICO Color LCD Mini IoT Development Board
Banggood.com

Adafruit Neopixel Library

Naast de M5StickC-libraries heb je ook nog de Neopixel Library nodig van Adafruit. Die kun je van GitHub downloaden of direct in de Arduino IDE installeren met de Library Manager.

M5Stack RGB Unit (SK6812) Voorbeeldsketch

Het onderstaande voorbeeld is een eenvoudige “Hello World”-achtige sketch. Deze sketch is afgeleid van de voorbeeldsketch voor de M5Stack-module.

De belangrijkste aandachtspunten:

  • Zorg dat de juiste libraries geladen worden:
    #include <Adafruit_NeoPixel.h>
    #include <M5StickC.h>
  • Kies de juiste pin (nummer 32) voor de LEDs:
    #define PIN 32
  • Kies het aantal LEDs (pixels). Elke RGB Unit-module heeft 3 LEDs. Voor 1 module kies je dus “NUMPIXELS  3”, voor 2 modules kies je “NUMPIXELS  6”, etc.
    #define NUMPIXELS 3

De rest van de sketch spreekt voor zich. Kijk voor meer informatie over het gebruik van de Neopixel library op de GitHub van Adafruit.

/*
    RGB Unit on M5StickC basic example
    For details see https://oneguyoneblog.com
    Please install library before compiling:
    AdaFruit NeoPixel library: https://github.com/adafruit/Adafruit_NeoPixel
*/
#include <Adafruit_NeoPixel.h>
#include <M5StickC.h>

// Grove pin on the M5StickC
#define PIN            32
// Number of LEDs (a.k.a. "Neopixels")
#define NUMPIXELS      3

// Setup the NeoPixel library
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

int delayval = 1500; // delay for half a second

void setup() {
  M5.begin();
  M5.Lcd.print("LED test");

  pixels.begin(); // This initializes the NeoPixel library.
  pixels.show(); // All pixels off
}

void loop() {
  pixels.setPixelColor(0, pixels.Color(128, 0, 0)); // Moderately bright red color.
  pixels.setPixelColor(1, pixels.Color(0, 128, 0)); // Moderately bright green color.
  pixels.setPixelColor(2, pixels.Color(0, 0, 128)); // Moderately bright blue color.
  pixels.show(); // This sends the updated pixel color to the hardware.
  delay(delayval); // Delay for a period of time (in milliseconds)

  pixels.setPixelColor(0, pixels.Color(128, 128, 128));
  pixels.setPixelColor(1, pixels.Color(128, 128, 128));
  pixels.setPixelColor(2, pixels.Color(128, 128, 128));
  pixels.show();
  delay(delayval);
}

M5Stack RGB Unit in projecten

Op een later moment zal deze LED-module gebruikt gaan worden samen met bijvoorbeeld de ESP32 Tally lights, de Grove Beginner Kit voor Arduino van Seeed Studio of het project Grove voor Arduino: Thermometer en Hygrometer   Heb je zelf nog leuke ideeën of al projecten gemaakt met de M5Stack RGB Unit? Laat het vooral weten in de commentaarsectie onderaan deze pagina!

VNG Systems

M5Stack M5Stick-C ESP32 Mini-Ontwikkelboard
Getest en aanbevolen door OneGuyOneBlog.com:

M5Stack M5Stick-C ESP32 Mini-Ontwikkelboard
VNGsystems.nl

Voeg een reactie toe

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *