Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: We-Mod-It | Das Forum von Moddern für Modder. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

Joker

Lebt hier!

  • »Joker« ist der Autor dieses Themas

Beiträge: 1 271

Registrierungsdatum: 21. Februar 2012

Wohnort: Nürnberg

Beruf: Code-Künstler

Danksagungen: 34

  • Nachricht senden

61

Donnerstag, 20. April 2017, 13:30

Hat sich denn der Status des Sonos mal geändert nachdem du dies eingerichtet hast oder war er vor der Einrichtung schon appeared?
Ich kann mir billiges Werkzeug nicht leisten!!!
Mein Hausumbau-Thread
Mein Werkstattumbau-Thread

stenumer

Neu Hier!

Beiträge: 21

Registrierungsdatum: 15. April 2017

Name: Generation 50+

Wohnort: Ganderkesee

Beruf: technischer Sachbearbeiter

  • Nachricht senden

62

Donnerstag, 20. April 2017, 18:40

Das kann ich mit Sicherheit gar nicht sagen. Obendrein habe ich momentan in FHEM kein Sonos mehr ... Ganz elegant kaputteditiert.
P.S.: Wie zitiert man hier richtig?

Joker

Lebt hier!

  • »Joker« ist der Autor dieses Themas

Beiträge: 1 271

Registrierungsdatum: 21. Februar 2012

Wohnort: Nürnberg

Beruf: Code-Künstler

Danksagungen: 34

  • Nachricht senden

63

Donnerstag, 20. April 2017, 20:59

Das kann ich mit Sicherheit gar nicht sagen. Obendrein habe ich momentan in FHEM kein Sonos mehr ... Ganz elegant kaputteditiert.
P.S.: Wie zitiert man hier richtig?

Auf den Zitieren Knopf drücken und das passende auswählen? ;)
Tja- also was dein Problem angeht kann ich dir im Moment leider nicht helfen. Was du eingestellt hast, passt prinzipiell so. Am einfachsten wären es per Arduino IDE auf die serielle Ausgaben des HSD zu schauen, da wird angezeigt wenn eine Message ankommt und wie drauf reagiert wird.
So könnte man erstmal rausfinden, ob überhaupt eine Message ankommt (wenn nicht, liegt es an FHEM oder Mosquitto), ob die richtige Message ankommt (dann ist es ein Bug im HSD) oder ob eine falsche Message ankommt (dann liegt es an den Einstellungen).

Edit: was mir gerade noch einfällt- hast du in den Einstellungen vom HSD vielleicht versehentlich irgendwo ein Leerzeichen oder TAB hinten dran?
Ich kann mir billiges Werkzeug nicht leisten!!!
Mein Hausumbau-Thread
Mein Werkstattumbau-Thread

stenumer

Neu Hier!

Beiträge: 21

Registrierungsdatum: 15. April 2017

Name: Generation 50+

Wohnort: Ganderkesee

Beruf: technischer Sachbearbeiter

  • Nachricht senden

64

Sonntag, 4. Juni 2017, 17:24

Es laüft soweit, aber ...

Hallo da bin ich wieder....
in der Zwischenzeit ist einiges passiert. Zum einen habe ich mir ein pi3 gegönnt und schon einiges darauf eingerichtet, auch das Sonossystem :)
Auf der anderen Seite ist nun mein erster Bilderrahmen (halb)fertig.
Hier ein paar Fotos.
Habe auch das Ikea-Konzept verwendet.
Allerdings nur zweireihig und mit sehr großer Schrif (dem Alter entsprechend). Zusatzlich wurde die linke Seite mit Reedkontakten ausgeführt, damit sollen dann Schaltaktionen ausgeführt werden (auf der linken Seite sind nur Aktoren).
»stenumer« hat folgende Bilder angehängt:
  • IMG_20170520_120248.jpg
  • IMG_20170520_120116.jpg
  • IMG_20170519_024142.jpg
  • IMG_20170519_023023.jpg

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »stenumer« (4. Juni 2017, 17:44)


Joker

Lebt hier!

  • »Joker« ist der Autor dieses Themas

Beiträge: 1 271

Registrierungsdatum: 21. Februar 2012

Wohnort: Nürnberg

Beruf: Code-Künstler

Danksagungen: 34

  • Nachricht senden

65

Sonntag, 4. Juni 2017, 17:35

Hehe, ist ja witzig- ich sitze genau im Moment am Code vom HomeStatusDisplay und behebe ein paar Probleme.

