INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
ESP32 hängt -> reset per Attiny85
07.11.2019, 11:17 (Dieser Beitrag wurde zuletzt bearbeitet: 07.11.2019 11:22 von hYtas.)
Beitrag #1
ESP32 hängt -> reset per Attiny85
Moin,

ich baute mir aus einem ESP32 + BME280 eine kleine Wetterstation. Diese sendet per WLAN über MQTT an meinen Pi und ich kann alles in Grafana anzeigen lassen.

Leider hängt sich der ESP32 nach Zeit x auf und nur ein Reset hilft.
Es könnte an dem Wifi Bug liegen, den es im ESP32 gibt oder an der Spannungsversorgung, was ich aber nicht glaube.

Als Versorgung nehme ich einen 18650 Li-Ion Akku + Laderegler und DC-DC Konverter, damit ich stabile 5 V bekomme. Zusätzlich habe ich einen 1000µF Elko am DC-DC Ausgang und einen 1000µF Elko direkt am ESP zwischen VIN und GND zum Puffern.

Per Oszi sehe ich eine 5V Versorgung, die glatt wie ein Babypopo ist.

Ich habe das Programm schon zu PlatformIO geändert und eine aktuell Version 1.10.0 aufgespielt aber es hängt sich trotzdem auf.

Soweit zur Vorgeschichte. Rolleyes
_______________________________________________________________

Da mir das Ganze mittlerweile tierisch auf die Nüsse geht und ich auch keine Lust habe weiter zu experimentieren, möchte ich nun per ATTiny85 einen Transistor oder Relais parallel zum Resetknopf des ESP anschließen und das Teil alle 2 Stunden resetten.

Ein Transistor ist wohl besser, da der ATTiny es evtl. nicht schaffen wird das Relais anziehen zu lassen.

Es soll folgendes tun:
- Aus dem Deep Sleep aufwachen
- Relais/Transistor für 1-2 Sek. einschalten
- Für 2 Stunden in den Deep Sleep.

Das sollte doch machbar sein oder? Ich bin noch nicht so der Arduino Profi, daher wäre etwas Hilfe ganz fein. Angel

Quasi dieser Code nur mit Deep Sleep?

Code:
void setup() {
    // Initialize the relay pin as output
    pinMode(5, OUTPUT);
}

void loop() {
    digitalWrite(5, HIGH);    // Turn the relay on
    delay(1000);              // Wait for a second
    digitalWrite(5, LOW);     // Turn the relay off
    delay(1000);              // Wait for a second
}
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.11.2019, 12:52
Beitrag #2
RE: ESP32 hängt -> reset per Attiny85
Da ich bisher noch keinen DeepSleep brauchte, kann ich dabei nicht helfen.
Aber was der Transistor zum resetten des ESP32 betrifft, wird der reichen.
Es kann ein NPN-Transistor sein, mit dem du den ESP resetten kannst und du brauchst da kein Relais.

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.11.2019, 13:02
Beitrag #3
RE: ESP32 hängt -> reset per Attiny85
Hallo hYtas,
prinzipiell ist machbar was du dir ausgedacht hast.

Wenn dein Li-Ion Akku aber ständig den Laderegler, den DC-DC Konverter und den ESP32 versorgt musst du dir meiner Meinung nach keine Gedanken um einen Deep Sleep für einen ATTiny85 machen.
Der Stromverbrauch von Laderegler, DC-DC Konverter und ESP32 ist dann um ein vielfaches höher als der des ATTiny85.

Wenn du den ATTiny85 mit 3,3V (vom ESP32) versorgst, mit internen 1MHz taktest und den internen ADC abschaltest kommt der ATTiny85 laut diverser Webseiten mit ca. 1mA aus.

Ich kenne dieses seltsame Verhalten der ESP32 auch. Undecided
Ich weiß aber auch dass ein Reset des ESP32 nicht immer geholfen hat wenn er sich mal aufgehängt hat.
Manchmal half nur ihm die Versorgungsspannung weg zu nehmen.
Hilft bei Dir denn immer ein Druck auf den Reset Taster?

Gruß Arne
Mit zunehmender Anzahl qualifizierter Informationen bei einer Fragestellung, erhöht sich zwangsläufig die Gefahr auf eine zielführende Antwort.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.11.2019, 13:13
Beitrag #4
RE: ESP32 hängt -> reset per Attiny85
Hallo,

für Überraschungen ist ein ESP32 bisher immernoch gut, das stimmt. Ich habe im Moment keinen im echten 24/7 Einsatz, allerdings laufen die Spielereien, die ich hier auf ESP32 habe, zumindest über Stunden stabil. Mein Bekannter ist da sehr rege und hat auch schon Espressif mit Bugreports, meist gleich mit passeder Lösung, beschäftigt.

Insofern ist es von mir mehr Neugier: was läuft als Sketch auf dem ESP32? Wenn da nur ein BME280 dranhängt, hätte ci schon Interesse, daß hier mal zu testen, ist sowieso alles vorhanden incl. MQTT usw.
Man kann die Ursache des Hängens sicher eingrenzen und vielleicht auch beheben.

