TTGO ePaper-Display - und was nun?

Entwicklung und Bau von Hardware aller Art, die im HM-Umfeld eingesetzt werden kann

Moderator: Co-Administratoren

dtp
Beiträge: 9038
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 95 Mal
Danksagung erhalten: 247 Mal

TTGO ePaper-Display - und was nun?

Beitrag von dtp » 21.06.2020, 18:05

Hi,

hab schon vor einigen Wochen ein TTGO T5 V2.3 2,13" ePaper-Display bekommen und wusste eigentlich nicht so recht, was ich nun genau damit machen soll.

Also erst mal ein passendes Gehäuse gedruckt.
2020-06-21 17-52-03_Bildgröße ändern.jpg
Dann habe ich mir mal die GxEPD-Bibliothek für Arduino IDE heruntergeladen und installiert. Die Beispiel-Sketches laufen soweit alle für das Display "GxGDEH0213B73". Insbesondere "GxEPD_WiFi_Example" und "PartialUpdateExample" machen das, was sie sollen. Aber nun frage ich mich, wie ich weiter vorgehe.

Ich hätte gerne die Möglichkeit, dass mir das Display per WLAN die Warmwasser-Temparatur im Haus anzeigt und partiell aktualisiert. Leider bin ich nicht so wirklich fit mit den Sketchen.

Jemand eine Idee oder eine Anleitung, wie ich da nun weiter vorgehen kann?

Gruß,

Thorsten
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

chka
Beiträge: 1996
Registriert: 13.02.2012, 20:23
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 71 Mal
Danksagung erhalten: 30 Mal

Re: TTGO ePaper-Display - und was nun?

Beitrag von chka » 21.06.2020, 20:04

habe mal in die gleiche Richtung aber zur anzeige der Außentemperatur nachgedacht.

hier mal ein bsp aus einem anderen Projekt ggf hilft dies ja:


Code: Alles auswählen

#include <ArduinoJson.h>
#include <ESP8266WiFi.h>
#include <ArduinoHttpClient.h>
int WeatherTemperatur, WeatherHumidity, ;

String WeatherStatus, WeatherIcon, WeatherName, WeatherTime;

Code: Alles auswählen

String getWeatherTemperature()
{
  
    if (WiFi.status() == WL_CONNECTED)
    {
    Serial.println(F("Get Weather"));
    Serial.println(F("Connecting..."));
    WeatherStatus = "Connecting...";
    WiFiClient client;
    // Connect to HTTP server
    char servername[] = "api.openweathermap.org";
    if (!client.connect(servername, 80)) {
    Serial.println(F("Weather Connection failed"));
    WeatherStatus  += "Connection failed";
    return WeatherStatus;
    }

    Serial.println(F("Connected!"));
    WeatherStatus += "Connected!";

    String url = "/data/2.5/weather?lat=";
    url += settings.getLat(location, sizeof(location));
    url += "&lon=";
    url += settings.getLon(location, sizeof(location));
    url += "&units=metric&appid=6d9ec0c530006d472308f93656026475";


    // Send HTTP request
    client.println("GET " + url + " HTTP/1.0");
    client.println(F("Host: api.openweathermap.org"));
    client.println(F("Connection: close"));
    if (client.println() == 0) {
    Serial.println(F("Weather: Failed to send request"));
    WeatherStatus += "Failed to send request";
    return WeatherStatus;
    }

    // Check HTTP status
    char status[32] = {0};
    client.readBytesUntil('\r', status, sizeof(status));
    if (strcmp(status, "HTTP/1.1 200 OK") != 0) {
    Serial.print(F("Unexpected response: "));
    WeatherStatus += "Unexpected response: ";
    Serial.println(status);
    WeatherStatus += status;
    return WeatherStatus;
    }

    // Skip HTTP headers
    char endOfHeaders[] = "\r\n\r\n";
    if (!client.find(endOfHeaders)) {
    Serial.println(F("Invalid response"));
    WeatherStatus += "Invalid response";
    return WeatherStatus;
    }

    // Allocate JsonBuffer
    // Use arduinojson.org/assistant to compute the capacity.
    const size_t capacity = JSON_OBJECT_SIZE(30) + JSON_ARRAY_SIZE(20) + 60;
    //DynamicJsonBuffer jsonBuffer(capacity);
    DynamicJsonDocument doc(capacity);

    auto error = deserializeJson(doc, client);
    if (error) {
    Serial.print(F("deserializeJson() failed with code "));
    Serial.println(error.c_str());
    WeatherStatus += "Parsing failed!";
    return WeatherStatus;
    }


    // Extract values
    Serial.println(F("Response:"));
    WeatherStatus += "Response:";
    WeatherIcon = doc["weather"]["0"]["icon"].as<String>();
    WeatherTemperatur = doc["main"]["temp"].as<int>();
    WeatherHumidity = doc["main"]["humidity"].as<int>();
    WeatherName = doc["name"].as<String>();
    WeatherTime = doc["dt"].as<String>();




    // Disconnect
    client.stop();
    return "OK";
    }
  
}
du musst wahrscheinlich viele variablen noch definieren, bei iobrokers simple api wäre es die url abfrage als bsp:

