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

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

Vorheriges Thema - Nächstes Thema

hugo

Das nenne ich prompte Info und Service. Danke für die HSVline, dass erspart einige tipparbeit. :)
Raspi 3 mit CUL HM-MOD-UART; nanoCUL
Homematic: HM-SEC-SCo 5x;HM-LC-SW1-BA-PCB 3x;HM-Dis-EP-WM55; HM-LC-SW4-PCB; ARLO;
Somfy RTS Rollo 14x; Alexa; GardenaSmartDevice; Stromzähler(GPIO); shelly1; shelly2.5;Wasserzähler(GPIO);Brennerstuhlsteckdosen;

Sunless

#346
Betreffend Rules habe ich eine Vermutung ... mir ist aufgefallen, dass mein ESP nach einem Reboot genau einmal eine Lebensmeldung gibt und Werte (hab noch diverse Sensoren zusätzlich dran) sendet. Steht also auf "absent", obwohl er anwesend ist. Senden via 'sendtohttp' in den bestehenden Rules funktioniert, MQTT nur sporadisch mit Daten.

Im Webinterface bekomme ich ab und an mal die Meldung "Low memory. Cannot display webpage :-(" ... ab und an mal kommt auch gar keine Verbindung zum ESP zustande resp. nach 'submit' kommt nur eine halbe oder gar keine Seite zurück ...

Tippe daher auf ein Speicherproblem - getestet mit der Version vom Apr 3 2019 00:46:51 sowie der letzten im Git vorhandenen (Apr 7, 2019) ...
Vermutlich ist das Plugin "zu groß" geworden oder ist zu speicherintentiv?  :'(

Free Mem: 4632 (2176 - duringDataTX)
Free Stack: 3600 (2096 - LoadControllerSettings)
Sketch Size: 857 kB (2212 kB free)
SPIFFS Size: 934 kB (859 kB free)


Ich versuche später mal eine "custom minimal" zu bauen - gibt ja viele Plugins, die ich nicht benötige (habe nur switch,die neo-sachen,SI7021/HTU21D,BH1750,systeminfo und dummy im Einsatz)

PS: Firmwareupdate funktioniert auch nicht - lädt bis 9% hoch und dann Ende  - der 2-step-Uploader kommt bis 34% :-[
PPS: mal alle Controller und Devices gelöscht - bringt auch keine Besserung
PPPS: nach komplettem Reset gings mit dem 2-step

Gruß Sebastian

Edit: grad die Version vom 2.April (die vorletzte - 1f160...) getestet - identisches Ergebnis

Edit2: habs nun am laufen: blank_4MB.bin drauf, danach Version vom 2.April, bei der Ersteinrichtung das Wlan übersprungen und direkt die alte config zurückgespielt, reboot, Wlan eingerichtet,reboot, getestet - läuft, Rules via Flash zurückgespielt ...
Bekomme zwar in der Console ne Fehlermeldung (116 : CRC : No program memory checksum found. Check output of crc2.py), aber ich lass erstmal die Fingers davon  :P


Free Mem:  7472 (5144 - LoadTaskSettings)
Free Stack: 3600 (1392 - LoadTaskSettings)
Sketch Size: 856 kB (2212 kB free)
SPIFFS Size: 934 kB (859 kB free)

... sieht auch schon besser aus ...
FHEM-Master@Raspi2B (CUL433,etliche CUL_TCM97001-Sensoren, zig IT-Steckdosenschalter, Squeezelite)
FHEM-Slave@Raspi (via RFHEM,wired Bewegungsmelder, Sqeezelite)
DS212+ (LMS für Squeezelite-Clients, Surveillance, Mediaserver und Datengrab)
Billig-Tablets zum Steuern (TabletUI)

djcysmic

Zitat von: Sunless am 09 April 2019, 12:20:05
Tippe daher auf ein Speicherproblem - getestet mit der Version vom Apr 3 2019 00:46:51 sowie der letzten im Git vorhandenen (Apr 7, 2019) ...
Vermutlich ist das Plugin "zu groß" geworden oder ist zu speicherintentiv?  :'(

Die Erfahrung habe ich auch schon gemacht. Wenn du in der _P124_NeoPixelBusFX.ino den Wert
#define ARRAYSIZE 300 //Max LED Count
auf deine genaue LED-Anzahl anpasst, kannst du auch noch etwas Arbeitsspeicher sparen ;)

Sunless

#348
Danke, das werd' ich bei Gelegenheit mal testen ...
Würde es Sinn machen, statt des ESP12F z.B. einen Wemos D1 mini pro mit 16 MB zu nehmen? Oder hätte dies keine Auswirkungen?

