creativecommons

Introductie Wemos D1 mini

Features van de Wemos D1:

smily smiley Een uitgebreid artikel over de Wemos staat op de pagina:  diyi0t.com: ESP8266 WeMos D1 Mini Tutorial

diyi0t

The ESP8266 WeMos D1 Mini is one of my favorite IoT microcontroller when I need a microcontroller for a battery powered project, because the ESP8266 has an integrated WiFi module and an exceptionally low power consumption. Therefore, I want to share my knowledge and experience with the ESP8266 WeMos D1 Mini in this tutorial.

Uitgebreide documentatie:

Op de Wemos site staan ook: Tutorials: get started... MicroPython en Arduino

De nieuwe generatie micro controllers met wifi bestaat in hoofdzaak uit de de ESP8266 en de ESP32 families.
Een goed overzicht van de ESP8266 chips is op de pagina: MakerAdvisor: Best ESP8266 Wi-Fi Development Board – Buying Guide 2020
Een overzicht van de ESP32 familie is: MakerAdvisor: ESP32 Development Boards Review and Comparison

Aanvankelijke was ik begonnen met de Arduino IDE.

Het eerste project was de BME280: temperatuur / luchtdruk / vochtigheid opnemer.
Een probleem bij de Arduino zijn de vele "libraries", de hulp programma's om bij voorbeeld de BME chips aan te sturen.
Zowel Adafruit.com als Sparkfun.com leveren een uitgebreid assortiment randapparaten voor de Arduino boards.
Deze leveren ook werkende libraries bij de door hun geleverde componenten!

Bij nader inzien ben ik overgestapt op ESP-Easy: geen code ... maar configuratie!

smily

Het eerste project: ESP-1, de Wemos met BME280 en LCD-display

Hardware

Een voorbeeld van het aansluiten van de Wemos staat op de site: ProtoBoard.nl: Installatie van de Wemos D1 Mini

Opmerking: het is van belang om weten welke pinnen gebruikt worden voor input of output.
Een gedetailleerd overzicht staat op de website: RandomnerdTutorials: ESP8266 Pinout Reference: Which GPIO pins should you use?
Bepaalde I/O pins worden bijvoorbeeld voor de seriële I2C of SPI gebruikt.

Afbeelding van de Wemos D1 Mini V2 (versie 2!):

Wemos

De Wemos wordt met een USB kabel verbonden met de Raspberry Pi 4, voor de ontwikkeling van de software.
Vrijwel alle arduino boards hebben een led. Een van de eeste oefen projecten is om deze led te laten knipperen.
Deze led is meestal aangesloten op GPIO pin 2.
Zie voorbeelden:

In bovenstaande voorbeelden is de Wemos direct verbonden met de Raspberry.
In de meeste gevallen zijn sensoren vaak op afstand van het ontwikkel systeem.
In dat geval is het nodig om de Wemos via wifi met het huis netwerk te verbinden... zie het netwerk hoofdstuk!

Arduino

Stappen:

Blink: programma om ingebouwde led aan te sturen

Broncode: laat de Wemos on-board led knipperen

// the setup function runs once when you press reset or power the board
void setup() {
  // initialize digital pin LED_BUILTIN as an output.
  pinMode(LED_BUILTIN, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);                       // wait for a second
  digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);                       // wait for a second
}

Netwerk

Door het gebruik van "libraries" is de setup van een wifi netwerk eenvoudig!
Voorbeeld, zie website: averagemaker.com: How To Set Up WiFi On A Wemos
Here’s the code you add to your sketch to enable WiFi in this very basic fashion. You need to update lines 4 and 5 with your SSID (WiFi name) and password.
De libraries worden geladen met de statement:   #include <ESP8266WiFi.h>  
#include <ESP8266WiFi.h>

// Network SSID
const char* ssid = "YOUR-SSID-HERE";
const char* password = "YOUR-PASSWORD-HERE";
 
void setup() {

  // Connect WiFi
  WiFi.hostname("Name");
  WiFi.begin(ssid, password);
  
}
 
void loop() {
  
//Add project code here  

  }

Epiloog

Een leermomentje, wat kan er fout gaan!

Bij de installatie van Arduino gebruikte ik vanzelfsprekend de nieuwste versie...
Helaas, werkte het niet, met Google vond ik:

github.com: esptool 2.6 binaries errors
...
Hello, I can't have a working ESP device since esp2.6 (provided by ESP on arduino IDE by community package 2.5.1 and later  ...
ESP8266 Arduino project switched from esptool-ck flasher tool in 2.5.0 to using esptool.py in release 2.5.1. So 2.5.0 is using a totally different tool, different command line arguments, etc.

Veel van de voorbeelden op internet zullen waarschijnlijk de oude versie gebruiken!

Dus de versie 2.5.0 gebruiken!

esp8266

W3Ccss valid-html401

top