LED Würfel mit Farbwechsel durch LED Ring und Gyroskop - AZ-Delivery

In this video, we want to introduce a new project. A LED cube with an automatic color change is to be built. To realize this, the LED ring, the gyroscope, and a D1 Mini ESP32 are used.


Here you will find the products used:

Downloads

3D printing templates at Thing

sketch Ledwuerfel.ino

Wiring:

Fritzing for gyroscope with LED project

 Program code:

/*
    ___ _____        ____       ___                      
   /   /__  /       / __ \___  / (_)   _____  _______  __
  / /| | / / ______/ / / / _ \/ / / | / / _ \/ ___/ / / /
 / ___ |/ /_/_____/ /_/ /  __/ / /| |/ /  __/ /  / /_/ / 
/_/  |_/____/    /_____/\___/_/_/ |___/\___/_/   \__, /  
                                                /____/   
 Product, the data sheet, and Pinout at:
  https://www.az-delivery.de/

 Project: GY-521 MPU-6050 3-axis gyroscope sensor and RGB LED ring
 Date: 10/2022

*/
#include <Arduino.H>
#include <Adafruit_mppu6050.H>
#include <Adafruit_sensor.H>
#include <Wire.H>
#include <fast leather.H>

Adafruit_mppu6050 MPU;

float Xtreshhold = 0.0;
float Ytreshhold = 0.0;
float Ztreshold = 0.0;

#define Num_Leds 12
#define Data_pin 25

CRGB LEDs[Num_Leds];

void Settreshholds()
{
  sensors_event_t A, G, tempo;
  MPU.Geete event(&A, &G, &tempo);
  Xtreshhold = (A.acceleration.X);
  Ytreshhold = (A.acceleration.y);
  Ztreshold = (A.acceleration.Z);
}

void set up(void)
{
  Serial.Begin(115200);
  IF (!MPU.Begin())
  {
    Serial.print("Failed to Find MPU6050 CHIP");
    while (true)
    {
    }
  }
  Fast leather.Addleds<WS2812, Data_pin, Grb>(LEDs, Num_Leds);
}

void loop()
{

  Settreshholds();

  IF (Ztreshold <= -4.5) // down
  {
    for (intimately I = 0; I < Num_Leds; I++)
    {
      LEDs[I].STRGB(255, 0, 0); // red
    }
  }

  Else IF (Ztreshold >= 4.5) // up
  {
    for (intimately I = 0; I < Num_Leds; I++)
    {
      LEDs[I].STRGB(0, 255, 0); // Green
    }
  }

  Else IF (Xtreshhold <= -4.5) // Left
  {
    for (intimately I = 0; I < Num_Leds; I++)
    {
      LEDs[I].STRGB(0, 0, 255); // Blue
    }
  }

  Else IF (Xtreshhold >= 4.5) // right
  {
    for (intimately I = 0; I < Num_Leds; I++)
    {
      LEDs[I].STRGB(255, 255, 0); // yellow
    }
  }

  Else IF (Ytreshhold <= -4.5) // front
  {

    for (intimately I = 0; I < Num_Leds; I++)
    {
      LEDs[I].STRGB(0, 255, 255); // cyan
    }
  }

  Fast leather.setbrightness(20);
  Fast leather.show();
}
Projekte für anfänger

19 comments

Rüdiger Lübchow

Rüdiger Lübchow

Andreas Wolter: Vielen Dank für den Tip. Funktioniert !

Andreas Wolter

Andreas Wolter

@Rüdiger Lübchow: dazu habe ich das hier bei Guthub gefunden:
https://github.com/FastLED/FastLED/issues/1169#issuecomment-760987755

Es ist scheinbar eine Warnung, die man ignorieren muss.

Grüße,
Andreas Wolter
AZ-Delivery Blog

Rüdiger Lübchow

Rüdiger Lübchow

Nach der Änderung wird die FastLED.h gefunden, aber beim Kompilieren erhalte ich einen Fehler aus der fastspi.h : “No hardware SPI pin defined”. ??? Würde mich freuen, wenn jemand einen helfenden Hinweis hat.

Andreas Wolter

Andreas Wolter

Ich habe die include Zeile für die FastLED Bibliothek geändert. Danke für den Hinweis.

Grüße,
Andreas Wolter
AZ-Delivery Blog

M.K.

M.K.

