Patent attributes
Programmable controller technology, in which data is received that identifies a particular type of HVAC system component that is to be controlled by a programmable controller. Based on receiving data identifying the particular type of HVAC system component, configuration information is accessed for the particular type of HVAC system component. A configuration is determined for one or more interface ports of the programmable controller based on the configuration information for the particular type of HVAC system component. The interface ports of the programmable controller are configured according to the determined configuration. A connection between the particular type of HVAC system component and the programmable controller that satisfies the determined configuration is detected. Based on detecting the connection between the particular type of HVAC system component and the programmable controller that satisfies the determined configuration, the particular type of HVAC system component is controlled through the one or more interface ports.