FHEM Forum

Verschiedenes => Bastelecke => ESP Familie => Thema gestartet von: Ralf9 am 24 April 2017, 23:36:23

Titel: esp-link funktioniert nur wenn beim Starten D8 nicht beschaltet ist
Beitrag von: Ralf9 am 24 April 2017, 23:36:23
Zitat von: stefanru am 16 April 2017, 16:52:59
Ok,habe nun auch ohne Spannungsteiler versucht selbes Ergebnis.

Hab nun aber etwas rumgespielt.
Es liegt an der RX0 vom Nano <-> D8 am Wemos.
Ist der beim Strom drauf geben angeschlossen startet der Wemos nicht. Ist er nicht dran gehts.

Warum denn der Rx? Jemand noch eine Idee?

Verkabelung ist nun:
Nano        Wemos
+5V <-> +5V
GND <-> GND
RST <->  D3
Rx0 <->  D8
Tx1 <-> D7

Dabei spielt es keine rolle ob ich den Strom über den Wemos oder den Nano anschließe.

Was ist eigentlich die richtige Einstellung im Wemos?
RX Pull up an oder aus? Hab hier beides gesehen...
Und der Reset GPIO0? oder disabled?
Ist GPIO0 = D3?

Hat jemand eine Idee an was es liegen könnte, daß esp-link nur funktioniert, wenn beim Starten D8 nicht beschaltet ist?

Gruß Ralf
Titel: Antw:esp-link funktioniert nur wenn beim Starten D8 nicht beschaltet ist
Beitrag von: fstefan1960 am 26 April 2017, 17:45:33
Hi,

ohne, dass ich Dir schon eine erschöpfende Antwort geben kann:
Es ist wohl so, dass abhängig davon, ob und welche Pins beschlatet sind und beim Booten high oder low sind, verschiedene Bootmodi starten: Flashen, normaler Start, Notstart oder so ähnlich. Müsste in der WEMOS - Dokumentation drin stehen. Hat jedenfalls dazu geführt, dass ich einige Pins meide.
Titel: Antw:esp-link funktioniert nur wenn beim Starten D8 nicht beschaltet ist
Beitrag von: Pf@nne am 26 April 2017, 18:42:25

Bootloader Modes

The bootloader can go into a number of modes depending on the state of GPIOs 0, 2 and 15. The two useful modes are the UART download mode (for flashing new firmware) and the flash startup mode (which boots from flash).
GPIO0(D3) | GPIO2(D4) | GPIO15(D8)
UART Download Mode (Programming) 0 1 0
Flash Startup (Normal) 1 1 0
SD-Card Boot 0 0 1


Du kannst die GPIOs benutzen, muss aber darauf achten, dass sie beim Booten richtig stehen.
Titel: Antw:esp-link funktioniert nur wenn beim Starten D8 nicht beschaltet ist
Beitrag von: Ralf9 am 26 April 2017, 20:55:07
Kann es demnach an der Verbindung "nano RST" nach "Wemos GPIO0(D3)" liegen? Ist es deshalb besser für den Reset GPIO12(D6) zu nehmen?

Muss GPIO15(D8) beim Booten 0 sein? Wenn D8 mit Rx0 von nano verbunden ist, habe ich doch gar keinen Einfluss darauf wie D8 beim booten steht?

@stefanru
hast Du es schon mal mit unbeschaltetem GPIO0(D3) und dem pin asignment in der Anlage versucht?

Gruß Ralf
Titel: Antw:esp-link funktioniert nur wenn beim Starten D8 nicht beschaltet ist
Beitrag von: stefanru am 26 April 2017, 22:48:40
Hi,

danke für die Hilfe hier und danke Ralf dass du dieses Thema nochmal aufgemacht hast.
Ja ich hatte es am Anfang ohne D3 und mit dieser Einstellung.
Ich teste das aber morgen nochmal.
Was mich mehr wundert, oder was mir mehr einleuchtet ist der D8. Den hab ich ja nicht im Griff wenn Rx0 drann ist.
Und meine Beobachtung ist ja auch dass D8 wenn nicht angeschlossen zum gewünschten Ergebnis führt. Also steht er wohl auf 1 beim Booten.
Könnte ich testweise Rx0 und Tx0 woanders anschließen? Z.b. an TX RX vom Wemos?

Danke,
Stefan
Titel: Antw:esp-link funktioniert nur wenn beim Starten D8 nicht beschaltet ist
Beitrag von: Pf@nne am 27 April 2017, 06:02:30
Mal ne blöde Frage, was machst du eigentlich mit dem Atmel?
Du hast doch eine 32-Bit-CPU im ESP, warum nutzt du die nicht?

RxD und TxD können als normale Pins genutzt werden.
Du kannst auch den GPIO15 (D8) nutzen, musst diesen jedoch über einen 10k Pulldown  auf Masse ziehen,
damit beim Booten der GPIO 0 ist.
Deine externe Anschaltung darf beim Booten natürlich nicht High sein.

Gruß
Pf@nne
Titel: Antw:esp-link funktioniert nur wenn beim Starten D8 nicht beschaltet ist
Beitrag von: Ralf9 am 27 April 2017, 10:29:26
Zitat von: Pf@nne am 27 April 2017, 06:02:30
Mal ne blöde Frage, was machst du eigentlich mit dem Atmel?
Du hast doch eine 32-Bit-CPU im ESP, warum nutzt du die nicht?

Beim Signalduino und CUL im SLOWRF ist ein extra Atmel erforderlich, da dort der FIFO im CC1101 nicht verwendet wird und bei jeder empfangenen Flanke ein Interrupt ausgelöst wird und dies recht zeitkritisch ist.
Siehe auch:
https://forum.fhem.de/index.php/topic,69042.msg622564.html#msg622564


ZitatWas mich mehr wundert, oder was mir mehr einleuchtet ist der D8. Den hab ich ja nicht im Griff wenn Rx0 drann ist.
Und meine Beobachtung ist ja auch dass D8 wenn nicht angeschlossen zum gewünschten Ergebnis führt. Also steht er wohl auf 1 beim Booten.
Könnte ich testweise Rx0 und Tx0 woanders anschließen? Z.b. an TX RX vom Wemos?

Das mit dem D8 ist seltsam, mit dem promini und dem HM-MOD-UART funktioniert es ohne Probleme. Dies scheint nur den nano zu betreffen.
Du kannst es mal an TX RX vom Wemos und mit "UART Pins normal" versuchen.

Gruß Ralf
Titel: Antw:esp-link funktioniert nur wenn beim Starten D8 nicht beschaltet ist
Beitrag von: stefanru am 27 April 2017, 14:41:37
Hi,

danke.
Das versuche ich am WE aus und berichte.

Danke!
Titel: Antw:esp-link funktioniert nur wenn beim Starten D8 nicht beschaltet ist
Beitrag von: stefanru am 27 April 2017, 20:48:29
Es hat mich jetzt doch unter den Fingernägeln gebrannt.

Habe zuerst deine Einstellungen von oben ohne D3 versucht, ohne erfolg.

Dann habe ich RX vom nano an TX vom Wimos und
TX vom nano an RX vom Wemos angeschlossen.
D8 und D7 sind nun frei und siehe da, es geht!

Hier nochmal meine Beschaltung:
Nano        Wemos
+5V <-> +5V
GND <-> GND
RST <->  D3
Rx0 <->  TX
Tx1 <-> RX

Und im Anhang die Einstellungen.

Hat das nun irgendein Nachteil?

Ich danke euch allen vielmals! Tolle Hilfe hier!
Titel: Antw:esp-link funktioniert nur wenn beim Starten D8 nicht beschaltet ist
Beitrag von: Ralf9 am 27 April 2017, 21:39:32
ZitatDann habe ich RX vom nano an TX vom Wimos und
TX vom nano an RX vom Wemos angeschlossen.
Hat das nun irgendein Nachteil?
Dies interessiert mich auch. Ich kann mir vorstellen, daß es evtl Probleme geben könnte, wenn der Wemos über usb mit der usb-Buchse vom PC verbunden ist.

Da wir gerade dabei sind. Für den Levelshifter vom nano Tx zum Wemos Rx gibt es Empfehlungen dafür 470 und 1K zu nehmen. Mir kommt das recht wenig vor.
4,7K und 10K müsste doch dafür auch ausreichen?

