fig2 shows a preferred embodiment of the present invention . signal converter 50 is connected to spa controller 53 . this allows commands and data to be sent to spa controller 50 from remote computer 200 and commands and data from spa controller 53 to be transferred to remote computer 200 . remote computer 200 may be connected to signal converter 50 via a wire or through wireless technology , ( i . e ., rf signal , ir signal or laser communication ). signal converter 50 converts the incoming signal to a protocol that is understood by the cpu of spa controller 53 . in a preferred embodiment , the signal is converted to 12 c . 12 c is short for inter - ic , a type of bus designed in the early 1980 &# 39 ; s , which is used to connect integrated circuits ( ics ). 12 c is a multi - master bus , which means that multiple chips can be connected to the same bus and each one can act as a master by initiating a data transfer . as shown in fig3 b , signal converter 50 can be used to connect user computer 51 or portable user computer 52 to spa controller 53 so that spa components can be remotely monitored and controlled . in a preferred embodiment , user computer 52 is a laptop computer . in another preferred embodiment , user computer 52 is a personal digital assistant ( pda ). pda &# 39 ; s are portable computers that are usually smaller in size and less expensive than a normal laptop computer . a preferred pda is a palm pilot . in a preferred embodiment , signal converter 50 is sold as a separate item that can be inserted as needed into spa controller 53 , as shown in fig3 a . the basic function of signal converter 50 is to translate and route all signals from user computer 51 or portable user computer 52 to a signal that is usable with spa controller 53 . in a preferred embodiment , an rs485 signal is transmitted from user computer 51 and an infrared ( ir ) signal is transmitted from portable user computer 52 . signal converter 50 is capable of converting both signals to 12 c for utilization with spa controller 53 . likewise , in the preferred embodiment , 12 c signals coming from spa controller 53 can be converted by signal converter 50 to an rs - 485 signal that can be used by user computer 51 or an ir signal that can be used by portable user computer 52 . as shown in fig4 , signal converter 50 receives an ir signal at ir transceiver 60 . modulator 62 then demodulates the signal . the digital signal leaving modulator 62 is then routed to buffer / multiplexer 64 , then to cpu 70 , and then to spa controller 53 on the 12 c link . likewise , in transmission a 12 c signal is received at cpu 70 from spa controller 53 . the digital signal is modulated at modulator 62 . the modulated signal is then transmitted as ir light by ir transceiver 60 . the rs485 interface is used to serially transmit or receive signals through wire connectivity . in a preferred embodiment , this interface is used with a personal computer , such as user computer 51 as shown in fig3 b . since the rs485 signal from user computer 51 travels via wire , user computer 51 can be located much further away from signal converter 50 than can portable computer 52 , which utilizes an ir interface . an rs485 differential serial signal is received by rs - 485 transceiver 72 and converted to digital . the signal is then routed to buffer / multiplexer 74 , then to cpu 70 . in transmission , a digital signal leaves cpu 70 and is converted to a differential rs - 485 serial signal by rs - 485 transceiver 72 . this signal can then be used over long distances depending on the quality of wire connecting to user computer 51 . since the preferred cpu 70 has only one uart 76 ( uart 76 is a serial transmitter / receiver ), the received signals coming into uart 76 must be multiplexed to avoid data “ collisions ” from each source . this is achieved by buffer / multiplexers 64 and 74 , which are under the control of cpu 70 . the cpu decides which “ channel ” it wants to listen to by selecting the proper lines 74 a or 64 a off the buffers 74 and 64 . as stated above , cpu 70 controls what input source it listens to ( rs - 485 or ir ) and it transmits the received data to spa controller 53 as a 12 c signal over the 12 c link . in a preferred embodiment cpu 70 is an 8 bits cmos flash microcontroller , part no . pic16f876 manufactured by microchip technology , inc . with offices in chandler , ariz . to decide which source to listen to ( i . e ., rs - 485 or ir ), cpu 70 disables both buffers 74 and 64 . it then listens to serial lines 78 and 80 on ports r 84 and r 85 . as soon as a signal is detected on one or the other of serial lines 78 or 80 , cpu 70 transmits a corresponding signal 82 or 84 to enable either buffer 74 or buffer 64 , respectively . once the appropriate buffer has been enabled , the signal is then allowed to flow to uart 76 . once the signal is received at cpu 70 , cpu 70 translates it to 12 c and sends it over the 12 c link in spa controller 53 . whatever command that was coded into the original message can then be carried out by spa controller 53 . for example , a command might be to start a water pump or increase the temperature of the spa in a similar fashion , cpu 70 can receive serial data from spa controller 53 and transmit it over the serial ir or rs485 links . in this case , serial data is routed to both ir transceiver 60 and rs - 485 transceiver 72 , but only one will actually transmit , depending on the states of the rs - 485 enabling line 86 and ir enabling line 88 . rs485 enabling line 86 and ir enabling line 88 allow the user to choose whether data is transmitted over ir or rs - 485 . as shown in fig2 , in a preferred embodiment remote computer 200 is capable of being programmed to meet the needs of the entity that is operating remote computer 200 . in the case of the present invention , some of the different entities that could potentially operate remote computer 200 are the spa owner , the dealer that sold the spa , a service technician servicing the spa , the spa manufacturer , and the manufacturer of the spa controller for the spa . a preferred method by which a spa owner can utilize the present invention is illustrated by fig5 a . the spa owner can connect his personal home computer ( first owner computer 101 ) to signal converter 50 via an rs485 wire connection . he can then control the spa remotely from first owner computer 101 . in the preferred embodiment , first owner computer 101 is programmed to include an owner page ( which appears on the screen of first owner computer 101 ) that enables the spa owner to interpret data transmitted to it from spa controller 53 via the rs - 485 line and transmit commands back to spa controller 53 . a preferred owner page is shown in fig6 . for example , some of the commands illustrated by fig2 show that the owner has indicated that he wants water pump 1 p ( fig1 ) to be “ on ” at high speed . he wants water pump 2 to be “ off ”. he wants air blower 3 “ on ” at medium speed . he wants the spa temperature to be 102 ° f . he wants water pumps and air blower 3 to run for slightly over 40 minutes before they automatically turn off . data indications displayed on the owner page indicate that the current spa tub temperature is 98 ° f . heating element 5 is off . the error on display is that the pressure switch is open . there is a low danger of plumbing freeze . the information is updated by clicking on update info button 110 . the owner page shown in fig6 is just one preferred embodiment . those of ordinary skill in the art will recognize that it is possible to reprogram the owner page to transmit a variety of different commands as well as monitor a variety of different spa conditions . fig5 a shows a preferred embodiment in which the spa owner can log on to the internet via first owner computer 101 . he can then travel to another location and log onto the internet via second owner computer 102 . as with first owner computer 101 , second owner computer 102 is also programmed to receive spa data and transmit commands for spa controller 53 . as an example of a practical application of this embodiment can be found by the scenario in which the spa owner is heading home from his office that is approximately a 30 minute drive away . before he leaves the office , the spa owner can log onto the internet and go to the web site stored at server computer 201 . he will then see an owner page similar to the one shown in fig6 . he will then upload his commands to server computer 201 to start the water pumps 1 p and 2 p , air blower 3 and heat the spa to 102 ° f . his commands will then be downloaded from server computer 201 via the internet to first owner computer 101 . then , they will travel from first owner computer 101 to signal converter 50 via the rs485 line . inside signal converter 50 , the commands will be converted to a 12 c protocol for spa controller 53 usage . a spa dealer is the entity that sells the spa to the spa owner . utilizing the present invention , the spa dealer can continue to monitor the condition of the spa and provide technical support for the spa after the spa is sold to the spa owner . a preferred embodiment is shown in fig7 . in fig7 , a first dealer has sold a spa to an owner who has owner computer c 1 and has sold a spa to an owner who has owner computer c 2 . a second dealer has sold a spa to an owner who has owner computer c 3 . after the spa owners have purchased their spas , they configure their computers so that they can remotely monitor and control their spas , as explained above under the heading “ spa owner ”. in the preferred embodiment , owner computers c 1 - c 3 are programmed to transmit data via the internet . first dealer computer d 1 is programmed to receive data from the spas that the first dealer sold . therefore , owner computer c 1 and owner computer c 2 will transmit spa data that will be monitored by first dealer computer d 1 . likewise owner computer c 3 will transmit spa data that will be monitored by second dealer computer d 2 . in a preferred embodiment , owner computers c 1 - c 3 are always logged onto the internet , via either a cable modem or a dsl connection . automatically per a given time period ( for example , once every hour ) owner computers c 1 - c 3 are programmed to retrieve from their spa controllers data reporting the status of the spa . then , this data is automatically transmitted via the internet to the dealer that sold the spa owner his spa . in this fashion , the dealer is able to continuously monitor the condition of the spa . a preferred dealer screen is shown in fig8 . in block 150 , the dealer can monitor the number of times an error has occurred . in block 151 , the dealer can monitor when an error has occurred . the dealer can reset the error log by clicking on button 156 . in block 152 , the dealer can monitor the current software installed in spa controller 53 . if there is a software update , the dealer can download this info by clicking on button 153 . the dealer can also monitor the number of times the spa has been reset in box 154 and the number of hours since the spa &# 39 ; s last service in box 155 . by monitoring the condition of the spa and the number of times an error may have occurred , the dealer can alert the owner to a problem even before the owner knows about it . or , if the owner contacts the dealer with a problem , the dealer has access to valuable data that he could use to troubleshoot the problem . utilizing this embodiment , the dealer may be able to tell the owner how to correct a problem without having to send a service technician to the owner &# 39 ; s location . the dealer page shown in fig3 is just one embodiment . those of ordinary skill in the art will recognize that it is possible to reprogram the dealer page to transmit a variety of different commands as well as monitor a variety of different spa conditions . in another preferred embodiment , a service technician can utilize the present invention to more effectively troubleshoot and repair a spa . this preferred embodiment is described by reference to fig3 a and 3b . in this preferred embodiment , the spa owner has purchased a spa with spa controller 53 ; however , he opted to not purchase signal converter 50 . to help troubleshoot and repair the spa , a service technician can bring with him portable user computer 52 with ir transceiver 52 a and signal converter 50 . as shown in fig3 a , the service technician first inserts signal converter 50 into spa controller 53 . in a preferred embodiment , interface signal converter 50 fits snugly into an easily accessible cavity in spa controller 53 . then , utilizing ir transceiver 52 a with portable user computer 52 , the service technician is able to download from spa controller 53 to portable user computer 52 data that includes a record of errors that may have occurred during the operational life of the spa , as shown in fig3 b . portable user computer 52 is programmed to display this data in a format useful to the service technician . a preferred display is similar to the dealer display discussed above and shown in fig8 . by analysis of this data , the service technician will be able to more effectively determine the required solution to repair the spa . in another preferred embodiment of the present invention , the spa manufacturer can utilize the present invention to configure the spa controller and the spa &# 39 ; s components prior to the spa being transferred to the dealer . the user may later change some of these parameters , if he so desires . as shown in fig9 , spa manufacturer computer 160 is connected via the rs - 485 line to signal converter 50 , which is connected to spa controller 53 . in the preferred embodiment , the spa components are installed and connected to spa controller 53 . spa manufacturer component 160 is programmed to be able to transmit commands to and receive data from spa controller 53 . a preferred spa manufacturer screen is shown in fig1 . for example , as shown in fig1 , the spa manufacturer has configured water pump 1 p to operate at “ 2 - speed ” and has set it to operate at 6 amps for low speed and 11 amps for high speed . the spa manufacturer has configured air blower 3 ( fig1 ) to operate at “ 3 - speed ” and at 6 amps . the heater element is set at 23 amps . the spa manufacturer page shown in fig1 is just one embodiment . those of ordinary skill in the art will recognize that it is possible to reprogram the spa manufacturer page to transmit a variety of different commands as well as monitor a variety of different spa conditions . the spa controller is a very important part of the spa . its cpu is used to control the other components of the spa , such as the water pumps , the air blower and the heater . for safety considerations , the manufacturer of the spa controller may want to set parameters in spa controller 53 that cannot be modified by the other entities interfacing with the spa ( i . e ., spa manufacturer , spa dealer , service technician and spa owner ). fig1 shows an embodiment wherein manufacturer of spa controller computer 165 is connected utilizing the present invention to spa controller 53 . fig1 shows a preferred spa controller manufacturer page . here the spa controller manufacturer has set the minimum temperature inside the spa tub at 59 ° f . any temperature lower than this could result in damage to spa &# 39 ; s plumbing as a result of freezing because a temperature of lower than 59 ° f . at temperature sensor 12 ( fig2 ) is a strong indication that the water in the spa &# 39 ; s plumbing is near the freezing point . he has set the maximum temperature inside the spa at 104 ° f . in accordance with industry regulations . also , he has set the regulation temperature threshold at 112 ° f . also , the manufacturer of the spa controller has indicated which keys on the keypad and ir remote are to control each spa component . for example , key # 1 is set to control water pump 1 p . the manufacturer of the spa controller page shown in fig1 is just one embodiment . those of ordinary skill in the art will recognize that it is possible to reprogram the manufacturer of the spa controller page to transmit a variety of different commands as well as monitor a variety of different spa conditions . although the above - preferred embodiments have been described with specificity , persons skilled in this art will recognize that many changes to the specific embodiments disclosed above could be made without departing from the spirit of the invention . although the above preferred embodiments are discussed utilizing an rs - 485 interface signal converter for communicating between spa controller 53 and remote computers , one of ordinary skill in the art would recognize that other electronic data interface signal converters could be used ( such a , rs - 232 , rs - 422 and rs - 423 , x10 , echelon , cebus , bluetooth and other protocol rf ). also , although the above embodiments discussed signal converter 50 used in conjunction with ir signals , it could be configured to work with other means of wireless communication signals , such as rf and laser . also , one of ordinary skill in the art would recognize that it would be possible to configure signal converter 50 to convert three or more signals . for example , signal converter 50 could be configured to convert rs - 485 , ir and rf to 12 c for utilization by spa controller 53 . also , although the above preferred embodiments showed signal converter 50 as a separate attachment to spa controller 53 , it would be possible to sell spa controller 53 with signal converter 50 rigidly attached to it as one unit . although preferred embodiments discussed utilizing the present invention in conjunction with the internet , it would also be possible to utilize the present invention in conjunction with another computer network , such as a lan or an intranet . although the above embodiments were discussed showing spa controller 53 utilizing a 12 c link , the present invention would work with other types of spa controllers configured to operate utilizing links other than 12 c links . some other possible links are spi ( serial peripheral interface ) and uart or parallel interface links . in these embodiments the signal converter would need to be able to transfer communication signals from the remote computer to a signal utilized by the spa controller &# 39 ; s link and the signals utilized by the spa controller &# 39 ; s link to communication signals directed towards the remote computer . also , although fig5 a shows second owner computer 102 connected to a first owner compute 101 via the internet , it would also be possible to configure interface signal converter 50 to be able to receive communication signals directly from remote owner computer 103 via the internet , as shown in fig5 b . one of ordinary skill in the art would recognize that it is possible to configure the spa so that dedicated remote spa computer 300 ( fig1 ) is located adjacent to the spa . in a preferred embodiment , spa computer 300 would be located underneath the spa skirt . in the embodiment shown in fig1 , spa computer 300 is connected to owner computer 301 via a lan . owner computer 301 is then connected to the internet . fig1 shows another preferred embodiment in which spa computer 300 is connected directly to the internet . in addition to sending commands and receiving data from spa controller 53 , spa computer 300 could be used to log onto the internet , send email , and supply audio and video functionality . also one of ordinary skill in the art would recognize that there are other types of portable remote computers that could be used with the present invention other than laptop computers and pda &# 39 ; s . for example , a cellular phone could be used as the remote computer to send commands and receive data from spa controller 53 . therefore , the attached claims and their legal equivalents should determine the scope of the invention .
an apparatus adapted for implementing a user interface module for monitoring or programming a spa is provided . the apparatus includes a communication port adapted for establishing a communication link with the spa controller for receiving a signal conveying status information related to the spa from the spa controller . the apparatus also includes a display module and a processing unit operative for displaying on the display module a visual representation of the status information . a first control is also displayed for enabling user to modify operational settings of the spa . a second control is also displayed for allowing a user to cause the visual representation of the status information to be updated at least in part on the basis of the signal received at said communication port . alternatively , the processing unit is adapted for generating a spa programming signal conveying spa operational setting and for transmitting the spa programming signal to the spa controller via the communication port .