ESP8266 Hilfe

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • christof89
    Lox Guru
    • 29.08.2015
    • 1374

    #1

    ESP8266 Hilfe

    Hallo,

    ist hier vielleicht jemand der sich er sich ein wenig mit dem ESP8266 (ESP01) auskennt?
    ich versuche aktuell einen zum Laufen zu bekommen, allerdings habe ich bereits beim aufspielen der Software Probleme und finde leider kein passendes Tutorial was von Anbeginn erklärt wie man verkabeln muss und die Software per FTDI Adapter flashen kann?


    Lg Christof
  • Labmaster
    Lox Guru
    • 20.01.2017
    • 2592

    #2
    Schau dir mal das hier an:
    #NodeMCU ist ein WLAN-Board mit #ESP8266 Modul, welches sehr leicht per Arduino IDE programmiert werden kann.Dieses Tutorial zeigt Beispiele mit Farbdisplay. #Elektronik #WLAN

    Kommentar

    • Gast

      #3
      Mit welcher Software/ Sprache willst du den ESP flashen?

      Ich kenne mich mit der Arduino IDE Software und Sprache aus, daher nehme ich immer die.
      Dabei gibt es zu beachten, dass du den ESP in den Flashing-Modus versetzen musst, um ihn mit deinem Code zu beschreiben.
      Ich habe dir mal einen Link zu einem Verkabelungsplan angehängt.
      Um den ESP in den Flash-Modus zu versetzen, musst du beim Start GPIO 0 gegen GROUND kurzschließen; und das jedes Mal, wenn du ihn beschreiben willst.

      Premium energy solutions engineered for demanding environments. Discover XESS ION battery storage and XESS ONE standalone power systems.

      Kommentar

      • christof89
        Lox Guru
        • 29.08.2015
        • 1374

        #4
        Verwende ebenfalls die Arduino IDE.

        Mit dem AT Befehlt habe ich es bereits geschafft ein OK retour zu bekommen.

        Habe mir folgende Tutorials angesehen:
        Jetzt lernst du die if-Abfrage kennen. Das ist eine der wichtigsten Konstruktionen in der Programmierung.


        Hier die Anleitung meines ESP-01:


        Habe versucht folgendes anzuschließen:
        ESP -> FTDI Adapter
        --------------------------------------
        TX -> RX
        CH_PD -> 3,3V
        RST -> 3,3V
        VCC -> 3,3V
        GND -> GND
        GPIO2 -> GND
        RX -> TX

        Denke also ich habe evtl. GPIO2 und 0 vertauscht, da ich den GPIO2 gegen GND geschaltet habe...
        ...werde das mal ausprobieren.


        Widerstand, Elko und Co habe ich alles nicht in meiner Schaltung, hierzu hört man ja viele unterschiedliche Meinungen, manche sagen man benötigt welche, manche nicht.

        Kommentar

        • christof89
          Lox Guru
          • 29.08.2015
          • 1374

          #5
          Nun sieht die ganze Sache schon anders aus, ich sehe Ladebalken die den Upload anzeigen und auf 100% gehen.
          Sollte nun die Schaltung funktionieren, wenn ich die Spannung trenne, den GPIO 0 abschließe und dann wieder Spannung anlege?
          Oder müssen auch noch andere Pins abgesteckt werden?


          Danke, Christof
          Angehängte Dateien

          Kommentar


          • christof89
            christof89 kommentierte
            Kommentar bearbeiten
            Ich habe nun nämlich mit "Serial.printf()" probiert einfach Text auszugeben.
            Leider sehe ich weder im Serial Plotter noch im Serial Monitor Text...
        • romildo
          Lebende Foren Legende
          • 25.08.2015
          • 5161

          #6
          Mach mal je eine Pause nach den digitalWrite
          Code:
          delay(1000);
          Hast Du für die Textausgabe den Serialmonitor im Setup auch eingebunden?
          Code:
          Serial.begin (9600); // Serielle Ausgabe mit 9600 bps
          Mach den Text mal vor den delay in den loop
          Code:
          Serial.println(digitalRead(LED_BUILTIN));
          Edit: Textausgabe geändert, damit der Status des GPIOS angezeigt wird.
          Zuletzt geändert von romildo; 21.08.2017, 07:31.
          lg Romildo

          Kommentar

          • christof89
            Lox Guru
            • 29.08.2015
            • 1374

            #7
            Habe nun ein anderes Programm getestet, das nur Serial Outputs machen sollte.
            Es werden dann lediglich Hieroglyphen im Serial Monitor ausgegeben.
            Angehängte Dateien

            Kommentar

            • romildo
              Lebende Foren Legende
              • 25.08.2015
              • 5161

              #8
              Hat es einen Grund warum Du ein anderes Programm genommen hast?
              So lange das einfache Beispiel davor nicht funktioniert, wird es Dir nicht viel bringen wenn Du ein anderes Beispiel verwendest.
              Hast Du nach dem laden des Programms auch mal den Monitor neu gestartet?
              Hast Du denn unter Wekrzeuge auch das richtige Board ausgewählt?
              lg Romildo

              Kommentar


              • christof89
                christof89 kommentierte
                Kommentar bearbeiten
                Richtiges Board ist ausgewählt.

                Ich habe ein anderes Bsp. genommen, da ich die GPIO ausschließen wollte und nur mal einfache Ausgaben testen wollte, ist eines der Bsp. Programme.

                Aber so wie es scheint funktioniert keines der Bsp.

              • romildo
                romildo kommentierte
                Kommentar bearbeiten
                Hast Du denn das erste Beispiel mit meinen vorgeschlagenen Änderungen mal getestet?
                Dort muss ja auch eine Ausgabe im Monitor kommen. Der Monitor muss aber unter Umständen neu gestartet werden.
                Du kannst die digitalWrite auch einfach mal mit // auskommentieren.

              • christof89
                christof89 kommentierte
                Kommentar bearbeiten
                Ja habe ich, ich sehe im serial Monitor lediglich die komischen Zeichen.
                Habe in einer FB-Gruppe den Tipp bekommen die Baudrate mal zu ändern, das muss ich noch ausprobieren.

                Ich habe sowohl das von dir vorgeschlagene delay eingebaut als auch Debug Meldungen ausgegeben,
                also "Serial.println()" Meldungen.


                Was ich noch nicht probiert habe ist diese Ausgabe zu testen:
                Serial.println(digitalRead(LED_BUILTIN));

                Muss ich am Abend zu Hause nochmals testen.
            • Labmaster
              Lox Guru
              • 20.01.2017
              • 2592

              #9
              Stimmt die Baudrate der Serial ausgabe im Program mit der Einstellung (FTDI) des Programs am PC überein (Serial Monitor) ?

              Kommentar


              • christof89
                christof89 kommentierte
                Kommentar bearbeiten
                Ja, ich habe die Baudrate die ich im Programm gesetzt habe auch immer im Serial Monitor dementsprechend ausgewählt,
                habe auch mehrere verschiedene Baudraten probiert.

                Jetzt habe ich in einer FB-Gruppe noch den Tipp bekommen, eine Baudrate mit 7 am Beginn zu nehmen,
                weil da angeblich alles im Klartext ausgegeben werden soll, muss ich am Abend mal probieren.
            • christof89
              Lox Guru
              • 29.08.2015
              • 1374

              #10
              Danke für eure Hilfe, werde das am Abend nochmals testen,
              falls es wieder nicht funktioniert werde ich evtl. auf den Wemos D1 Mini wechseln, der sollte vl. eher was für mich sein,
              da muss keine Schaltung aufgebaut werden sondern kann gleich programmiert werden, da müsste ich dann lediglich meine Taster anschließen...


              LG
              Christof

              Kommentar

              • romildo
                Lebende Foren Legende
                • 25.08.2015
                • 5161

                #11
                Ich denke, Labmaster und Du reden nicht vom selben.
                Die Seriellen Kommunikationseinstellungen des FTDI Board müssen mit denjenigen des PC übereinstimmen, ansonsten Du den ESP gar nicht programmieren kannst.
                Eine von diesen Einstellungen ist die Bauderate.
                Schau also in Werkzeuge was da eingestellt ist und versuche es mit diesem Wert in der Software und im Monitor

                Klicke auf die Grafik für eine vergrößerte Ansicht