Gruß aus Berlin
Michael
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.11.2019, 14:15
Beitrag #5
RE: ESP32 hängt -> reset per Attiny85
Da der ESP nur alle 20 Minuten (aktuell alle 5 zum testen) die Daten sendet und dann in den Deep Sleep geht, wollte ich den ATTiny auch schlafen legen.

Ein Drücken des Resets reicht eigentlich immer aus, hatte noch die den Fall, das es danach nicht wieder lief. Ich vermute das es sich um den Wifi reconnect bug handelt und er dann in der loop fest hängt. Haben viele aber dazu gibt es leider keine richtige Lösung.
Den Sketch kann ich zur Verfügung stellen. Ich benutze InfluxDB auf dem Pi.

Wie müsste ich den deepsleep einfügen? denke mal am Ende der loop deepslepp start und am anfang die enable + Zeit festlegen?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.11.2019, 16:51
Beitrag #6
RE: ESP32 hängt -> reset per Attiny85
Hallo,

(07.11.2019 14:15)hYtas schrieb:  Den Sketch kann ich zur Verfügung stellen. Ich benutze InfluxDB auf dem Pi.

Kannst den Sketch ja hier mal ranhängen, dann lasse ich mal einen ESP32 + BME280 + Akkumodul etwas auf meinem Balkon frieren. Mit den MQTT-Daten, die Du sendest, werde ich schon irgendwas anfangen.

Gruß aus Berlin
Michael
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.11.2019, 20:20 (Dieser Beitrag wurde zuletzt bearbeitet: 07.11.2019 20:21 von hYtas.)
Beitrag #7
RE: ESP32 hängt -> reset per Attiny85
(07.11.2019 13:02)ardu_arne schrieb:  Wenn dein Li-Ion Akku aber ständig den Laderegler, den DC-DC Konverter und den ESP32 versorgt musst du dir meiner Meinung nach keine Gedanken um einen Deep Sleep für einen ATTiny85 machen.
Der Stromverbrauch von Laderegler, DC-DC Konverter und ESP32 ist dann um ein vielfaches höher als der des ATTiny85.

Wenn du den ATTiny85 mit 3,3V (vom ESP32) versorgst, mit internen 1MHz taktest und den internen ADC abschaltest kommt der ATTiny85 laut diverser Webseiten mit ca. 1mA aus.

Wie würdest du es machen? Der Watchdog geht nur bis 8 Sekunden... dann muss ich wohl die 1mA opfern, zur not verbaue ich einfach einen 2. 16850 Big Grin

Schleifen programmieren damit man auf 2 Stunden kommt? Delays laufen ja nicht so lange.

Ich hätte mir das so gedacht, meint ihr das funktioniert? Die ATTinys kommen erst morgen.

Code:
static const uint32_t DELAY_1_S      = 1000UL;
static const uint32_t DELAY_1_MINUTE = DELAY_1S * 60UL;
static const uint32_t DELAY_1_HOUR   = DELAY_1MINUTE * 60UL;


void setup() {
    // Initialize the transistor pin as output
    pinMode(5, OUTPUT);
}

void loop() {
    digitalWrite(5, HIGH);    // Turn the transistor on
    delay(1000);              // Wait for a second
    digitalWrite(5, LOW);     // Turn the transistor off
    delay(2UL * DELAY_1_HOUR); // Delay 2 hours
    gotoloop();
}

Der Takt fehlt noch und das ADC ausschalten.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.11.2019, 20:27
Beitrag #8
RE: ESP32 hängt -> reset per Attiny85
Was soll gotoloop() sein?

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  ESP32 - welche WIFI Library nehmen georg1010 2 32 Gestern 19:02
Letzter Beitrag: amithlon
  Sketch von einen ESP8266 auf ein ESP32 portieren (hagelt Fehlermeldung) magnum1795 23 510 13.11.2019 14:38
Letzter Beitrag: magnum1795
  esp32 wifi - new Client als Unterproramm georg1010 5 157 13.11.2019 12:10
Letzter Beitrag: Tommy56
  ESP32 - an mobile hotspot anmelden georg1010 3 158 12.11.2019 08:39
Letzter Beitrag: hotsystems
  ESP32 und mp3 via SD biologist 9 354 10.11.2019 14:14
Letzter Beitrag: biologist
  Soft WDT reset scritch 1 118 07.11.2019 17:43
Letzter Beitrag: amithlon
  ESP32 Pakete installieren unter Ubuntu Gerdchen03 0 190 01.11.2019 15:37
Letzter Beitrag: Gerdchen03
  Frage zu App für Esp32 goofy15 4 406 29.10.2019 08:46
Letzter Beitrag: volvodani
  ESP32 "SPIFFS initialisation failed!" Gerdchen03 1 316 18.10.2019 17:34
Letzter Beitrag: hotsystems
  Display am ESP32 - kein Bild Gerdchen03 17 1.402 13.10.2019 16:56
Letzter Beitrag: Gerdchen03

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste