RobotDyn UNO+WIFI R3 is a customized version of the classic ARDUINO UNO R3 board which has two Processors: Atmel ATmega328 microcontroller and ESP8266 WiFi chip with 8 MB flash memory. Each processor has its own pinout headers. The board also has USB-TTL converter based on CH340G on same board.
The convenient solution for the development of new projects requiring Uno and WiFi. Via USB you can update sketches and firmware for ATmega328 and for ESP8266. The board has DIP-switch, to connect the processors.
Features
- Two CPUs: ATMEGA328P (8-Bit) and ESP8266 (32-Bit)
- 8mb ESP8266 Flash Memory
- External U.FL Antenna Connector for WiFi
- Micro USB connection
- Power jack, 7-12V power input.
- Compatible with Arduino
- Compatible with nodemcu
- Can be used with existing Arduino Shields
Specifications
Microcontrollers | 1x ATMEGA328P and 1x ESP-8266EX |
Operating Voltage | 5V for ATMEGA328P and 3.3V for ESP8266 |
Digital I/O Pins | 13 for ATMEGA328P (5v compliant)+ 8 for ESP8266 (3.3V compliant) |
Analog Input Pins | 6 for ATMEGA328P (5V compliant) + 1 for ESP8266 (3.3V compliant) |
Clock Speed | 16MHz for ATMEGA328P and 80MHz/160MHz for ESP8266 |
ESP8266 Flash | 8M bytes |
The key for operation is the dip switches, here are the combinations
Connection |
DIP |
||||||
1 |
2 |
3 |
4 |
5 |
6 |
7 |
|
ATmega328<->ESP8266 |
ON |
ON |
OFF |
OFF |
OFF |
OFF |
OFF |
USB <->ATmega328 |
OFF |
OFF |
ON |
ON |
OFF |
OFF |
OFF |
USB<->ESP8266 (Update firmware or sketch) |
OFF |
OFF |
OFF |
OFF |
ON |
ON |
ON |
USB<->ESP8266 (communication) |
OFF |
OFF |
OFF |
OFF |
ON |
ON |
OFF |
All independent |
OFF |
OFF |
OFF |
OFF |
OFF |
OFF |
OFF |
Initially I had difficulty uploading a sketch but these settings work with regards the dip switch, I selected an Arduin/Genuino Uno
CH340 connect to ATmega328 (upload sketch) | OFF | OFF | ON | ON | OFF | OFF | OFF | NoUSE |
Code
This was a modified version of the blink sketch, only difference is that I had an LED connected to D6
[codesyntax lang=”cpp”]
void setup() { pinMode(6, OUTPUT); } // the loop function runs over and over again forever void loop() { digitalWrite(6, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(6, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second }
[/codesyntax]
Links
http://robotdyn.com/downloads/comp_docs/CH340/CH341SER.ZIP
http://robotdyn.com/downloads/comp_docs/CH340/CH340_driver_instruction.pdf
PINOUT=UNO+WiFi-R3-AT328-ESP8266-CH340G.pdf