Die Programmzeile"#include " ist wirklich falsch. Bitte schnellstmöglichst ändern. Da gehört “#include ” hin. Ihr solltet mal die Programmierung vorher testen bevor ihr sie hier veröffentlicht. Ich bin absoluter Neuling und dieser Fehler ist unmöglich für mich zu finden.
MFG M.K.

Valentin Willman

Valentin Willman

Ich habe etwas gebraucht, um den Fehler zu sehen: die Bibliothek heißt FastLED, im Programm steht aber #include <fastLED.h>, hatte noch niemand dieses Problem? Sonst ganz prima für Einsteiger.

Roman L.

Roman L.

Set ist bestellt, gerne mehr von den Videos, die Codeerklärungen sind gerade für mich als Anfänger sehr hilfreich.

Pontifex

Pontifex

Thanks a lot for this publish.
I built it this weekend and it looks awesome.

The cube in action is in this video: https://youtu.be/_MfcWejtqZY

I added some features, made another concept of power supply and wrote new code. Code, schematics and pictures are published here: https://github.com/Pontifex42/LightCube

I did not implement a web interface, but if someone wants to have a remote control, I implemented a “RemoteXY” interface using WiFi.
This can be modified easily.

Kevin

Kevin

From the comments on the ThingVerse (STL files) page, this was derived from a project which allowed the light to be controlled via a Web page. Do you have the link to that article?

Is the project kit no longer available?

Sören

Sören

Amazing simple but delightful project. Please make more of this videos it helps me although I’m not speaking german but I can follow the code and I like the project ideas.

Andreas Wolter

Andreas Wolter

Wir haben die Verlinkung zu der 3D-Druck-Vorlage und zur Sketch-Datei ergänzt.

Grüße,
Andreas Wolter
AZ-Delivery Blog

Rudi

Rudi

Sehr schönes Bastelbeispiel. Gerne mehr davon!

Bernd-Steffen Großmann

Bernd-Steffen Großmann

Hallo, interessantes Projekt mit vielseitigen Einsatzmöglichkeiten (Stimmungs- oder Nachtlicht, Kinderspiel,…)
Warum aber einen völlig unterforderten ESP32 dafür nehmen, wenn ein Arduino Nano oder Pro Mini auch reicht. SCL vom MPU6050 an A5, SDA an A4 und den Steuereingang der LED-Kette / -Ring z.B. an D2 (oder einen anderen passenden digitalen Ausgang). Der Sketch funktioniert genauso gut, nur den Wert für DATA_PIN auf 2 (oder eben den anderen passenden digitalen Ausgang) ändern. Viel Spaß beim Ausprobieren!

Thomas

Thomas

Vielen Dank für das Projekt! Sind auch die 3D-Druck Teile als stl-Datei verfügbar?

Bernd-steffen Großmann

Bernd-steffen Großmann

Hallo, interessantes Projekt! Stellen Sie auch die STL-Dateien für das Gehäuse zur Verfügung?
Mit freundlichen Grüßen, Bernd-Steffen Großmann

Pontifex

Pontifex

Schön gemacht, danke.
Wird nette Bastelei für den Feierabend.
Gibt es eine STL oder Skizze für das Gehäuse?
Oder Bilder für die Oberflächen, die ich mir in per Inkscape in Fusion360 importieren kann?

Thorsten van de Mee

Thorsten van de Mee

Hallo,

wäre es möglich die Druckdatei zu dem Würfel zu bekommen?
Ich würde diesen gerne meinem Sohn zum Geburtstag bauen/schenken.

Hans-Georg Müller

Hans-Georg Müller

Werde das Projekt bestellen und ausprobieren. Schön, das der sketch fertig vorliegt, noch schöner wäre es, wenn die besonderen Befehle etwas ausdokumentiert wären, der Lerneffekt wäre größer und man könnte evt. auch selber Änderungen vornehmen.

Bernd

Bernd

Hallo liebes azDelivery Team. So ein schönes kleines Projekt. Eine Frage habe ich noch. Gibt es irgendwo die Druckdateien für den Würfel?

Leave a comment

All comments are moderated before being published

Recommended blog posts

  1. ESP32 jetzt über den Boardverwalter installieren - AZ-Delivery
  2. Internet-Radio mit dem ESP32 - UPDATE - AZ-Delivery
  3. Arduino IDE - Programmieren für Einsteiger - Teil 1 - AZ-Delivery
  4. ESP32 - das Multitalent - AZ-Delivery