Hello friends, today we'll look at two popular WiFi-enabled Arduino Microcontrollers: Wemos D1 Mini and NodeMCU.
I agree that the Arduino Uno is a good controller to start with. Once you have a better understanding of how to set up circuits and get more involved with your projects, you may want to expand your knowledge and choose a different controller. This raises a common question...which controller should i use...Wemos D1 mini or NodeMCU?
Both chips contain an ESP8266 chip, ideal for Internet of Things (IoT) projects. So, if you're deciding which of these controllers to use in your next project, let's see the pros and cons of each.
Choose a microcontroller with WiFi
First, if your project doesn't require WiFi, you don't need to use Wemos or NodeMCU. A standard Arduino Uno or Mega might do the job. So i'm going to assume that your project requires a WiFi connection.
Before we dive into which controller to use (Wemos D1 Mini or NodeMCU), i'll give a brief technical overview of each.
Wemos D1 Mini Technical Overview
The Wemos D1 Mini is a small microcontroller from the Chinese company Wemos Electronics. The D1 Mini is just one of six series produced by Wemos. The Wemos D1 Mini have 4MB flash and contains 11 digital input/output (I/O) pins, each with an interrupt, PWM, I2C (except D0). There is also 1 analog pin (A0). It is compatible with Arduino, NodeMCU and MicroPython. It also has a built-in micro-USB port for powering or downloading programs.
The controller weighs only 3 grams and has a very small footprint, measuring 34.2mm long and 25.6mm wide. There are also a number of Wemos-compatible shields that will come in handy if you want to create a quick prototype.
Finally, the Wemos D1 Mini is very affordable ($5 to $10 per controller). You can find them at very good prices on Amazon, AliExpress or Banggood. If you're outside the US, I recommend buying Wemos from Amazon, otherwise you'll have to wait 20-50 days to save $5. Depending on your situation, it may or may not be worth the wait on Aliexpress or Banggood.
Technical overview of NodeMCU
NodeMCU chips are marketed as "open, interactive, programmable, low-cost, WiFi-enabled" controllers.
The controller has 10 GPIO pins which can be PWM, I2C or 1-wire. There is also a built-in ADC for analog devices. The NodeMCU has a slightly longer footprint than the Wemos D1 Mini, measuring 48.0mm long and 23.88mm wide. It weighs about 50 grams compared to the Wemos D1 mini's 3 grams.
Finally, the NodeMCU is slightly more expensive than the Wemos D1 mini, at around $8 per chip. But like Wemos, NodeMCU can be purchased from Amazon, Aliexpress and Banggood.
Another thing to note about NodeMCU is that GPIO pins are referenced differently than I/O pins in software. So GPIO5 is not pin 5 in the code. It is pin D1. (See pinout above.)
I recently learned about some newer ESP32 chips on NodeMCU. This chip offers better specs (and roughly the same price) compared to the ESP8266.
Which Arduino controller should I buy?
If you want to use NodeMCU, I suggest you try the ESP32 version.
Wemos D1 Mini
- Small footprint
- Lower cost $5
- 11X GPIO (multipurpose)
- Programmable with Arduino, NodeMCU and MicroPython
- Can't program in Lua
- Programmable with Arduino, MicroPython and Lua
- Extensive documentation + API
- ESP32 Extended Specification Version
- Larger footprint and weight
- 10X GPIO (multipurpose)
- Reference I/O in code instead of GPIO
How to choose a better controller
Some considerations might be space (footprint), weight requirements, amount of I/O required, libraries available, language you want to write in, etc.
If you're looking for something with a small footprint, the Wemos D1 Mini is the clear winner.
Both controllers can handle very similar items. I think the biggest deciding factor is not which is better, but which you prefer. Both offer reliability and roughly the same features at a similar price. It all depends on which brand or model you prefer.
After all, which controller do you prefer? Wemos D1 mini or NodeMCU? Let me know in the comments!