V. flashing an ESP8266¶
preparing the ArduinoIDE¶
At the ESP8266 github page are some information, how to prepare the ArduinoIDE to be able to flash chips from the ESP8266 family.
To do so just open the Preferences and add the Additional Boards Manager URL : https://arduino.esp8266.com/stable/package_esp8266com_index.json

In the Boards Manager search for the ESP8266 and click install

After installing, there are a lot of different ESP8266 board variants available.

I use a NodeMCU 1.0 (ESP-12E Module, so I choose this one.
wiring up¶
Similar to my echo hello-world board, I used a LED and a button.
The LED is connected to D6 and GND and the push button is connected to D3 and GND

programming¶
The program code is also similar to the echo hello-world board. I adapted the code to the ESP8266 and changed the led and the buttonpin.
int buttonPin = D3; // the number of the pushbutton pin
int ledPin = D6; // the number of the LED pin
int buttonState = 0; // variable for reading the pushbutton status
int lastState = 0; // is the LED on or off
void setup() {
Serial.begin(9600);
Serial.println("Hello, world");
Serial.println("start sensing");
pinMode(ledPin, OUTPUT);
pinMode(buttonPin, INPUT_PULLUP);
}
void loop() {
buttonState = digitalRead(buttonPin);
if (buttonState == LOW && lastState == 0) {
// turn LED on:
digitalWrite(ledPin, HIGH);
lastState = 1;
Serial.println("LED ON");
// delay(100);
} else if (buttonState == LOW && lastState == 1){
// turn LED off:
digitalWrite(ledPin, LOW);
lastState = 0;
Serial.println("LED OFF");
// delay(100);
}
delay(250);
}
Because of the hardware serial, the <SoftwareSerial.h> library is not needed here.
This is the ArduinoIDE output after uploading the sketch

Testing¶
works