Patent ID: 8649886

Claim:
A method for programming a programmable controller for an environment, the method comprising: receiving a trigger signal at a processor of the programmable controller, wherein the trigger signal is associated with a trigger event at a trigger device, wherein the trigger device comprises a sensor for sensing the trigger event, while the programmable controller is in a training mode, the trigger device being in data communication with the programmable controller, wherein the trigger signal is for causing a programmable device to change to a desired state, wherein the programmable device comprises a programmable thermostat; receiving a message and a unique address at the processor of the programmable controller from the programmable device, wherein the programmable device is in the environment and is in the desired state for the environment, wherein the message indicates that the programmable device is in the desired state and the unique address is for the programmable device; and subsequently, exiting the training mode at the processor of the programmable controller.