Programmable Interval Timer (PIT)

Programmable Interval Timer (PIT)

July 23, 2025
by Stuart Rogers
Tags: ESP32, Temperature Control, IoT, Hardware Design

Initially conceived of in May of 2016, the Programmable Interval Timer (PIT) began as a custom solution for a specific need: a programmable timer with integrated temperature control capabilities. While initially designed for a friend’s unique application, the project evolved into a versatile control system with potential applications in 3D printing and environmental monitoring.

During development, I used the PIT to monitor and control the temperature inside my 3D printer enclosure. While a basic thermometer can handle simple monitoring, the PIT stands out for its advanced features and programmability.

View on GitHub

Original Interface

The first version featured a simple but effective user interface:

PIT v1 PIT Interface 2

Version 2.0 Enhancements

The second iteration brought significant improvements:

  • Rotary encoder for intuitive control
  • Color backlit character LCD display
  • Integrated temperature sensor with remote sensing
  • Proximity detection capabilities

However, this version also taught valuable lessons about hardware development. Several issues emerged during production:

  • Incorrect speaker documentation led to compatibility issues
  • JLCPCB supplied the wrong ESP32 module and refused to fix their mistake. A reason to do inhouse assembly.
  • A reversed connector highlighted the importance of thorough design review

You can download a copy of the schematic here. Please keep in mind this is a WIP.

Here’s a brief video of me playing with the prototype.


Photos of the board.

PIT v2 Front PIT v2 Back

Renders

PIT v2 Front PIT v2 Back

Backlight Testing

PIT v2 Backlight

Innovative Solutions

One interesting aspect of this project is the use of a proximity sensor. While it looks cool, the dead bug soldered chip is the result of forgetting to mirror the gerber for the DIY method of PCB fabrication.

Proximity Sensor Dead Bug Construction Sensor Testing

While the project is currently on hold, its source code remains available on GitHub for reference and potential future development.