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: 10660
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 321 Mal
Danksagung erhalten: 501 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: 2483
Registriert: 13.02.2012, 20:23
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 302 Mal
Danksagung erhalten: 116 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
RaspberryMatic - CuL 868mHz- CuxDemon - PioTek Tracker - Velux mit KLF200 und Somfy Anbindung- io.Broker auf Proxmox NUC6I3SYH i3-6100U RAM: 40Gig Crucial 8GB DDR4 CT2K8G4SFS824A + 32GB DDR4CT32G4SFD8266

dtp
Beiträge: 10660
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 321 Mal
Danksagung erhalten: 501 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: 2483
Registriert: 13.02.2012, 20:23
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 302 Mal
Danksagung erhalten: 116 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?
RaspberryMatic - CuL 868mHz- CuxDemon - PioTek Tracker - Velux mit KLF200 und Somfy Anbindung- io.Broker auf Proxmox NUC6I3SYH i3-6100U RAM: 40Gig Crucial 8GB DDR4 CT2K8G4SFS824A + 32GB DDR4CT32G4SFD8266

dtp
Beiträge: 10660
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 321 Mal
Danksagung erhalten: 501 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: 12115
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 848 Mal
Danksagung erhalten: 2150 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

chka
Beiträge: 2483
Registriert: 13.02.2012, 20:23
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 302 Mal
Danksagung erhalten: 116 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.
RaspberryMatic - CuL 868mHz- CuxDemon - PioTek Tracker - Velux mit KLF200 und Somfy Anbindung- io.Broker auf Proxmox NUC6I3SYH i3-6100U RAM: 40Gig Crucial 8GB DDR4 CT2K8G4SFS824A + 32GB DDR4CT32G4SFD8266

jp112sdl
Beiträge: 12115
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 848 Mal
Danksagung erhalten: 2150 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

dtp
Beiträge: 10660
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 321 Mal
Danksagung erhalten: 501 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) 45-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: 3974
Registriert: 24.03.2011, 04:32
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 110 Mal
Danksagung erhalten: 71 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“