Hardware overview
The hardware:
All my studies will focus on the development boards or, more specifically, the NodeMcu's compatible development boards:
The NodeMcu development boards:
"NodeMcu" is not a hardware, it is actually a firmware that has a Lua language interpreter and a file system. Think of it as the "operating system" that came with those old computers in the 80's, but, instead of BASIC, it comes with a special version of Lua, more specifically, a derivative of e-Lua. However, some folks have developed specifications for boards that are meant to use it (here and here) and the boards that comply with those specifications are commonly known as NodeMcu boards.
These are by far the simplest way of using the ESP8266. They have a USB port that connects directly to your computer, and allow all the hardware signalling to be programmed just like an Arduino.
You don't have to use the NodeMcu firmware in an NodeMcu board, you can use it's hardware facilities to program it in any language available.
My standard development board:
I will adopt the Wemos D1 mini as my "official" board. It's cheap, small, has a clever design, and you can find a family of "shields" to use with it.
Schematics of NodeMcu boards:
https://github.com/nodemcu/nodemcu-devkit/blob/master/Documents/NODEMCU_ESP12.PDF
Other common ESP8266 hardware:
The common "module", also known as ESP-01:
This is also an interesting option, but not my main focus. You can find plenty of information about it in the web.The "raw" chip:
Not really interesting for project development. More suited for project's final implementations.