Name: ESP8266_Baudrate.png
Ansichten: 818
Größe: 39,8 KB
ID: 112163
                lg Romildo

                Kommentar


                • christof89
                  christof89 kommentierte
                  Kommentar bearbeiten
                  Also probiert habe ich es an mehreren Stellen:
                  Im Code per: Serial.begin();
                  Dann unter Werkzeuge.
                  Dann im Serial Monitor.

                  Also habe an allen Stellen wo etwas betreffend Baudraten zu sehen war herumgespielt und zu flashen probiert.
                  Manchmal hat der Upload dann gar nicht funktioniert und manchmal hat der Upload funktioniert aber eben eine komische Ausgabe produziert.

                  Ich weiß aktuell leider nicht mehr bei welcher Einstellung es funktioniert hat und bei welcher nicht,
                  habe gestern relativ viel herum probiert aber es leider nicht zum Laufen gebracht.

                • romildo
                  romildo kommentierte
                  Kommentar bearbeiten
                  Ich würde einfach vergessen, was ich gestern gemacht habe und von neuem beginnen.
                  Stell die Baudratet unter Werkzeug so ein, dass Du ein einfaches Programm mit Monitorausgabe auf den ESP speichern kannst.
                  Sofern es nicht funktioniert, berichte was Du gemacht hast und was nicht geht.

                • christof89
                  christof89 kommentierte
                  Kommentar bearbeiten
                  Danke, werde ich die Tage mal machen, wenn ich am Abend Zeit habe...
              • Labmaster
                Lox Guru
                • 20.01.2017
                • 2592

                #12
                Ich gehe mal davon aus, daß der Upload ja geklappt hat, denn es scheint ja zur Laufzeit nun schon was zu kommen (wenn auch nur Mist)
                Ich meinte eigentlich die Baudrate mir der der "Serial.println" sendet , das ist der, der mit " Serial.begin(9600);" gesetzte wurde, also in diesem Fall 9600 Baud.
                Die selbe Baudrate muss dann im Serial Monitor unten/rechts eingestellt werden. (wie im Bild seht die aber per Default auf 115200, also ändern auf 9600)
                Zuletzt geändert von Labmaster; 21.08.2017, 08:48.

                Kommentar


                • romildo
                  romildo kommentierte
                  Kommentar bearbeiten
                  Dann habt Ihr Euch ja richtig verstanden.
                  Dies ist aber eigentlich in den Bildern in #7 auch so ersichtlich

                • christof89
                  christof89 kommentierte
                  Kommentar bearbeiten
                  Korrekt, da habe ich immer drauf geachtet dass alles übereinstimmt. Auch wenn ich Anfang gar keine Baudrate in der setup() Funktion definiert hatte, bei den letzten Tests hatte ich aber immer eine definiert...
              Lädt...