NodeMcu vs Esp32 vs esp8266

I am totally confused! Pictures I have seen seem to show that the ESP32 and the NodeMcu are the same, yes/no? It seems that the NodeMcu uses a Lua programming language rather than the arduino development system in C++. Can you consider a ESP32 an arduiino with a wi-fi chip? Finally, it seems that the ESP32 supports WiFi AND Bluetooth, is this correct? I see no mention of Bluetooth on the NodeMcu.

Can someone educate me on these three devices?

Oh, BTW, I googledNodeMcu vs ESP32 and I get no mention of NodeMcu. What gives??

"NodeMcu" is the name of a firmware originally for the ESP8266 microcontroller, with support for the ESP32 microcontroller added more recently, that allows you to program these microcontrollers using the Lua programming language.

In the early days of the hobbyist community's adoption of the ESP8266, ESP8266 development boards were marketed with the name NodeMcu and the term "NodeMcu" started to be associated more with the hardware than the firmware. It is common for people with no interest in the Lua programming language to buy "NodeMcu" boards and program them with the Arduino IDE, which erases the NodeMcu firmware from the board. To make things more confusing, multiple companies marketed boards with the name "NodeMcu", but with small hardware differences. Over time, the NodeMcu boards became less popular in the Arduino world because the similarly priced WeMos D1 Mini came out with the same functionality, but in a smaller form factor. Now, the "NodeMcu" name is being used to market ESP32 boards as well.

ESP32 is the name of a microcontroller made by Espressif. You will find this microcontroller on a variety of development boards, in a variety of forms. You can also purchase the ESP32 module, without the support components provided by the development boards.

ESP8266 is the name of a microcontroller made by Espressif. You will find this microcontroller on a variety of development boards, in a variety of forms. You can also purchase the ESP8266 module, without the support components provided by the development boards.

barryjo:
Pictures I have seen seem to show that the ESP32 and the NodeMcu are the same, yes/no?

No.

barryjo:
It seems that the NodeMcu uses a Lua programming language rather than the arduino development system in C++.

The NodeMcu firmware is for use with Lua. The NodeMcu hardware can be used with Lua, C++, C, assembly, Python, and probably a few other languages.

barryjo:
Can you consider a ESP32 an arduiino with a wi-fi chip?

Yes.

barryjo:
it seems that the ESP32 supports WiFi AND Bluetooth, is this correct?

Yes.

barryjo:
I see no mention of Bluetooth on the NodeMcu.

What do you mean by "NodeMcu"?

If you're talking about the NodeMcu firmware, does it provide access to the ESP32's Bluetooth functionality? I have no clue.

If you're talking about the NodeMcu hardware, was the board you were looking at an ESP8266 board? If so, then it does not have Bluetooth functionality. Only the ESP32 has Bluetooth.

1 Like

I bought an "Inventor" kit for about $20 that included a board that had "wemos.cc",."LoLin", "new NodeMcu V3" on the back. The kit included a small320X80 (or so) display, and a temperature and humidify sensor, and a voltage converter module.

The module looks like a esp32 but I do not see a bluetooth antenna, only a wifi antenna. The module has LoLin written on the top, and a pushbutton on either side of the mini usb connector.

I would upload a pic but I do not see where I can do so.

I also have some esp8266 modules that have the 8 pin "breadboard" connector on the end. For this module, I think I have to manually configure and use it with as a minimum a terminal program.

Oh, BTW, the documention for my "inventor" kit says it is a esp8266 but there is no mention of any bluetooth capability.

Only the ESP32 chip/module/board has BT capabilities. The ESP8266 has not.
BT uses the same frequency/antenna as WiFi, so you can't tell by just looking at it.

The ESP-01 module (with ESP8266 chip) has 8-pins.
This is the basic module with minimal I/O exposed to the user.
It is commonly used as an add-on module to give a basic Arduino (Uno/Mega) WiFi capabilities.

It can be used stand-alone if you add supporting parts.
The software it comes with is then usually overwritten with Arduino software.
Much better to use the WeMos D1 mini stand-alone,
or one of the bare modules with more I/O exposed, like the ESP-12.

Read this.
Leo..

Just to be clear, one does not overwrite the code in the ESP8266 8 pin module right? yes/no. You use the esp8266-01 8 pinner by giving AT command to it via the serial port.

The 30 pin ESP8266 with wifi but no bluetooth can be reprogrammed via the Arduino IDE.

The 30 pin ESP32 can be reprogrammed and has both wifi and bluetooth.

NodeMcu is software that comes installed in a ESP8266 nd uses the Lua programming language but the ESP8266 that comes with NodeMcu can be reprogrammed via the Arduino IDE.

I hope I have this mostly correct. It is a bit confusing especially since the ESP32 and the ESP8266 both 30 pins look the same.

1 Like

barryjo:
Just to be clear, one does not overwrite the code in the ESP8266 8 pin module right? yes/no. You use the esp8266-01 8 pinner by giving AT command to it via the serial port.

The name of the "the ESP8266 8 pin module" is ESP-01. You can use it either way. You can use the Arduino IDE to upload sketches to the ESP-01 or you can connect the ESP-01 to a regular Arduino board using a serial connection and then write your sketch for the regular Arduino board, which controls the ESP-01 using AT commands. The latter usage is more common with the ESP-01 because it only has a couple of the GPIO pins broken out, so it's of limited use as a standalone board. Also, you need additional components to be able to use the ESP-01 by itself.

The boards like the NodeMcu and WeMos D1 Mini, etc. are more popular as standalone boards because they have all the GPIO broken out to pins and you can just plug them right into your computer with a USB cable and get straight to programming them with the Arduino IDE.

barryjo:
The 30 pin ESP8266 with wifi but no bluetooth can be reprogrammed via the Arduino IDE.

Yes. You need to install a 3rd party hardware package in the Arduino IDE to do this:

barryjo:
The 30 pin ESP32 can be reprogrammed and has both wifi and bluetooth.

Yes. You need to install a 3rd party hardware package to use it with the Arduino IDE:
https://github.com/espressif/arduino-esp32/blob/master/docs/arduino-ide/boards_manager.md

barryjo:
NodeMcu is software that comes installed in a ESP8266 nd uses the Lua programming language but the ESP8266 that comes with NodeMcu can be reprogrammed via the Arduino IDE.

Yes

barryjo:
I hope I have this mostly correct. It is a bit confusing especially since the ESP32 and the ESP8266 both 30 pins look the same.

Lots of different electronics parts look somewhat the same. You'll need to get over that. If you look at the metal can on the module, you should see it's engraved with something like "ESP-8266" or "ESP-WROOM-32". Can you guess which is which?

I am getting it.

As to the boards looking the same I have looked at a few ESP32 and ESP8266 that look almost identical. Same size, same number of pins, same usb connector. It seems that the chips on the boards look almost the same but in a slightly different arrangement. You cannot even tell from the antenna location or configuration. My module , 30 pin, has ESP8266 on the chip. My ESP8266 - 8 pin is so small I cannot read the chip info but I can definitely tell the difference betwee the esp8266-01 and the esp8266 30 pin.

The 8-pin ESP-01 is a stripped down version. It has no metal shielding.
If you would remove the shielding from an ESP-07 or ESP-12 module (Wemos D1 mini and others), then you would find the same parts under there. An ESP8266 processor and a memory chip.
Leo…

Figure out your needs
Get the chip that fits.
Get a different chip to use to play with and learn with.
Some times you have to learn by doing