http://IP:8087/getPlainValue/hm-rpc.0.JPWEA00002.1.LUX

Da kannst du dir dann auch das zerlegen der Rückantwort sparen.

wo hast du den Esp bestellt, habe nicht wirklich was "schnell" lieferndes gefunden.
ali und ko brauchen immer sooo extremste lange
Debmatic - CuL V2 868mHz- CuxDemon - PioTek Tracker - Velux und Somfy Anbindung- io.Broker aufm ESX 6.7
Keine Support PNs Danke!

dtp
Beiträge: 9038
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 95 Mal
Danksagung erhalten: 247 Mal

Re: TTGO ePaper-Display - und was nun?

Beitrag von dtp » 22.06.2020, 12:28

Danke für deinen Input.

Bestellt hatte ich das Display bei Banggood. Hat aber auch ca. 8 Wochen gedauert, bis es da war. Hatte es einfach mal aus Neugierde bestellt und gar nicht mehr mit einer Lieferung gerechnet. Irgendwann lag es dann im Briefkasten. ;)

Übrigens, die stl-Dateien für das Gehäuse habe ich mir hier runtergeladen. Ich musste aber die Aussparung für das Display etwas kleiner machen, weil sie mir doch zu groß war. War ne ziemliche Fummelei mit Fusion 360, bis ich es endlich hinbekommen hatte. :roll:
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

chka
Beiträge: 1996
Registriert: 13.02.2012, 20:23
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 71 Mal
Danksagung erhalten: 30 Mal

Re: TTGO ePaper-Display - und was nun?

Beitrag von chka » 22.06.2020, 15:52

Habe mir mal 3 Stück bestellt, ich werde mir das mal die tage genauer anschauen.
welche Datenquelle wirst du nutzen direkt die ccu oder iobroker?
Debmatic - CuL V2 868mHz- CuxDemon - PioTek Tracker - Velux und Somfy Anbindung- io.Broker aufm ESX 6.7
Keine Support PNs Danke!

dtp
Beiträge: 9038
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 95 Mal
Danksagung erhalten: 247 Mal

Re: TTGO ePaper-Display - und was nun?

Beitrag von dtp » 22.06.2020, 16:16

Wohl eher den ioBroker.

Ich habe auch noch einen 3,7V-LiPo-Akku übrig, mit dem ich das ePaper-Display versorgen kann.

Falls du die von mir modifizierte stl-Datei für den Deckel haben möchtest, sag Bescheid. Oder ich lade sie einfach hier hoch.
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

