This 4-pin OLED display communicates with ESP8266 module using I2C protocol, follow the attached the circuit diagram and connections table to connect OLED I2C pins with NodeMCU to display Internet time.

Make sure you downloaded SD1306 libraries in Your Arduino ide as shown in image and make sure you Adafruit GFX library as well, if not then install these two libraries.

In your Arduino IDE go to Libraries manager and search for NTP and just download the NTP client library as i downloaded, refer image for further help.

To request date and time, initialize time client with address of NTP servers. For better accuracy choose the address of NTP servers which are close to your geographical area. Here we use “” which gives servers from worldwide. If you wish to choose servers from Asia you can use “”. timeClient also takes UTC time offset in milliseconds of your timezone. For instance, UTC offset for India is +5:30 so we convert this offset in milliseconds which is equal to 5*60*60+30*60 = 19800.

Area. UTC time offset(hours and minutes). UTC time offset(seconds)

INDIA +5:30 19800

LONDON 0:00. 0

NEW YORK -5:00 -18000

if you connected everything properly and Uploaded the code properly as well then you'll able to see your ntp clock running on oled display as mine in running in the oled display. Please refer the image for output.