• .
  • Willkommen im Forum!
  • Alles beim Alten...
  • Du hast kaum etwas verpasst ;-)
  • Jetzt noch sicherer mit HTTPS
Hallo, Gast! Anmelden Registrieren


4.2" EPD E-Ink Display Wetter + Google Kalender per ESP8266 (Weifeng Wuxi Vision)
#41
(08.09.2019, 02:17 AM)christianw. schrieb: Im Script-Editor auf "Veröffentlichen" und dann die Einstellungen wie im Bild:



Das "alle" zugreifen können ist nicht dramatisch, da der Aufruf nur mit dem Key valid ist.

Danke, ich habe das Script neu erzeugt und dann den Link in einem fremden Rechner eingegeben, so klappt es. Es scheint, dass spätere Änderungen nicht richtig funktionieren.
Leider funktioniert dieser neue Link dann aber nicht im Projekt. Alles führt wieder an der gleichen Stelle zum Reset.

Ich denke, dass ich jetzt erst mal schlafen gehe und mir das Sonntag nochmal alles anschaue.
 
Reply
#42
Du musst nach jeder Änderung eine neue Version pushen die dann auch freigeschaltet wird.
 
Reply
#43
(08.09.2019, 02:38 AM)christianw. schrieb: Du musst nach jeder Änderung eine neue Version pushen die dann auch freigeschaltet wird.

Hallo,

jetzt habe ich zwei neue WEMOS D1 mini in Betrieb genommen, es hätte ja sein können, dass in den schon benutzen ESP8266 irgendwelche Rest-Codes stecken.

Geändert hat sich aber nichts. 
Code:
7:14:19.497 -> Time to get weather done: 813 milliseconds
17:14:19.531 -> Free heap at sync start .. 27704
17:14:19.531 -> Connecting to script.google.com
17:14:21.385 ->
17:14:21.385 -> Abort called
17:14:21.385 ->
17:14:21.385 -> >>>stack>>>
17:14:21.385 ->

Erin Versuch mit Google zu connecten hätte aber ausgebenen werden müssen, denn den Code hatte so ergänzt:

Code:
 DPRINT("Connecting to ");
 DPRINTLN(dstHost);

 // Try to connect for a maximum of 5 times
 bool flag = false;
 for (int i = 0; i < GoogleServerMaxRetry; i++) {
   int retval = client->connect(dstHost, dstPort);    Serial.println(dstPort);
   if (retval == 1) {
     flag = true;
     break;
   }
   else
     Serial.println(F("Connection failed. Retrying..."));
 }

Irgendwo hier wird der Reset erzeugt, aber warum? Und wie kann ich den verhindern?
 
Reply
#44
Der Reset kommt bei

client->connect(dstHost, dstPort);

Wahrscheinlich HW-WDT aufgrund von Timeout.

Hast du denn die HTTSredirect handisch installiert?

#include "HTTPSRedirect.h"  // https://github.com/electronicsguy/ESP826...PSRedirect

Die über die IDE im Bibiothek-Manager verfügbare funktioniert hierbei nicht, weil diese keine Weiterleitung unterstützt.

Kannst ja mal das probieren:

Code:
// Try to connect for a maximum of 5 times
bool flag = false;
   // Trigger HW watchdog on to long delay
