NEWS
[Gelöst] Wetter Display
-
@donniewoo Danke dir
Also wenn du auch ein Waveshare nutzt sollte das PNG kein Problem machen. Das gleiche Problem hatte ich auch und es lag dann tatsächlich an der Auflösung des Screenshots. Der muss Pixel genau passen. Erst dann hats bei mir funktioniert.Das Script wäre folgendes:
#!/usr/bin/env python3 from lib.waveshare_epd import epd5in83_V2 from PIL import Image import time BILD = '/home/pi/Weatherdisplay/pic/ScreenshotVISWeather.png' try: epd = epd5in83_V2.EPD() epd.init() Himage = Image.open(BILD) epd.display(epd.getbuffer(Himage)) epd.sleep() except KeyboardInterrupt: epd5in83_V2.epdconfig.module_exit()
-
@kredar Habe ich auch nicht so verstanden Wollte dir nur meinen Erfahrungsbericht weitergeben.
-
Hast du und ich hoffe das ich irgendwann mal sowas bei mir stehen habe. In der Version wie OpenSourceNomad mit ESP-Mainboard. Müsste erstmal wissen ob meine geschriebene Hardware so geht, ESP-Mainboards gibt es viele und unterschiedliche, leider. Ein Wald wo ich noch nicht ganz durchblicke...
Programmieren ist dann der zweite Schritt ;).
mfg
-
-
@kredar said in [Gelöst] Wetter Display:
Kannst du mir bitte "auf die Sprünge" helfen welche Hardware genau du genommen hast? Und woher du deine Programm hast oder mit per Nachricht schicken (das Grundgerüst)? Bestellt habe ich noch keine Hardware, aber das wird nun bald geschehen.
Ist nicht mein Projekt (Quellenangabe vergessen ) https://github.com/krikk/esp32_E-Paper_Display/
Herzstück ist natürlich ein esp(8266) mit esphome
-
Dann sollte ja mein oben genanntes Board laufen. Ich habe ein anderes Build gefunden mit dem es auch mit dem Raspberry Zero geht (Youtube Video).
K.a. ob das klappt habe das ganze nun mal bestellt, aber Lieferzeit wegen dem Display von 30 Tagen. Egal. Mal sehen ob ich überhaupt mit dem ESP zurechtkomme.
mfg
-
So Hardware ist da, ging doch schneller als erwartet.
Habe nach dem Video mal die Verbindung zwischen PC und ESP getestet und geht wie in dem Video:
Mein ESP Antwortet einwandfrei.
So nun habe ich versucht das Display zu aktivieren aber zunächst keine Chance.
Auch die von WaveShare-Display Datenbank/Treiber habe ich nun erfolgreich in Arduino eingebunden und kann die Displays direkt auswählen (Datei->Beispiele->waveshare-e-paper) . Habe alle 7.5 Display Demos getestet, werden alle erfolgreich Kompiliert ohne Fehler aber kein Bild. Irgendwas "klemmt" da nicht, hmm....
Sollte nach dem Kompilieren das Display an gehen? Bisher habe ich nichts auf dem Display gesehen. Weder beim Strom anstecken noch sonst wann.Vielleicht bin ich auch ganz verkehrt und ich brauche diese Software gar nicht. Will ja vom ioBroker Daten auf dem ESP + Display empfangen mehr nicht.
Puhh, also einen Raspberry oder NUC mit ioBroker zum installieren geht leichter, da gibt es nur einen Weg. Aber beim ESP bin ich leicht überfordert welcher weg der korrekte ist mit welcher Software. Braucht man eine SD-Karte im ESP um das Projekt zu verwirklichen? Habe noch keine eingesetzt bisher.
mfg
-
@kredar said in [Gelöst] Wetter Display:
Ich habe von Waveshare die Treiber geladen als ZIP-Datei und im Arduino unter Sketch -> Bibliothek einbinden -> Zip-Datei Laden geladen aber da findet er keine Bibliothek. Hmm.
Klingt ja nach Steinzeitmethoden: ZIP, Arduino, Sketch, Bibliothek? ...viel verlorener Lebenszeit.
Kleiner Tipp: esphome, da ist waveshare display support schon direkt mit dabei ohne irgendwelchen externen Abhängigkeiten und Spielereien.
-
Das klingt nicht nur nach Steinzeit das ist auch so. So fühle ich mich. Immerhin ist Arduino schon mit Oberfläche. Was bei Waveshare steht ist direkt teilweise Coden, mit ESP IDF tools und Visual Studio Code. Zuviel verlorene Lebenszeit (6h insgesamt ohne Display ist echt schwach), da gebe ich dir recht.
Also wenn das so kompliziert ist dann ist das eine Nummer zu "hoch" für mich. Ich mein der ioBroker war schwer aber dermaßen gut erklärt wie und was man wo machen muss das ich das hinbekomme habe. Das NodeRed Programmieren war wieder ne Sache für sich, wann welches Gerät was macht und wieso. Aber auch dort ist die Oberfläche fast selbsterklärend.
Das ESPHome habe ich mir angeschaut, hmm. Da muss ich nochmal nachhaken und genau lesen was zu tun ist und wann.
mfg
-
@kredar said in [Gelöst] Wetter Display:
Das ESPHome habe ich mir angeschaut, hmm. Da muss ich nochmal nachhaken und genau lesen was zu tun ist und wann.
Das schöne an esphome ist: es ist reproduzierbar.
@opensourcenomad said in [Gelöst] Wetter Display:
Noch einen schönen Holzrahmen drum und fertich:
Quelle: https://github.com/krikk/esp32_E-Paper_Display/In dem github repo ist alles (und noch viel mehr) drin was du brauchst. Für esphome ist die yaml ausschlaggebend. Wenn du die gleiche Verkabelung verwendest kannst du die yaml 1 zu 1 übernehmen und esphome baut dir daraus die binary (und flasht sie auch für dich).
Wahrscheinlich wirst du die yaml noch gut ausdünnen dürfen, aber das kannst du ja einfach ganz am ende machen, wenn du schon weist das alles soweit funktioniert... -
Ich habe den ESP32 ans laufen bekommen, sogar mit WLan. Aber auf dem Display kommt einfach keine Anzeige. Habe es mit dem Flash-Programm gemacht, da es im Browser ohne https nicht geht. Geht wunderbar der Flash, keine Probleme damit.
Habe mir auch einen ESP3286 bestellt, da kann man das Display ja direkt anschließen ohne Adapter Platine. Keine Ahnung wo der Fehler ist, das ich keinerlei Anzeige bekomme.
font: # Fonts need to exist in config/esphome - file: "arial.ttf" id: arial size: 20 # Example configuration entry spi: clk_pin: 13 mosi_pin: 23 # miso_pin: GPIO5 display: - platform: waveshare_epaper cs_pin: 15 dc_pin: 27 busy_pin: 25 reset_pin: 26 model: 2.90in update_interval: never full_update_every: 30 lambda: |- it.print(0, 0, id(arial), "Hello World!");
Der Code geht, keine Fehlermeldung nur nach dem Flashen erscheint nichts am Display.
Das ist der Code für das Display. Ob die GPIOs stimmt keine Ahnung, da schreibt jeder was anderes, leider. Evtl. sind die GPIOs falsch Programmiert. Oder doch die Hardware? Ich habe keine Ahnung was ich noch machen soll. Bis ich die Schrift hochgeladen habe auf mein iobroker System, da habe ich auch locker eine Stunde gebraucht um im Linux den Ordner zu finden. Das geht im Windows besser, aber okay die Schrift ist auf dem iobroker System und ESPHome ist auch im iobroker installiert und er findet den ESP32 einwandfrei.
Ich habe ein 7.5 Zoll V2 Display (Dreifarbig, schwarz, weiß, rot), aber wenn ich das bei "model" eingebe bekommt ich nur die Meldung das es nur bis 2.9in geht. Keine Ahnung wie ich dem ESPHome klarmachen soll das ich eine 7,5V2 in habe.
Wollte erstmal "Hello World" auf das Display bekommen, der nächste Schritt wären dann die iobroker Daten die ich will auf das Display zu "spiegeln".
mfg
-
@kredar said in [Gelöst] Wetter Display:
Das ist der Code für das Display. Ob die GPIOs stimmt keine Ahnung, da schreibt jeder was anderes
Es kommt ganz auf deine Verdrahtung an, wie du das teil mit esp verdrahtet hast.
Evtl. sind die GPIOs falsch Programmiert.
Nein, entweder stimmen sie mit deiner Verkabelung überein oder nicht. Du hast sie maximal falsch definiert
Ich habe ein 7.5 Zoll V2 Display (Dreifarbig, schwarz, weiß, rot), aber wenn ich das bei "model" eingebe bekommt ich nur die Meldung das es nur bis 2.9in geht. Keine Ahnung wie ich dem ESPHome klarmachen soll das ich eine 7,5V2 in habe.
Ein fünfsekündiger Blick in die Dokumentation sollte dich zum ziel bringen: https://esphome.io/components/display/waveshare_epaper.html
model (Required): The model of the E-Paper display. Options are: [...] 7.50inV2 (Can’t use with an ESP8266 as it runs out of RAM)
Habe mir auch einen ESP3286
der ist mir nicht bekannt, aber ein esp8266 hat nicht genügend ram für das große display
-
Ich habe das Display ja eben nicht verdrahtet. Sondern per GPUI gesteckt mit der Driver Platine direkt auf die ESP32 Dev-Platine.
Da liegt ja mein Problem, das hat "gefühlt" keiner so. Ich habe noch keine Konfig gefunden die passt, und ich habe schon stundenlang Seiten gelesen und Konfigs getestet. Ohne Erfolg bisher.
mfg
-
@kredar said in [Gelöst] Wetter Display:
Ich habe das Display ja eben nicht verdrahtet. Sondern per GPUI gesteckt mit der Driver Platine direkt auf die ESP32 Dev-Platine.
Dann brauchst du das datasheet von deinem Konstrukt, die Kommunikation sollte über einen 4-wire SPI bus laufen:
The communication ESPHome has chosen to use for this integration is 4-wire SPI, as it’s the most stable and high-speed.
Die pins die du wissen musst stehen alle in den esphome docs zum waveshare display:
-
spi:
clk_pin: D0
mosi_pin: D1display:
- platform: waveshare_epaper
cs_pin: D2
dc_pin: D3
busy_pin: D4
reset_pin: D5
model: 2.90in
Das muss ich ändern in der Konfig die da auch steht. Nur was ist für mich das korrekte? Überall steht "Any GPIO" auf der Seite aber keine Zahl oder Buchstabe.
Soll ich bei cs_pin = "CS" eintragen? "Any GPIO" wird wohl nicht klappen. Und das Beispiel ist ja nicht mein Modul. Ich habe ja das Waveshare 7,5"V2 Display plus Display Hat Modul an einem Waveshare ESP32 Dev-Board. Ich teste verschiedene Einstellungen, bisher ohne Erfolg.
mfg
- platform: waveshare_epaper
-
@kredar said in [Gelöst] Wetter Display:
Nur was ist für mich das korrekte?
Das was im Datenblatt zu deiner gekauften Hardware stehen sollte
Ich kenne deine Hardware nicht aber vielleicht ist es ja diese hier:
Source: https://www.waveshare.com/e-paper-esp32-driver-board.htm -
Da lag leider kein Zettel oder andere Sachen bei. Platine sonst nichts.
Ist das hier:
Ich habe das schon probiert, klappte nicht. Teste aber nochmal.
mfg
-
@kredar said in [Gelöst] Wetter Display:
In deinem Link findet sich folgendes pin out:
SPI ist was mit dem Display verbunden sein sollte.
Du musst esphome mitteilen auf welche GPIO (ESP pin) welche Funktion für SPI zu finden ist damit esphome das display ansprechen kann.
Zum Bleistift :
mosi_pin: GPIO13 clk_pin: GPIO14
usw...
-
Danke für deine Hilfe,
habe nur Probleme mit der "Zuordnung". Da die Belegung etwas anders ist als die Benennung für die GPIO in ESPHome.
cs_pin: GPIO5 dc_pin: GPIO33 busy_pin: GPIO<??> reset_pin: GPIO<??>
Also ich blicke da leider nicht ganz durch, da ist nicht ansatzweise mal Busy oder Reset in der GPIO Belegungszeichnung von Waveshare. Reset = I/O? Busy= k.a. CS und DC habe ich eher geraten bzw. abgeleitet von der GPIO Belegungszeichnung von Waveshare.
mfg
-
@kredar said in [Gelöst] Wetter Display:
Also ich blicke da leider nicht ganz durch, da ist nicht ansatzweise mal Busy oder Reset in der GPIO Belegungszeichnung von Waveshare
Wir haben ja oben schon gelesen, wie in den esphome docs zum waveshare display geschrieben, das sowohl
BUSY
wie auchRESET
optional sind. Versuch's doch einfach mal ohne