I am trying to use an ESP8266 (ESP-01) to add WiFi capability to my Arduino UNO project. Wow has this been a difficult learning curve. After reading tons of tutorials, blog posts, forum posts, etc. I am amazed by how many different (and sometimes directly contradictory) ways people have for doing this. And very often the author does not explain his/her design rationale so a newbie like me is left pretty confused.
So here is what I THINK I understand the challenges to be and how I plan to deal with them. I would just like this experienced community to review this and alert me to any major misunderstanding I might have. If it just doesn't work I will hopefully learn something but I would like to avoid destroying anything along the way.
Challenge 1: You need at least 2 serial comms. One for the PC to talk to Arduino for development/debugging and another for the UNO to talk to the ESP. But the UNO only has one (which is why a lot of solutions our there are using the Mega but I want to learn to do it with the UNO).
Solution 1: I plan to use Softserial to get a second line of communication. I still don't have full understanding of using Softserial, but I think I will get that sorted out soon enough.
Challenge 2: The ESP needs a 3.3V power supply and a good amount of current (200mA or maybe more depending who you listen to). The UNO is of course powered by 5V and its 3.3V pin does not provide enough current (again, depending on who you listen to) to run the ESP.
Solution 2: I plan to use a breadboard power module like this one (though mine comes from Elegoo): Power Module on Amazon. I'll power the module via a wall wart, power the UNO from the 5V side, and the ESP with the 3.3V side. I am not currently planning on any additional resistance or capacitance in this setup so please let me know if I should be.
Challenge 3: The ESP RX pin is expecting a 3.3V signal so the UNO's 5V TX signal will be too much for it (again, some people say this is a problem, others say there is no issue and the ESP is 5V tolerant).
Solution 3: I plan to use a simple voltage divider between the Arduino TX and the ESP RX pins reducing the voltage to as near to 3.3V as I can get with my available resistors. I plan on doing nothing special coming back from the ESP to the Arduino as I understand that the ESP's 3.3V signal will be enough for the UNO to see HIGH on its input.
So that's my connection plan. Please review, critique and teach. Let me know if this looks good enough for me to proceed. TIA.