ESP.wdtDisable();
for (int i = 0; i < GoogleServerMaxRetry; i++) {

Soweit mir bekannt, funktioniert "ESP.wdtDisable();" nie so wie es soll, da der HW-WDT nicht abschaltbar ist. Nach ca. 3s resettet der 8266 normalerweise.

Kannst ja mal das probieren:

Code:
// Try to connect for a maximum of 5 times
bool flag = false;
   // Trigger HW watchdog on to long delay
ESP.wdtDisable();
for (int i = 0; i < GoogleServerMaxRetry; i++) {

Soweit mir bekannt, funktioniert "ESP.wdtDisable();" nie so wie es soll, da der HW-WDT nicht abschaltbar ist. Nach ca. 3s resettet der 8266 normalerweise.
 
Reply
#45
die Library habe ich vorsichtshalber noch mal von Deinem Link installiert. Das hat keinen Unterschied gebracht.

Der Whatchdog hat einfach nur einige Sekunden gebracht
Code:
8:14:27.373 -> Connecting to script.google.com
18:14:35.751 ->
18:14:35.751 ->  ets Jan  8 2013,rst cause:4, boot mode:(3,6)
18:14:35.751 ->
18:14:35.751 -> wdt reset

So wie ich das sehe, ist das Problem Google.com

Deshalb habe ich einfach mal versucht script.google.com gegen script.google.de auszutauschen. Wie erwartet bekomme ich zwar so keine Daten, aber es gibt auch keinen Reset.

Code:
18:21:51.863 -> Time to get weather done: 504 milliseconds
18:21:51.863 -> Free heap at sync start .. 27720
18:21:51.863 -> Connecting to script.google.de
18:21:51.897 -> 443
18:21:51.897 -> Connection failed. Retrying...
18:21:51.897 -> 443
18:21:51.897 -> Connection failed. Retrying...
18:21:51.897 -> 443
18:21:51.897 -> Connection failed. Retrying...
18:21:51.897 -> 443
18:21:51.897 -> Connection failed. Retrying...
18:21:51.897 -> 443
18:21:51.897 -> Connection failed. Retrying...
18:21:51.897 -> Could not connect to server: script.google.de
18:21:51.931 -> Exiting...
18:21:51.931 -> Fetching data is done now.
18:21:51.931 -> Time used for google calendar sync: 72 milliseconds
18:21:51.966 -> Powering down WiFi now!
18:21:51.966 -> Time since start in high power mode: 4403 milliseconds
18:21:51.966 -> localHour: 18
18:21:51.966 -> icona: Klarer Himmel
18:21:52.000 -> 01d
18:21:52.000 -> 02n
18:21:52.000 -> 03n
18:21:52.000 -> appointment0 index : -1
18:21:52.170 -> Next update in: 15 minutes.

Danach habe ich irgendeine andere Webseite, bei der es einen connect geben muss ausprobiert.
http://www.bahn.de
das führt wieder zu einem Reset.
Damit scheint es so, dass ein Connect jeglicher Art, diesen Reset auslöst.
 
Reply
#46
, kannst du das Teil Mal von einem anderem Anschluss aus ausprobieren? Inkl. anderem Router?
 
Reply
#47
(08.09.2019, 11:44 PM)christianw. schrieb: , kannst du das Teil Mal von einem anderem Anschluss aus ausprobieren? Inkl. anderem Router?

Hallo,

den Test habe ich gemacht, ergebnislos.
Ich nutze FritzBox 7490 mit aktueller Firmware an einer 100er Leitung von 1und1 mit effektiven 96k.

Um Speicher zu gewinnen habe ich das ganze nun auf einen Wemos D1 Mini Pro aufgespielt, immerhin von 27k auf 3ik Speichergewinn.
Leider keine Änderungen. Was ich aber gemerkt habe, die verschiedenen Versionen der Librarys verhalten sich zum Teil sehr unterschiedlich.
Ich gehe davon aus, dass es nicht unerheblich ist, welche Library-Versionen hier benutzt werden.

Kannst Du Deine Librarys für dieses Projekt mal Zippen und und zur Verfügung stellen? In diversen englischsprachigen Foren wird über das gleiche Problem berichtet, aber auch ohne eine Lösung zu bieten. Oftmals wird der Spannungsversorgung die Schuld gegeben, dies kann ich aber bei mir ausschließen, ich habe mehrere verschiedene und hochwertige Versorgungen getestet.
 
Reply
#48
Habe jetzt mal mit mehreren ESP Modulen getestet. Das Problem ist der Free Heap.

Code:
  DPRINT(F("Free heap at sync start .. ")); DPRINTLN(ESP.getFreeHeap());
Serial.println(F("Free heap at sync start .. ")); Serial.println(ESP.getFreeHeap()); // hilfe
  HTTPSRedirect* client = nullptr; // Setup a new HTTPS client
Serial.println(F("neuer HTTPS Client"));//hilfr
Serial.println(ESP.getFreeHeap()); // hilfe
  // Use HTTPSRedirect class to create a new TLS connection
  client = new HTTPSRedirect(dstPort);
  client->setPrintResponseBody(false);
  client->setContentTypeHeader("application/json");
Serial.println(ESP.getFreeHeap()); // hilfe
  DPRINT("Connecting to ");
  DPRINTLN(dstHost);
Serial.println(F("Aufruf"));//hilfr 

in diesem Abschnitt habe ich bewusst 3 mal den FreeHeap ausgelesen. Zu  Beginn beträgt er 27256, beim 2. Aufruf auch noch, aber beim letzten, direkt vor dem Aufruf von Google hat er nur noch 21336. 
Das reicht leider nicht mehr um eine HTTP bzw. eine HTTPS Verbindung aufzubauen. 
Der Quellcode ist ja nicht verändert, aber die Bibliotheken sind ja alle zwischenzeitlich mal bearbeitet worden.   ;think

Jetzt genehmige ich mir noch  ;bier und dann mache ich morgen weiter.
 
Reply
#49
Ich poste morgen meine libs.
 
Reply
#50
WifiManager - 0.14.0
WiFi - 1.2.7
Adafruit GFX Library - 1.3.6
ArduinoJSON - 5.13.5 (Benoit Blanchon)
Time - 1.5.0 (Michael Margolis)
Timezone - 1.2.0 (Jack Christensen)
Watchdog - 1.2.0 (Nadav Matalon)
WebSockets - 2.1.1 (Markus Sattler)
GxEPD - 2.3.14
HTTPSredirect - 2.0 (https://github.com/electronicsguy/ESP826...PSRedirect)
 
Reply
#51
Ich würde zuerst einmal im Boardmanager auf ESP8266 Arduino Core [2.4.2] zurückdrehen.
 
Reply
#52
Vielen Dank ChristianW.
Leider kam ich erst heute dazu, die "älteren" Librarys" aufzuspielen, ein unerwarteter Krankenhausaufenthalt kam mir dazwischen. Aber dafür funktioniert jetzt alles lachend
Meinen allerhezlichsten Dank. Ich hoffe, dass das auch anderen Hilft, die dieses tolle Projekt umsetzen wollen.
 
Reply
#53
Na hoffentlich geht's gut? Wäre interessant, welche Library nun blockiert.
 
Reply
#54
(22.09.2019, 11:21 PM)christianw. schrieb: Na hoffentlich geht's gut? Wäre interessant, welche Library nun blockiert.

Guten Morgen,
da ich jetzt ja noch einige Tage krank geschrieben bin, werde ich die Zeit nutzen, die Library zu identifizieren. Wenn das geklappt hat, dann versuche ich das Projekt auf einen 9,7", mit mehr Inhalt umzusetzen.
 
Reply
#55
Super, danke. Welches 9.7" verwendest du?
 
Reply
#56
Hallo Leute,
ich finde das Projekt super und habe es schon früh nachgebaut.
Und es ist tatsächlich so, dass alle Library in der angegeben Version genutzt werden müssen (auch ESP8266 Arduino Core [2.4.2])
Hat mich viel Zeit gekostet, da die Fehlermeldung für mich keinen Zusammenhang hat.  Angry

Aber es funktioniert!  Smile
 
Reply
#57
Hi zusammen,
ich habe das Projekt nachgebaut aber ein paar Fragen:
Vorab: ich nutze einen D1 mini clone mit Waveshare 4.2. bw ePaper Module (also nicht das reine Display)
1) Den LiPo habe ich direkt an 5V und GND des D1 angeschlossen. Das Display zeigt "Batterie leer!" hat aber 4V.
Hier im Thread gibt es zwar einen Hinweis dass irgendwas an A0 angeschlossen werden muß, das ist aber leider nirgends dokumentiert, auch nicht auf GitHub. Muß ich von 5V einen Widerstand - was für einen Widerstand? - mit A0 verbinden?

2) sobald ich VCC und GND am Display mit 3,3V und GND amD1 verschalte ist der D1 nicht mehr von der Arduino IDE erreichbar. Eine Verbindung scheitert. Im Nomalbetrieb scheint sich der D1 dann auch aufzuhängen, das Display wird nicht mehr upgedated. Nur wenn ich am Display 3.3V und GND ganz weglasse funktioniert die Verbindung von D1 mit der IDE, Serial Monitor etc. Seltsamerweise funktionieren Display updates dennoch.
Wenn ich nur die Masse des Displays verbinde funktionieren die Display Updates ganz normal, nur VCC bringt alles zum Absturz.
Ich hatte vorher ein kleineres 2.13 waveshare Display mit 3.3V und GND angeschlossen und keine Probleme, beim 4.2er ist das Verhalten aber wie oben beschrieben sehr seltsam.

Kann mir hier jemand weiterhelfen? 1) würde ich gerne lösen, mit 2) kann ich notfalls leben auch wenn ich es nicht nachvollziehen kann
 
Reply