Textual LCD Desk Clock

A compact, hackable textual clock that shows human-friendly time phrases on a standard HD44780-compatible LCD. Buildable in a weekend: simple 3D-printed parts, straightforward fastenings, and open firmware for the ESP32. The project is ideal if you want a retro—yet customizable—desk clock you can tweak.

Full electronics, firmware and BOM are on GitHub: https://github.com/Smengerl/LCD_Text_Clock

Key Features

  • Human-friendly text time display on standard HD44780 modules
  • ESP32 firmware with Wi‑Fi time sync and configurable display modes
  • Modular 3D-printed enclosure designed for easy assembly
  • Optional top-mounted buttons for menu navigation, settings, and user interaction

Printed parts:

  • No push button version:
    • lower_part_nobuttons.stl
    • upper_part_nobuttons.stl - print upside down (face on built plate)
  • push button version:
    • lower_part.stl
    • upper_part.stl - print upside down (face on built plate)
    • pushbutton_cover.stl - try out which orientation works best for your printer
    • pushbutton_base.stl - try out which orientation works best for your printer

Bill of Materials

  • ESP32 development board (any compatible module)
  • HD44780-compatible LCD module (16x2 or 20x4)
  • Optional: I2C backpack or direct wiring to LCD (see repo)
  • Optional: Tactile switches (x3–x4) for top-mounted buttons + button caps
  • M3 screws (various lengths) and nuts or heat-set inserts / standoffs
  • Power supply (USB / LiPo + power module) as required
  • Jumper wires / headers
    For the complete BOM and recommended part numbers, see the GitHub repository.