Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
THERMOSTAT CONTROL DEVICE WITH INTEGRATED FEEDBACK AND NOTIFICATION CAPABILITY
Document Type and Number:
WIPO Patent Application WO/2013/039856
Kind Code:
A1
Abstract:
An environmental control device is disclosed. The environmental control device includes a temperature sensor, an audio module and a controller module in communication with the temperature sensor and the audio module. The controller module including a processor, a memory in communication with the processor, the memory storing one or more control routines comprising processor executable instructions. The processor executable instructions are configured to: receive a temperature sensor signal from the temperature sensor; analyze the received temperature sensor signal against a stored temperature threshold; implement one of the stored one or more control routines to control an environmental system; and generate an audible indication associated with the stored one or more control routines wherein the audible indication relates to an operation state of the environmental system.

Inventors:
COOGAN JAMES J (US)
PIENTA WILLIAM THOMAS (US)
SONGKAKUL PORNSAK (US)
Application Number:
PCT/US2012/054559
Publication Date:
March 21, 2013
Filing Date:
September 11, 2012
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
SIEMENS INDUSTRY INC (US)
COOGAN JAMES J (US)
PIENTA WILLIAM THOMAS (US)
SONGKAKUL PORNSAK (US)
International Classes:
G05D23/19; F24F11/00
Foreign References:
US20030177012A12003-09-18
US20040193324A12004-09-30
US20100070085A12010-03-18
US20110006887A12011-01-13
US20050119793A12005-06-02
Other References:
None
Attorney, Agent or Firm:
BURTON, Thomas J. et al. (170 Wood Avenue SouthIselin, New Jersey, US)
Download PDF:
Claims:
CLAIMS

What is claimed is:

1. An environmental control device comprising:

a temperature sensor;

an audio module;

a controller module in communication with the temperature sensor and the audio module, the controller module comprising:

a processor;

a memory in communication with the processor, the memory storing one or more control routines comprising processor executable instructions, the processor executable instructions configured to: receive a temperature sensor signal from the temperature sensor; analyze the received temperature sensor signal against a stored temperature threshold;

implement one of the stored one or more control routines to control an environmental system; and

generate an audible indication associated with the stored one or more control routines wherein the audible indication relates to an operation state of the environmental system.

2. The device of claim 1 further comprising:

a touch screen in communication with the controller module, the touch screen configured to:

display a graphical user interface associated with the one or more control routines; and

receive a control input to alter a variable associated with the one or more control routines.

3. The device of claim 2, wherein the control input is configured to alter an audible file associated with the one or more control routines or alter the stored

temperature threshold.

4. The device of claim 1 further comprising:

a wireless communication module in communication with the controller module, wherein the wireless communication module is configured for communication with a remote device.

5. The device of claim 4, wherein the wireless communication module is configured to communication according to a protocol selected from the group selected from: GSM, CDMA, IEEE 802.1 1 (WiFi), IEEE 802.16 (WiMax), IEEE 802.15.4

(ZigBee) and Bluetooth.

6. The device of claim 4, wherein the remote device is configures to communicate the control input to the controller module via the wireless communication module.

7. The device of claim 4, wherein the wireless communication module is configured to deliver the audible indication to the remote device for representation to a user.

8. The device of claim 1 further comprising:

a Web server configured to present a variable associated with the one or more control routines for access over a network.

9. The device of claim 8, wherein the Web server is further configured to receive a control input to alter the variable associated with the one or more control routines.

10. An environmental control device configured to regulate environmental conditions within a structure, the device comprising:

an audio module;

a controller comprising a processor and a memory in communication with the processor, wherein the memory is configured to store one or more control routines comprising processor executable instructions, the processor executable instructions configured to:

implement a first stored control routine to control an environmental

system, wherein the first stored control routine regulates a temperature within the structure with respect to a stored

temperature threshold; implement, in response to a determined control event, a second stored control routine that is different than the first stored control routine wherein the second stored control routine alters the operation of the environmental system with respect to the stored temperature threshold; and

generate an audible indication associated with the determined control event wherein the audible indication reflects the operation of the environmental system.

1 1. The device of claim 10 further comprising:

a temperature sensor in communication with the controller, the temperature

sensor configured to communicate a temperature signal representative of a detected temperature substantially adjacent to the temperature sensor.

12. The device of claim 1 1 , wherein the temperature sensor is deployed in a remote device and configured to provide the temperature signal to the controller via a communication module communicatively coupled to the controller.

13. The device of claim 10, wherein audible indication is a digital sound file stored in the memory of the controller.

14. The device of claim 10 further comprising an audio input module in

communicatively coupled to the controller, wherein audible input module is configured to receive and convert an analog audio input to a digital sound file.

15. The device of claim 10 further comprising:

a Web server configured to present a variable associated with the one or more control routines for access over a network.

16. The device of claim 15, wherein the Web server is further configured receive a control input to alter the variable associated with the one or more control routines.

17. A method of controlling the environment within a structure and providing user feedback regarding the same, the method comprising:

receiving a temperature sensor signal from a temperature sensor associated with a thermostat control device;

analyzing the received temperature sensor signal against a stored temperature threshold;

determining an operation state of the environmental system based on the

analyzed received temperature sensor signal and stored temperature threshold;

implementing, in response to the determined operation state, a control routine to control an environmental system;

generating an audible indication associated with the control routine wherein the audible indication reflects the determined operation state of the environmental system.

18. The method of claim 17, wherein receiving the temperature sensor signal includes receiving the temperature sensor signal from a remote device via a network.

19. The method of claim 17 further comprising:

presenting a web interface for access over a network, wherein the web interface includes a variable associated with the one or more control routines.

20. The method of claim 19, wherein presenting a web interface further includes receiving a control input to alter the variable associated with the one or more control routines.

Description:
THERMOSTAT CONTROL DEVICE WITH INTEGRATED FEEDBACK AND NOTIFICATION

CAPABILITY

BACKGROUND

[0001] Thermostats and other temperature control devices are utilized in residential and commercial environments to control and regulate the environmental conditions within a structure. For example, a thermostat control device can regulate the

temperature and airflow provided by a residential or commercial heating, ventilation and air-conditioning (HVAC) system. An exemplary thermostat includes a temperature- sensitive switch responsive to the ambient air conditions substantially adjacent to the thermostat and configured to control a space conditioning unit or system that may be part of a typical HVAC system. For example, when the temperature-sensitive switch detects that the temperature within the structure drops below or rises above a threshold; the switch toggles to an ON-position and communicates a temperature signal to the thermostat. The temperature signal, in turn, directs the thermostat to activate a furnace or air conditioner to drive the temperature back to the threshold. Adjustments to the thermostat threshold are often implemented manually via controls provided on the device itself. In other configurations, adjustments to the thermostat threshold are implemented remotely via a dedicated interface program operable on a residential or commercial automation system or network.

[0002] Thermostats and other temperature control devices are often passive devices that once configured require little or no user input to continue operation. Conversely, thermostats and other temperature control devices often lack the capability to provide updates or other notification to a user that they are performing correctly and/or in accordance with a configured threshold or operating routine or program. Users, in turn and in response to this lack of notification, adjust or otherwise modify the configured threshold or operating routine or program in order to verify operation of the thermostat. These changes result in unnecessary modifications and changes to the operation if the thermostat and often a decrease in overall efficiency of the temperature control process and system.

SUMMARY

[0003] The disclosed embodiments generally relate to thermostats and more particularly to thermostats configured to provide a user notification or audible indication to verify or otherwise confirm operation of the thermostat.

[0004] In one embodiment, an environmental control device is disclosed. The environmental control device includes a temperature sensor, an audio module and a controller module in communication with the temperature sensor and the audio module. The controller module includes a processor, a memory in communication with the processor such that the memory stores one or more control routines made up of processor executable instructions. The processor executable instructions are configured to: receive a temperature sensor signal from the temperature sensor;

analyze the received temperature sensor signal against a stored temperature threshold; implement one of the stored one or more control routines to control an environmental system; and generate an audible indication associated with the stored one or more control routines wherein the audible indication relates to an operation state of the environmental system. [0005] In another embodiment, an environmental control device configured to regulate environmental conditions within a structure is disclosed. The device includes an audio module, a controller comprising a processor and a memory in communication with the processor such that the memory is configured to store one or more control routines programmed with processor executable instructions. The processor executable instructions are configured to: implement a first stored control routine to control an environmental system, wherein the first stored control routine regulates a temperature within the structure with respect to a stored temperature threshold;

implement, in response to a determined control event, a second stored control routine that is different than the first stored control routine wherein the second stored control routine alters the operation of the environmental system with respect to the stored temperature threshold; and generate an audible indication associated with the determined control event wherein the audible indication reflects the operation of the environmental system.

[0006] In yet another embodiment, a method of controlling the environment within a structure and providing user feedback regarding the same is disclosed. The method includes receiving a temperature sensor signal from a temperature sensor associated with a thermostat control device; analyzing the received temperature sensor signal against a stored temperature threshold; determining an operation state of the environmental system based on the analyzed received temperature sensor signal and stored temperature threshold; implementing, in response to the determined operation state, a control routine to control an environmental system; and generating an audible indication associated with the control routine wherein the audible indication reflects the determined operation state of the environmental system.

[0007] Other embodiments are disclosed, and each of the embodiments can be used alone or together in combination. Additional features and advantages of the disclosed embodiments are described in, and will be apparent from, the following Detailed Description and the figures.

BRIEF DESCRIPTION OF THE FIGURES

[0008] FIG. 1 illustrates a front view of an exemplary embodiment of an

environmental control device as disclosed herein;

[0009] FIG. 2 illustrates a front view of an alternate exemplary embodiment of an environmental control device as disclosed herein;

[0010] FIG. 3 illustrates a side view of the exemplary environmental control device shown in FIGS. 1 and 2;

[001 1 ] FIG. 4 illustrates an internal block diagram of the exemplary environmental control device shown in FIGS. 1 and 2;

[0012] FIG. 5 illustrates an block diagram of an exemplary controller operable within the environmental control devices shown in FIGS. 1 and 2;

[0013] FIGS. 6 and 7 depict exemplary operational flowcharts illustrating a control process that may be implemented by the controller and/or performed by the exemplary embodiments of the environmental control device shown in FIGS. 1 and 2;

[0014] FIG. 8 depicts another operational flowchart illustrating an embodiment of a control process that may be implemented by the controller and/or performed by the exemplary embodiments of the environmental control device shown in FIGS. 1 and 2; [0015] FIG. 9 depicts an operational flowchart illustrating a manage audio process that may implemented in connection with the control process shown in FIG. 8;

[0016] FIG. 10 depicts an operational flowchart illustrating a link audio process that may implemented in connection with the control process shown in FIG. 8;

[0017] FIG. 1 1 depicts an operational flowchart illustrating a run process that may implemented in connection with the control process shown in FIG. 8;

[0018] FIG. 12 depicts an operational flowchart illustrating a set time process that may implemented in connection with the control process shown in FIG. 8; and

[0019] FIG. 1 1 depicts an operational flowchart illustrating a set schedule process that may implement in connection with the control process shown in FIG. 8.

DETAILED DESCRIPTION

[0020] The present disclosure generally relates to environmental monitoring and control systems and more particularly to an environmental control device configured to control and direct temperature conditions within a structure and to provide feedback and notification to a user. Specifically, the environmental control device may be configured to provide an audible or auditory notification to the user when, for example, the environmental control and/or HVAC system is active. Alternatively or in addition to, the environmental control device may be configured to provide an audible or auditory notification or indication when the detected temperature reaches or crosses a temperature threshold. In yet another embodiment, the environmental control device may be configured to provide an audible indication when the user alters or changes the temperature threshold or a control routine. [0021] FIG. 1 illustrates a front view of an environmental control device 100. The environmental control device 100, in this exemplary embodiment, is a thermostat having a substantially rectilinear housing 102. The housing 102 may be constructed from a thermoplastic polymer such as a polypropylene plastic material suitable for use in an injection molding process. In one preferred embodiment, the housing 102 may be designed and configured to replace a standard residential thermostat. In another preferred embodiment, the housing 102 may be designed and configured to replace a standard commercial thermostat such as the type utilized in light industrial settings and/or office environments. In this way, the disclosed environmental control device 100 may be used in place of and/or to upgrade thermostats in use today.

[0022] The housing 102 may be configured or designed to support an audio output device or speaker 104. Audio output devices or speakers such as the exemplary speaker 104 may be an integral part of the housing 102 or may be discrete devices deployed at various locations around the structure and in electrical communication with the environmental control device 100. For example, in one embodiment, the speaker 104 may be a printed circuit board (PCB) mounted speaker such as a Regal PCB mount speaker part No. RE-2308-NL available from Regal Electronics, Inc. In another embodiment, the speaker 104 may be a fire safety speaker such as a SIEMENS fire safety speaker model No. S-HQ provided by Siemens Building Technologies, Inc. of Florham Park NJ. The exemplary S-HQ series loudspeaker is a recessed mounted ceiling speaker for paging and background music applications. In this embodiment, the environmental control device 100 may be in electrical communication via wireless or wired network with the remotely located loudspeaker. In this way, information and/or alerts from the environmental control device 100 may be communicated and broadcast throughout the structure utilizing an existing paging or communication system and hardware. This flexible configuration allows the environmental control device 100 to implemented inexpensively by avoiding expensive installation and retrofit costs.