Grüße ...

Edit: hab meinen 'pro' wiedergefunden und festgestellt, dass es keinen Unterschied macht, da es maximal eine 4MB-Version gibt - man müsste daher eine 16MB-Version basteln um den Speicher voll zu nutzen ...
FHEM-Master@Raspi2B (CUL433,etliche CUL_TCM97001-Sensoren, zig IT-Steckdosenschalter, Squeezelite)
FHEM-Slave@Raspi (via RFHEM,wired Bewegungsmelder, Sqeezelite)
DS212+ (LMS für Squeezelite-Clients, Surveillance, Mediaserver und Datengrab)
Billig-Tablets zum Steuern (TabletUI)

Nexium

Hallo, ich hab eine Frage zur simpleclock.

Wenn ich den Effekt starte dann laufen die Sekunden genau einmal durch und dann bleibt alles stehen. Is das so gewünscht und darum der Name simpleclock oder geht das auch anderst mit dem Plugin?

djcysmic

Zitat von: Nexium am 26 Juli 2019, 20:42:07
Hallo, ich hab eine Frage zur simpleclock.

Wenn ich den Effekt starte dann laufen die Sekunden genau einmal durch und dann bleibt alles stehen. Is das so gewünscht und darum der Name simpleclock oder geht das auch anderst mit dem Plugin?

Hallo Nexium,

normal sollte die SimpleClock wie eine normale Uhr laufen, also nicht einfach anhalten. Bei mir läuft der Effekt auch sauber durch.

Kann es sein, dass du in den Rules einen Effekt aufrufst, der vielleicht die SimpleClock unterbricht?

Nexium

Hallo,

nein hab dort nichts eingetragen.
Bei anderen Effekten ist es auch oft so wenn sie länger als 5 min laufen bleiben sie gern mal stehen und nach paar Minuten gehen se wieder weiter.
Hab leider null Plan wo ich da suchen soll. Denk das hat nix mit FHEM zutun sondern mit ESPeasy. Hab schon über die ArduinoeIDE geflascht als auch fertige .bin dateien genommen. Ist immer das gleiche.

djcysmic

Zitat von: Nexium am 28 Juli 2019, 23:24:33
Hallo,

nein hab dort nichts eingetragen.
Bei anderen Effekten ist es auch oft so wenn sie länger als 5 min laufen bleiben sie gern mal stehen und nach paar Minuten gehen se wieder weiter.
Hab leider null Plan wo ich da suchen soll. Denk das hat nix mit FHEM zutun sondern mit ESPeasy. Hab schon über die ArduinoeIDE geflascht als auch fertige .bin dateien genommen. Ist immer das gleiche.

Hört sich an, als ob er etwas überlastet ist. Hast du ihn mal testweise standalone (ohne Anbindung FHEM/MQTT etc.) betrieben? Was laufen noch für Plugins? WLAN-Verbindung hat er? Die Versorgungsspannung ist stabil?

Nexium

Es ist nur das NeopixelBusFX plugin installiert. Manchmal ist der Load auf 99%. Über welches command kann ich den in ESPeasy die Clock starten? Dann würde ich das mal ohne FHEM testen.

djcysmic

Zitat von: Nexium am 30 Juli 2019, 22:05:29
Es ist nur das NeopixelBusFX plugin installiert. Manchmal ist der Load auf 99%. Über welches command kann ich den in ESPeasy die Clock starten? Dann würde ich das mal ohne FHEM testen.

nfx simpleclock

Du solltest herausfinden, was ihn so stark auslastet...

Nexium

#355
Hab FHEM abgeschalten wenn ich zb comet aus espeasy raus starte läuft es deutlich flüssiger und die Last geht auf 19% runter. Starte ich mit deinem Befehl die Uhr startet diese auch allerdings genau das gleiche. Ich hab ein Stripe mit 144 WS2812. Liegt das vielleicht daran? Muss ich die noch am Ende und am Anfang mit einenader verbinden?
PS: Es scheint die anbindung an FHEM zu sein was ihn so sehr belastet. Wie könnte ich denn da weiter vor gehen?

djcysmic

Zitatnfx simpleclock [bigtickcolor] [smalltickcolor] [hourcolor] [minutecolor] [secondcolor] [backgroundcolor]
o bigtickcolor, default: 505050
o smalltickcolor, default: 101010
o hourcolor, default: 0000FF
o minutecolor, default: 00FF00
o secondcolor, default: FF0000 - color of the second hand - can be set to "off" to turn the second hand completely off
o backgroundcolor, default: 000000

Eigentlich sollten die Sekunden rot angezeigt werden.

Wie hast du den ESP an FHEM angebunden? Über das Plugin oder über MQTT?
Hast du Attribute gesetzt, die permanent Anfragen an den ESP senden (z.B. Presence Check)?
Schicke mal bitte ein list von dem Device.

Nexium

#357
Ja die Sekunden kommen nun auch. Beim zweiten versuch hat es geklappt. Aber es ist noch immer das gleiche problem das die 60 Sekunden in rot einmal durch laufen und dann verschwinden. Hab den oberen Beitrag bearbeitet.
Über das Plugin nicht über MQTT.
Internals:
   DEF        192.168.178.39 80 espBridge ESP_Easy_Neo
   ESP_BUILD  20103
   ESP_BUILD_GIT (custom)
   ESP_BUILD_NOTES  - Mega
   ESP_NODE_TYPE_ID ESP Easy Mega
   ESP_SLEEP  0
   ESP_UNIT   0
   ESP_VERSION 2
   FUUID      5d39f6a3-f33f-c32d-f0d6-634ba6a0ec2ff6cf
   HOST       192.168.178.39
   IDENT      ESP_Easy_Neo
   INTERVAL   300
   IODev      espBridge
   LASTInputDev espBridge
   MAX_CMD_DURATION 1
   MSGCNT     7598
   NAME       ESPEasy_ESP_Easy_NeoPixelBusFX
   NOTIFYDEV  global
   NR         566
   NTFY_ORDER 50-ESPEasy_ESP_Easy_NeoPixelBusFX
   PORT       80
   STATE      absent
   SUBTYPE    device
   TYPE       ESPEasy
   VERSION    2.18
   espBridge_MSGCNT 7598
   espBridge_TIME 2019-07-30 22:20:26
   READINGS:
     2019-07-30 22:20:26   Fadedelay       0
     2019-07-30 22:20:26   Fadetime        1000
     2019-07-30 22:20:26   Lastmode        0
     2019-07-30 22:20:26   Mode            6
     2019-07-30 22:14:33   brightness      0
     2019-07-30 22:14:33   count           1
     2019-07-30 22:14:33   dim             255
     2019-07-30 22:14:33   fadedelay       20
     2019-07-30 22:14:33   fadetime        1000
     2019-07-30 22:14:33   hue             0
     2019-07-30 22:14:33   lastmode        off
     2019-07-30 22:14:33   mode            simpleclock
     2019-07-30 22:14:33   pixelcount      144
     2019-07-30 22:39:22   presence        absent
     2019-07-30 22:10:05   rgb             3912ff
     2019-07-30 22:14:33   saturation      0
     2019-07-30 22:14:33   speed           25
     2019-07-30 22:39:22   state           absent
   helper:
     fpc        1564426363
     mapLightCmds:
       all        nfx
       bgcolor    nfx
       colorfade  nfx
       comet      nfx
       count      nfx
       ct         nfx
       dim        nfx
       dualscan   nfx
       dualwipe   nfx
       fade       nfx
       fadedelay  nfx
       fadetime   nfx
       faketv     nfx
       fire       nfx
       fireflicker nfx
       kitt       nfx
       line       nfx
       off        nfx
       on         nfx
       one        nfx
       pct        nfx
       rainbow    nfx
       rgb        nfx
       scan       nfx
       simpleclock nfx
       sparkle    nfx
       speed      nfx
       stop       nfx
       theatre    nfx
       toggle     nfx
       twinkle    nfx
       twinklefade nfx
       wipe       nfx
     pm:
       Encode     1
       JSON       1
     received:
   sec:
     admpwd     
Attributes:
   IODev      espBridge
   Interval   300
   group      ESPEasy Device
   mapLightCmds nfx
   parseCmdResponse nfx
   presenceCheck 1
   readingSwitchText 1
   room       ESPEasy
   setState   3

djcysmic

Hast du im Feld Data Acquisition Interval im NeoPixelBus-Device in ESPEasy zufällig einen Wert größer 0 eingetragen? Wenn ja, probiere mal bitte eine 0 einzutragen.
Was steht in deinen Rules?

Nexium

Ja dort stand 60 drin. Hab es geändert auf 0. Die Ruels sind leer. Allgemein läuft jetzt alles flüssiger aus FHEM herraus. Hiefür schonmal vielen dank.

Das Problem mit der Uhr besteht aber noch immer.