[Project] NeopixelBusFX - WS2812 Effekt-Plugin für ESPEasy

Begonnen von djcysmic, 05 Juli 2017, 21:19:46

Vorheriges Thema - Nächstes Thema

riker1

Zitat von: RaspiLED am 11 Juni 2018, 08:43:55
Hi,
Ihr kennt aber schon exclude_from_update?
https://forum.fhem.de/index.php?topic=53861.msg454887#msg454887
Gruß Arnd


Gesendet von iPhone mit Tapatalk

wusste ich nicht, danke gut Hinweis
FHEM    5.26.1 Ubuntu 18, FHEM    5.26.1 RPI 3 , Actoren: IT ,Tasmota, ESPEasy,
MAX CUBE, MAX HT, MAX WT, Selbstbau nanoCULs, FS 20,Tasmota, Homematic, FTK, SW. DIM, Smoke,KODI,Squeezebox

dat234

Hallo an die Gemeinde,

gibt es eine Möglichkeit den Feuereffekt "wagerecht" auszuführen?
Ich möchte den LED Streifen wagerecht montieren und über einen Diffusor ein Kaminfeuereffekt erzeugen.
Ähnlich wie hier zu sehen:
https://ruvideos.org/SwJPRt2L9uU-feuereffekt-led-stripe.html

djcysmic

Zitat von: dat234 am 27 Juni 2018, 20:20:00
Hallo an die Gemeinde,

gibt es eine Möglichkeit den Feuereffekt "wagerecht" auszuführen?
Ich möchte den LED Streifen wagerecht montieren und über einen Diffusor ein Kaminfeuereffekt erzeugen.
Ähnlich wie hier zu sehen:
https://ruvideos.org/SwJPRt2L9uU-feuereffekt-led-stripe.html

Das müsste als zusätzlicher Effekt mit ins Plugin programmiert werden - ich werde es mal auf meine ToDo-Liste setzen.
Könnte allerdings etwas dauern, da ich zur Zeit ziemlich viel zu tun habe.

juppzupp

hallo !
danke für das modul/plugin/den code !

ich hätte bei simpleclock gedacht, das wenn man die sekunden farbe auf 000000 stellt, sie nicht angezeigt wird, aber der "zeiger" läuft trotzdem, und lässt dann halt die LEDs kurz ausgehen. mir ist das zu hektisch, ich würde gerne auf die sekundenanzeige verzichten.
ist da ein quick hack möglich ?


danke

dat234

Die Zeile 1357 in der NeopixelBusFX.ino durch den folgenden Code ersetzen. Damit wird die Ausgabe unterbunden, wenn die Farbe der Sekunden auf h000000 (schwarz gestellt wird)

if (( round((((float)Seconds + ((float)counter20ms-(float)maxtime)/50.0) * (float)pixelCount)/60.0 ) == i ) && (rgb_s != 0x000000)) Plugin_124_pixels->SetPixelColor(i_out, rgb_s);

Grüße aus Regensburg

djcysmic

Zitat von: dat234 am 09 Juli 2018, 22:13:15
Die Zeile 1357 in der NeopixelBusFX.ino durch den folgenden Code ersetzen. Damit wird die Ausgabe unterbunden, wenn die Farbe der Sekunden auf h000000 (schwarz gestellt wird)

if (( round((((float)Seconds + ((float)counter20ms-(float)maxtime)/50.0) * (float)pixelCount)/60.0 ) == i ) && (rgb_s != 0x000000)) Plugin_124_pixels->SetPixelColor(i_out, rgb_s);

Grüße aus Regensburg

Im Plugin im Github ist es aktuell Zeile 1350, aber genau das ist die Lösung. Wenn es gewünscht ist, kann ich das ins Github übernehmen.
Viele Grüße und einen schönen Abend noch...

dat234

#246
Zitat von: djcysmic am 09 Juli 2018, 22:44:55
Im Plugin im Github ist es aktuell Zeile 1350, aber genau das ist die Lösung.

Stimmt... Ist bei mir verschoben, da ich mir noch ein LED Offset für die Uhr eingebaut habe. Meine LED Nr. 1 sitzt von der mechanischen Konstruktuion unten.
Das Offset ist in den Task Settings im WebFrontend einstellbar.

