Day 10: Colour mixing
Behind today’s door is the reason for the many 1-kohm resistors. Namely, what you find there is a so-called RGB LED RGB stands for red-greenblue, since this LED is actually three LEDs that can be connected through a common cathode. By varying the brightness of the individual LEDs using PWM, you can generate almost every colour conceivable.
You can see the layout of today’s circuit in the following figure. Note that the somewhat longer leg (the cathode) must be plugged into the GND contact strip.
In the Blynk app, a totally new element comes into play today, namely the ZeRGBa element (combination of Zebra and RGB). You can already see roughly how it works from the colourful design. You can either insert the element in your own new project and adjust the pins manually (red at D3, green at D5 and blue at D6) or load the interface of the test as usual via QR code. Whichever way you choose, don’t forget to enter the new token in the programme, which you can download as usual from below:
When you have uploaded the programme with your data and the interface has started in the app, you can move the circle in the ZeRGBa widget. You see that the colour of the circle changes. At the same time, the colour of the RGB LED on the board changes. So you can have fun playing around and trying out various colours. You can even get white if you move the circle to the top left corner. The three numbers above also give the current PWM value of the pins D3, D5 and D6. This time, too, you can conceivable use the programme for a living room lamp with mood lighting that can be controlled via app.
..warum die Fehlermeldung beim Überprüfen
#include no such file or directory
Lade ich den Code hoch, erscheint im seriellen Monitor “failed to disable MUX” und nichts weiter passiert. Wo liegt das PRoblem?
Bei uns hat es wieder auf Anhieb funktioniert. Es ist schon erstaunlich, dass die Verzögerungszeit zwischen App-Steuerung und Reaktion auf dem NanoESP kaum zu bemerken ist.
Hallo,
bei mir funktioniert jedes Projekt gottseidank auf anhieb.
Nun habe ich aber seit dem es um Analoge Werte mit dem Board geht ein kleines Problem. Und zwar sobald ich egal bei welchem Analog experiment den Wert ändere tut es das auch auf dem Board aber nur für ein paar Sekunden danach bricht die verbindung ab und auf meinem Handy wird angezeigt “Your Arduino Nano is not in the Network” und nichts funktioniert mehr. Nach ein paar Sekunden steht dann wiederrum die Verbindung. Hat einer von euch eventuell eine Ahnung woran dieses Verbindungsproblem liegt? Danke im Vorraus:)
Mein 3 Jahre alter Sohn ist total begeistert von diesem Experiment !!! Weiter so.
Hallo,
bei mir funktioniert der PIN D5 nicht, keine grüne Farbe.
Verwende ich den PIN D9 im Aufbau und der App leuchtet die grüne Farbe korrekt auf.
Selbst folgende Codeanpassung um die grüne Farbe gleich nach dem Start leuchten zu lassen zeigt keine Wirkung.
#define GREEN 5
void setup()
{
// Set console baud rate
Serial.begin(19200);
EspSerial.begin(19200);
pinMode(GREEN, OUTPUT);
analogWrite(GREEN, 255);
Kann das an einer alten Library liegen?
Für mich scheint das Board defekt.
Hat noch jemand das Problem?
Ich tippe eher auf ein Kontaktproblem.
Ich habe bis auf das Board die Zuleitung zum grünen Beinchen verändert und daran liegt es nicht.
Das Board habe ich auch 2 Mal angerufen und wieder auf das Steckboard gesteckt.
Ich probiere heute Abend das Board einen Pin Versatz einzustecken.
Hab das selbe Problem
Auch mit versetztem Board kein Erfolg Pin d5 bleibt ohne Funktion.
Wende mich jetzt an Conrad.
Türchen 10 macht sehr viel Spaß :)
pic.twitter.com/HrKOvl6EoP
RGB und Leuchtkraft. Der Unterschied ist normal, aber es werden ‘normalerweise’ unterschiedliche Vorwiderstände zur jeweiligen Farbe der LED verwendet, da ja die Spannungen der 3 verschiedenen Farben auch variieren.
Paul
Mich hat interessiert, wie heiß der RSP8266 eigentlich wird. In den ersten Tagen war von 80 °C die Rede. Siehe Bild anbei. Bei mir wird der Chip 56 °C heiß. Das geht noch…
Diese RGB-LED hat mir dann doch den Adventskalender gerettet. Ich habe dem Spender des Kalenders vorgestern gesagt, dass ich den Kalender nicht mehr weitermachen werde, da ich keine Lust habe min. 1,5 Stunden zu inverstieren um ein Netzwerk von Arduino und Tab über den Hotspot einzurichten, für einen 10 Minuten Versuch. Hab aber trotzdem immer brav jeden Tag das Türchen geöffnet. Dann kam die RGB-LED und ich musste doch mal gucken wie ich hier weiter komme.
Also dann doch den Hotspot über Datenvoumen des Handys eingerichtet und siehe da alles ohne Probleme.
Somit bin ich jetzt wieder up to date. Ich freu mich ;)
Bei meiner RGB ist rot am schwächsten. Das ist zwar vollkommen normal bei LED’s das die Leuchtkraft variiert und mich würde es auch nicht stören wenn ich diese für 1 Euro bei e-bay gekauft hätte.
Aber bei einem 50 Euro Adventskalender (von Conrad!) sollte man schon erwarten, dass dieser GUTE QUALITÄT UND NICHT B-WARE enthält.
Ich finde das ist eine FRECHHEIT.
So, wie ich hier lesen kann war bei euch eine RGB LED drin.
Bei mir nur eine einfache LED mit 2 Anschlüssen. Pfennigartikel meint ihr, die richtige sollte in jeder Bastelkiste vorhanden sein?!
Das mag zwar stimmen, doch bei dem Preis für den Kalender und manch Käufer hat nur den Kalender und will sich dem Thema widmen.
Paul
Ich kann keinen Token mehr in Blynk sehen und mir zusenden lassen. Wie soll ich dann das Projekt durchführen?
Zur Not Abtippen aus der App
erledigt, wenn man das Device ändert.
Blynk (in der frisch aktualisierten Version)liefert offensichtlich keinen token mehr. Ich habe den bereits im Programm eingesetzten token verwendet. Das Programm wird damit einwandfrei kompiliert.Der serielle Monitor zeigt die Verbindung zum WLAN an.
Wenn ich aber die Oberfläche in der App starten wiil, erhalte ich immer den Kommentar “Device is offline”. und es klappt nichts. Das Smartphone ist aber mit dem WLAN verbunden. Was mache ich falsch?
Das Token ist etwas versteckt. War wohl zu einfach zu finden :-(. Man muss das Device auswählen und auf der Device Detailseite kann man den key dann sehen und sich zuschicken lassen.
Das “Device is offline” Problem habe ich auch. Ich habe auch die Blynk App aktualiesiert.
Was kann man da machen?
Hallo HPRS,
konntest du dein Problem lösen oder hängst du immer noch genauso fest wie ich? Es liegt wohl an der aktuellen Blynk App…
Gestern (Tag 11, 7:07) hat mir Athanasie geschrieben, was ich machen muss,und jetzt klappt es. Schau doch dort einmal nach.
Danke, ich probiere das dann mal aus…
Gibt es die Möglichkeit, die onBoard LEDs auszuschalten? Damit man das Board in einen ‘Stealth-Modus’ versetzt?
Das ZeRGBa-Widget habe ich gegen 3 Slider getauscht. Ein vierter Slider ist für die Blink-Geschwindigkeit. Und ein Schalter, um die LED als solche zu an- und auszuschalten.
Wie hast du den vierten Slider / den Button eingestellt damit er die Blinkgeschwindigkeit steuert bzw. die LED an und ausschaltet?
Alle Slider gehen auf einen virtuell Pin(V0, V1, …).
Diese werden dann im Code ausgelesen. Siehe auch : http://docs.blynk.cc/#blynk-main-operations-send-data-from-app-to-hardware
Mit analogWrite(3, valRed); wird dann auf der Hardware der Pin für ‘rot’ gesetzt.
Der vierte Slider macht einen Delay: delay(valDelay);
Dabei kann der Slider von 0-1000 gesetzt werden.
Hi,
eine einfache Möglichkeit zum Blinken suche ich auch. Dürfte ich den Code mal sehen?
Gruss
Cubiator
void setPins(int r, int g, int b); // Funktion wird deklariert
int valRed=100; // Startwert Rot
int valGreen=0; // Startwert Grün
int valBlue=0; // Startwert Blau
int valDelay=250; // Blinkpause
int button1 = 1; // Status Button = On
bool isFirstConnect = true; // Nach Reset holt sich die Hardware den Status der App
void loop()
{
Blynk.run();
if (button1 == 1) // falls die LED überhaupt leuchten soll
{
setPins(valRed, valGreen, valBlue);
delay(valDelay);
}
// falls blinken soll, oder der Button auf ‘Off’ ist
if (valDelay != 0 | button1 == 0)
setPins(0, 0, 0);
delay(valDelay);
}
void setPins(int r, int g, int b)
{
analogWrite(3,r);
analogWrite(5,g);
analogWrite(6,b);
}
BLYNK_WRITE(V0) // Red
{
valRed = param.asInt();
}
BLYNK_WRITE(V1) // Green
{
valGreen = param.asInt();
}
BLYNK_WRITE(V2) // Blue
{
valBlue = param.asInt();
}
BLYNK_WRITE(V3) // Delay
{
valDelay = param.asInt();
}
BLYNK_WRITE(V4) // on/off
{
button1 = param.asInt();
}
BLYNK_CONNECTED()
{
if (isFirstConnect)
{
Blynk.syncAll();
isFirstConnect = false;
}
}
Der Code ersetzt alles ab Zeile 30 im oben angegebenen Quellcode.
So wie ich das sehe, ist die blaue LED D2 direkt an der Versorgungsspannung angeschlossen. Die kann man also nicht abschalten. Ich habe schon überlegt, ob ich den Widerstand drastisch erhöhe, dann brennt mir die LED nicht mehr das Auge aus.
Die D6 ist dann bestimmt auch an der Versorgung angeschlossen. Die ist aber nicht so penetrant hell. Die würde ich so lassen.
Laut Skizze ist es auch D3 und nicht D2 ;-)
the blink app has updatedand now it doesn’t work anymore
I had the same problem at first too but i reinstalled the app and now its working
doesn’t work for me
Make sure you installed the latest version of the app. There were 3 or 4 updates yesterday because they fixed several bugs after rolling out the first update.
For further help you will have to specify what “doesn’t work anymore” means.
I think I have the latest version, because there are no further updates. But nevertheless there is still the message “device is offline” when I want to start the programm.
I am connected to the WiFi as the days before.
What could help us out?
ja, reichlich blau.Aber funktioniert.
nachdem man das Zebra auf “merge” änderte genauso. Und nachdem “send on release” on und zurück auf split und “off” tut sich überhaupt nichts mehr (LED aus).
half auch nicht das progam umzuladen.
Kann man die Blynk knöpfe grösser machen? ist ja ziehmlich fummelig darauf was zu verschieben.
Ja, auch bei mir ein starker Blaustich! Rot ist sehr dunkel. Naja, aber es funktioniert.
Mein Zebra war etwas sendefaul. Es hat nur ca. bei jedem 3. Loslassen gesendet. Zumindest ist nur dann etwas im Log auf dem COM des nanoESP angekommen. Jetzt habe ich “send on release” abgeschaltet und jetzt sendet es bei jeder Bewegung. Das ist besser.
Wenn Du übrigens den “split” auf “off” stellst, dann werden nicht mehr 3 einzelne Nachrichten “aw???” (analog write, port, wert) geschickt, sondern eine kombinierte message, die dann der Controller auswerten muss. Wenn das der nano nicht macht, dann geht die Info verloren. Deswegen ist die RGB-LED bei Dir wohl dunkel.
Bei mir hat sie einen leichten grün Stich. Liegt daran, dass jede einzel LED (bei mir ist grün die hellste und blau die schwächste) eine andere Leuchtkraft hat. Wenn Du “echtes” weiss sehen willst, musst Du etwas mit den PWM Werten tüffteln… und es funktioniert nur solange die Helligkeit nicht voll oder minimum ist, also solange die PWM Werte entsprechend der Leuchtkraftunterschiede eben unterschiedlich sind.
Leuchtet bei Euch die LED in der “Weiß Stellung” in Reinweiß oder eher so bläulich? Ich hab die Schaltung jetzt mehrfach durchkontrolliert und die LED ist eher bläulich…
Geht mir auch so, leider. Auch rot ist etwas ‘unterbelichtet’