[0023] The housing 102 may further include one or more user controls generally indicated by the reference numeral 106. The user controls 106 may, in one exemplary embodiment, include numerous mechanical controls such as a temperature control 108, a fan control 1 10 and a mode control 1 12. In this exemplary embodiment, the temperature control 108 is a mechanical control that includes a dial 108a coupled to a potentiometer or pot (not shown) that operates as a voltage divider and produces an output voltage (Vout) that is a fraction of its input voltage (Vin). The output voltage (Vout) is, in turn, calibrated to correspond to a desired temperature that varies between, for example, 10 degrees Celsius (°C) and 30 °C (the reference numeral 108b identifies the temperature range controlled by the environmental control device 100).

[0024] In the present example, the dial 108a is shown at a position corresponding to a temperature of 20 °C. The dial 108a, as previously discussed, is fixedly coupled to the potentiometer carried within the housing 102. The potentiometer, in this example, produces or provides an output voltage (Vout) of 2.5V that may be utilized to drive an HVAC system to the desired temperature of 20 °C.

[0025] The housing 102 further includes the fan control 1 10 and the mode control 1 12. The fan control 1 10, in this exemplary embodiment, is a multi-position linear switch. The multi-position linear switch is configured such that each position

corresponds to a specific control signal or indication. The specific control signal or indication, in turn, corresponds to a discrete fan (low speed 1 10a, medium speed 1 10b and high speed 1 10c) speed operable within the environmental and/or HVAC system. The specific control signal or indication may be a change in voltage, the closing of a normally open circuit or the opening of a normally closed circuit. Alternatively, the specific control signal or indication may be a data value or message that provides instructions, fan speeds in revolution per minute (rpm) or other information to the environmental and/or HVAC system.

[0026] Similarly, the illustrated mode control 1 12 is a multi-position linear switch. As discussed above, each position of the switch corresponds to an operational mode (off 1 12a, fan 1 12b, cool 1 12c and heat 1 12d) of environmental and/or HVAC system that the user may manually select. For example, the user may manually shut off the environmental and/or HVAC system by selecting the off position (1 12a). In the same manner, the user may manually control whether the environmental and/or HVAC system is operating in a fan-only mode (1 12b), a cooling mode (1 12c) or a heating mode (1 12d). In another embodiment, the mode selection option may include an automatic mode. The automatic mode could allow the environmental control device 100 to store and execute heating and cooling programs to control the operation and selection of the heating and collecting elements of the system in order to maintain programmed environmental conditions. For example, the automatic mode may, based on the time of year or other factors, trigger the selection of the heating and cooling elements of the system in order to maintain a specified temperature (e.g., 21 °C) within the structure.

[0027] In other embodiments, the multi-position switches 1 10 and 1 12 may be replaced by one or more push buttons, toggles or the like and configured to produce the required control signal or indication. The specific control signal or indication may be a change in voltage, the closing of a normally open circuit or the opening of a normally closed circuit. The temperature control 108 may likewise be replaced with any known input device or switch such as a keypad and/or a pair of push buttons to incrementally increase or decrease a temperature value or variable.

[0028] FIG. 2 illustrates an alternate embodiment of the environmental control device 100. In this alternate embodiment, the controls and/or interface of an environmental control device 200 are electronic controls such as a touch sensitive input device model No. AT42QT2160 manufactured by ATMEL Corporation, San Jose, CA and an FT Series 5.7 inch digital touch screen model No. FTAS225-57AN manufactured by NKK Switches of Scottsdale, AZ and Kawasaki-shi, Japan.

[0029] The housing 102 of the alternate environmental control device 200 may include or support a touch screen 204. In this embodiment, the touch screen 204 may be utilized to present information via a graphical user interface (GUI) generated by the controller 500 (FIG. 5). The touch screen 204 may further be utilized to receive input and/or commands from the resistive or capacitive screen element of the screen. The input and/or commands may, in turn, be utilized by the controller 500 to execute the stored heating and cooling programs.

[0030] The temperature control 108, fan control 1 10 and the mode control 1 12 shown in connection with the environmental control device 100 may be replaced with touch sensitive input devices 208, 210 and 212. In this embodiment, the touch sensitive input devices 208, 210 and 212 may be utilized to control the fan speed and the operational mode of the environmental control device 200. The touch sensitive input devices 208, 210 and 212 may, alternatively or in addition to, be utilized to provide substantially continuous and fine control over a programmable range of values.

Moreover, the touch sensitive input devices 208, 210 and 212 may be reconfigurable or programmable by the GUI and controller 500 based on the input requirements of the stored heating and cooling programs. For example, the temperature control 208 may in one stored heating and cooling program executed by the controller 500 be reconfigured to provide fine control over a small range of temperatures in order to maintain a precise temperature within the structure.

[0031] In yet another embodiment, the touch sensitive input devices 208, 210 and 212 may be eliminated altogether and their functionality incorporated or accessible via the touch screen 204. In this configuration, the graphical user interface (GUI) generated by the controller 500 (FIG. 5) provides digital controls for the systems accessible via the touch sensitive input devices 208, 210 and 212.

[0032] FIG. 3 illustrates a view of a side panel 300 of the housing 102 utilized by both environmental control devices 100 and 200. The side panel 300 may include, for example, a universal serial bus (USB) port 302. The USB port 302 provides a mechanism by which data may be transferred to and from the environmental control devices 100 and 200. Similarly, the side panel 300 may support or include a secure digital (SD) card reader 304. The card reader 304 may, as with the USB port 302, be utilized to transfer data and augment the memory or storage of the environmental control devices 100 and 200. Both the USB port 302 and the card reader 304 may be utilized to store audio and/or image files for presentation and/or utilization by the environmental control devices 100 and 200. Alternate memory and storage cards and/or digital formats may be integrated into the design disclosed herein without departing from the scope of the present disclosures and embodiments.

