An internet-synchronized digital clock built using ESP8266 and a TM1637 4-digit seven segment display, implemented in MicroPython.
The clock fetches accurate time from an NTP server and displays it in HH:MM format with a blinking colon.
- Real-time clock using NTP (Network Time Protocol)
- No RTC module required
- Accurate internet-synced time
- Blinking colon effect
- Custom segment mapping for correct digit display
- Built using MicroPython
- Compact and low-cost design
- ESP8266 (NodeMCU)
- TM1637 4-Digit Seven Segment Display
- Wi-Fi Network
- Jumper Wires
- Breadboard
| TM1637 Pin | ESP8266 GPIO | NodeMCU Pin |
|---|---|---|
| CLK | GPIO5 | D1 |
| DIO | GPIO4 | D2 |
| VCC | 3.3V | 3.3V |
| GND | GND | GND |
- ESP8266 connects to the configured Wi-Fi network.
- Time is fetched from an NTP server in UTC.
- UTC time is converted to IST (UTC + 5:30).
- Time is displayed on the TM1637 display in HH:MM format.
- The colon blinks every second to indicate real-time updates.
- MicroPython
network– Wi-Fi connectionntptime– NTP time synchronizationtm1637– Seven segment display control
- Flash MicroPython firmware on ESP8266.
- Upload
tm1637.pyandmain.pyto the board. - Update Wi-Fi SSID and password in
main.py. - Reset the ESP8266.
- The clock will sync time and start displaying it automatically.
Due to non-standard TM1637 module segment wiring, custom segment byte mapping is used to ensure correct digit rendering instead of relying on default library functions.
- Digital wall clock
- IoT dashboards
- Learning project for NTP & MicroPython
- Embedded systems mini project
- NTP time synchronization
- Wi-Fi handling in MicroPython
- Seven segment display control
- Debugging hardware-library mismatches
This project is open-source and free to use for learning and educational purposes.
Kritish Mohapatra
Third Year B.Tech, Electrical Engineering
📡 Focused on IoT, Embedded Systems, and MicroPython Projects
⭐ If you like this project, give it a star on GitHub and follow for more IoT projects!
