Therm: a Tiny PID Controller

Summary of Therm: a Tiny PID Controller


Therm is a compact PID controller featuring an STM32F0 microcontroller and MAX31855 IC. It includes an OLED display, USB serial connectivity, and screw terminals for power, relays, and thermocouples. The device supports external solid-state or transistor loads, offers configurable settings via an on-screen menu, and allows firmware updates through a DFU bootloader. Future plans include non-volatile memory storage and multi-setpoint support for applications like reflow ovens.

Parts used in the Therm:

  • STM32F0 microcontroller
  • MAX31855 thermocouple-to-digital IC
  • OLED display
  • USB port
  • Solid-state relay
  • Transistor
  • Screw terminals
  • SWD interface pads

Therm is a very small PID controller with an OLED display, thermocouple interface, and USB port. It can switch an external solid-state relay for driving large loads, or a transistor for driving small loads. When attached to a computer, it enumerates as a USB serial port for easy control and logging of data. The design is based around a STM32F0 microcontroller and the MAX31855 thermocouple-to-digital IC (note: an RTD version of therm is in the works).All PID parameters and settings are configurable from the on-screen menu. Therm also has a menu option to reboot to the DFU bootloader so the firmware can be updated without a hardware programming dongle. Currently, therm only supports a single setpoint, but we plan on implementing multiple setpoint support for reflow oven control and other applications in the near future.Therm has screw terminals to connect power input (up to 12v), a solid-state relay, and a thermocouple. Pads on the bottom of the board expose the SWD interface for debugging and programming in a fixture or with a PogoProg adapter.
Therm a Tiny PID Controller
While all the core features of therm are complete, some have yet to be implemented “namely saving settings to non-volatile memory and setpoint control over USB”. In the coming months we plan on cleaning up the firmware, finishing up the missing features, as well as performing some extensive testing on our latest hardware spin.
For more detail: Therm a Tiny PID Controller

Quick Solutions to Questions related to Therm:

  • How does Therm connect to a computer?
    It enumerates as a USB serial port when attached to a computer.
  • Can I update the firmware without a hardware programming dongle?
    Yes, you can reboot to the DFU bootloader to update the firmware.
  • What is the maximum voltage for the power input?
    The screw terminals accept power input up to 12v.
  • Does Therm currently support multiple setpoints?
    No, it currently only supports a single setpoint.
  • What are the plans for future firmware updates?
    Plans include implementing multiple setpoint support and saving settings to non-volatile memory.
  • How can I debug or program the board in a fixture?
    Pads on the bottom of the board expose the SWD interface for this purpose.
  • What components drive large loads on Therm?
    An external solid-state relay is used for driving large loads.
  • Is there an RTD version of Therm available now?
    No, an RTD version is currently in the works but not yet released.

About The Author

Ibrar Ayyub

I am an experienced technical writer holding a Master's degree in computer science from BZU Multan, Pakistan University. With a background spanning various industries, particularly in home automation and engineering, I have honed my skills in crafting clear and concise content. Proficient in leveraging infographics and diagrams, I strive to simplify complex concepts for readers. My strength lies in thorough research and presenting information in a structured and logical format.

Follow Us:
LinkedinTwitter
Scroll to Top