Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

EMD_1 Display #3

Closed
hhofer71 opened this issue Aug 3, 2021 · 15 comments
Closed

EMD_1 Display #3

hhofer71 opened this issue Aug 3, 2021 · 15 comments

Comments

@hhofer71
Copy link

hhofer71 commented Aug 3, 2021

Hallo Nico,
heute habe ich das EMD1 zusammengebaut. Einfach genial, besonders die OTA Update Funktion. Hat alles auf Anhieb funktioniert.
Die Schriftgröße ist etwas klein, besonders für ältere Nutzer und das minus Zeichen vor der BAT und GRID Leistungsanzeige könnte
man noch durch einen Pfeil IN und OUT wie auf der E3dcGui Anzeige ersetzen - dann wäre es perfekt!
Hier ein Bild von mir dazu:
Display layout
Aber das ist meckern auf hohem Niveau 😎!
Nochmals vielen Dank für die ganze Mühe die du dir hier machst.
Viele Grüße Helmut

@hhofer71
Copy link
Author

hhofer71 commented Aug 3, 2021

Hier noch ein Display mit Temperatur im Home Icon...

Display 2

Das Icon kann ich dir als JPG oder Corel gerne zukommen lassen,

Viele Grüße, Helmut

@nischram
Copy link
Owner

nischram commented Aug 4, 2021

Hallo Helmut,

sehr schön, freut mich das es sofort geklappt hat.

Die Schriftgröße!?! JA du hast wohl recht, es ist etwas klein. Aber ganz so einfach wie mit "Photoshop" oder so ist es leider nicht.
Haupt Problem ist, das ich eine Schriftart nehmen muss wo jeder Buchstabe die gleiche laufweite hat denn sonst springt die Zahl hin und her z.B. wenn sich Zahlen zwischen 1 und 0 ändern. Ein negatives Vorzeichen muss zum Teil auch davor passen.
Weiter liegt hinter jeder Zahl ein Hintergrund (oft in weiß), dies wird für sich ändernde Zahlen benötigt. Somit darf eine Zahl sich nicht mit den Grafiken überschneiden (sonst flackert das Bild). Und jedes Bild ist viereckig ggf. mit weißem Hintergrund.

Um herauszufinden wie viel größer deine Schrift ist, habe ich mal ein Bild von mir und das von dir übereinander gelegt.
Mix_Bild
So ist zu sehen, dass der unterschied recht gering ist.

Aber trotzdem hast du bei mir natürlich wieder den Ehrgeiz geweckt und so habe ich eine neue Schrift erstellt und an der Anzeige ein wenig gebastelt. Die Grafiken habe und werde ich nicht verändern (vielleicht die Batterie ein wenig). Die Schrift habe ich versucht von 13 auf 16 zu vergrößern. Dann habe ich den abstand von "W" noch verringert und einen Grauen Rahmen entfernt.
Hier ist mein erstes Ergebnis:
Screen_Neu
Hier noch Ausschnitte (vorher/nachher überlagert) im direkten Vergleich: (898W Hausverbrauch und 0W Solar ist neu)
Mix_Bild_Haus
Mix_Bild_Sonne
Und jetzt noch ein Bild mit fiktiven Werten für Solar und Batterie, weil die mindestes passen müssen:
Screen_Neu_02
Und zu guter letzt noch deine Schrift mit meiner neuen im Vergleich:
Mix_Bild_13850
Das ist jetzt identisch. Nur die Laufweite ist unterschiedlich.

Wenn das so schon passt, dann ist noch ein wenig Feintuning nötig (das % Zeichen) und dann könnte ich das Update schon bereitstellen.
Was hältst du davon?

Viele Grüße Nico

@hhofer71
Copy link
Author

hhofer71 commented Aug 4, 2021

Hallo Nico,
ich habe heute selber versucht etwas an der Schrift zu ändern und habe mich ein wenig in die Materie eingelesen. Ja, das ist nicht so einfach wie du schon sagst. Ich habe es aber geschafft die Schriftfarbe und die Position etwas zu verändern. Schwarze Schrift macht schon einen großen Unterschied bei der Lesbarkeit.
Wenn du das so ändern könntest wie auf deinen Bildern wäre das natürlich großartig. An den Grafiken muss auch nichts geändert werden, das war nur so eine Idee von mir - habe natürlich nicht gewusst wie aufwendig das ist.
Das Batterie Symbol könnte natürlich etwas größer sein, denn es ist ein sehr wichtiger Punkt in der Anzeige.
Wie gesagt, so wie auf den Bildern wäre es super!
Nochmals Danke für deine Mühe, mir war wirklich nicht bewusst was das für ein Aufwand ist da etwas zu ändern.
Viele Grüße, Helmut

nischram added a commit that referenced this issue Aug 5, 2021
- Issue #3 Neue Schriftart und Anpassungen für die Schrift
@nischram
Copy link
Owner

nischram commented Aug 5, 2021

Hey,

im großen und ganzen ist es nicht kompliziert nur aufwendig. Es hat sehr viel mit probieren und testen zu tun.

Ich habe eben eine neue Version hochgeladen. Es ist jetzt genau wie angekündigt die größere Schrift und ein auffälligeres Batteriesymbol von mir geändert worden.
So sieht dann das Ergebnis aus:
Screen_Neu

Die Änderung war jetzt, weil ich weiß wo ich was hinprogrammiert habe, nicht so kompliziert, aber ich weiß was du meinst. Es dauert immer einige Versuche nur einen kleinen Teil zu ändern.

Wenn ich dir noch Tipps geben soll wo du was änderst dann sag Bescheid. Bedenke nur das du jede Änderung bei einem Update von mir, kontrollieren oder ggf. anpassen musst. So ist es eventuell besser du gibst Bescheid, dass ich wünsche mit aufnehme.

So dann darfst du jetzt testen und schauen ob es dir gefällt 😉
Viele Grüße Nico

@hhofer71
Copy link
Author

hhofer71 commented Aug 5, 2021

Hi Nico,
super, so kann man die Werte gut ablesen (auch ältere Mitbewohner😉)! Morgen kommt das Display ins Wohnzimmer und wird dort super aussehen.
Ich hätte da allerdings schon ein paar Fragen, wenn du es mir schon anbietest lästig zu sein:
Mit welchem Programm wandelst du BMP in Code um, ich habe da image2code gefunden aber beim umwandeln kommt immer eine Fehlermeldung. Welche Parameter muss ich einstellen - sagen wir einmal für genau dieses TFT das hier verbaut ist. Wenn ich da nicht mehr hänge hangle ich mich schon wieder ein Stück weiter in Sachen Arduino. Kleine Grafiken die aus Kreisen und Rechtecken bestehen habe ich schon geschafft und ein wenig mit Texten habe ich auch schon gearbeitet.
Das Ganze ist ein faszinierendes Gebiet, vor allem mit welch preisgünstiger Hardware man eigene Projekte gestalten kann.
Nochmals Danke für deine Mühe und einen schönen Abend, Helmut

@nischram
Copy link
Owner

nischram commented Aug 5, 2021

Hi,

ich erstelle mir alle Bilder mit Apple Pages in PNG und wandel dann in .c um. Ich nutze folgende Internetseite: http://www.rinkydinkelectronics.com/t_imageconverter565.php
Da es in .c umgewandelt wird, benötigt man keine Einstellungen für das Display.

Ich will nicht für jedes Bild eine .c Datei in den Code bringen, so habe ich die Datei "graphics.c" angelegt und dann kopiere ich immer nur den eigentlichen Code. Das kopieren mache ich mit Atom da kann man die Zeilen (Blöcke) so schön zusammenklappen und nach dem zusammenklappen (vorne auf dem Pfeil) kann man den ganzen Block kopieren und einfügen:
Hier ein paar Bildschirmfotos: (offen, zusammengeklappt und markiert zum kopieren, nach einfügen)
Bildschirmfoto 2021-08-05 um 22 25 11
Bildschirmfoto 2021-08-05 um 22 25 42
Bildschirmfoto 2021-08-05 um 22 26 01

Wichtig ist nur, dass die gesamten Bildpunkte durch 16 Teilbar sind. Also ein Bild 16x16 kann dargestellt werden ein Bild 15x15 nicht, dies bekommt beim umwandeln schwarze flecken. Ein Transparenter Hintergrund ist nicht möglich.

Im Quellcode muss dann die Größe angegeben werden: tft.drawRGBBitmap(110,12, wwwOk,16,16);
In diesem Fall habe ich vorher ein Bild mit dem Namen "wwwOk.png" erstellt, umgewandelt in "wwwOk.c" und den Inhalt in die "graphics.c" kopiert.
Bildschirmfoto 2021-08-05 um 23 01 24
Zur Kontrolle, 16x16 ist 256, dass ist die Markierte Zahl im Bild.

Damit ich die Positionen von Bilder und Touch nicht einzeln anpassen muss habe ich in der "define.c" typedef enum { mit je 4 Werten definiert. Mit der passenden Grafikfunktion drawBitmapRGB() brauche ich jetzt nur noch einen Namen für die 4 Werte eintragen. In der "define.c" habe ich als Kommentar Zahlen eingefügt damit ich die Zuordnung hin bekomme.
So mit passiert folgendes bei diesem Befehl: drawBitmapRGB(Main_R1_S1, menuLeistung,80,80);
An der Position x=20 y=40 wird das Bild "menuLeistung" in Größe w=80 h=80 eingefügt, für die Touchabfrage: if(touchField(Main_R1_S1)) wird dann in dem Bereich x=20 bis 100 und y=40 bis 120 auf Touch abgefragt.
Hier ein Ausschnitt aus der "define.c" mit entsprechender Markierung:
Bildschirmfoto 2021-08-05 um 22 48 26

So dann hast du wieder ein paar Info und kannst wieder spielen! Ich hoffe du verstehst meine Erklärung?
Dir auch schönen Abend
Nico

@hhofer71
Copy link
Author

hhofer71 commented Aug 5, 2021

Hey Nico,
das hast du super erklärt - glaube ich habe die Schritte verstanden 😀!
Konnte mein Bild einfügen, ist nur ein Prototyp, noch viel Verbesserungspotential, aber ich weis jetzt wie es geht:

EMD_1 Test

Es ist zwar langwierig die richtigen Positionen herauszufinden, aber es macht auch Spaß!
Wenn ich ein gutes Layout erstellt habe melde ich mich,
Viele Grüße, Helmut

@hhofer71
Copy link
Author

hhofer71 commented Aug 6, 2021

Hallo Nico,
habe noch etwas gebastelt und eine Version erstellt die mir gut gefällt.

EMD Prototype

Bei mir wirkt es nicht so überladen da ich keine externe Quelle und keine E3dc Wallbox habe.
Unter folgendem Link kannst du die Datei herunterladen und einmal kurz darüber sehen wenn du Lust hast:

https://www.asuswebstorage.com/navigate/a/#/s/20408C8CECAD4BD8A8B21B74F6012A514

Da ich jetzt dank Dir etwas mehr in Sachen Arduino weis ist auch mein Ehrgeiz geweckt und werde es in eigene Projekte
umsetzen. Sollte es irgendwo haken, wäre es nett wenn ich dich um Hilfe bitten könnte - wobei natürlich "zuerst denken, dann fragen" gilt!

Viele Grüße, Helmut

@hhofer71
Copy link
Author

hhofer71 commented Aug 7, 2021

Hier noch eine Variante, ohne Autarkie Anzeige, dafür mit Power in <<< und out >>> Pfeilen, Negative Power Werte und Fehlmessungen bei GridPower ausgeblendet. Batterie Anzeige noch etwas größer, denn jetzt ist ja mehr Platz 😎!

EMD_1 - Ohne Autarkie

Hier der Link:
https://www.asuswebstorage.com/navigate/a/#/s/E506711AAF7A409FA0771C3E8A964C844

Viele Grüße, Helmut

@nischram
Copy link
Owner

nischram commented Aug 8, 2021

Hallo Helmut,

das sieht doch cool aus. Vor allen deine Aussage mit den Fehlmessungen interessiert ich und ich habe dein Projekt runtergeladen.
Dabei ist mir aufgefallen, dass du sensible Daten veröffentlicht hast, WLAN und Wetter-Daten. So habe ich in deinen Beiträgen zuvor mal den Link entfern. Ich denke andere würden sich freuen wenn du den Link wieder einstellst aber ohne persönliche Daten. Du kannst ja einfach meine "parameter.temp.h" nehmen und nicht deine "parameter.h".
So jetzt werde ich mal die Anpassungen von dir prüfen und schauen wie du es mit der Fehlmessung machst.
Ich hatte mich damit noch nicht beschäftigt, Grund dafür ist wohl zum Teil ein Versatz in der zeitlichen Abfrage der Modbus-Register. Der Wert Grid wird in zwei Registern abgefragt jeder Register braucht eine kurze Zeit zur Abfrage und wenn sich in der Zwischenzeit am System der Wert ändert oder sogar wechselt von negativ nach positiv dann gibt es solche Fehlwerte.

Wie gesagt wenn es was gibt einfach melden, mal sehen ob ich helfen kann.

Viele Grüße Nico

@hhofer71
Copy link
Author

hhofer71 commented Aug 8, 2021

Hallo Nico,

danke für dein Feedback. Und danke das du die Links entfernt hast, daran habe ich gar nicht gedacht!

Die Fehlmessungen blende ich einfach durch eine if Abfrage aus, wenn so ein komischer Wert kommt ist er immer sehr
groß oder sehr klein - im minus bereich, so etwas mit 65000, da so ein Wert bei meiner Anlage nicht kommen kann setze ich dann den Wert einfach auf 0 - das fällt dann nicht wirklich auf in der Anzeige.

Sicher kann man das auch eleganter lösen, aber da fehlt mir noch das Wissen.

Gibt es solche Fehlwerte auch bei der E3dcGui - bei mir schalten manchmal Aktoren scheinbar völlig ohne Grund.
Das ist vor allem beim Überschussladen etwas lästig, da der Tesla es nicht mag wenn ständig der Strom aus und wieder
an geht.
Leider konnte ich in der E3dcGui die Stelle wo die Aktoren geschalten/ Werte dafür ausgewertet werden noch nicht finden.
Sicher kannst du mir einen Tipp geben wo ich da schauen muss 😏.

Viele Grüße, Helmut

@hhofer71
Copy link
Author

hhofer71 commented Aug 9, 2021

Hallo Nico,
hier noch ein anderes Gehäuse, ist etwas dezenter. Den DTH22 habe ich hinten draufgeklebt, der PIR sitzt oben in einem kleinen Anbau:

IMG_1579

Hier der Link zu den STL files:
https://www.asuswebstorage.com/navigate/a/#/s/05ED2D3A64E44E1EBD1C74E48330FEB34

Diese Version darf ich jetzt auch in das Wohnzimmer stellen 😁!

Viele Grüße, Helmut

@nischram
Copy link
Owner

nischram commented Sep 9, 2021

Hallo Nico,

danke für dein Feedback. Und danke das du die Links entfernt hast, daran habe ich gar nicht gedacht!

Die Fehlmessungen blende ich einfach durch eine if Abfrage aus, wenn so ein komischer Wert kommt ist er immer sehr
groß oder sehr klein - im minus bereich, so etwas mit 65000, da so ein Wert bei meiner Anlage nicht kommen kann setze ich dann den Wert einfach auf 0 - das fällt dann nicht wirklich auf in der Anzeige.

Sicher kann man das auch eleganter lösen, aber da fehlt mir noch das Wissen.

Gibt es solche Fehlwerte auch bei der E3dcGui - bei mir schalten manchmal Aktoren scheinbar völlig ohne Grund.
Das ist vor allem beim Überschussladen etwas lästig, da der Tesla es nicht mag wenn ständig der Strom aus und wieder
an geht.
Leider konnte ich in der E3dcGui die Stelle wo die Aktoren geschalten/ Werte dafür ausgewertet werden noch nicht finden.
Sicher kannst du mir einen Tipp geben wo ich da schauen muss 😏.

Viele Grüße, Helmut

Hallo Helmut,
ich muss gerade feststellen das ich diese Anfrage übersehen habe. Ich habe mich wohl völlig von deinem Gehäuse ablenken 😉
In der E3dcGui gibt es exakt diesen Fehler nicht aber hin und wieder bekomme ich bei mir alle Werte als Null-Werte so könnte ich mir auch vorstellen das es zum Teil Probleme mit den Aktoren gibt. Der Bereich der Aktoren ist ausgelagert in der Datei External/Aktor.h und dort in der Funktion checkAktor()

Sorry für die späte Antwort, viele Grüße Nico

@hhofer71
Copy link
Author

hhofer71 commented Sep 9, 2021 via email

@nischram
Copy link
Owner

nischram commented Apr 8, 2022

Hallo Helmut,

nach längerem Überlegen, hatte ich vor einiger Zeit entschieden, dass ich meine Anzeige erstmal nicht umbauen.
Aber da ich hier ein freies Projekt anbiete kann ja jeder diese Info nutzen und sein Display ggf. selber mit diesen Vorschlägen anpassen.
Somit schließe ich diesen Issue erst mal.
Danke nochmal für die Ideen und Dateien zu deiner Anpassung.
Viele Grüße Nico

@nischram nischram closed this as completed Apr 8, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants