This is my first post and I would like to share my experience troubleshooting Wifi issues with the ESP8266 WiFi.
NodeMCU 0.9 (Aliexpress version)
This was my first experience with NodeMCU (being working only with Arduinos Uno/Mega and Pi's).
By loading some example sketch I wasn't able to connect to my WiFi network (Composed with one WRT3200ACM and one TP-Link TL-WDR3600 in a different floor but broadcasting the same SSID).
For the first days I wasn't able to figure out why the ESP would only connect after some time (+30m) and I was almost considering it was a defective unit (I have only one board).
I've changed the Core Library version (from 2.3 to 2.4.2) without any success.
Then I found that the SoftAP mode was ok and, with some debugging messages I found it was able to connect to the remote router without problems (when I rebooted the WRT3200). This pointed to some interworking issue with the Linksys Router.
After some research I found an reported issue with the router WiFi driver Cannot connect ESP8266 MQTT devices · Issue #170 · kaloz/mwlwifi · GitHub.
After disabling WMM on the WRT3200 2.4GHz radio the ESP started connecting without any further issues.
Hope this post helps someone to avoid hitting the "wall" as hard as I did. Not complaining. It was a crash course in WiFi, NodeMCU and OpenWRT debugging techniques.