ESP8266 – 12E – Ladda upp kod

Guiden visar hur ESP8266-12E ska kopplas och hur koden laddas upp.

Esp8266

Guiden senast uppdaterad 2016-01-15

Vad behövs

För att själv kunna ladda upp kod till esp8266 12e behövs följande komponenter

  • TTL USB2.0 To 6Pin CH340G Converter (3.3V MÅSTE ANVÄNDAS)
  • ESP8266 12E
  • 4.7K ohm resistor
  • DS18b20 (på GPIO04)
  • 220 uF kondensator mellan + och jord.

Bilden nedan visar vilka pinnar som ska kopplas vart.

Pinouts

GPIO0 (under temperatursensorn) kopplas vid uppstart till GND för att sätta enheten i flashmode. OBS Reset pin (RST) måste då kopplas bort från pin 16 när detta görs!. När enheten har flashats korrekt kopplas GPIO0 bort från jord och GPIO16 kopplas åter till Reset pin (RST).

För att programmera ESP8266 nyttjas jag enTTL USB2.0 To 6Pin CH340G Converter. Kontrollera att 3.3V är valt samt att RX och TX kopplas till den andra sidans TX och RX.

  • RX på adaptern kopplas till TX på ESP8266 12E
  • TX på adaptern kopplas till RX på ESP8266 12E
  • GND kopplas till samma jord som ESP8266 12E

SerieProgramerare

 

Arduino ISE

Detta behöver du göra i Arduino ISE (Jag har valt att nyttja Arduino ISE och inte LUA kod till mitt projekt)
Den första delen av guiden beskriver hur jag laddade in stöd för ESP8266 direkt i Arduino verktyget.

1 – Ladda hem Arduino IDE

Starta Arduino IDE och gå till Inställningar

ArduinoIde-1

 

2 – Lägg nu till sökvägen till http://arduino.esp8266.com/stable/package_esp8266com_index.json enligt bilden nedan. Efter du tryckt på ”OK” och fått detta sparat, starta om Arduino programvaran för att vara säker på att konfigurationen ska laddas in.

ArduinoIde-2-1

3 – För att hämta hem komponenterna till Arduino IDE gå till: Verktyg \ kort (det kan stå nått annat än det gör för mig, exempelvis Arduino Uno) \ Bords Manager

ArduinoIde-4

 

4 – Om allt har gått bra så bör du längre ner i listan nu se: ESP8266 by ESP8266 Community, välj där installera ( ca 200 MB kommer att laddas hem)

del2 - aktivera JSON via bortmanager

5 – KLART!  Nu har du möjlighet att köra i stort sett all din Arduino kod på ESP8266 (inte allt men mycket!)

För att bekräfta vad mer du behöver kan du testa att ”bygga / verifiera” om raderna nedan fungerar (det kan bli fler än detta i framtiden)

    #include <Arduino.h>
    #include <ESP8266WiFi.h>
    #include <ESP8266WiFiMulti.h>
    #include <ESP8266HTTPClient.h>
    #define USE_SERIAL Serial
    #include <OneWire.h>
    #include <DallasTemperature.h>

 

Saknar du till exempel #include <DallasTemperature.h> går det enkelt att lägga till den genom att söka  i librarys efter ”DallasTemperature”, dvs ta bort <  > och .h

Arduino-ESPsettings-0

Sök sedan efter ”DallasTemperature”

DallasTempsensor

 

 

15 reaktioner på ”ESP8266 – 12E – Ladda upp kod”

  1. Pingback: Projekt – ESP8266 Wifi Tempertursensor |

  2. Trevligt projekt.
    Jag försöker kompilera din kod från Github men får kompileringsfel.

    ”String” does not name a type
    Felet kommer på följande rad:
    String MinKodVersion = ”1.5”; // lägger till version av kod som körs.

    Arduino 1.6.9
    Library ESP8266 ver 1.0.0

    Gärna tips på hur jag ska lösa detta.
    PS. Går det att köra på andra versioner av ESP8266 än ESP-12E ? (tex ESP-07)

    1. Hej och tack.
      Låter som att tecknet ” endera är av fel typ, kopierade du det som RAW från github?

      Ibland har jag varit med om att Arduino IDE:n även strula lite så stäng den och starta den på nytt ingen då kan felet även försvinna.

      Jag har inte testat den på en ESP-07 ännu, men så länge du kopplar mot motsvarande pinnar och väljer rätt kort så borde det fungera.

      Här gärna av dig hur det går med felet samt om du testar med ESP-07:an
      // Ispep

      1. Det verkade ha blivit något fel i kopieringen. såg rätt ut men nu går den förbi det steget. När jag tittar på Github så finns där inga ” runt String men det fungerar när jag lägger till det.
        Nu blev det istället följande problem:
        Error compiling for board NodeMCU 1.0 (ESP-12E Module).

        //Peter

          1. lite mer tips:
            Har du startat om den i flash läge när du testar?
            Om du öppnar com porten, och sätter rätt baud hastighet, får du någon info i serie gränssnittet?

            Jag kopierade koden rakt från github som raw och körde helt ok med följande inställningar i Arduino IDE:
            Bord : Generic ESP8266 Module”
            Flash mode : ”DIO”
            Flash Frequency : 40MHz
            CPU Frequency : 80MHz
            Flash Size: : ”512K (64K SPIFFS)”
            Debug port : ”Disabled”
            Debug Level : None
            Reset method : ”ck”
            upload Speed : ”115200”

            programmer: AVRSPI mkii

          2. Jag fick det att fungera nu, det var OneWire biblioteket som var felaktigt.
            Så nu kör den men med felaktig läsning av temp, 80 eller -127 grader endast. Men det får jag kolla vidare på, gissar att det kan ha med spänningen till DS18B20 att göra.

          3. precis, de där brukar man få om sensorn inte reagerar på den porten man frågar.
            Säg gärna till vilka steg du tyckte felade mot guiden så uppdaterar jag den, underlättar för alla som vill börja med ESP 🙂

            // Ispep

  3. Björn Nilsson

    Har samma problem med String.
    Samma felmeddelande.
    Testat både på Mac och PC.
    Känns som något fattas.
    Tacksam för hjälp.

    1. Hej
      Ursäkta att det tog tid att svara, Har du testat som jag skriver en bit upp att skriva egna ` ” ` för att se om det gör någon skillnad?

      // Ispep

      1. Björn Nilsson

        Ja inget hjälper.
        Varken på Mac eller PC. Finns ju fler String och just MinKodVersion klagar den på. Skumt.

  4. Du har inte tänkt att göra en uppdatering med ESP, tex om man vill använda HA att gör allt med?
    kan ju vara något mindre procjekt, bara så man ser hur det ska kopplas och få in koden i ESP osv

    Grym sidan BTW

Lämna ett svar till Peti Avbryt svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *