mikrocontroller.net

Forum: Compiler & IDEs Arduino IDE 1.8.9 buggy?


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
unter windows XP (32)
wenn ich neu was kompilieren will Fehler
unter win7 - 64 gehts

das hatte ich bis 1.8.5 nie
In function 'global constructors keyed to 
65535_0_A804b_nan_Nok_RTC_EEP_DHT22_ok_slow_DS.ino.cpp.o':
lto1.exe: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
lto-wrapper.exe: fatal error: 
C:\Programme\atmel\Arduino\hardware\tools\avr/bin/avr-gcc returned 1 
exit status
compilation terminated.
c:/programme/atmel/arduino/hardware/tools/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/bin/ld.exe: 
error: lto-wrapper failed
collect2.exe: error: ld returned 1 exit status
exit status 1
Fehler beim Kompilieren für das Board Arduino Nano.

helfen soll
http://downloads.arduino.cc/packages/package_avr_7.3.0_index.json

mal sehen

Autor: Johann L. (gjlayde) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
PR87695 ?

Autor: Jim M. (turboj)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Johann L. schrieb:
> PR87695 ?

Findet Google nicht.
-v, bitte.


Übrigens dürfen 32-Bit Prozese unter Win64 bis zu 4GB Adress Raum 
benutzen,
während Win32 nur 2GB Addressable Space erlaubt. Kann bei LTO durchaus 
passieren dass da eine Menge Speicher ver(sch)wendet wird.

Autor: Johann L. (gjlayde) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Joachim B. (jar)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Jim M. schrieb:
> Johann L. schrieb:
>> PR87695 ?
>
> Findet Google nicht.

doch, Glasflaschen
https://www.fotosearch.co.uk/CSK009/pr87695/


Bug 87695 - Arduino: ICE with avr and LTO
hat aber auch wohl nichts mit meinem Problem zu tun

weder ICE noch LTO sind beteiligt.

Jim M. schrieb:
> während Win32 nur 2GB Addressable Space erlaubt

da war doch mal was mit freischalten, ich hatte schon von Anfang an 3GB 
bestückt, fand den Freischalter aber erst Jahre später, da sBIOS meldete 
mir immer 3GB nur win nutze nur 2GB. Man musste in der boot.ini den 
Schalter umlegen

WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect 
/3gb /userva=3000

Autor: Johann L. (gjlayde) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Joachim B. schrieb:
> Bug 87695 - Arduino: ICE with avr and LTO
> hat aber auch wohl nichts mit meinem Problem zu tun
>
> weder ICE noch LTO sind beteiligt.

Joachim B. schrieb:
> lto1.exe: internal compiler error: Segmentation fault

internal compiler error = ICE
lto1 übersetzt LTO Bytecode

Autor: Joachim B. (jar)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Johann L. schrieb:
> internal compiler error = ICE
> lto1 übersetzt LTO Bytecode

lol ICE war für mich immer ein AVR prommer, DANKE für die Aufklärung!

immer diese AKÜFI


BTW kann es sein das die ESP Integration unter win32 XP nicht klappt?

mittlerweile habe ich auf 2 Rechnern Probleme und sogar auf dem win7 wo 
esp32 mal lief.

Ich denke gerade an totale Neuinstallation, wobei mich das nervt.

beim winXP schauts nach python Problem aus, da war was zwischen 2.7 und 
3.6 denn GNU Radio wollte auch nur win7

