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
  AI Thinker ESP32 CAM, Flash LED leuchtet leicht nach DEEP SLEEP spok1 0 68 01.06.2020 14:00
Letzter Beitrag: spok1
  AD9833 an ESP32 Devkit V1 Gerdchen03 8 340 30.05.2020 22:55
Letzter Beitrag: Gerdchen03
  ESP32 Ethernet shrimps 24 15.103 28.05.2020 16:23
Letzter Beitrag: miq19
  Wemos D1 R2, Kein Reset wenn 5V Ausgang belegt ist LutzS 14 485 24.05.2020 21:07
Letzter Beitrag: LutzS
  ESP32 "ESP32 BLE Keyboard library" und Pairing Probleme Arduino4Fun 0 137 23.05.2020 18:47
Letzter Beitrag: Arduino4Fun
  ESP8266 Reset Button ? Nicole 16 804 18.05.2020 11:33
Letzter Beitrag: N1d45
  ESP32 Programmspeicherplatz zu gering rev.antun 5 468 11.05.2020 11:50
Letzter Beitrag: rev.antun
  ESP32-Cam, Originalsketch uk1408 0 330 09.05.2020 20:13
Letzter Beitrag: uk1408
  Tonerzeugung mit ESP32 Gerdchen03 4 483 06.05.2020 23:16
Letzter Beitrag: Corvus
  ESP32 NodeMCU: Versorgung mit USB und EXT 5V georg1010 7 541 03.05.2020 21:00
Letzter Beitrag: hotsystems

Gehe zu:


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