Eine Sache war, dass es Probleme beim Abspeichern von großen ColorMapping Konfigurationen (ca. mehr als 15 Einträge) gab. Das habe ich behoben indem ich massiv RAM-Verbrauch eingespart habe. Dafür hat sich aber leider das Config-Format geändert, also beim Update muss man die Config neu erstellen :(

Dafür kann man jetzt auch Orange und Violett als Farbe auswählen, somit kann man die Farben von unwetterzentrale.de für die verschiedenen Unwetterwarnstufen nutzen (ich nutze das auch so, deshalb habe ich es eingebaut).

Beide Änderungen habe ich gerade auf GitHub geladen.

Sehr schön dein Display! Benutzt du die Zahnstocher damit sich das Papier nicht wellt? Gute Idee. Ich habe das Problem auch gehabt und habe einen Streifen Spiegelklebeband hingeklebt, das hat auch ungefähr die Dicke der LEDs.

Hast du was dagegen wenn ich ein Bild von deinem Gerät mit deinem Nickname zusammen bei mir auf die Homepage stelle? Ich habe gerade gestern das Komplett-Tutorial fertiggestellt:
http://www.bernd-schubart.de/homestatusd…immer-im-blick/
Ich kann mir billiges Werkzeug nicht leisten!!!
Mein Hausumbau-Thread
Mein Werkstattumbau-Thread

stenumer

Neu Hier!

Beiträge: 21

Registrierungsdatum: 15. April 2017

Name: Generation 50+

Wohnort: Ganderkesee

Beruf: technischer Sachbearbeiter

  • Nachricht senden

66

Sonntag, 4. Juni 2017, 17:59

Die Bilder kannst du verwenden, nur eine Bitte: Ich habe versäumt die Ränder zu beschneiden.
Bitte sei so gut und entferne das Chaos drumherum!

Nun aber meinem (momentanes) Problem.
Mein Müllkalender habe ich für meine Verhältnisse ganz nett hinbekommen. Das Datum und der Zeitraum bis zur nächsten Lehrung wird pro Müllart angezeigt.
Auf dem HSD bekomme ich das nicht hin, das State ist bei allen Müllarten gleich. Es wird brav via MQTT übertragen = immer alle gleich.
Zum besseren Verständnis habe ich die screenshots hochgeladen (ggf. auch interessant für den einen oder anderen Mitleser).
Wie kann ich z.B. das reading "Muelltonnen_Kalender_Gelb_2_tage" zum Versenden via MQTT verwenden.
Ich habe aus lauter Verzweiflung mit dummys rumexperimentiert, allerdings ausser Frust nichts erreicht.
Bin für jeden Tipp dankbar!
(Habe mir in der Vorbereitung für jede LED einen Dummy zur Ansteuerung gebaut (als Beipiel # LED25 im screenshot), damit konnte ich die Funktion schon mal testen, empfand dies als sehr hilfreich)
Gruß Ulf
»stenumer« hat folgende Bilder angehängt:
  • Screenshot_Abfall.jpg
  • Screenshot_gelberSack-3Tage.jpg
  • Screenshot_grueneTonne-24Tage.jpg
  • Screenshot_grueneTonne-24Tage_stateFormat.jpg
  • Screenshot_Abfall_MQTT_LED-Ansteuerung.jpg

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »stenumer« (4. Juni 2017, 18:42)


Joker

Lebt hier!

  • »Joker« ist der Autor dieses Themas

Beiträge: 1 271

Registrierungsdatum: 21. Februar 2012

Wohnort: Nürnberg

Beruf: Code-Künstler

Danksagungen: 34

  • Nachricht senden

67

Sonntag, 4. Juni 2017, 19:24

Ich kenne das ABFALL Modul leider nicht, musste gerade erstmal im Wiki nachsehen was das überhaupt ist... recht viel steht da aber nicht.

Ist das jetzt pro Tonne ein extra Device oder steht alles in einem Device?
Anstatt Screenshots mache bitte in Zukunft ein list des Device: In der FHEM Kommandozeile "list <devicename" eingeben, dann hier die Ausgabe in Code-Tags posten.

Der State scheint jedenfalls die Anzahl der Tage bis zur nächsten Leerung irgendeiner Tonne zu enthalten.
Poste bitte mal ein list der Mülltonnen-Devices oder des Mülltonnen-Device, wenn es nur eins ist.
Ich kann mir billiges Werkzeug nicht leisten!!!
Mein Hausumbau-Thread
Mein Werkstattumbau-Thread

stenumer

Neu Hier!

Beiträge: 21

Registrierungsdatum: 15. April 2017

Name: Generation 50+

Wohnort: Ganderkesee

Beruf: technischer Sachbearbeiter

  • Nachricht senden

68

Sonntag, 4. Juni 2017, 20:01

Aha, jetzt weiss ich schon mal wie man solche Listen generiert, habe mich schon gewundert wie so etwas geht ... Bin ja gespannt ob das was jetzt kommt in "in Code-Tags" ist.
Als Beispiel habe ich unsere braune Tonne gewählt welche in dem Code die "Bio_2" ist.

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
Internals: 
   DEF        Muelltonnen_Kalender 3600 
   KALENDER   Muelltonnen_Kalender 
   NAME       braune_Tonne 
   NR         81 
   NTFY_ORDER 50-braune_Tonne 
   STATE      nächste Lehrung am: Mittwoch den 07.06.17 => noch 3 Tage 
   TYPE       ABFALL 
   Readings: 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Bio_2_datum 07.06.17 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Bio_2_tage 3 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Bio_2_text   Bio_2 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Bio_2_wochentag Mittwoch 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Gelb_2_datum 07.06.17 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Gelb_2_tage 3 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Gelb_2_text   Gelb_2 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Gelb_2_wochentag Mittwoch 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Papier_4_datum 28.06.17 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Papier_4_tage 24 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Papier_4_text   Papier_4 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Papier_4_wochentag Mittwoch 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Rest_2_datum 13.06.17 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Rest_2_tage 9 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Rest_2_text   Rest_2 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Rest_2_wochentag Dienstag 
     2017-06-04 19:29:12   next            Muelltonnen_Kalender_Bio_2|Muelltonnen_Kalender_Gelb_2_3 
     2017-06-04 19:29:12   next_datum      07.06.17 
     2017-06-04 19:29:12   next_tage       3 
     2017-06-04 19:29:12   next_text         Bio_2 und   Gelb_2 
     2017-06-04 19:29:12   next_wochentag  Mittwoch 
     2017-06-04 19:29:12   state           3 
Attributes: 
   alias      Aussen_braune-Tonne 
   devStateIcon 0:Wecker.Immer 1:Wecker.Immer 2:Wecker.Wochenende 
   icon       dustbin 
   room       Aussen 
   stateFormat nächste Lehrung am: Muelltonnen_Kalender_Bio_2_wochentag den Muelltonnen_Kalender_Bio_2_datum => noch Muelltonnen_Kalender_Bio_2_tage Tage


Und hier die schwarze Tonne, die im Code die "Rest_2" ist.

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
Internals: 
   DEF        Muelltonnen_Kalender 3600 
   KALENDER   Muelltonnen_Kalender 
   NAME       schwarze_Tonne 
   NR         77 
   NTFY_ORDER 50-schwarze_Tonne 
   STATE      nächste Lehrung am: Dienstag den 13.06.17 => noch 9 Tage 
   TYPE       ABFALL 
   Readings: 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Bio_2_datum 07.06.17 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Bio_2_tage 3 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Bio_2_text   Bio_2 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Bio_2_wochentag Mittwoch 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Gelb_2_datum 07.06.17 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Gelb_2_tage 3 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Gelb_2_text   Gelb_2 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Gelb_2_wochentag Mittwoch 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Papier_4_datum 28.06.17 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Papier_4_tage 24 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Papier_4_text   Papier_4 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Papier_4_wochentag Mittwoch 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Rest_2_datum 13.06.17 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Rest_2_tage 9 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Rest_2_text   Rest_2 
     2017-06-04 19:29:12   Muelltonnen_Kalender_Rest_2_wochentag Dienstag 
     2017-06-04 19:29:12   next            Muelltonnen_Kalender_Gelb_2|Muelltonnen_Kalender_Bio_2_3 
     2017-06-04 19:29:12   next_datum      07.06.17 
     2017-06-04 19:29:12   next_tage       3 
     2017-06-04 19:29:12   next_text         Gelb_2 und   Bio_2 
     2017-06-04 19:29:12   next_wochentag  Mittwoch 
     2017-06-04 19:29:12   state           3 
Attributes: 
   alias      Aussen_schwarze-Tonne 
   devStateIcon 0:Wecker.Immer 1:Wecker.Immer 2:Wecker.Wochenende 
   icon       dustbin 
   room       Aussen 
   stateFormat nächste Lehrung am: Muelltonnen_Kalender_Rest_2_wochentag den Muelltonnen_Kalender_Rest_2_datum => noch Muelltonnen_Kalender_Rest_2_tage Tage


Die anderen beiden Tonnen sind vergleichbar (gelber Sack und die gruene Tonne welche im Code die "Papier_4" ist. Alle vier Müllarten haben das state = 3

Joker

Lebt hier!

  • »Joker« ist der Autor dieses Themas

Beiträge: 1 271

Registrierungsdatum: 21. Februar 2012

Wohnort: Nürnberg

Beruf: Code-Künstler

Danksagungen: 34

  • Nachricht senden

69

Sonntag, 4. Juni 2017, 22:46

Aha, jetzt weiss ich schon mal wie man solche Listen generiert, habe mich schon gewundert wie so etwas geht ... Bin ja gespannt ob das was jetzt kommt in "in Code-Tags" ist.´.

Das passt so ;) So sieht man nämlich alles, und das ganz ohne umständliche Screenshots.

Also ich muss sagen, so ganz verstehe ich dieses ABFALL Modul nicht, aber ich sehe das doch richtig, dass die Zahl auf die es ankommt, einmal im Reading "Muelltonnen_Kalender_Bio_2_tage" steht und einmal im Reading "Muelltonnen_Kalender_Rest_2_tage", oder? Und es ist pro Tonne immer dieses Reading auf dass es ankommt?

Dann lösche mal aus deinen MQTT_BRIDGE Devices das "publishState" Attribut und nutze stattdessen z.B. für die schwarze Tonne:

Quellcode

1
attr mqttStaus_schwarze_Tonne publishReading_Muelltonnen_Kalender_Rest_2_tage fhem/status/alarm/Aussen_schwarzeTonne


Im ColorMapping im HomeStatusDisplay wählst du z.B.:
2, Alarm, Yellow, On
1, Alarm, Red, On

Dann würde, sobald in dem Reading Muelltonnen_Kalender_Rest_2_tage der Wert 2 bzw. der Wert 1 steht, die LED Gelb oder Rot leuchten. Das funktioniert natürlich nur, wenn du sonst keine Geräte hast, die einfach nur Zahlen posten. Schöner wäre es, wenn das Reading nicht einen Zahlenwert, sondern z.B. "today" oder "tomorrow" liefern würde. Das könnte man mit einem ReadingsProxy lösen, aber probier erstmal ob du ohne klar kommst.

Achso, im Device Mapping müsstest du dann z.B. einstellen
Aussen_schwarzeTonne, Alarm, 24

Damit die 24. LED angeht. Ein Problem gibts noch: Es werden maximal 25 Zeichen als Devicename unterstützt. Du müsstest also noch das Reading kürzer machen. ich vermute das lässt sich machen indem du die Definition von dem ABFALL Modul änderst z.B. von "Muelltonnen_Kalender 3600" in "wastecal 3600". Das machst du am besten zuerst, da sich dann natürlich auch die Attribute bzw. Readings ändern und die Definitionen die ich oben genannt habe entsprechend anzupassen sind.
Ich kann mir billiges Werkzeug nicht leisten!!!
Mein Hausumbau-Thread
Mein Werkstattumbau-Thread

stenumer

Neu Hier!

Beiträge: 21

Registrierungsdatum: 15. April 2017

Name: Generation 50+

Wohnort: Ganderkesee

Beruf: technischer Sachbearbeiter

  • Nachricht senden

70

Dienstag, 6. Juni 2017, 21:05

Nach kleiner Anpassung läuft es!

Hier die Anpassung die notwendig war um es bei mir zum Laufen zu bringen.

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Internals: 
   DEF        gelber_Sack 
   IODev      Mosquitto 
   NAME       mqttStaus_gelber_Sack 
   NOTIFYDEV  gelber_Sack 
   NR         152 
   NTFY_ORDER 50-mqttStaus_gelber_Sack 
   STATE      outgoing publish sent 
   TYPE       MQTT_BRIDGE 
   qos        0 
   retain     1 
   Readings: 
     2017-06-06 20:37:22   transmission-state outgoing publish sent 
   Publishreadings: 
     Muelltonnen_Kalender_Gelb_2_tage fhem/status/light/Aussen_gelberSack 
   subscribe: 
   subscribeExpr: 
Attributes: 
   IODev      Mosquitto 
   publishReading_Muelltonnen_Kalender_Gelb_2_tage fhem/status/light/Aussen_gelberSack 
   retain     1 
   room       MQTT 
   stateFormat transmission-state


Bei mir hat "Alarm" nicht funktioniert, "light" dagegen perfekt!
Nach meinen ca 15 Stunden erfolglosem Forenstöbern und ausprobieren DEEEER Durchbruch!
Vielen Vielen Dank!!!

Joker

Lebt hier!

  • »Joker« ist der Autor dieses Themas

Beiträge: 1 271

Registrierungsdatum: 21. Februar 2012

Wohnort: Nürnberg

Beruf: Code-Künstler

Danksagungen: 34

  • Nachricht senden

71

Mittwoch, 7. Juni 2017, 00:22

Sehr schön!
Freut mich dass ich dir helfen konnte.

Das mit dem Alarm sollten wir aber noch klären. Das MUSS funktionieren ;) .
Eine Message light zu posten für ein Gerät was mit Licht überhaupt nichts zu tun hat... ja funktioniert natürlich schon, aber ist so nicht gedacht.

Hast du denn daran gedacht, das sowohl im MQTT_BRIDGE als auch in der Konfiguration auf alarm zu stellen?

Also bei dem MQTT_BRIDGE Device folgendes:

Quellcode

1
attr mqttStaus_gelber_Sack publishReading_Muelltonnen_Kalender_Gelb_2_tage fhem/status/alarm/Aussen_gelberSack 


Und in der Konfiguration vom StatusDisplay stellst du im Device Mapping an der entsprechenden LED den Type auf "Alarm", und im Color Mapping an den Stellen an der/den Messages die die LED einschalten sollen ebenso den Type auf "Alarm".
Ich kann mir billiges Werkzeug nicht leisten!!!
Mein Hausumbau-Thread
Mein Werkstattumbau-Thread

stenumer

Neu Hier!

Beiträge: 21

Registrierungsdatum: 15. April 2017

Name: Generation 50+

Wohnort: Ganderkesee

Beruf: technischer Sachbearbeiter

  • Nachricht senden

72

Mittwoch, 7. Juni 2017, 20:42

Gerade eben habe ich die verschiedenen Möglichkeiten verprobt. Es ist genau so wie du es beschrieben hast.
Ich gehe inzwischen davon aus das ich bei den drei Stellen des Eintragens / Auswahl nicht synchron gearbeitet habe.
Nochmals vielen Dank für Deine Unterstützung!!!

Mindestens einen Wunsch habe ich noch: Bitte sei so gut und erhöhe die Versionsnummer wenn du eine Änderung online stellst. Mir ist es passiert das das Upload bereits geklappt hatte, ich es aber nicht wargenommen habe. In der Folge jagte ich mal wieder ein Phantom...

Noch eine andere Baustelle:
Bei der Benutzung der 32zigsten LED stürzt das Programm regelmäßig (und wiederholbar) bei mir in den Abgrund und das Device Mapping ist dann jedes mal wieder jungfräulich. An welcher Stelle kann ich Speicher sparen um diese Eigenschaft los zu werden?

Joker

Lebt hier!

  • »Joker« ist der Autor dieses Themas

Beiträge: 1 271

Registrierungsdatum: 21. Februar 2012

Wohnort: Nürnberg

Beruf: Code-Künstler

Danksagungen: 34

  • Nachricht senden

73

Mittwoch, 7. Juni 2017, 21:05

Gerade eben habe ich die verschiedenen Möglichkeiten verprobt. Es ist genau so wie du es beschrieben hast.
Ich gehe inzwischen davon aus das ich bei den drei Stellen des Eintragens / Auswahl nicht synchron gearbeitet habe.
Nochmals vielen Dank für Deine Unterstützung!!!

Prima, danke fürs Feedback!

Mindestens einen Wunsch habe ich noch: Bitte sei so gut und erhöhe die Versionsnummer wenn du eine Änderung online stellst. Mir ist es passiert das das Upload bereits geklappt hatte, ich es aber nicht wargenommen habe. In der Folge jagte ich mal wieder ein Phantom...

Das mache ich doch. Du musst natürlich über die Releases Seite gehen:
https://github.com/MTJoker/HomeStatusDisplay/releases
Das sind die Versionen, die von mir freigegeben sind und eine gewisse Stabilität haben. Was direkt auf der Startseite ist, sind Entwicklungsversionen. Das sind einfach nur Snapshots des aktuellen Standes, d.h. dort können neue Features drin sein aber es kann auch beliebig kaputt sein. Dort macht es keinen Sinn Versionen zu vergeben. Das bitte nur benutzen wenn du das neueste vom neuen haben willst aber Probleme in Kauf nimmst.

Bei der Benutzung der 32zigsten LED stürzt das Programm regelmäßig (und wiederholbar) bei mir in den Abgrund und das Device Mapping ist dann jedes mal wieder jungfräulich. An welcher Stelle kann ich Speicher sparen um diese Eigenschaft los zu werden?

Was heißt "stürzt in den Abgrund"? Bitte genauer beschreiben was du tust und was passiert- ich habe mir alle 33 LEDs konfiguriert und bisher kein Problem festgestellt.
Hilfreich wäre noch die Logausgabe dazu, am besten vom Zeitpunkt des Bootens bis zum Absturz. In der Logausgabe taucht auch dein Wifi Passwort auf, das bitte unkenntlich machen. Steht noch auf meiner TODO Liste, dass ich das nicht mit ausgebe, dann kann man einfach das Log ohne Änderung kopieren zur Fehlersuche.
Ich kann mir billiges Werkzeug nicht leisten!!!
Mein Hausumbau-Thread
Mein Werkstattumbau-Thread

stenumer

Neu Hier!

Beiträge: 21

Registrierungsdatum: 15. April 2017

Name: Generation 50+

Wohnort: Ganderkesee

Beruf: technischer Sachbearbeiter

  • Nachricht senden

74

Samstag, 10. Juni 2017, 09:03

Was heißt "stürzt in den Abgrund"? Bitte genauer beschreiben was du tust und was passiert- ich habe mir alle 33 LEDs konfiguriert und bisher kein Problem festgestellt.
Hilfreich wäre noch die Logausgabe dazu, am besten vom Zeitpunkt des Bootens bis zum Absturz.

Ich weiss nicht wie ich eine "Logausgabe" erstelle. Da aber ggf. FHEM damit gemeint ist... FHEM bzw den Raspi habe ich zum Test NICHT eingeschaltet gehabt. Also nur den Wemos D1 mini.
Im "Device mapping" habe ich meine Einträge gemacht. Bis LED30 kein Problem, konnte die Einstellungen sichern, einen Reboot durchführen, alles gut. Nach der Eingabe des Textes für LED31 und dem Benutzen von "Save" gefolgt von dem Benutzen von "Reboot" verschwinden ALLE Einträge und bleiben auch weg!
Als Anlage einmal das alte und das neue device mapping.
Beim neuen device mapping habe ich die Länge der Einträge auf ein minimum reduziert. Diese Variante läüft. Aus meiner Sicht hat das direkt mit dem Speicherverbrauch zu tun.
»stenumer« hat folgende Bilder angehängt:
  • StatusDisplay_Devicemapping_2v2.jpg
  • Screenshot_DeviceMapping_20170610.jpg

Joker

Lebt hier!

  • »Joker« ist der Autor dieses Themas

Beiträge: 1 271

Registrierungsdatum: 21. Februar 2012

Wohnort: Nürnberg

Beruf: Code-Künstler

Danksagungen: 34

  • Nachricht senden

75

Samstag, 10. Juni 2017, 10:30

Was heißt "stürzt in den Abgrund"? Bitte genauer beschreiben was du tust und was passiert- ich habe mir alle 33 LEDs konfiguriert und bisher kein Problem festgestellt.
Hilfreich wäre noch die Logausgabe dazu, am besten vom Zeitpunkt des Bootens bis zum Absturz.

Ich weiss nicht wie ich eine "Logausgabe" erstelle. Da aber ggf. FHEM damit gemeint ist... FHEM bzw den Raspi habe ich zum Test NICHT eingeschaltet gehabt. Also nur den Wemos D1 mini.
Im "Device mapping" habe ich meine Einträge gemacht. Bis LED30 kein Problem, konnte die Einstellungen sichern, einen Reboot durchführen, alles gut. Nach der Eingabe des Textes für LED31 und dem Benutzen von "Save" gefolgt von dem Benutzen von "Reboot" verschwinden ALLE Einträge und bleiben auch weg!
Als Anlage einmal das alte und das neue device mapping.
Beim neuen device mapping habe ich die Länge der Einträge auf ein minimum reduziert. Diese Variante läüft. Aus meiner Sicht hat das direkt mit dem Speicherverbrauch zu tun.

Das mit dem Log ist ganz einfach. Du kompilierst die Software mit der Arduino IDE. Da du damit ja auch flashst, hast du schon den richtigen Port für die Logausgabe ausgewählt. Vor dem Flashen drückst du lediglich auf das "Serieller Monitor" Icon, ganz oben RECHTS in der IDE. Dort geht ein Fenster auf, und wenn du dann Aktionen ausführst erscheinen dort die Logausgaben. Erst flashen, dann alles durchführen was nötig ist um das Problem zu bekommen. Es würde mir sehr helfen die Logausgabe von Anfang an, bis zum Problem zu haben. Einfach alles aus dem Fenster kopieren (WLAN-Passwort entfernen), und dann hier posten.
Ich gebe dir recht dass dies mit dem Speicherverbrauch zu tun hat, das ist schon bekannt. Was nur seltsam ist, ist dass ich mit ähnlichen langen Device Namen und noch mehr LEDs schon konfiguriert habe und es kein Problem gab. Da würde mir das Log weiter helfen.

Im Endeffekt ist es so, dass man das Speicherverbrauch Problem nicht vollständig eliminieren kann, da man die Situation schwer detektieren kann. Ich werde vermutlich hergehen und das Konzept ein wenig ändern, das macht es dann extrem unwahrscheinlich dass man dieses Problem bekommt. Zwei Möglichkeiten gäbe es:

1. Man erstellt die Konfiguration gar nicht mehr über die Webseite, sondern durch editieren eines Textfiles welches man dann mit auf den ESP flasht. Das würde das Problem im Prinzip komplett eliminieren, aber es wäre dann sehr aufwändig die Konfiguration auf Korrektheit zu überprüfen, da man in das File ja "jeden Blödsinn" rein schreiben kann und die Software irgendwie damit klarkommen muss.

2. Man erstellt die Konfiguration über die Webseite wie bisher, allerdings kann man nicht mehr jeden Eintrag direkt editieren, sondern man erhält eine Übersicht was man schon eingegeben hat, und hat dann einen Button "Hinzufügen" (für das Hinzufügen eines neuen Eintrags) und einen "Editieren" Button bei jedem Eintrag zum ändern jedes Eintrags. Das würde die Größe der HTML Seite enorm reduzieren, da man nicht mehr zig Dropdown-Menüs hätte, diese verbraten jede Menge Speicher.

Ich werde vermutlich erstmal Lösung 2 umsetzen und dann mal sehen wie weit man damit kommt. Leider muss dazu relativ viel geändert werden, dauert also noch ein bisschen.

Edit: Eine dritte Lösung gäbe es noch, man lässt die Webkonfiguration wie bisher, allerdings gibt es keine Dropdown-Menüs mehr sondern nur Freitext-Felder. Man müsste also "Alarm", "Light" etc als Text eingeben. Gefällt mir allerdings nicht so richtig, denn das wäre erstens umständlich und zweitens muss man auch hier wieder alles auf Korrektheit prüfen.
Ich kann mir billiges Werkzeug nicht leisten!!!
Mein Hausumbau-Thread
Mein Werkstattumbau-Thread

stenumer

Neu Hier!

Beiträge: 21

Registrierungsdatum: 15. April 2017

Name: Generation 50+

Wohnort: Ganderkesee

Beruf: technischer Sachbearbeiter

  • Nachricht senden

76

Samstag, 10. Juni 2017, 13:54

Edit: Eine dritte Lösung gäbe es noch, man lässt die Webkonfiguration wie bisher, allerdings gibt es keine Dropdown-Menüs mehr sondern nur Freitext-Felder. Man müsste also "Alarm", "Light" etc als Text eingeben. Gefällt mir allerdings nicht so richtig, denn das wäre erstens umständlich und zweitens muss man auch hier wieder alles auf Korrektheit prüfen.

Diese Lösung stelle ich am einfachsten vor, allerdings mit ein wenig "Feintuning".
Color mapping configuration:
Message: bleibt Freifeld mit der Limitierung auf 12 Zeichen
Type: zulässig nur Zahlen von 1 bis 4; Defaultwert 1; Legende oben über der Tabelle
Color: zulässig nur Zahlen von 1 bis 7; Defaultwert 1; Legende oben über der Tabelle
Behavior: zulässig nur Zahlen von 1 bis 4; Defaultwert 1; Legende oben über der Tabelle

Device mapping configuration:
Device: bleibt Freifeld mit der Limitierung auf 12 Zeichen
Type: zulässig nur Zahlen von 1 bis 4; Defaultwert 1; Legende oben über der Tabelle

Klare Regeln, einfach zu händeln, einfach zu überprüfen ob Eingabe zulässig und sicherlich somit auch kalkulierbar was den Speicherverbrauch angeht.

stenumer

Neu Hier!

Beiträge: 21

Registrierungsdatum: 15. April 2017

Name: Generation 50+

Wohnort: Ganderkesee

Beruf: technischer Sachbearbeiter

  • Nachricht senden

77

Samstag, 10. Juni 2017, 15:40

Wie heißt es doch so schön: Never touch a running system...
Mein System habe ich nun auf die Kurznamenvariablen umgestellt, und was soll ich sagen es läuft jetzt.
Zwischenzeitlich hatte ich ähnliche (Speicher?) Probleme auch mit den Eingaben bei "Color mapping". Nicht alles was ich wollte konnte umgesetzt werden, denke jetzt aber einen guten Kompromiss zu haben.

Um allen Mitlesern eines zu verdeutlichen: Die bislang geschilderten Probleme sind mit dem jetzigen Softwarestand in den Griff zu bekommen (auch für "Anfänger"), mit Jokers Programm und Bauanleitung bekommt man ein schickes Display für das eigene FHEM.

Um mein Speicherproblem zu reproduzieren werde ich mir nun erst einmal einen zusätzlichen Wemos D1 mini besorgen und dann deiner Anleitung folgen, bin schon gespannt ob ich das hinbekomme.

Joker

Lebt hier!

  • »Joker« ist der Autor dieses Themas

Beiträge: 1 271

Registrierungsdatum: 21. Februar 2012

Wohnort: Nürnberg

Beruf: Code-Künstler

Danksagungen: 34

  • Nachricht senden

78

Freitag, 16. Juni 2017, 19:48


Um allen Mitlesern eines zu verdeutlichen: Die bislang geschilderten Probleme sind mit dem jetzigen Softwarestand in den Griff zu bekommen (auch für "Anfänger"), mit Jokers Programm und Bauanleitung bekommt man ein schickes Display für das eigene FHEM.

Danke :thumbup:
Dass es am Anfang Probleme gibt ist normal, daher ist es so hilfreich wenn andere sich auch mit der Software beschäftigen, denn alleine sieht man sicher nicht alle Probleme.

Für das Speicherproblem habe ich mittlerweile eine Lösung und bin dabei das umzusetzen. Die neue Konfigurationsseite sieht so aus:


Im oberen Bereich wird die Konfiguration nun durch eine Tabelle dargestellt. Im unteren Bereich gibt es nur noch eine Zeile, wo man einen Eintrag hinzufügen oder editieren kann. Hierzu gibt man die Nummer des Eintrags ein, und entsprechend die Konfiguration für diesen Eintrag. Wenn es die Nummer schon gibt, wird der zugehörige Eintrag geändert. Gibt es die Nummer noch nicht, wird er hinzugefügt.
Zum Löschen ist die Eingabe darunter, hier gibt man die Nummer des Eintrags ein, drückt Delete und der Eintrag wird gelöscht. Zusätzlich kann man alle Einträge auf einmal löschen.

Eine weitere Neuerung ist, dass die Änderungen der Konfiguration nicht mehr sofort abgespeichert werden, sondern erstmal temporär sind. Sobald man einen Eintrag ändert, hinzufügt, oder löscht, ändert sich der Dialog wie folgt:


Nun kann man weitere Änderungen vornehmen (weiterhin temporär), oder die Konfiguration dauerhaft abspeichern. Wenn man "Undo" drückt wird alles wiederhergestellt bis zum letzten Speichervorgang.

Durch den neuen Aufbau wird der HTML-Code wesentlich kleiner und das Speicherproblem gehört der Vergangenheit an. Als Nebeneffekt der Umstellung gibt es noch die genannten Neuerungen :)

Das alles ist seit eben auf GitHub verfügbar, aber noch nicht released! Es fehlt noch ein wenig "Feinschliff", und ich würde nur empfehlen das aktuell zu nutzen wenn man damit leben kann dass die Konfiguration auch mal weg sein kann :) Ansonsten bitte bis zum Release warten.
Ich kann mir billiges Werkzeug nicht leisten!!!
Mein Hausumbau-Thread
Mein Werkstattumbau-Thread

Es hat sich bereits 1 registrierter Benutzer bedankt.

Benutzer, die sich für diesen Beitrag bedankt haben:

stenumer (16.06.2017)