: Bearbeitet durch User
Autor: Manfred (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Joachim B. schrieb:
> unter windows XP (32)
> wenn ich neu was kompilieren will Fehler

Hier ohne Fehlermeldung:
"F:\\arduino-1_8_9\\hardware\\tools\\avr/bin/avr-size" -A "c:\\tmp\\arduino_build_522908/Log_Charger.ino.elf"
Der Sketch verwendet 23416 Bytes (76%) des Programmspeicherplatzes. Das Maximum sind 30720 Bytes.
Globale Variablen verwenden 1477 Bytes (72%) des dynamischen Speichers, 571 Bytes für lokale Variablen verbleiben. Das Maximum sind 2048 Bytes.

Irritiert bin ich, dass die (hier benutzte) 1.7.4 ein abweichendes 
Ergebnis liefert:
Der Sketch verwendet 26.772 Bytes (87%) des Programmspeicherplatzes. Das Maximum sind 30.720 Bytes.
Globale Variablen verwenden 1.465 Bytes (71%) des dynamischen Speichers, 583 Bytes für lokale Variablen verbleiben. Das Maximum sind 2.048 Bytes.

-------

Bei einem anderen Projekt wirft mir die 1.8.9 einen Fehler vor die Füße, 
die Wire.h sei nicht vorhanden, obwohl in beiden Verionen identisch :-(

Zielsystem ist der Arduino Nano, wie auch in Deiner letzten Zeile.

Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Manfred schrieb:
> Zielsystem ist der Arduino Nano, wie auch in Deiner letzten Zeile.

dafür gibt es einen neuen Boardmanger inoffiziell
Upgrade:
Datei->Voreinstellungen->zusätzliche Boardmanager URLs
Dieses Eintragen:
http://downloads.arduino.cc/packages/package_avr_7.3.0_index.json
Dann kannst du im Boardmanager dein Update von 1.6.23 auf 1.6.206 
durchführen.
*ist experimentell*
Funktioniert allerdings gut.

der war aber schon bei 208/209 statt 206 und funktioniert bei mir mit 
dem nano auf der 1.8.9

wer zwischen den Prozzis wechselt sollte sich eine Erinnerungshilfe 
einbauen

#if defined(_AVR_ATmega328P_) // o.ä. z.B.

#if defined(_AVR_ATmega328P_) || defined(_AVR_ATmega1284P_)
#pragma message "#if(defined(_AVR_ATmega1284P_) || 
defined(_AVR_ATmega328P_))"

#elif defined(ESP32)
 #pragma message "#elif defined(ESP32)"

#else
  #error "board_wahl_falsch.h"

#endif

Ergebnis, nano mit optiboot FullMem(32K) NewBootloader(512) 
lowUpload(57K6) auf 1.8.9
A:\atmel\arduino\A804b_nan_Nok_RTC_EEP_DHT22_ok_slow_DS\A804b_nan_Nok_RTC_EEP_DHT22_ok_slow_DS.ino:75:18: note: #pragma message: #if(defined(__AVR_ATmega1284P__) || defined(__AVR_ATmega328P__))

  #pragma message "#if(defined(__AVR_ATmega1284P__) || defined(__AVR_ATmega328P__))"

                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Der Sketch verwendet 22416 Bytes (69%) des Programmspeicherplatzes. Das Maximum sind 32256 Bytes.
Globale Variablen verwenden 1381 Bytes (67%) des dynamischen Speichers, 667 Bytes für lokale Variablen verbleiben. Das Maximum sind 2048 Bytes.

Probleme habe ich noch mit dem ESP32 auf win32 XP

: Bearbeitet durch User
Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
jetzt plage ich mich mit der Integration vom arduino mighty mini 1284p 
rum
https://maniacbug.wordpress.com/2011/11/27/arduino-on-atmega1284p-4/
https://github.com/JChristensen/mini1284

"Das Muster recipe.preproc.macros fehlt"

??? wth.....

kennt jemand die Lösung?

: Bearbeitet durch User
Autor: Manfred (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Joachim B. schrieb:
> Probleme habe ich noch mit dem ESP32 auf win32 XP

Ein ESP32-Modul habe ich gerade bekommen und nun einen Sack voll Frust 
unter dem Tisch liegen.

Unter XP lässt sich Blink nicht compilieren:
AttributeError: function 'CancelIoEx' not found
Failed to execute script esptool
exit status -1
Fehler beim Kompilieren für das Board ESP32 Dev Module.
Davor werden diverse .py angemeckert, scheint also aus python zu kommen.

Da meine 1.8.9 portable ist, habe ich sie per Netzwerk auf ein Win7-32 
kopiert, da wird die Compilierung korrekt beendet, aber es kommt kein 
Download zustande:
Der Sketch verwendet 239596 Bytes (18%) des Programmspeicherplatzes. Das Maximum sind 1310720 Bytes.
Globale Variablen verwenden 13396 Bytes (4%) des dynamischen Speichers, 314284 Bytes für lokale Variablen verbleiben. Das Maximum sind 327680 Bytes.
D:\Common.win\arduino_IDE_189\portable\packages\esp32\tools\esptool_py\2.6.1/esptool.exe --chip esp32 --port COM5 --baud 115200 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 40m --flash_size detect 0xe000 D:\Common.win\arduino_IDE_189\portable\packages\esp32\hardware\esp32\1.0.2/tools/partitions/boot_app0.bin 0x1000 D:\Common.win\arduino_IDE_189\portable\packages\esp32\hardware\esp32\1.0.2/tools/sdk/bin/bootloader_qio_40m.bin 0x10000 c:\tmp\arduino_build_759450/Blink.ino.bin 0x8000 c:\tmp\arduino_build_759450/Blink.ino.partitions.bin 
esptool.py v2.6
Serial port COM5
Connecting........_____....._____....._____....._____....._____....._____....._____

A fatal error occurred: Failed to connect to ESP32: Timed out waiting for packet header

Ich habe den CP2102-Treiber auf den letzten Stand gebracht, das 
USB-Kabel getauscht, einen anderen USB benutzt, hat alles nichts 
geändert. Am putty zeigt der ESP nach Reset jede Menge Meldungen.

Ob nun die 1.8.9 mistig ist oder die Einbindung des ESP unsauber, weiß 
ich nicht - auf jeden Fall scheint das halbgarer Bastelkram zu sein.

Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Manfred schrieb:
> Ob nun die 1.8.9 mistig ist oder die Einbindung des ESP unsauber, weiß
> ich nicht

den Frust habe ich auch gerade,

es lief ja mal super bei mir mit einer IDE vor 1.8.9 zumindest auf dem 
win7-64 Rechner.

Nun hatte ich den Ehrgeiz das auf winXP 32 zu bringen und da klemmts 
allerorten z.B. seriell, auch meine handische Nachrüstung von python 2.7 
seriell war noch nicht erfolgreich.

phyton 3.x kannes zwar aber nicht unter XP, so mein letzter Wissenstand.

aber wo es genau klemmt weiss ich nicht.

Autor: Joachim B. (jar)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Manfred schrieb:
> Da meine 1.8.9 portable ist, habe ich sie per Netzwerk auf ein Win7-32
> kopiert, da wird die Compilierung korrekt beendet, aber es kommt kein
> Download zustande:

ach übrigens, ich habe hier mittlerweile 3 ESP die sich nicht 
programmieren lassen (kein connect zum download!), aber immerhin eines 
welches sich programmieren lässt, also Installation wohl OK.

Nachlöten hat leider am ESP auch nichts gebracht, den Rest nachlöten ist 
mir zu fummelig.

Ich ware auf Ersatzlieferung.

Denke daran auch deine könnten kaputt sein und unprogrammierbar.

: Bearbeitet durch User
Autor: c-hater (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Manfred schrieb:

> Unter XP lässt sich Blink nicht compilieren:
>
AttributeError: function 'CancelIoEx' not found
> Failed to execute script esptool
> exit status -1
> Fehler beim Kompilieren für das Board ESP32 Dev Module.
> Davor werden diverse .py angemeckert, scheint also aus python zu kommen.

Woher auch immer: irgendwas versucht da die Funktion CancelIoEx aus dem 
Win32-API zu binden. Klappt nicht, weil es die bei WindowsXP schlicht 
noch nicht gibt. Die gibt's erst seit Vista.

Tja, mit sowas muss man rechnen, wenn man mit historischen Altlasten 
hantiert...

Autor: Manfred (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Joachim B. schrieb:
> ach übrigens, ich habe hier mittlerweile 3 ESP die sich nicht
> programmieren lassen (kein connect zum download!)

Ich habe mir die IDE 1.8.7 geholt, die benimmt sich nicht besser oder 
anders.

Ich kann auf Deinem Bild nicht sehen, ob die zufällig gleich meinem 
sind.

Meinen konnte ich vorhin programmieren: Sobald die 1.8.9 / W7-32 auf den 
ComPort zufasst, die rechte Taste ein paar Sekunden halten. Sobald der 
Download gestartet ist, kann man loslassen. Die Geschwindigkeit hatte 
ich auf 115200 gesetzt.

Em Ende kommt die IDE-Meldung 'Reset durch DTR' und bleibt endlos 
hängen, Reset mit der linken Taste lässt den ESP32 dann starten.

Das benimmt sich wie ein ProMini am China CH340 Downloadadapter, wo die 
DTR-Leitung weggespart wurde und ist im Endeffekt unbrauchbar.

Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
c-hater schrieb:
> Woher auch immer: irgendwas versucht da die Funktion CancelIoEx aus dem
> Win32-API zu binden. Klappt nicht, weil es die bei WindowsXP schlicht
> noch nicht gibt. Die gibt's erst seit Vista.

danke, dann muss ich ja nicht weiter suchen, es sah fast so aus als wenn 
man bei QT 5.7. was findet.

Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Manfred schrieb:
> Meinen konnte ich vorhin programmieren:

meine Ersatzlieferung kam heute an

die ersten 3 ließen sich nicht programmieren......
ich suchte alle möglich ESP Varianten und Einstellungen durch, nada 
nichts, wollte schon aufgeben dann fiel mir das mit der BOOT Taste ein, 
da gab es mal irgendwo einen Hinweis und siehe da, es läuft.

Nur warum muss ich die Boot Taste nicht bei meinem wemos lolin32 auf dem 
Steckbrett drücken?

Die sehen absolut identisch aus, selbst in der IDE sind beide gewählt 
als wemos lolin32.

Vermutlich klappts denn mit den 3 @work auch.

https://medium.com/diy-my-smart-home/esp32-tipp-failed-to-connect-to-esp32-timed-out-1139b3701fd3

https://github.com/espressif/esptool/wiki/ESP32-Boot-Mode-Selection

: Bearbeitet durch User
Autor: Manfred (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Joachim B. schrieb:
> dann fiel mir das mit der BOOT Taste ein,

Was meinte ich gestern damit:
Manfred schrieb:
> Sobald die 1.8.9 / W7-32 auf den ComPort zufasst,
> die rechte Taste ein paar Sekunden halten.

Joachim B. schrieb:
> Nur warum muss ich die Boot Taste nicht bei meinem wemos lolin32 auf dem
> Steckbrett drücken?

Die Antwort lieferst Du mit:
https://github.com/espressif/esptool/wiki/ESP32-Boot-Mode-Selection

Da werden wohl auf dem Board RTS und DTR nicht verdrahtet sein, ich weiß 
(noch) nicht, wie ich das überprüfen kann.

Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Manfred schrieb:
> Die Antwort lieferst Du mit:
> https://github.com/espressif/esptool/wiki/ESP32-Boot-Mode-Selection
>
> Da werden wohl auf dem Board RTS und DTR nicht verdrahtet sein, ich weiß
> (noch) nicht, wie ich das überprüfen kann.

muss ich Montag mit Lupenbrille und Messgerät überprüfen, optisch 
unterscheiden sich die beiden nicht, Transistoren sind bestückt!

Autor: Manfred (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Joachim B. schrieb:
>> Da werden wohl auf dem Board RTS und DTR nicht verdrahtet sein, ich weiß
>> (noch) nicht, wie ich das überprüfen kann.
> muss ich Montag mit Lupenbrille und Messgerät überprüfen, optisch
> unterscheiden sich die beiden nicht, Transistoren sind bestückt!

Ich habe es mir auf meinem gerade angeschaut, am CP2102 gehen von DTR 
und RTS Leiterbahnen weg. Eine geht zu einem Transistor, weiter bekomme 
ich optisch nicht verfolgt.

In dem Datenblatt esp32-wroom-32_datasheet_en.pdf kann ich nicht 
erkennen, wo der Reset am ESP angeschlossen werden soll, Boot soll an 
IO0.

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Joachim B. (jar)
>ach übrigens, ich habe hier mittlerweile 3 ESP die sich nicht
>programmieren lassen (kein connect zum download!), aber immerhin eines
>welches sich programmieren lässt, also Installation wohl OK.

Die ESP32s sind ziemlich empfindlich, was das USB-Kabel anbelangt. Ich 
konnte es auch nicht glauben, habe aber mehrere durchprobiert und bei 
einem klappt es. Man kann das Problem etwas abmildern, wenn man dem ESP 
eine extra  Stromversorgung verpasst.

Autor: Manfred (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Joachim B. schrieb:
> muss ich Montag mit Lupenbrille und Messgerät überprüfen, optisch
> unterscheiden sich die beiden nicht, Transistoren sind bestückt!

Ich habe mir nun über Ali drei ESP32 von drei verschiedenen Händlern 
bestellt - abwarten, wie sich diese dann benehmen.

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe hier eine ziemlich bunte Mischung diverser ESP32 Module.
Das Verhalten geht von "läßt sich immer aus der IDE in den Flashmode 
bringen" über "manchmal muß man PROG/GPIO0 auf Low hateln, bis das 
Flashen beginnt" oder "man muß immer GPIO0 von Hand ansteuern" bis "man 
darf Reset und GPIO0 generell von Hand steuern".
Das Verhalten kann sich durchaus zufällig zwischen verschiedenen 
IDE-Versionen, manchmal auch USB-Kabeln, zusätzlich der aktuellen 
Mondphase, ändern.
Im Gegensatz zum ESP8266 hat der ESP32 keinen Reset-Pin, das passiert 
nur über Enable. Das Timing, wann GPIO0 von der Schnittstelle gesetzt 
wird, ist damit recht kritisch. Es wurde im Python-Script zum Flashen 
auch schon 2-3x verändert, eine zuverlässige Lösung gibt es aber wohl 
immernoch nicht.
Dazu kommt, daß die Beschaltung von Enable eine Rolle spielt, teilweise 
sind dort 100n gegen GND bestückt, teilweise auch 1µF. Manchmal hilft 
es, die 100n gegen 1µF zu tauschen, ist aber auch eher zufällig.

Ich gebe zu, daß ich über das Thema nicht (mehr) nachdenke, ich nehme 
eben dann die Taster und fertig. Bei Flashbeginn der Ide PROG 
festhalten, kurz Reset drücken und PROG loslassen, wenn das Flashen 
beginnt, klappt immer.

Außerdem kommt in 90% der Projekte bei mir sowieso OTA drauf und ich 
flashe darüber, da gibt es dieses Problem nicht.

Gruß aus Berlin
Michael

: Bearbeitet durch User
Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Markus schrieb:
> Die ESP32s sind ziemlich empfindlich, was das USB-Kabel anbelangt

das merkte ich auch, deshalb Volutzkabel, die haben brauchbare 
Querschnitte für power.

Michael U. schrieb:
> Außerdem kommt in 90% der Projekte bei mir sowieso OTA drauf und ich
> flashe darüber, da gibt es dieses Problem nicht.

bei OTA vermisse ich den seriellen output, mit Putty und Umlenkung der 
Debugausgaben hatte ich noch keinen Erfolg, habe mich noch nicht lange 
mit aufgehalten.

OTA machte schon im Wohnzimmer Stress je nach Ausrichtung des ESP, hier 
ist auch der wlan Empfang dünne, der Router ist zu weit weg, aber 
deswegen einen Wlan AP einrichten mochte ich nicht.

OK wegen Strom, ich denke daran den PI3 als Netzwerkbrücke einzusetzen, 
aber die Zeit, immer sind andere Sachen wichtiger oder drängen sich in 
den Vordergrund.

Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Joachim B. schrieb:
> muss ich Montag mit Lupenbrille und Messgerät überprüfen, optisch
> unterscheiden sich die beiden nicht, Transistoren sind bestückt!

war zu warm 32°C unterm Flachdach, vielleicht morgen

Autor: Manfred (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Joachim B. schrieb:
> war zu warm 32°C unterm Flachdach, vielleicht morgen

Noch immer zu warm?

Ich habe mal Internetsuche betrieben, so wie unten links im 
Referenzdesign sollte das aussehen.

Was ich nicht sehe, ist ein Reset-Anschluß am ESP, soll das der 'EN' 
sein?

Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Manfred schrieb:
> Noch immer zu warm?

ja + anderes zu tun

Manfred schrieb:
> Ich habe mal Internetsuche betrieben, so wie unten links im
> Referenzdesign sollte das aussehen.
>
> Was ich nicht sehe, ist ein Reset-Anschluß am ESP, soll das der 'EN'
> sein?

ich verstehe es auch noch nicht, einige Seiten schreiben was von 100nF 
nachbestücken???

wie kann das sein, ich habe doch absolut bestückungstechnisch identische 
Teile mittlerweile 6 Stück, einer machts automatisch alle anderen nicht.

Momentan bin ich an der Software Front (neben Bauarbeiten im 
Schlafzimmer :( ), ich habe 2 Nokia 5110 LIBs eine perfekt für den 
Arduino, aber die will wegen AVR Befehlen nicht im ESP, die 2te für den 
ESP verballert zuviel Resourcen, ergo werde ich wohl bedingt per PRE 
kompilieren müssen.

: Bearbeitet durch User
Autor: Manfred (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Joachim B. schrieb:
> wie kann das sein, ich habe doch absolut bestückungstechnisch identische
> Teile mittlerweile 6 Stück, einer machts automatisch alle anderen nicht.

Ich habe hier nur den einen 'joy-it' mit dem bescheuerten Sonderheft 
Make ESP32, auf die Chinesen warte ich noch.

> ich verstehe es auch noch nicht, einige Seiten schreiben was von 100nF
> nachbestücken???

Wo, wer?

Ich habe vorhin mal gemessen, die Beschaltung entspricht dem 
espressiv-Referenzdesign. Die 10k-Widerstände sind da, die beiden 
Transistoren ... im Anhang aus drei pdfs per Malprogramm 
zusammengebastelt.

Du hattest neulich einen Link zu github gepostet. Da sieht mir das so 
aus, dass neben der Hardware auch ab Werk ein passender Bootloader drauf 
sein muß, wie sonst soll der Port 0 abgefragt werden?

Das Verhalten 'Taste drücken' geht garnicht! In meinen Aufbauten mache 
ich den USB von außen zugänglich, um Korrekturen einbringen zu können, 
ohne das Gerät aufschrauben zu müssen.

Autor: Joachim B. (jar)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Joachim B. schrieb:
> wie kann das sein, ich habe doch absolut bestückungstechnisch identische
> Teile mittlerweile 6 Stück, einer machts automatisch alle anderen nicht.

so erster ESP gepatched

https://i1.wp.com/randomnerdtutorials.com/wp-content/uploads/2019/02/esp32-waiting-for-packet-header-featured.jpg

https://randomnerdtutorials.com/solved-failed-to-connect-to-esp32-timed-out-waiting-for-packet-header/

hatte nur einen 40V 10µF sieht doof aus klappt aber

werde nun 10µF als SMD suchen ich hoffe die Spannung 3,3V macht nicht 
zuviel derating am KerKo mit 10V.

läuft, mit KerKo gefällt mir aber besser

nun muss ich noch alle anderen und beim Modul mit 868 MHz Antenne muss 
ich EN noch finden.

: Bearbeitet durch User
Autor: Manfred (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Joachim B. schrieb:
> so erster ESP gepatched

Gerade ausprobiert, der Download startet, danke!

Es bleibt aber das Problem, dass danach kein Reset stattfindet.

> hatte nur einen 40V 10µF sieht doof aus klappt aber

Ich habe 10V-radial da, in einem realen Aufbau würde ich den einfach 
neben den ESP packen, da gibt es ja eh Peripheriebeschaltung.

Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Manfred schrieb:
> Es bleibt aber das Problem, dass danach kein Reset stattfindet.

bei mir aber?! muss ich noch mal nachprüfen.

Über die Sache mit den fehlenden Reset hatte ich auch mal was gefunden, 
auch da gab es eine Lösung oder HW hack.

Autor: Manfred (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Joachim B. schrieb:
>> Es bleibt aber das Problem, dass danach kein Reset stattfindet.
>
> bei mir aber?! muss ich noch mal nachprüfen.

Ich schiebe die Internetseite mal durch einen Webconverter nach pdf und 
trenne die ersten zwei Seiten ab - Anhang.

Am Ende der zweiten Seite "Hard resetting via RTS pin...", genau da 
bleibt meine A*-IDE kleben. Das neue Programm ist drin, aber startet 
erst, wenn ich am Board Reset drücke oder die Versorgungsspannung 
trenne.

> auch da gab es eine Lösung oder HW hack.

Das klingt alles nach ESP32 = Bastelscheiße.

Eigentlich will ich nur eine preisgünstige Alternative zum Nano mit 
deutlich mehr Speicher, WLAN und Bluetoth interessieren mich derzeit 
noch nicht. Weil die so schön doof und einfach ist, möchte ich gerne auf 
der Arduino-IDE bleiben.

Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Manfred schrieb:
> Das klingt alles nach ESP32 = Bastelscheiße.

ja nicht schön aber doch etwas übertrieben deine Wortwahl

> Eigentlich will ich nur eine preisgünstige Alternative zum Nano mit
> deutlich mehr Speicher, WLAN und Bluetoth interessieren mich derzeit
> noch nicht. Weil die so schön doof und einfach ist, möchte ich gerne auf
> der Arduino-IDE bleiben.

das ist auch möglich, zu mir:

so von sieben ESP32 sechs mit 10µF umgebaut, alle 7 lassen sich nun aus 
der IDE ohne Tastendrücke programmieren, alle bekommen nach der 
Programmierung den hart reset, aber keiner beim Terminal Programm Lupe 
einschalten aus der IDE.

Hyperterm muss ich noch testen.

Autor: Manfred (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Joachim B. schrieb:
> Manfred schrieb:
>> Das klingt alles nach ESP32 = Bastelscheiße.
> ja nicht schön aber doch etwas übertrieben deine Wortwahl

Ich liebe deutliche Formulierungen und nehme bewusst in Kauf, dass 
manche Leute sich daran verschlucken.

> von sieben ESP32 sechs mit 10µF umgebaut, alle 7 lassen sich nun aus
> der IDE ohne Tastendrücke programmieren, alle bekommen nach der
> Programmierung den hart reset, aber keiner beim Terminal Programm Lupe
> einschalten aus der IDE.

Der Kondensator am EN ist schon mal ein Weg, besser wäre wohl, wenn mal 
jemand in der Arduino-IDE das Timing gerade biegt.

Wie gestern geschrieben, findet bei mir nach dem Upload in den ESP kein 
Reset statt, ich muß Knöpfchen drücken oder Strom trennen. Im Internet 
findet man ähnliche Threads, aber ohne Lösungsvorschlag.

Ich habe Hypterterm und Putty probiert, auch da kein Reset - wobei ich 
das eher positiv sehen würde, am laufenden µC das Terminal anklemmen zu 
können ohne einen (manchmal ungewollten) Neustart zu bekommen. Das kann 
ich nur am ProMini, wenn ich dort eine Leitung nicht anklemme.

Ich muß jetzt warten, es sind 4 ESP32-Boards aus China bestellt, sobald 
die kommen, gucke ich weiter. Bis dahin habe ich noch einiges zu 
Rechechieren, an den ESP müssen neben einem 20x4-LCD noch SD-Karte und 
Draht-Ethernet dran.

Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Manfred schrieb:
> an den ESP müssen neben einem 20x4-LCD

was hältst du von 6 Zeilen a 14 Zeichen?

für ein Nokia 5110 LCD brauche ich nicht mal Verdrahtung, läuft direkt 
auf dem Steckbrett, die Pins 1:1 zum ESP

Autor: Manfred (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Joachim B. schrieb:
>> an den ESP müssen neben einem 20x4-LCD
>
> was hältst du von 6 Zeilen a 14 Zeichen?

Garnichts. Von der Vorgabe weiche ich nicht ab, das Gehäuse ist fertig.

Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Manfred schrieb:
> das Gehäuse ist fertig

isn Argument, erst die Karosse zu bauen und dann den passenden Motor zu 
finden :)

Autor: Manfred (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Manfred schrieb:
> an den ESP müssen neben einem 20x4-LCD

Mit der Anbindung eines 1602 oder 2004 LCD habe ich heute über drei 
Stunden verbraten. Gelingt es Dir, bestehende AT328-Projekte und ESP aus 
der selben IDE heraus zu bearbeiten?

Meine LiquidCrystal_I2C.h passt nicht zum ESP, die für ESP gefundene 
LiquidCrystal_I2C.h ist aber nicht kompatibel zu meinen bestehenden 
Sketches. Ich bringe es nicht hin, zwei Libs mit dem gleichen Namen 
gezielt einzubinden.

Ich habe jetzt eine IDE_189-portable frisch ausgepackt und dort nur das 
eingebunden, was zum ESP32 passt und belasse meine alte portable-IDE für 
Nano - Uno - ProMini.

Interessant finde ich, dass der I2C-Scanner sowohl mit dem Nano328 als 
auch dem ESP32 funktioniert:
// FILE: MultiSpeedI2CScanner.ino
// AUTHOR: Rob Tillaart
// VERSION: 0.1.06
// PURPOSE: I2C scanner @different speeds
// DATE: 2013-11-05
// URL: http://forum.arduino.cc/index.php?topic=197360

Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Manfred schrieb:
> Mit der Anbindung eines 1602 oder 2004 LCD habe ich heute über drei
> Stunden verbraten. Gelingt es Dir, bestehende AT328-Projekte und ESP aus
> der selben IDE heraus zu bearbeiten?
>
> Meine LiquidCrystal_I2C.h passt nicht zum ESP, die für ESP gefundene
> LiquidCrystal_I2C.h ist aber nicht kompatibel zu meinen bestehenden
> Sketches. Ich bringe es nicht hin, zwei Libs mit dem gleichen Namen
> gezielt einzubinden.

das "Problem" habe ich auch gerade, mit 2 Nokia5110 Libs.

Die AVR LIB benutzt AVR Befehle, also wollte ich einen Übersetzer 
einbauen, aber die c++ Notation bringt mich an den Wahnsinn.
Einzeln klappt das.......
#if defined(__AVR__)
  #include <avr/pgmspace.h>
  #include <LCD5110_Basic.h>
  LCD5110 myGLCD(NOK_CLK,NOK_DIN,NOK_DC,NOK_RST,NOK_CE);

#elif defined(ESP32)
  #include <SPI.h>
  #include <Adafruit_GFX.h>
  #include <Adafruit_PCD8544.h>
  Adafruit_PCD8544 myGLCD = Adafruit_PCD8544(NOK_CLK, NOK_DIN, NOK_DC, NOK_CE, NOK_RST);
#endif

#if defined(__AVR__)
  myGLCD.InitLCD();
  myGLCD.setFont(SmallFont);
#elif defined(ESP32)
  myGLCD.begin();
  myGLCD.setTextSize(1);
  myGLCD.setTextColor(BLACK);
#endif  

#if defined(__AVR__)
  myGLCD.clrScr();
#elif defined(ESP32)
  myGLCD.clearDisplay();
  myGLCD.display();
#endif


void my_glcd_fenster(char *was, uint8_t spalte, uint8_t zeile) {
  #if defined(__AVR__)
    myGLCD.print(was, spalte, zeile);
  #elif defined(ESP32)
    myGLCD.setCursor(spalte, zeile);
    myGLCD.print(was);
    myGLCD.display();
  #endif
} // void my_glcd_fenster(char *was)


Autor: Manfred (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Joachim B. schrieb:
> das "Problem" habe ich auch gerade, mit 2 Nokia5110 Libs.
> Die AVR LIB benutzt AVR Befehle, also wollte ich einen Übersetzer
> einbauen, aber die c++ Notation bringt mich an den Wahnsinn.

Ich hatte versucht, #include mit vollständigem Pfad anzugeben - hat 
meine IDE nicht wirklich interessiert.

> Einzeln klappt das.......
> #if defined(__AVR__)
>   #include <avr/pgmspace.h>
>   #include <LCD5110_Basic.h>
>   LCD5110 myGLCD(NOK_CLK,NOK_DIN,NOK_DC,NOK_RST,NOK_CE);
> 
> #elif defined(ESP32)
>   #include <SPI.h>

Wenn ich weiß, für welche Zielumgebung ich compilieren will, sollte das 
doch auch ohne #if defined gehen?

Wenn ich mal im Verzeichnis der IDE_189 suche, gibt es dort pgmspace.h 
zweimal, eine unter AVR und eine unter ESP.
Die spi.h existiert mehrmals - da hoffe ich doch, dass beim 
Compileraufruf die passende Version genommen wird?

Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Manfred schrieb:
> Wenn ich weiß, für welche Zielumgebung ich compilieren will, sollte das
> doch auch ohne #if defined gehen?

klar

Manfred schrieb:
> Die spi.h existiert mehrmals - da hoffe ich doch, dass beim
> Compileraufruf die passende Version genommen wird?

auch ja

Das Problem das die meisten NOKIA LIBs verschiedene C++ Notationen 
verwenden und setup loop und nokia immer im selben File sind.

Versuche ich die auszulagern nach lcd dann klemmts bei der einen LIB.

Ich will für mein Software (RTC, Nokia, Tastatur) Gerüst aber nicht 2 
Programmversionen für 2 Ziele zu haben.

Ich mag aber auch nicht alles ins MAIN zu quetschen, dem MAIN bleiben 
die Aufgaben zugewiesen die anders sind.
Setup, LCD, Tools sind immer identisch.

: Bearbeitet durch User
Autor: Manfred (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Joachim B. schrieb:
> Ich ware auf Ersatzlieferung.

Gerade hat der Ali drei ESP32 von drei verschiedenen Anbietern beschert, 
je 3,82..4,32 €uro. Auf einem, Bild unten links, wurde ein 
Kondensatörchen nachgeferkelt. Download startet dennoch nicht, 100nF 
(gemessen) reichen wohl nicht.

Der andere wird wohl nicht ins Board passen, schief gelötet, verdammte 
Pfuscher. Ich habe keine Idee, die Leisten auszulöten düfte 
problematisch werden.

Bei zwei Boards ist der USB-Baustein unbeschriftet, meldet sich aber als 
CP2102 und Windows meint, zusätzlich noch ein "Ball Point Device" 
gefunden zu haben, für das es keinen Treiber hat. Das scheint aber weg 
zu sein, sobald ich mein eigenes Blink draufgeflasht habe.

c-hater schrieb:
> Die gibt's erst seit Vista.

Ich habe die IDE_189 auf meinen Laptop mit Vista kopiert, funktioniert 
dort klaglos.

Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Manfred schrieb:
> Download startet dennoch nicht, 100nF
> (gemessen) reichen wohl nicht.

wie gesagt bei mir 4 ode 5 nachgerüstet mit 10µF SMD vom EN PIN zum 
Blech, alle funktionieren nun.

Meine ESP32 kamen sauber mit Sicherungsschaumstoff unter den PINs alles 
OK.

Trotz  meiner angeblich miesen Programmierkenntnisse bin ich etwas 
weiter, bezüglich ESP32 vs. Ardu Nano am Nokia Display.

Das gute am oft Code begucken man findet noch Bugs und manchmal eine 
Idee wies besser geht, auch z.B. Speicher doppelt zu belegen zu 
vermeiden.

Mittlerweile habe ich sogar 300 Byte freiräumen können ohne Funktionen 
zu kürzen.

Vor meiner µC Zeit und vor dem ESP32 habe ich nie mit Speicher geizen 
müssen, wars zu wenig wurde erweitert, PET2001 von 8K auf 32K, Atari von 
1MB über 2,5MB auf 4MB, PC1500 von 2K auf 28K, PC seit Beginn immer auf 
max. wenn ich an die Preise denke 2004 3GB DDR 800,-€ als 
Doppelpäärchen.
Heute muss man wieder am Nano knappsen oder die Familie wechseln.

Meine 10 Nokia LCD5110 sind auch gekommen aber als Briefsendung gut 
verpackt zu groß für den Schlitz so das ich heute 1 Stunde auf der Post 
anstehen durfte.

Autor: Manfred (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Joachim B. schrieb:
>> Download startet dennoch nicht, 100nF
>> (gemessen) reichen wohl nicht.
> wie gesagt bei mir 4 ode 5 nachgerüstet mit 10µF SMD
> vom EN PIN zum Blech, alle funktionieren nun.

Das ist unstrittig! Hier sah das halt so aus, als ob jemand mitgedacht 
und den C nachgerüstet hätte, leider nein.

> Meine ESP32 kamen sauber mit Sicherungsschaumstoff
> unter den PINs alles OK.

Meine auch, sogar in ESD-Tüte eingeschweißt. Die Leisten sind kein 
Transportschaden, das ist Fertigungspfusch.

> Trotz  meiner angeblich miesen Programmierkenntnisse

Kein Problem, Hardware kann ich deutlich besser als C++.

> bin ich etwas weiter,
> bezüglich ESP32 vs. Ardu Nano am Nokia Display.

Ich setze eher auf 1602 / 2004 LCDs, die habe ich am ESP laufen, aber 
inkompatibel zum Nano.

> Das gute am oft Code begucken man findet noch Bugs
> und manchmal eine Idee wies besser geht,
> auch z.B. Speicher doppelt zu belegen zu vermeiden.

Mein Zweikanal-Akkutester mit Nano-328 meldete irgendwann 130% 
Programmspeicher. Ich habe viel gelernt, redundante Programmroutinen 
rauszuwerfen, Unterprogramme mit Parameterübergabe aufzurufen ... seit 
gut einem Jahr funktioniert der klaglos und hat noch 260 Bytes frei. Ich 
könnte noch etwas holen, wenn ich den Optiboot drauf packe.

> Mittlerweile habe ich sogar 300 Byte freiräumen
> können ohne Funktionen zu kürzen.

Es gibt viele Möglichkeiten, die man sich erkämpfen und austesten muß.

> Vor meiner µC Zeit und vor dem ESP32 habe ich nie mit Speicher geizen
> müssen, wars zu wenig wurde erweitert, PET2001 von 8K auf 32K,

Ich habe mit einem cbm3032 angefangen und diesen später per selbst 
layouteter Zusatzkarte zum 4032 aufgeblasen, da kosteten die Bauteile 
noch richtig viel Geld.

> Heute muss man wieder am Nano knappsen
> oder die Familie wechseln.

Ich habe aktuell einen Aufbau mit dem Nano, der im Prinzip tut, aber 
nicht alles erfüllt was ich haben will. Ich hänge mit dem verfügbaren 
dynamischen Speicher am Poller und sehe keinen Ausweg. Das war der 
Grund, mir den ESP32 zu holen, mal gucken, den in den Griff zu bekommen 
wird einige Zeit dauern.

> Meine 10 Nokia LCD5110 sind auch gekommen
> aber als Briefsendung gut verpackt zu groß für den Schlitz
> so das ich heute 1 Stunde auf der Post anstehen durfte.

Ich bestelle beim Aliexpress meist kleinere Mengen, genau so viel, wie 
ich versandkostenfrei bekommen kann. Wenn das nicht reicht, ein paar 
Tage später erneut.

Wie schön war das noch, als wir im Ort eine Stammzustellerin hatten und 
diese Briefe / Päckchen einfach bei der Nachbarin ausgeliefert hat.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.