In diesem Beitrag möchte ich dir gerne den Microcontroller WiFi D1R2 von RobotDyn vorstellen.
Bezug
Den Microcontroller habe ich über aliexpress.com für 3,61 € zzgl. Versandkosten erstanden.
Du kannst diesen aber auch über den offiziellen Shop von RobotDyn für 4,29$ (ca. 3,58€) zzgl. Versandkosten nach Deutschland erstehen.
Lieferumfang des RobotDyn WiFi D1 R2
Zum Lieferumfang gehören drei schwarze Stiftleisten mit jeweils 12 Pins. Diese Stiftleisten kann man auf den Microcontroller löten und somit mit „weiblichen“ Breadboardkabel abgreifen.


Du kannst aber auch die Stiftleisten durch farbige austauschen und hast somit einen einfacheren Zugriff auf die Signal, GND und VCC Pins.
Technische Daten des RobotDyn WiFi D1R2
Auf dem Board ist ein ESP Chip vom Typ ESP8266EX verbaut.
Technische Daten des ESP8266EX Chip
- Microcontroller – ESP8266
- Taktfrequenz – 160 MHz
- Speicher – 4 MB
- USB-TTL Converter – CH340C
- max. Stromaufnahme
- 3,3V mit 800mA
- 5V mit 800mA
- Betriebsspannung
- 5V maximal 500mA
- DC Jack Adapter – 9 bis 24V
- Schnittstellen
- USB
- WiFi 802.11 b/g/n 2.4 GHz
- Ein/Ausgänge
- 11x digitale Ein/Ausgänge
- 1x analoger Eingang
- Abmaße (BxL) – 53,4 mm x 68,51 mm
Aufbau des Microcontrollers
Der Microcontroller hat den Formfaktor des originalen Arduino UNO R3 somit passen auf diesen die bereits erhältlichen Shields für Netzwerk, RGB LEDs, Motorsteuerung sowie viele weitere.



Dieses ist ein großer Vorteil denn somit kann man recht einfach diese Shields günstig mit einem Microcontroller mit ESP Chip steuern.
Da der RobotDyn WiFi D1 R2 nur einen analogen Pin (A0) besitzt kann ggf. nicht jedes Shield aufgesteckt und verwendet werden. Beim Angezeigten Multifunktionalem Shield kann zbsp. der Fotowiderstand nicht verwendet / programmiert werden.
Besonders gut gefällt mit, dass ein separater Antennenanschluss auf dem Board vorhanden ist. Somit kann man, wenn der RobotDyn WiFi D1 R2 in einem Gehäuse untergebracht ist und die Leistung der WiFi Antenne nicht mehr ausreicht eine externe anschließen.
Des Weiteren verfügt der Microcontroller über einen DC Jack Adapter über welchen dieser mit Strom versorgt werden kann.
Hier gibt es zbsp. Adapter um eine 9V Block Batterie anzuschließen oder man nutzt ein entsprechendes Netzteil.


Stiftleiste
Die dreifach Stiftleiste bietet die Möglichkeit auf die digitalen und den analogen Pin sowie auf SDA & SCL zuzugreifen.


ABER leider kann man an diese Stiftleisten keinen Servomotor anschließen denn die Stifte VCC & GND sind vertauscht und somit nicht kompatibel. Hier hätte meiner Meinung nach der Hersteller drauf achten können und dem Benutzer mehr Möglichkeiten bieten können.
Programmieren
Auf der Plattform aliexpress.com wird dieser mit dem MicroPython Symbol beworben. Dieses fand ich persönlich gesagt als ein kleines Kaufargument aber ich musste beim anschließen feststellen das dieser nicht passend geflasht ist.
Wie du einen ESP8266 für MicroPython flashen kannst habe ich dir im Beitrag Flashen eines ESP8266 für MicroPython ausführlich erläutert.
„Hello World!“ in der Arduino IDE
Wie bereits gesagt ist der Microcontroller nicht geflasht und daher kannst du diesen Werksseitig mit der Arduino IDE programmieren
Bevor wir diesen Microcontroller jedoch programmieren können müssen wir das Board installieren.
Dazu fügen wir die Adresse
https://arduino.esp8266.com/stable/package_esp8266com_index.json
in den Voreinstellungen zu den „zusätzlichen Bordverwalter URLs“ hinzu. Danach können wir über Werkzeuge > Board > Boardverwalter … den passenden Treiber für den RobotDyn Wifi D2 R1 installieren. Da der Microcontroller einen ESP8266 Chip besitzt suchen wir nach „esp“ und installieren das Paket „esp8266 by ESP8266 Community“.
Wenn dieses Paket installiert ist, wählen wir unter Werkzeuge > Board > ESP8266 Board (2.7.4) das Board „Generic ESP8266 Module“.
Nun muss noch der korrekte Port ausgewählt werden dieser ist je nach Computer und Anschluss unterschiedlich.
Hier nun der Code für die Ausgabe der Zeichenkette „Hello World!“ auf der seriellen Schnittstelle:
void setup() { Serial.begin(9600);} void loop() { Serial.println("Hello World!"); delay(500); }
Beim Upload kann man einige Eigenschaften vom Microcontroller ablesen:
Executable segment sizes: IROM : 232904 - code in flash (default or ICACHE_FLASH_ATTR) IRAM : 26892 / 32768 - code in IRAM (ICACHE_RAM_ATTR, ISRs...) DATA : 1248 ) - initialized variables (global, static) in RAM/HEAP RODATA : 720 ) / 81920 - constants (global, static) in RAM/HEAP BSS : 24936 ) - zeroed variables (global, static) in RAM/HEAP Der Sketch verwendet 261764 Bytes (27%) des Programmspeicherplatzes. Das Maximum sind 958448 Bytes. Globale Variablen verwenden 26904 Bytes (32%) des dynamischen Speichers, 55016 Bytes für lokale Variablen verbleiben. Das Maximum sind 81920 Bytes. esptool.py v2.8 Serial port COM5 Connecting.... Chip is ESP8266EX Features: WiFi Crystal is 26MHz MAC: 48:3f:da:0c:1e:79 Uploading stub... Running stub... Stub running... Configuring flash size... Auto-detected Flash size: 4MB Flash params set to 0x0340 Compressed 265920 bytes to 196009... Wrote 265920 bytes (196009 compressed) at 0x00000000 in 17.4 seconds (effective 122.5 kbit/s)... Hash of data verified. Leaving... Hard resetting via RTS pin...
Wenn der Upload abgeschlossen ist dann musst du ggf. den Microcontroller per Hand über den kleine, roten Reset Taster neustarten!
Danach wird nun die Ausgabe im Seriellen Monitor der Arduino IDE sichtbar sein.
Weitere Programme und Projekte mit diesem Microcontroller werde ich dir separat auf meinem Blog veröffentlichen. Also schau doch mal wieder einmal rein!
Fazit zum Microcontroller
Den Microcontroller kann man so ziemlich 1:1 mit dem Wemos D1 R2 vergleichen.
Dieser hat den gleichen Formfaktor und die gleichen Pins. Jedoch kostet dieser etwas mehr und hat keine gesonderten Pinleisten. Somit geht zumindest ein kleiner Punkt an den RobotDyn D1 R2.