Wenn es gewünscht wird, kann ich die Datei mit den kommentierten Änderungen hochladen.

;) Hoffe, ich habe Dir mit der Änderung deines Codes nicht auf die Füße getreten.

Zitat von: djcysmic am 09 Juli 2018, 22:44:55
Wenn es gewünscht ist, kann ich das ins Github übernehmen.

Von mir aus gerne.

Grüße aus Regensburg

juppzupp


mspa

Gibt es eine aktuelle Mega Firmware mit dem normalen plugin set? Ich bräuchte nämlich noch das IR-LED plugin und ich schaffe es nicht auf dem Stable branch oder mega branch mit dem Plugin ESPEasy zu Kompilieren, ohne das plugin habe ich keine Probleme.

Falls das hilft einmal die Fehler Ausgabe:
Arduino: 1.8.4 (Windows 10), Board: "NodeMCU 1.0 (ESP-12E Module), 80 MHz, 4M (1M SPIFFS), v2 Lower Memory, Disabled, None, Only Sketch, 115200"

WARNUNG: Kategorie 'LED' in der Bibliothek CHT16K33 LED Matrix Library ist ungültig und wird auf 'Uncategorized' festgelegt
WARNUNG: Kategorie 'Input' in der Bibliothek MechInputs ist ungültig und wird auf 'Uncategorized' festgelegt
WARNUNG: Kategorie 'Input' in der Bibliothek SerialSensors ist ungültig und wird auf 'Uncategorized' festgelegt
WARNUNG: Bibliothek LiquidCrystal_I2C behauptet auf (avr) Architektur(en) ausgeführt werden zu können und ist möglicherweise inkompatibel mit Ihrem derzeitigen Board, welches auf (esp8266) Architektur(en) ausgeführt wird.
In file included from Z:\Bibliothek\Dokumente\Programming_Projects\Arduino\ESPEasy-mega\ESPEasy\_P124_NeoPixelBusFX.ino:91:0:

Z:\Bibliothek\Dokumente\Arduino\libraries\FastLED/FastLED.h:17:21: note: #pragma message: FastLED version 3.001.007

#    pragma message "FastLED version 3.001.007"

                     ^

In file included from Z:\Bibliothek\Dokumente\Arduino\libraries\FastLED/FastLED.h:68:0,

                 from Z:\Bibliothek\Dokumente\Programming_Projects\Arduino\ESPEasy-mega\ESPEasy\_P124_NeoPixelBusFX.ino:91:

Z:\Bibliothek\Dokumente\Arduino\libraries\FastLED/fastspi.h:110:23: note: #pragma message: No hardware SPI pins defined.  All SPI access will default to bitbanged output

#      pragma message "No hardware SPI pins defined.  All SPI access will default to bitbanged output"

                       ^

Z:\Bibliothek\Dokumente\Programming_Projects\Arduino\ESPEasy-mega\ESPEasy\_P124_NeoPixelBusFX.ino: In function 'boolean Plugin_124(byte, EventStruct*, String&)':

_P124_NeoPixelBusFX:253: error: no matching function for call to 'addFormNumericBox(String&, const __FlashStringHelper*, const __FlashStringHelper*, int16_t&, int, int)'

       addFormNumericBox(string, F("Led Count"), F("plugin_124_leds"), Settings.TaskDevicePluginConfig[event->TaskIndex][0],1 ,999);

                                                                                                                                  ^

Z:\Bibliothek\Dokumente\Programming_Projects\Arduino\ESPEasy-mega\ESPEasy\_P124_NeoPixelBusFX.ino:253:130: note: candidates are:

Z:\Bibliothek\Dokumente\Programming_Projects\Arduino\ESPEasy-mega\ESPEasy\WebServer.ino:2817:6: note: void addFormNumericBox(const String&, const String&, int, int, int)

void addFormNumericBox(const String& label, const String& id, int value, int min, int max)

      ^

Z:\Bibliothek\Dokumente\Programming_Projects\Arduino\ESPEasy-mega\ESPEasy\WebServer.ino:2817:6: note:   candidate expects 5 arguments, 6 provided

Z:\Bibliothek\Dokumente\Programming_Projects\Arduino\ESPEasy-mega\ESPEasy\WebServer.ino:2823:6: note: void addFormNumericBox(const String&, const String&, int)

void addFormNumericBox(const String& label, const String& id, int value)

      ^

Z:\Bibliothek\Dokumente\Programming_Projects\Arduino\ESPEasy-mega\ESPEasy\WebServer.ino:2823:6: note:   candidate expects 3 arguments, 6 provided

Mehrere Bibliotheken wurden für "Servo.h" gefunden
Benutzt: C:\Users\Marlon\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.4.1\libraries\Servo
Nicht benutzt: D:\Program Files (x86)\Arduino\libraries\Servo
exit status 1
no matching function for call to 'addFormNumericBox(String&, const __FlashStringHelper*, const __FlashStringHelper*, int16_t&, int, int)'

Dieser Bericht wäre detaillierter, wenn die Option
"Ausführliche Ausgabe während der Kompilierung"
in Datei -> Voreinstellungen aktiviert wäre.

djcysmic

Zitat von: dat234 am 09 Juli 2018, 23:28:43
Stimmt... Ist bei mir verschoben, da ich mir noch ein LED Offset für die Uhr eingebaut habe. Meine LED Nr. 1 sitzt von der mechanischen Konstruktuion unten.
Das Offset ist in den Task Settings im WebFrontend einstellbar.

Wenn es gewünscht wird, kann ich die Datei mit den kommentierten Änderungen hochladen.

Erstmal ein dickes Sorry für diese sehr späte Antwort - ich hatte mal wieder kaum Zeit.
Ich bin aber sehr dankbar für Änderungsvorschläge und baue diese auch sehr gerne mit ein. ;)


Zitat von: mspa am 02 August 2018, 19:20:09
Gibt es eine aktuelle Mega Firmware mit dem normalen plugin set? Ich bräuchte nämlich noch das IR-LED plugin und ich schaffe es nicht auf dem Stable branch oder mega branch mit dem Plugin ESPEasy zu Kompilieren, ohne das plugin habe ich keine Probleme.

Probier mal bitte die aktuellste Version des Plugins aus dem Github - damit sollte es gehen. Es gab einige Änderungen bei ESP Easy, die ich im Plugin anpassen musste.


@all
Der Sekundenzeiger bei der Simple Clock ist jetzt wahlweise abschaltbar: Wenn die Farbe [secondcolor] auf "000000" gesetzt wird, wandert ein schwarzer Punkt ringsum und wenn er auf "off" gesetzt wird, verschwindet er komplett.

mspa


clumsy

@djcysmic:

schonmal/nochmals vielen dank, das modul läuft immernoch super!

Evtl. noch eine kleine Anregung: ESPEasy verwendet seit einer weile sogenannte plugin-sets. Dazu müsste in der gesamte Code in ein
#ifdef USES_P124
#endif


eingefasst werden! Dann kanns im define_plugin_sts.h resp. im Custeom.h includiert oder eben nicht werden...

lg

STefan

djcysmic

Zitat von: clumsy am 05 August 2018, 20:03:10
Evtl. noch eine kleine Anregung: ESPEasy verwendet seit einer weile sogenannte plugin-sets. Dazu müsste in der gesamte Code in ein
#ifdef USES_P124
#endif


eingefasst werden! Dann kanns im define_plugin_sts.h resp. im Custeom.h includiert oder eben nicht werden...

Vielen Dank für den Hinweis - hab's eingearbeitet ;)

the_noltens

Hallo,
ich finde gerade kein passendes Thema zu meinem Problem, daher poste ich es mal hier.
Auf meinem NodeMCU habe NeoPixelBusFX drauf und kann auch die Effekte starten.
Allerdings laufen die Effekte im Zeitlupentempo ab. Hin und wieder auch mal für 1-2 Sekunden flüssig, aber eher im Zeitlupentempo.
Ich verzweifel langsam.
Kann es sein, dass der ESP nicht genug Leistung dafür hat? Ich weiß echt nicht weiter.
Hat vielleicht einer von euch das gleiche Problem gehabt...

the_noltens

Hat sich erledigt.  :)
Habe den Fehler gefunden. Habe im Device die Option "Send to Controller" bei "Data Acquisition" rausgenommen.
Dann läuft es rund.  ;D