Gruß Ralf
Titel: Antw:esp-link funktioniert nur wenn beim Starten D8 nicht beschaltet ist
Beitrag von: SabineT am 03 Juni 2017, 14:16:20
ich verwende den Adafruit HUZZAH ESP8266 Breakout (https://www.adafruit.com/product/2471 (https://www.adafruit.com/product/2471)), der Funktioniert soweit auch mit esp-link. Allerdings ist es egal, ob ich jetzt bei UART pins "normal" mit TX/RX verwende oder "swapped" mit GPIO15/13, bei einem Reset schickt der esp8266 immer Meldungen an den SignalDuino. Der meldet dann natürlich immer "Unsupported command" in der µC Console.

Installiert habe ich esp-link v2.2.3

lg, Sabine
Titel: Antw:esp-link funktioniert nur wenn beim Starten D8 nicht beschaltet ist
Beitrag von: SabineT am 03 Juni 2017, 14:37:33
gelöst: man muss im Menü Debug log "UART debug log:" auf off oder on uart1 einstellen.

Ich hab jetzt folgende Einstellungen:

Reset          gpio12
ISP/Flash    disabled
Conn LED    gpio2/TX1 (da leuchtet bei meinem ESP8266 dann die blaue LED am ESP-12 Modul)
Serial LED   disabled
UART pins   swapped
RX pull-up   nicht ausgewählt

Verbindungen zum Arduino (in Klammer die entsprechenden Anschlüsse beim Wemos):
gpio15 (D8) geht auf RX, zusätzlich über 10k auf GND
gpio13 (D7) geht auf TX
gpio12 (D6) geht auf RST

ohne dem 10k Widerstand bleibt der ESP8166 bei einem Powerreset "hängen" (sh. Beitrag von Pf@nne weiter oben).

lg, Sabine
Titel: Antw:esp-link funktioniert nur wenn beim Starten D8 nicht beschaltet ist
Beitrag von: Ralf9 am 03 Juni 2017, 21:04:17
verwendest Du einen Arduino nano?
Titel: Antw:esp-link funktioniert nur wenn beim Starten D8 nicht beschaltet ist
Beitrag von: SabineT am 03 Juni 2017, 21:21:37
einen Arduino mini 3.3V mit SIGNALduino_promini3v3.hex geflasht
Titel: Antw:esp-link funktioniert nur wenn beim Starten D8 nicht beschaltet ist
Beitrag von: Ralf9 am 05 Juni 2017, 01:44:26
Ich habe es auch mal mit einem pro mini 3,3V und einem Wemos D1 mini getestet.
D8 auf RX
D7 auf TX
UART pins   swapped
RST habe ich nicht verbunden.
Ich verwende keine Widerstände.

Es funktioniert damit ohne Probleme, auch nach einem Power Reset.

Gruß Ralf
Titel: Antw:esp-link funktioniert nur wenn beim Starten D8 nicht beschaltet ist
Beitrag von: SabineT am 05 Juni 2017, 07:21:34
Kannst du den Arduino dann auch "remote" flashen ohne verbundenem RST? Ich finde es auf jeden Fall praktisch, wenn man den Arduino auch reseten kann.
Bei mir will ich den dann etwas abgesetzt in der Nähe meiner Wetterstation installieren (die steht im Garten ca. 30m vom Haus entfernt), da ist es dann eher unpraktisch, wenn ich für einen Reset extra hin muss.

Das mit dem Widerstand kann sein, dass das spezifisch für den von mir verwendeten ESP ist.

Im Moment ist der Aufbau noch am Steckbrett, bin jetzt aber dabei, das auf einer Lochrasterplatine aufzubauen und in ein Gehäuse zu stecken.

lg, Sabine
Titel: Antw:esp-link funktioniert nur wenn beim Starten D8 nicht beschaltet ist
Beitrag von: Ralf9 am 05 Juni 2017, 17:40:00
Ohne verbundenem RST wird das  "remote" flashen wahrscheinlich nicht funktionieren.
Hast Du schon mal getestet ob ohne verbundenem RST es auch ohne "RX, zusätzlich über 10k auf GND" funktioniert?

Gruß Ralf
Titel: Antw:esp-link funktioniert nur wenn beim Starten D8 nicht beschaltet ist
Beitrag von: SabineT am 05 Juni 2017, 18:34:57
Im Moment booted der ESP8266 immer richtig, mit und ohne RX, mit und ohne Widerstand, mit und ohne RST.
Den Widerstand werde ich aber trotzdem einbauen, nutzt nix so schadt's nix.

Ich hab mal ein Foto von meinem Testaufbau angehängt.

lg, Sabine
Titel: Antw:esp-link funktioniert nur wenn beim Starten D8 nicht beschaltet ist
Beitrag von: stefanru am 06 Juni 2017, 09:42:52
Hi,

dann scheint es ja mit dem Nano zusammen zu hängen, der bootete nicht wenn an D8 angeschlossen.
Weder mit noch ohne Wiederstand oder mit und ohne RST.

Aber nun an TX und RX vom Wemos gehts ohne Probleme.

Gruß,
Stefan