Skocz do zawartości

ESP32 bład przy pierwszym połączeniu (USB)


Maruda

Pomocna odpowiedź

Witam forumowiczów.

Płytka:

Wemos R32 d1 Uno 

Pierwsza próba wrzucenia programu (tradycyjnie znany i lubiany Blik):

Arduino:1.8.13 (Windows 10), Płytka:"ESP32 Dev Module, Disabled, Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS), 240MHz (WiFi/BT), QIO, 80MHz, 4MB (32Mb), 921600, None"

Szkic używa 207705 bajtów (15%) pamięci programu. Maksimum to 1310720 bajtów.

Zmienne globalne używają 15228 bajtów (4%) pamięci dynamicznej, pozostawiając 312452 bajtów dla zmiennych lokalnych. Maksimum to 327680 bajtów.

esptool.py v2.6

Serial port COM6

Connecting........_____....._____....._____....._____.....___

Chip is ESP32D0WDQ6 (revision 1)

Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None

MAC: 8c:aa:b5:85:f2:a4

Uploading stub...

Running stub...

Stub running...

Changing baud rate to 921600

Changed.

Configuring flash size...

Auto-detected Flash size: 4MB

Compressed 8192 bytes to 47...

Wrote 8192 bytes (47 compressed) at 0x0000e000 in 0.0 seconds (effective 9362.3 kbit/s)...

Hash of data verified.

Compressed 17392 bytes to 11186...

Wrote 17392 bytes (11186 compressed) at 0x00001000 in 0.1 seconds (effective 1030.6 kbit/s)...

Hash of data verified.

Compressed 207824 bytes to 105394...

Wrote 207824 bytes (105394 compressed) at 0x00010000 in 1.7 seconds (effective 1002.2 kbit/s)...

Hash of data verified.

Compressed 3072 bytes to 128...

Wrote 3072 bytes (128 compressed) at 0x00008000 in 0.0 seconds (effective 4096.0 kbit/s)...

Hash of data verified.



Leaving...

Hard resetting via RTS pin...


Na płytce jest CH340, ale tą samą kość mam w kilku innych płytkach i działają bez problemu (sterowniki odpadają). Próbowałem zmiany prędkości transmisji, oraz zapewniłem odrębne zasilanie. Usunąłem dodatni przewód zasilania z kabla usb.

Ma ktoś jeszcze pomysł jak załadować program?

Link do komentarza
Share on other sites

Dnia 7.10.2020 o 15:21, ethanak napisał:

Ale czego ty chcesz? Przecież program się załadował... nawet reset się zrobił.

Z czym masz problem?

witam !
Ethanak - niestety sprawa nie jest taka prosta- jak tutaj przedstawiasz. Moze tylko w przypadku
prostych sketchow typu "harcerskiego jak migajaca dioda". Jak mam takie doświadczenia :
Napisalem skrypt do obslugi WiFi na NODEMCU . Obsluga WiFi jest o wiele bardzie skomplikowana
niz np . Ethernet. Na WiFi po zapytaniu o  jakieś dane i po ich otrzymaniu następuje rozłączenie połączenia
gdyz inaczej Twoj sąsiad  mogłby wejsć na Twoje urzadzenie . Dla Wifi sketch musi zawierac SocketCient
jak i SocketSerwer.
Dla wersji Arduino.exe v 1.8.5 kompilacja przebiegla normalnie , ale potem przy dluższym uzytkowaniu
na terminalu Monitor Portu Szeregowego pojawiały sie jakies pakiety swiadczace o przepelnieniu stosu ;
Moja zajetosć pamieci wynosila

Szkic używa 322861 bajtów (30%) pamięci programu. Maksimum to 1044464 bajtów.
Zmienne globalne używają 45116 bajtów (55%) pamięci dynamicznej, pozostawiając
36804 bajtów dla zmiennych lokalnych. Maksimum to 81920 bajtów.

Wyglądalo to tak , jakby zmienne zachodzily na siebie , lub nie byly zerowane zmienne lokalne po
wyjściu z procedury
.
No cóż pomyślałem - może następna wersja opanuje te zjawiska . Zainstalowalem
więc wersję Arduino.exe IDE V 2.0.3 I wykonalem kompilację az do uzyskania nieszczesnego
komunikatu  hard resetting via rts pin  ., obserwuajac jednoczesnie Monitor Portu Szeregowego
na ktorym znowu pojawiały się komunikaty o przepelnieniu stosu i robil to wielokrotnie nie
przerywajac  w ogole . Wylączylem więc zasilanie plytki i odlączylem wszelkie kable i po dosć dlugim czasie
wlączylem ja ponownie . Znowu zaczela mrugac dioda resetu i tak w kolko . Dodam iz w trakcie resetu w kólko
uwaliło mi port USB w komputerze .Próba wczytania nowego sketchu byla negatywana .
Dopiero jak uruchomilem sketch   EEPROM Clear  to wyczyscilo pamiec plytki

de  krotkofalowiec  sp9auv

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

13 minut temu, sp9auv napisał:

sprawa nie jest taka prosta- jak tutaj przedstawiasz.

Możesz wyjaśnić o co chodzi?

13 minut temu, sp9auv napisał:

Na WiFi po zapytaniu o  jakieś dane i po ich otrzymaniu następuje rozłączenie połączenia
gdyz inaczej Twoj sąsiad  mogłby wejsć na Twoje urzadzenie .

Oświeć mnie w jaki sposób.

14 minut temu, sp9auv napisał:

pojawiały sie jakies pakiety swiadczace o przepelnieniu stosu ;
Moja zajetosć pamieci wynosila

A co ma wspólnego przepełnienie stosu z zajętością pamięci statycznej? 

 

21 minut temu, sp9auv napisał:

może następna wersja opanuje te zjawiska . Zainstalowalem
więc wersję Arduino.exe IDE V 2.0.3

I okazało się, że błędnie napisanego programu nie poprawi nowa wersja IDE?

 

15 minut temu, sp9auv napisał:

Wyglądalo to tak , jakby zmienne zachodzily na siebie , lub nie byly zerowane zmienne lokalne po
wyjściu z procedury
.

Bardzo trafne spostrzeżenie. Jeśli procedury są wywoływane niezależnie to ich zmienne lokalne mogą znajdować się w tym samym obszarze stosu, a pamięć zmiennych lokalnych nie jest zerowana po wyjściu z procedury bo i po co.

17 minut temu, sp9auv napisał:

wykonalem kompilację az do uzyskania nieszczesnego
komunikatu  hard resetting via rts pin  ., obserwuajac jednoczesnie Monitor Portu Szeregowego
na ktorym znowu pojawiały się komunikaty o przepelnieniu stosu

No bo program się załadował, ruszył, doszło do przepełnienia stosu w czasie jego działania, zrobił reset, ruszył, doszło do przepełnienia stosu, zrobił reset, ruszył i tak dalej. Co miał biedny program zrobić jak dostał w tył głowy krytycznym wyjątkiem?

Poza tym niespecjalnie rozumiem co ma wspólnego Twój problem z problemem opisanym w wątku...

73

 

 

Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.