jp112sdl
Beiträge: 6463
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 308 Mal
Danksagung erhalten: 624 Mal
Kontaktdaten:

Re: TTGO ePaper-Display - und was nun?

Beitrag von jp112sdl » 22.06.2020, 16:21

dtp hat geschrieben:
22.06.2020, 16:16
Ich habe auch noch einen 3,7V-LiPo-Akku übrig, mit dem ich das ePaper-Display versorgen kann.
Wie viel zieht die Schaltung denn? Ich verbinde ESP mit hohem Stromverbrauch... Du willst die Temperatur bestimmt nicht nur alle Stunde aktualisieren?

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

PN sind deaktiviert!

chka
Beiträge: 1996
Registriert: 13.02.2012, 20:23
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 71 Mal
Danksagung erhalten: 30 Mal

Re: TTGO ePaper-Display - und was nun?

Beitrag von chka » 22.06.2020, 16:23

ja gerne stell die styl ruhig hier rein wenn du willst oder ggf in thingivers für die Allgemeinheit.

ich fange mal die tage mit dem Programm an schicke dir dann den link zum testen wenn du willst.
da ich auf meine dann auch so lange warten werde wird es schwierig mit testen.

würde den Espresso sowieso in den sleep modus versetzen und nur zur gewünschten sync zeit wieder aufwecken.
Debmatic - CuL V2 868mHz- CuxDemon - PioTek Tracker - Velux und Somfy Anbindung- io.Broker aufm ESX 6.7
Keine Support PNs Danke!

jp112sdl
Beiträge: 6463
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 308 Mal
Danksagung erhalten: 624 Mal
Kontaktdaten:

Re: TTGO ePaper-Display - und was nun?

Beitrag von jp112sdl » 22.06.2020, 16:34

chka hat geschrieben:
22.06.2020, 16:23
den Espresso
:mrgreen:

Wenn ich an meine WLAN Versuche mit Wemos zurück denke, bevor ich die AskSinPP kannte, war ich relativ unzufrieden.
Die waren auch im DeepSleep und sind nur alle 20min. mal aufgewacht, um die Temperatur zu senden.
Länger als 4 Monate haben die AA-Batterien nie gehalten :cry:

Dahingegen laufen die AVR-Sensoren seit 2 Jahren immer noch ohne Batteriewechsel (und senden dabei alle 3min.!) und das 7,5" ePaper seit ungefähr 1 Jahr

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

PN sind deaktiviert!

dtp
Beiträge: 9038
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 95 Mal
Danksagung erhalten: 247 Mal

Re: TTGO ePaper-Display - und was nun?

Beitrag von dtp » 22.06.2020, 17:42

So, anbei mal die Gehäuse-Dateien. Die von mir modifizierte heißt "TTGO_T5_Enclosure_-_Lid_mod.stl".

Was den Stromverbrauch des Moduls angeht, so hatte ich noch das hier gefunden. Dort wird ein Adafruit TPL5110 zur Reduzierung des Stromverbrauchs verwendet. Damit kann man das Modul so alle zwei Stunden kurzzeitig mit Energie versorgen.
Dateianhänge
files.zip
(40.33 KiB) 17-mal heruntergeladen
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

klassisch
Beiträge: 3764
Registriert: 24.03.2011, 04:32
Hat sich bedankt: 37 Mal
Danksagung erhalten: 45 Mal

Re: TTGO ePaper-Display - und was nun?

Beitrag von klassisch » 22.06.2020, 20:03

Ich suche auch noch nach einer ePaper-Lösung aber für Batteriebetrieb mit häufigeren Updates. Ich denke nicht, daß das mit ESPs wirklich gut geht. Das Teil sollte mal die motorisierte RitschRatsch Status-Anzeige HM-Dis-TD-T ersetzen und noch etwas Zusatzinfo liefern.

Antworten

Zurück zu „Hardwareentwicklung und Selbstbau von Aktoren und Sensoren“