[0033] The side panel 300 may further include an audio input 306 such as a 3.5 mm stereo-mini headphone jack. The audio input 306 may be utilized to receive an audio signal via a microphone plugged into the mini-headphone jack or an output of a recording device such as a tape or MP3 player. For example, a user may dictate a personalized message such as "Are you sure you want to change the temperature?" that may, in turn, be stored in a memory device coupled to the USB port 302 and/or the card reader 304. As will be discussed in more detail below, the personalized message may be played when a user attempts to alter a setting or value via, for example, the touch sensitive input devices 208, 210 and 212. Thus, if a user attempts to change the temperature via the temperature control 208 (108) the environmental control device 200 (100) can ask, in a familiar and/or authoritative voice, "Are you sure you want to change the temperature?". Alternative messages, sounds or files may be played or displayed for the user based on an operation state or mode of the environmental control device 100 and 200.

[0034] The side panel 300 may further include one or more buttons 308. In this exemplary embodiment, the buttons 308 include a mode or section button 308a, a first button (button 1 ) 308b and a second button (button 2) 308c. These buttons 308 are used to navigate the GUI generated by the controller 500 (FIG. 5). For example, the buttons 308 may be used to change the focus or navigate menus within the GUI.

Alternatively or in addition to navigation, the buttons 308 may be utilized to select or change variable and values utilized by the environmental control device 100 and 200 in the execution of the stored heating and cooling programs. The specific configuration and capabilities of the buttons 308 and inputs (302 and 304) may be varied to suit the specific application and needs of the heating and cooling programs executed by the controller 500 and/or interface requirements of the environmental control devices 100 and 200.

[0035] FIG. 4 illustrates an internal block diagram 400 of one embodiment of the environmental control device 100 and/or 200. In this representation, individual functions and/or modules are illustrated as separate logical entities in communication via a bus 402 which may be formed or manufactured as a part of a printed circuit board (PCB). While these functions are shown as discrete modules or logical blocks, one or more of these functions may be integrated into a single or limited number of physical

components. Alternatively, these functions and/or modules may each represent a specialized computer program or processor executable code configured to gather, process or otherwise manipulate environmental data to control or operate environmental or HVAC system in communication with the environmental control device 100 and/or 200.

[0036] The environmental control device 100 (200) may include the controller 500 (see FIG. 5) comprising a processor 404 and a program module 406. In one

embodiment or configuration, the processor 404 may be a computer processor configured to execute the heating and cooling programs stored in the program module 406. Alternatively, the controller 500 may be a single application-specific integrated circuit (ASIC) programmed and or customized to control and direct the operations of the environmental control device 100 (200). An exemplary ASIC may include an entire 32- bit processor, memory blocks including, but not limited to, read only memory (ROM), random access memory (RAM), electrically erasable programmable read-only memory (EEPROM), and Flash memory. The single ASIC could be utilized to replace the combination of the processor 404 and the program module 406 of the exemplary controller 500.

[0037] In the present embodiment, the program module 406 is shown directly connected processor 404 via a communication channel or dedicated bus 408. In another embodiment, the program module 406 may be shown to be in communication with the processor 404 via the bus 402. In this way, the processor 404 and the program module 406 may be maintained as separate and distinct devices within the

environmental control device 100 (200).

[0038] The memory module 406 is configured to store the heating and cooling programs discussed above. For example, the memory module 406 may be configured to store and utilize a desired temperature set point for use by a control algorithm or routine 502 (see FIG. 5) implemented by the processor 404. The control routine 502 may be stored in the program module 406 and include both a heating program and a cooling program configured to control the environmental or HVAC systems in

communication with the environmental control device 100 (200). Alternatively, the temperature set point along with other user accessible variables and data may be stored in a memory module 410. The memory module 410 may communicate or provide these variables to the processor 404 and control routine 502 via the bus 402. In another embodiment, the processor 404 may query or access the memory module 410 in order to load the temperature set point data into the program module 406 for use during the runtime execution of the control routine 502.

[0039] An audio module 412 communicates, in this embodiment, with the processor 404 and control routine 502 via the bus 402. The audio module 412 may include one or more speakers 412a (corresponding to the speaker 104 shown in FIG. 1 ). In another embodiment, the audio module 412 may include or control one or more buzzers, vibratory indicators or alarms configured to provide information and/or operational information to a user. The processor 404 may drive or otherwise control the audio module 412 to provide a user with an indication of an alert or other event.

[0040] The audio module 412 is configured to cooperate with the memory module 410 to broadcast or otherwise play an audio or data file stored within the memory module 410. For example, the memory module 410 may be configured to play MP3 or wav files (or any other known or subsequently developed encoded audio file) in response to one or more predetermined events associated with the control routine 502 and associated heating and cooling programs executed by the control routine 502. In particular, the control routine 502 may execute a heating program that instructs or controls the environmental or HVAC system to activate and provide additional heat throughout the structure. The control routine 502 can further direct the audio module 412 to broadcast, for example, an MP3 file of a pneumatic-like hiss in order to indicate to the user that the setpoint change was accepted and/or that the environmental or HVAC system is operating. It will be understood, that different audio or sound files may be stored in the memory module 410 and associated with different operation states and/or events defined within the control routine 502. For example, when the control routine 502 activates or otherwise runs a cooling program via the processor 404, the audio module 412 may access a sound or audio file stored in the memory module 410. The accessed sound or audio file may be, for example, a recording representing ice in a glass; a song such as a winter carol and/or a customized or personalized messages.

[0041] An I/O module 414, in this embodiment, is configured to import or record the customized or personalized messages discussed herein. For example, a user may record or transfer one or more ringtones, audio files or other information to a storage medium such as an SD card or thumb drive. The SD card or thumb drive may, in turn, be inserted into the USB port 302 or card reader 304 thereby making the information contained thereon accessible to the control routine 502. In this way, the data or information on the card or storage device may be transferred via the I/O module 414 to the memory module 410 for storage or directly to the control routine 592 for processing or execution.

[0042] Alternatively, the I/O module 414 may receive an analog signal from the audio input 306. For example, the user may plug a microphone (not shown) into the audio input 306 and record one or more personalized messages relating to the present heating or cooling operations or any other desired topic. The I/O module 414 may include an analog to digital converter (ADC) configured to convert the analog signal representing the personalized message to a digital format for storage in the memory module 410. In another embodiment, the memory module 410 may be configured to store a collection or group of files that, for example, define a holiday or seasonal theme. For example, the audio files in one collection may relate to a specific holiday such as Christmas or a specific season such as winter. In this way, the environmental control device 100 (200) may be configured to play an audio file representing a crackling fire when the heating program is executed by the control routine 502 and the processor 404. Similarly, the touch screen 204 may be configured to display a holiday themed image such as a Christmas tree or a snowy field. These themes may be loaded via the USB port 302 or the card reader 304 or they may be provided preinstalled in the memory module 410 and/or the program module 406.

[0043] The environmental control device 100 (200) further includes, in this embodiment, a temperature sensor 416. The temperature sensor 416 will typically be arranged to directly measure the air temperature substantially adjacent to the

environmental control device 100 (200). Alternatively, the temperature sensor for 16 may be configured to process temperature data, humidity information or other data detected or received from a remote device via a communication module 418.

[0044] The communication module 418 provides both wired or wireless

communication capabilities that allow for communication by the way automation components, environmental control systems or other elements operable within the structure. For example, the communication module 418 may be configured to communicate via a powerline network, an Ethernet network, a two-wire network or other known networking configuration via a communications port 418a. In another

embodiment, the communication module 418 may be configured to communicate according to Wi-Fi, Bluetooth, ZigBee or other known radio communications protocol via a wireless antenna 418b. In yet other embodiments, the communications module 418 may be configured for both wired and wireless communications for increased flexibility. [0045] Alternatively, the communications port 418a and the wireless antenna 418b may be directly and/or electrically connected to an I/O module 414. In this

configuration, the communication module 418 may convert and/or configure instructions and/or communications from the control routine 502 into the proper protocol for communications along the wired or wireless network. For example, the communication module 418 may receive instructions or data from the control routine 502 executed by the processor 404 and concatenate an appropriately formatted header and footer to allow the information to be communicated in a packetized manner according to one or more communication protocols.

[0046] In another embodiment, the communication module 418 cooperates with a Web server 420 to receive instructions or information from the control routine 502 executed by the processor 404. The communication module 418 further cooperates with the Web server 420 to provide the received information for access via the wired or wireless network communications according to the received instructions. In another embodiment, the Web server 420 simply provides an access portal for viewing and/or monitoring environmental data or information utilizing known hypertext transfer protocols (HTTP) and/or extensible markup language (XML). In yet another

embodiment, the Web server 420 provides two-way access to monitor and/or adjust the program variables utilized by the control routine 502. As previously discussed, the program variables or temperature thresholds, etc. may be stored in the memory module 410 and/or in the program module 406. As illustrated in FIG. 4, the Web server 420 and a communication module 418 may exchange information via the bus 402. Alternatively, the Web server 420 and a communication module 414 may be directly coupled via the bus 422 for faster communication.

[0047] FIG. 5 illustrates an exemplary configuration of the controller 500 including the processor 404 and the program module 406. In this exemplary embodiment, the program module 406 is shown to include or support the control routine 502. The control routine 502 may, in turn, include or comprise numerous subroutines, programs and/or modules configured for execution by the processor 404. For example, the program module 406 may include an operating system or firmware 504 that provides the basic framework upon which the control routine number 502 may operate. Alternatively, the control routine 502 may be a self-contained program or firmware that includes all the information, functions and libraries necessary for the operation and control of the environmental control device 100 (200).

[0048] In another embodiment, the control routine 502 and the included subroutines, programs and/or modules may operate as drivers to interface between, for example, the display 204, the audio module 412 and the processor 404. The control routine 502 may be configured to access the one or more driver routines 506, 508, and 510 to perform an operational process as described in detail in reference to FIGS. 6 and 7.

[0049] The routines 506, 508, and 510 may be, in one embodiment, a program routine 506, and audio processing routine 508 and a runtime routine 510. The program routine 506 may include one or more executable subroutines configured to direct the processor 404 to control the environmental or HVAC systems in communication with the environmental control device 100 (200). The program routine 506 may alternatively, or in addition to, be a storage location for executable files currently in use by the controller 500. In this way, the program routine 506 may operate as active storage for control routines while the memory module 410 may operate as longer-term storage for control routines not actively in use by the processor 404.

[0050] In the same manner, the audio processing routine 508 may include the information and/or instructions necessary to drive the audio module 412. The audio processing routine 508 may further include sound quality and/or enhancement routines designed to ensure that the stored audio files are in a satisfactory state for broadcast via the speaker 412a (104). The runtime routine 510 may include the instructions and commands necessary to operate the environmental control device 100 (200) and/or control the environmental or HVAC systems in communications therewith. For example, the runtime routine 510, with or without the operating system 504, generates the graphical user interface (GUI) for presentation on the touchscreen 204. Moreover, the runtime routine 510 may be configured to accept and interpret user commands and inputs provided via the touchscreen element of the touchscreen 204. In this way, the numerous components or elements of the control routine 502 may cooperate to control and direct the operations of the environmental control device 100 (200).

[0051] FIGS. 6 and 7 depict operation flowcharts illustrating an exemplary process 600 that may be implemented or performed by the environmental control device 100 (200) and more particularly by the control routine 502 operable in connection with the controller 500. The control routine 502 is configured to monitor environmental and temperature conditions adjacent to the environmental control device 100 (200) and provide audible feedback to a user in response to one or more detected conditions and/or changes specified by the program routine 506. The exemplary process 600 includes: a program subroutine 610 and audio subroutine 650 and a run or runtime subroutine 700.

[0052] Initially, the control routine 502 determines which of the exemplary

subroutines 610, 650 and 700 are active for execution by the processor 404 (step 602). The control routine 502 may determine the active subroutine based on input received via, for example, the touchscreen 204, the mode control 1 12 (212) and/or a stored configuration file retrieved from the memory module 410. If the control routine 502 determines that the program subroutine 610 is active, then the control routine 502 may prompt the user to select or define the day of the week for which a program is to be active. Thus, as shown in step 612, the user may provide an input or command via the touchscreen 204 that corresponds to a day of the week for the program is to be enacted. Alternatively, the user may select or highlight multiple days (e.g. the five-day workweek) simultaneously.

[0053] Once the days or period of interest has been identified and provided to the control routine 502, a time interval within that period of interest may be defined as illustrated at step 614. For example, the control routine 502 may include a program designating the five-day workweek and a time interval between, for example, 9 AM and 5 PM. It will be understood, that more than one time interval may be defined for any given day or period of interest. Thus, the control routine 502 may be configured to execute different heating and cooling programs based on the time of day and/or the day of the week.

[0054] For each of the different time intervals and days or periods of interest, the control routine 502 may store and implement a specific set point and/or temperature threshold. The set point and/or temperature threshold may be stored in the memory module 410 and provided to the program routine 506 when activated or called by the runtime routine 510 and the processor 404. The temperature thresholds established or set by the control routine 502 (step 616) may be user-defined thresholds or may be predefined thresholds configured to provide, for example, maximum energy efficiency, maximum comfort within the structure, or any other desirable condition.

[0055] The control routine 502 may further determine whether the audio file to be associated with one or more of the temperature thresholds is (1 ) a new audio file, or is (2) an existing audio file stored in, for example, the memory module 410. If the audio file is determined by the control routine 502 be a new audio file, then the program subroutine 610 may, as indicated at step 618, proceed to the audio subroutine 650. Alternatively, if the audio file is determined to be an existing file stored in the memory 410 or accessible via, for example, the USB port 302 or the card reader 304, then the control routine 502 associates the existing audio file with the specific temperature threshold defined at step 616.

[0056] Upon completion of the above-discussed definition and programming steps, the control routine 502 may determine that the program subroutine 610 is finished and return to the beginning of the process 600 (step 620) for re-execution.

[0057] If the control routine 502 determines that the audio subroutine 650 is active, or if a new audio file is desired for use as discussed in connection with step 618, the control routine 502 detects or queries (652) which of three exemplary audio sources: (1 ) a recording source; (2) a memory source, or (3) an upload source is active and/or available for use. For example, the control routine 502 may determine that the audio source is a microphone coupled to the audio input 306 (step 654) such that when a user speaks into the microphone, the I/O module 414 utilizes the integral ADC to convert the analog signal representing the personalized message to a digital format for storage in the memory module 410. Alternatively, the control routine 502 may determine that the audio source is an audio file stored in the memory module 410 and communicate with the processor 404 (step 656). The control routine 502 may further determine that the audio source is file available for upload from a remote data storage location accessible via the wired or wireless network in communication with the communication module 418 (step 658). In this way, the control routine 502 may be configured to retrieve audio files from one or more predefined input, memory or storage locations. Regardless of the individual audio source selected by the control routine 502, the identified audio file may, in turn, be transferred, moved or otherwise uploaded to a known storage location within for example, the memory module 410 for access by the exemplary process 600.

[0058] Once a desired audio file has been identified and stored in a retrievable location, the control routine 502 may associate the file with the given event or operation state identified within the exemplary process 600. For example, and as previously discussed, the state change or activation of a heating system or furnace may cause a first audio file to be played and presented via the speaker 412a (660). In one

embodiment, the first audio file may be a pneumatic sound reminiscent of a pneumatic thermostat, or the crackling sound of a wood fire. Similarly, the state change or activation of the air-conditioning system may cause a second audio file, which will often be different than the first audio file, to be played and presented via the speaker 412a. In one embodiment, the second audio file may be the sound of an icemaker and falling ice similar to the sounds from an automatic ice machine in a refrigerator, or a song clip such as a holiday or Christmas song associated with winter and cold weather. It will be understood, that the individual events and/or operation states may be defined by the user via the GUI provided by the touchscreen 204 may be predefined events stored within the operating system or firmware 504.

[0059] The identified and associated audio file may, in one embodiment, be presented by the control routine 502 such that the user may edit one or more attributes, audio characteristics or other properties of the files and the data contained by the file (662). For example, the control routine 502 may allow the volume, length, speed and other properties of the audio file to be accessed and edited by the user via the touchscreen 204, a webpage provided by the Web server 420 and/or via a remote application (or app) running on a handheld device or other computer. In another embodiment, the control routine 502 may cooperate with a remote application or app to allow a user to access the exemplary process 600 via a remote interface such as a smartphone web browser or a dedicated remote environmental control interface program.

[0060] Upon completion of the audio selection, association and editing functions, the control routine 502 may determine that the audio subroutine 650 is finished and return to the process initial point or beginning of the process 600 (662).

[0061] At the beginning of the process 600, the control routine 502 may determine that the runtime or run subroutine 700 (see FIG. 7) is active. The control routine 502 may then determine in which run mode to operate the environmental control device 100 (200). In order to make this determination, the control routine 502 may, as indicated at step 702, prompt the user via the GUI and touchscreen 204 to make a selection, or access a configuration file that includes predetermined instructions or selections regarding the operation of environmental control device 100 (200). In this way, the control routine 502 can be configured to provide or otherwise limit access to certain functionality or run mode options which, in turn, allows for different available feature sets to be deployed in each environmental control device 100 (200). This functionality allows for model and feature differentiation among environmental control devices 100 (200) to be implemented.

[0062] Similarly, the control routine 502 may request a user input via the touchscreen 204 or may read a configuration file providing the required input and instructions in order to determine which heating or cooling program to execute (704). Upon determination of a specific heating or cooling program to execute, the control routine 502 reads the desired temperature input provided by the temperature control 108, 208 and stores this value in the program module 406 and/or the memory module 410 for execution or use by the program routine 506, the audio processing routine 508 and/or the runtime routine 510 (706). In a similar manner, the control routine 502 queries the temperature sensor 416 and stores this value in the program module 406 and/or the memory module 410 for later use during the execution of one or more programs (708). Based on the determined set points in sensor values, the control routine 502 can determine a temperature control output which can be used to drive a heating system, and air-conditioning system, or any other environmental control mechanism to the desired set point value stored in memory (712). [0063] At this point, the control routine 502 may prompt the user to perform an audio test routine as indicated at step 712. If the user opts to forgo the audio test routine, an audio file associated with the program identified at step 704 may be played via the speaker 412a and the audio module 412 (714). However, should the audio test routine be selected the control routine 502 plays the selected audio file via the speaker 412a and the audio module 412 (716). Upon completion of play, the properties selected audio file can be confirm (717). Should the user wish to alter the selected audio file, the control routine 502 provides an opportunity to edit the options and properties associated therewith (718). Upon completion of the editing process, the selected and edited audio file is replayed and the user provided another opportunity to edit the audio file (see 716).

[0064] If the user does not elect to edit the options and properties, or once the selected audio file has been appropriately played and/or played and edited, the control routine 502 may read the control signal or indication associated with the fan control 1 10 (720) and store this value in the program module 406 and/or the memory module 410 for execution or use by the routines 506, 508 and 510 (the audio processing routine 508 and/or the runtime routine 510 (722). When the environmental control device 100 (200) is configured and ready for operation, the control routine 502 may initiate operation of, for example, an automatic heating and cooling program established to provide year- round control of a structure's heating and cooling systems. Alternatively, the control routine 502 may initiate operation of a manually configured program based on user inputs, preselected subroutines or any combination of environmental control

programming elements (724). Once the program selected has been run to completion, or has run through a predetermined number of cycles, the control routine 502 may determine that the run subroutine 700 is finished or paused and return to the initial point or beginning of the process 600 (662) to determine if a change of state has occurred before resuming execution of the run subroutine 700.

[0065] FIGS. 8 to 13 depict operation flowcharts illustrating an alternate control process 800 that may be implemented or performed by the environmental control device 100 (200) and more particularly by the control routine 502 operable in connection with the controller 500. In this exemplary embodiment, the control routine 502 may be configured to access the one or more control and/or driver routines 802, 804, 806, 812 and 814 to perform an operational process as described in detail in reference to FIGS. 8 to 13.

[0066] The routines 802, 804, 806, 812 and 814 may be, in one embodiment, a manage audio routine 802, a linking audio routine 804, a runtime or run routine 806, a set time routine 812 and a set schedule routine 814. The manage audio routine 802 will include one or more executable subroutines or processes to record, organize and display audio files stored or accessible in, for example, the memory module 410. The linking audio routine 804 includes subroutines and controls for associating the audio files with one or more events or actions. The run routine 806 includes one or more executable subroutines configured to direct the processor 404 to control the

environmental or HVAC systems in communication with the environmental control device 100 (200) and to play the linked audio file as appropriate. The set time routine 812 includes one or more executable subroutines configured to set and program the device clock. The set schedule routine 814 includes one or more executable subroutines configured to set and program the schedules implemented by the control routine 502.

[0067] The alternate control process 800 discussed and disclosed in the following example initializes and starts (808) when a power source is applied to the power inputs of environmental control device 100 (200). The control process 800 reads a mechanical position, an electrical potential or a data value associated with the mode button 308a. These mechanical positions, electrical potentials and data values may, in turn be associated with the manage audio routine 802, the linking audio routine 804, the run routine 806, the set time routine 812 and the set schedule routine 814 (810).

[0068] For example, if the control process 800 determines that the value of the mode button 308 corresponds with the manage audio routine 802, the control routine 502 may activate the routine and present the appropriate information via a GUI displayed on the touch screen 204. The manage audio routine 802 disclosed herein makes specific reference to inputs received via the buttons 308. While these buttons 308 provide an inexpensive and reliable means of interacting with the control routine 502, the touch screen 204 and the GUI may provide the same interactivity with additional flexibility.

[0069] The now-activated manage audio routine 802 reads the mechanical position, an electrical potential or a data value (hereinafter simply referred to the "value") associated with the first button 308b (900). The value may, in this example, correspond with a save file function (902), a record function (904) and a delete file function (906).

[0070] If the value associated with the first button 308b corresponds with the save file function (902), then the manage audio routine 802 presents a list of the available audio files. For example, the manage audio routine 802 may scan the memory module 410, program module 406 or any other accessible storage location and build a list of audio files stored thereon. The audio files may be identified by their size, location, file attributes, and/or file format (e.g., .mp3, .aiff, .wav, .m4a, .wma and the like). By repeatedly indexing or selecting the second button 308c (908), the focus or cursor associated with the manage audio routine 802 may be cycled through the list of audio files. As the focus of the GUI remains on one of the listed audio files, the manage audio routine 802 and the control routine 502 may access and display the selected audio file via the display 204 (910).

[0071] At this point, the manage audio routine 802 reads the value (912) associated with the mode button 308a to determine if the value indicates that the file should be saved or if the value indicates that the file should be unselected (914). At this point, the manage audio routine can end the save file function (902) and return to the control process 800.

[0072] If the value associated with the first button 308b corresponds with the record function (904), then the manage audio routine 802 activates and displays recording information via the display 204. When the record function (904) reads or detects a change in the value (916) associated with the second button 308c, audio signals received via the audio input 306 can be captured and stored (918) in the memory 410.

[0073] Capture of the audio signals received via the audio input 306 continues until the record function (904) reads or detects a change in the value (920) associated with the second button 308c. The second or subsequent change in the value operates to toggle and stop the audio recording functionality. In another embodiment, an additional toggle or input received via the second button 308c may operate to pause recording without ending or stopping the recording functionality. Once the recording has been ended, the received and converted audio file is stored (922) in, for example, the memory module 410. At this point, the manage audio routine can end the record function (904) and return to the control process 800.

[0074] If the value associated with the first button 308b corresponds with the delete audio function (906), then the manage audio routine 802 displays all of the audio files stored in the memory module 410 or other accessible storage location via the display 204. By repeatedly indexing or selecting the second button 308c, the focus or cursor associated with the manage audio routine 802 may be cycled through the list of all the displayed audio files (924). As the focus of the GUI remains on one of the listed audio files, the manage audio routine 802 and the control routine 502 may access and display the chosen or selected audio file via the display 204 (926).

[0075] The manage audio routine 802, at this point, reads the value associated with the first button 308b (928) to determine if the value has been changed or toggled (928). Upon detection of the change in the value associated with the first button 308b, the chosen or selected audio file is erased or unindexed. At this point, the manage audio routine can end the delete function (906) and return to the control process 800.

[0076] The control process 800 may, in another situation, determine that the value of the mode button 308 corresponds with the linking audio routine 804, the control routine 502 may activate the routine and present the appropriate information via a GUI displayed via the touch screen 204. The linking audio routine 804 initiates by presenting a list of triggering or activating events and reads the value associated with the first button 308b (1000). The location or information stored in the value corresponds with a selected triggering or activating event. As previously discussed, by repeatedly indexing or selecting the first button 308b, the focus or cursor associated with the linking audio routine 804 may be cycled through the list predefined events or activities associate with the HVAC system. As the focus of the GUI remains on one of the listed events, the linking audio routine 804 and the control routine 502 may access and display the details of selected activating events via the display 204 (1002). Example of activating events include, but are not limited to, a setpoint change, a setpoint change in excess of 5°F, a setpoint change in excess of 10°F, a dirty filter, a change of the mode control 1 12, 212, a program change and/or a schedule change.

[0077] The linking audio routine 804 then reads the value associated with the second button 308c (1004) to determine if the value indicates that the displayed activating event has been selected. At this point, the linking audio routine 804 displays a list or selection of available audio files stored in, for example, the memory module 410 (1006). Once one of the displayed audio files has been selected by the repeated inputs or toggles of the second button 308c, the selected audio file can be displayed or otherwise

highlighted via the display 204.

[0078] The linking audio routine 804, at this point, reads the value associated with the mode button 308a (1008) to determine if the value indicates that the audio file should be linked to a specified activating event or if the value indicates that the audio file should be unlinked (1010). At this point, the linking audio routine 804 can end the save file function (902) and return to the control process 800.

[0079] The control process 800 may, in another situation, determine that the value of the mode button 308 corresponds with the run routine 806. Upon reaching this determination, the control routine 502 may activate or begin the run routine 806 and present the appropriate information via a GUI displayed via the touch screen 204. The run routine 806 initiates by reading or accessing the current time from a system clock (see set time routine 812 as illustrated in FIG. 12) portion of the processor 404.

Alternatively, the run routine 806 may access the communication module 418 and query an internet time server such as one provided at the National Institute of Standards and Technology website (http://tf.nist.gov/tf-cgi/servers.cgi) to ascertain the precise time (1 100). Once the run routine 806 has determined the correct time in which the environmental control devices 100 and 200 are operating; the time can be compared to one or more of the schedules stored in, for example, the memory module 410 or the program module 406 (1 102).

[0080] If the current time is determined to equal the schedule time (1 104), then the run routine 806 implements the action or event specified by the stored schedule. For example, if the current time is 9am GMT and a stored schedule calls for a change in the temperature set point to occur at 9am GMT, the run routine can instruct or control the HVAC system to implement the change (1 106). Simultaneously, or in addition to, the change in temperature set point, the run routine 806 may play one or more audio files via the audio module 412 and the speaker 412a. For example, the if the change in the temperature set point results in a temperature increase, the audio module 412 may play the audio file representing a hiss from a pneumatic thermostat (1 108).

[0081] If the current time is determined to not equal the schedule time (1 104) then the run routine 806 scans the list or collection of activating events (1 1 10) stored in the memory module 410. If the run routine 806 determines that the conditions or timing correspond to one or more of activating events (1 1 12), then the audio file associated or linked to the activating event is played via the audio module 412 and the speaker 412a. If, however, the run routine 806 determines that the conditions corresponding to one or more activating events have not occurred, or are not occurring, then the run routine 806 ends the returns control to the control process 800. Similarly, if the run routine 806 determines that the conditions corresponding to one or more activating events have occurred, or are currently occurring, then the run routine 806 plays the associated audio file (1 1 14) and then returns control to the control process 800.

[0082] The control process 800 may alternatively determine that the value of the mode button 308a corresponds to the set time routine 812. In this instance, the control process 800 activates the routine and presents the appropriate information via the touch screen 204. The set time routine 812 initiates and displays the current time in an hour- minute and month-day format (1200) on the display or touch screen 204. The set time routine 812 reads and stores (1202) the value of the first button 308b.

[0083] If the first button 308b has been pressed once (1204), corresponding to a value of one, then the current hour displayed is highlighted (1206). The highlighting serves to indicate that the hour portion of the current time in the hour-minute and month-day format is the focus of the routine and is available for manipulation. While the hour portion is highlighted, the set time routine 812 reads and stores (1208) the value of the second button 308c. As the value corresponding to the second button 308c increases, the hour portion cycles and increments (1210). This portion of the set time routine 812 remains active and continues to poll the value associated with second button 208c until a delay timer expires (1212). The delay timer may be an input or change of value within, for example, a twelve (12) or fifteen (15) second window.

Alternatively, the value of the delay timer may be a user adjustable variable. If an alternate input such as a change in the value associated with the first button 308b is received before the expiration of the delay timer, then the set time routine 812 loops back to read and store (1202) the value of the first button 308b.

[0084] This process cyclically repeats within the set time routine 812 for each possible value associated with the first button 308b. For example, if the first button 308b has been pressed twice (1214), corresponding to a value of two, then the current minute displayed is highlighted (1216). Similarly, if the first button 308b has been pressed three times (1218), corresponding to a value of three, then the current month displayed is highlighted (1220); and if the first button 308b has been pressed four times (1222), corresponding to a value of four, then the current day displayed is highlighted (1224). In this way, the individual data fields associated with the current time in an hour-minute and month-day format can be iteratively adjusted. Upon completion of the set time routine 812, control can be returned or passed back to the control process 800.

[0085] The control process 800 may further determine that the value of the mode button 308a corresponds to the set schedule routine 814. In this instance, the control process 800 activates the routine and presents the appropriate information via the touch screen 204. The set schedule routine 814 initiates and displays the currently active schedule (1300) on the display or touch screen 204. In one or more embodiments, the each of the schedules stored in memory may be listed or displayed on the touch screen 204 in response to a change in value associated with the mode button 308a. Thus, when the set schedule routine 814 is active, the user may cycle through schedule to be displayed, edited or created by pressing the mode button 208a (1302). The set time routine 812 reads and stores (1304) the value of the first button 308b.

[0086] If the first button 308b has been pressed once (1306), corresponding to a value of one, then the start hour associated with the selected or identified schedule is displayed (1308). The selected information is now the focus of the set schedule routine 814 and is available for manipulation by the user. While the hour portion is highlighted, the set schedule routine 814 reads and stores (1310) the value of the second button 308c. As the value corresponding to the second button 308c increases, the start hour time cycles and increments (1312). This portion of the set schedule routine 814 remains active and continues to poll the value associated with second button 208c until a delay timer expires (1314). Expiration of the delay time may occur after twelve (12) seconds or any other desired period. If an alternate input such as a change in the value associated with the first button 308b is received before the expiration of the delay timer, then the set schedule routine 812 loops back to read and store (1304) the value of the first button 308b.

[0087] As with the process described in connection with FIG. 12, this process cyclically repeats within the set schedule routine 814 for each possible value associated with the first button 308b. For example, if the first button 308b has been pressed twice (1316), corresponding to a value of two, then the schedule start minute is displayed (1318). Similarly, if the first button 308b has been pressed three times (1320), corresponding to a value of three, then the schedule temperature set point is displayed (1322); and if the first button 308b has been pressed four times (1324), corresponding to a value of four, then the next stored schedule may be displayed and the above process for displayed and incrementing the start hour, start minute and temperature setpoint may be repeated (1326). In this way, the individual data fields associated with one or more stored schedules can be iteratively adjusted. Upon completion of the set schedule routine 814, control can be returned or passed back to the control process 800.

[0088] In each of the above-discussed cases, when the manage audio routine 802, the linking audio routine 804, the run routine 806, the set time routine 812 and the set schedule routine 814 complete, the control process 800 continues to execute and query the value of the read button 308a to determine if a change has been implemented.

[0089] It should be understood that various changes and modifications to the presently preferred embodiments described herein will be apparent to those skilled in the art. Such changes and modifications can be made without departing from the spirit and scope of the present invention and without diminishing its intended advantages. It is therefore intended that such changes and modifications be covered by the appended claims.