Yeah, don't bother with those ESP-01 modules(the first one). It's worth spending a little more for the ones with more flash. I have both, but prefer the WeMos D1 Mini to the WeMos D1 R2 because it's way smaller, cheaper, and has pretty much the same capabilities.
liudr:
both need voltage level shifting, right?
They do have 3.3V I/O. There's been a lot of discussion of whether the datasheet indicates they are 5V tolerant or not. My take has been that if it was actually 5V tolerant then of course the manufacturer would clearly state this since but we know that Espressif is not so good with documentation.
There was an article on Hackaday that had a ton of comments on both viewpoints but didn't provide any actual proof of 5V tolerance. Someone shared it to the ESP8266 group on Facebook and a user named Teo Swee Ann commented:
i can reply officially here: it is 5V tolerant at the IO. while the supply voltage is at 3.3V.
The name of the Espressif CEO is Teo Swee Ann but of course there are lots of fake names on Facebook and people with the mentality of 12 year olds and too much time on their hands who think trolling is funny. Why should we need to find some obscure facebook post to get this cleared up? In fact, there is a post on the official Espressif ESP8266 forum by one of their employees:
IO and digital power supply of ESP8266EX ranges from 1.8V to 3.3V.
We donot recommend you to apply 5V to IO.
Such a great module but I don't understand why these Chinese manufacturers are so bad at documentation. I get that there is a language barrier but people have looked at the datasheets in Chinese and there is no more information. With the budget it takes to develop and produce a product like this it should be insignificant to pay someone to write proper documentation.
liudr:
So for someone just starting programming the ESP-8266, any recommendations for resources?
There's a strong ESP8266/Arduino community that has done a ton of work to make using ESP8266 easy but compared to AVR it can be very frustrating. The ESP8266 Arduino core is great but the library documentation is super lacking. They basically expect you to just look through the source code and figure it out. There also seems to be more than the normal amount of bad tutorials, etc. out there so you really have to filter through the information you do find. Even simple things like trying to get specs on the ridiculous number of variations of those modules is extremely frustrating.
ESP8266.com forum: For some reason I've never found any useful information on there. They are so greedy with the ads that every thread ends up being 20 pages long. I get that these sites need to support themselves and I don't mind ads if that's what it takes to keep them going but there's such a thing as going too far, they went way too far.
https://github.com/esp8266/esp8266-wiki/wiki: not really that great
https://github.com/esp8266/Arduino/tree/master/doc: You can find some useful information on the core if you browse around in there
http://bbs.espressif.com/viewforum.php?f=64: There are a couple of employees on there giving official answers but you're not going to find any Arduino-specific information.
https://nurdspace.nl/ESP8266: meh