The present invention relates generally to the field of remote control and monitoring systems for bathing unit systems (such as swimming pools, spas, hot tubs, baths and the like), and more specifically to systems, methods, computer program products and device for facilitating centralized control and monitoring of remote network-enabled bathing unit systems that may be owned and operated by different entities or customers.
Bathing units, such as spas, typically include various bathing unit components that are used in operating the bathing system. The bathing unit components generally include pumps that circulate water through a piping system, pumps for activating water jets, at least one heating module to heat the water, a filter system, an air blower, an ozone generator, a lighting system, and a control system that activate and manage the various operational settings of the bathing unit components. Other types of bathing units that have similar components include, for instance, whirlpools, hot tubs, bathtubs, therapeutic baths, spas and swimming pools. Most modern bathing systems include a user control panel implementing a user control interface that is in communication with the bathing unit control system. The user control panel is typically positioned on or in proximity to the bathing system so that a user of the bathing system may interact with it in order to adjust and control the activation and settings of the various bathing unit components.
Increasingly, it is becoming desirable to provide mechanisms to enable users to remotely monitor and control the operations of bathing units. For example, it is desirable to allow an owner of a spa system, when leaving his or her office after a long day at work, to be able to control his spa system so that when he/she arrives at home, the spa water is at a desired temperature level. In another example, an owner of a spa system may leave his/her residence and inadvertently forget to perform some task in connection with his spa, for example turn off the jets, turn off the lights and/or initiate a filtering function amongst others. The owner may also not remember whether the water temperature, jets, lights or other components were set to a desired level or desired mode of operation before leaving his residence. Without the ability to remotely monitor and control the operations of the spa, the user must wait until he/she returns to his residence in order to verify the status of operation of the spa system and/or perform the required task. This is clearly inconvenient for the owner. It is also desirable to allow an owner of a spa to receive notifications in the event of a malfunctioning of the spa so that the owner may take some steps to prevent situations in which the malfunction may cause some damage if not attended to in a timely manner. For example, in the event of a generalized power failure or when the breaker for the spa trips, a situation may arise when power ceases to be provided to the spa. An interruption in the power supply for a prolonged period of time can have undesirable consequences ranging from minor inconvenience such as less than optimal water cleanliness due to an absence of filtration, to more serious damage, such as some components becoming permanently damaged. For example, in cold climates where temperatures fall below the freezing point of water, the absence of heat and circulating water in the circulation pipes may freeze and cause cracks in the pipes.
Some existing systems provide functionality for allowing for the remote control and monitoring of bathing systems to take place over a local computer network. In this regard, some bathing systems can now be equipped with network interfaces for allowing the bathing system to register with a local network (for example a home network) through a router in order to exchange signals with other devices in the same local network. In such a local network, each device is associated with its own internal or private IP address, which allows the devices in the local network to communicate with one another through the router. Such a configuration therefore enables a computing device connected to the local network and equipped with suitable software to issue commands to and receive status information from the over the private network through the router. Some of these systems also provide for the remote control and monitoring of bathing systems over a public network (such as the Internet). For additional information, the reader may refer for example to U.S. patent application publication no. US2013-0166965-A1 published on Jun. 28, 2013 and to U.S. Pat. No. 7,292,898 issued on Nov. 6, 2007. The contents of the aforementioned documents are incorporated herein by reference.
In addition to bathing unit owners, it is also desirable for service technicians, technician teams as well as equipment distributors to be able to remotely control and monitoring of bathing systems over a public network. However, while some conventional systems provide tools for the remote control and monitoring of bathing systems over a public network, these tools are often ill-suited when it is desirable to centrally monitor large numbers of bathing units systems, which may in some cases be owned by different entities. If effect, while conventional solutions allow a user to remotely access different bathing unit system, these typically require the user to independently access the different bathing systems but fail to provide suitable mechanisms for allowing the user to manage and use information pertaining to the different bathing systems. Against the background described above, there remains a need in the industry to provide a system, method and computer program product for facilitating centralized control and monitoring over a network of a set of remote bathing unit systems that alleviates at least in part the problems associated with existing systems and methods.
In accordance with a first aspect, a method to facilitate centralized control and monitoring of remote network-enabled bathing unit systems owned and operated by different customers is provided. The method comprises:
In some implementations, a method according to the first aspect may further comprise the GUI providing a user-operable input object configured to accept a user input identifying a specific customer to generate an invitation message to request permission to remotely control and monitor a bathing unit system associated with the specific customer, wherein the specific customer is distinct from the different customers that own and operate the bathing unit systems in the listing of bathing unit systems. The invitation message may be transmitted from the computing device over a communication network. A confirmation message may be received at the computing device over the communication network, the confirmation message indicating that the specific customer has granted permission to remotely control and monitor the bathing unit system associated with the specific customer. The GUI may be dynamically adapted to modify the listing of bathing unit systems to include an additional entry in the plurality of entries, the additional entry corresponding to the bathing unit system associated with the specific customer. In specific practical implementations, the invitation message to may be transmitted to the specific customer over the communication network via a web-server or gateway with which a user of the computing device and the specific customer are registered. In such implementations, the data conveying operational status information may be received over the communication network via the web-server or gateway.
In some implementations, the entries in the plurality of entries of the listing of bathing unit systems convey: identification information associated with a respective specific bathing unit system; and at least one operational status indicator conveying operational status information of the respective specific bathing unit system.
In specific practical implementations, the GUI may be configured to provide a user operable control for receiving user sort commands for sorting the plurality of entries in the listing of bathing unit systems according to user-selectable sorting criteria. For example, the user operable control for receiving the user sort commands may be configured for presenting the user with a set of selectable sorting criteria for sorting the plurality of entries in the listing of bathing unit systems. In some implementations, a method according to the first aspect may further comprise dynamically adapting the GUI, in response to receipt of a specific user sort command conveying a specific sorting criterion, to present a sorted version of the listing of bathing unit systems, wherein the plurality of entries in the sorted version of the listing of bathing unit systems are arranged according to the specific sorting criterion conveyed by the specific user sort command. The user-selectable sorting criteria may include criterion selected from the group consisting of: a bathing unit system identifier; operational status indicators; a type of bathing unit system component identified as being in need of servicing or replacement; distance to a current location of the computing device; maintenance service subscription classification; and a type, classification or model number associated with bathing unit systems.
In specific practical implementations, the GUI may be configured to provide a user operable control for receiving user filter commands for filtering the pluralities entries in the listing of bathing unit systems according to user-selectable filtering criteria. For example, the user operable control for receiving the user filter commands may be configured for presenting the user with a set of selectable filtering criteria for filtering the plurality of entries in the listing of bathing unit systems. In some implementations, a method according to the first aspect may further comprise dynamically adapting the GUI, in response to receipt of a specific user filter command conveying a specific filtering criterion, to present a filtered version of the listing of bathing unit systems, wherein the plurality of entries in the filtered version of listing of bathing unit systems omit one or more entries from the listing of bathing unit systems according to the specific filtering criterion conveyed by the specific user filter command. The user-selectable filtering criteria may include criterion selected from the group consisting of: bathing unit system identifiers; operational status indicators; a type of bathing unit system component identified as being in need of servicing or replacement; distance to a current location of the computing device; maintenance service subscription classification; and a type, classification or model number associated with bathing unit systems.
In some implementations, the entries in the listing of bathing unit systems may be independently selectable by a user of the computing device. In such implementations, the GUI may be dynamically adapted, responsive to receiving the user selection specifying the entry amongst the entries presented in the listing of bathing unit systems, to present a bathing unit system-specific interface for remotely controlling and monitoring the bathing unit system corresponding to the selected entry.
In some implementations, the bathing unit system-specific interface is configured to present one or more user-operable input objects configured to accept user inputs to modify one or more operational parameters of the bathing unit system corresponding to the selected entry, and, in response to receipt of a specific user input to modify one or more operational parameters of the bathing unit system corresponding to the selected entry, transmit a command signal to the bathing unit system corresponding to the selected entry over a computer network to cause a change in one or more operational parameters. For example, in some implementations, the bathing unit system-specific interface is configured to present one or more user-operable input objects configured to accept user inputs to change an actuation setting of bathing unit components associated with the bathing unit system corresponding to the selected entry. The bathing unit components may include one or more of the following: lighting modules; a jet; a pump; a heater module. In a specific practical implementation, the bathing unit system-specific interface may be configured to present one or more user-operable input objects configured to accept user inputs to modify a water temperature setting associated with the bathing unit system corresponding to the selected entry.
In some implementations, the bathing unit system-specific interface is configured to present one or more error messages associated to specific bathing unit components of the bathing unit system corresponding to the selected entry.
In some implementations, the bathing unit system-specific interface is configured to present operational status information associated with one or more bathing unit components of the bathing unit system corresponding to the selected entry.
In some implementations, the operational status indicators may include one or more color-coded operational status indicators.
In some implementations, the operational status indicators may convey network connection status information associated with the bathing unit systems presented in the listing of bathing unit systems.
In some implementations, the operational status indicators include general error indicators indicating that errors have been detected for one or more components of the bathing unit system.
In a specific practical implementation, the general error indicators may be independently selectable at the computing device through the GUI, wherein in response to receiving a user selection for a specific one of the general error indicators associated with a specific bathing unit system, the GUI being dynamically adapted to present a diagnostic interface providing additional information of an error condition for the specific bathing unit system associated to the selected specific one of the general error indicators.
In some implementations, a method according to the first aspect further comprises deriving one or more of the operational status indicators associated with the bathing unit systems presented in the listing of bathing unit systems at least in part by processing the data conveying operational status information received at the computing device. In a specific practical implementation, at least some of the operational status indicators are component-specific error indicators conveying specific bathing unit components on which errors have been detected. In such implementations, the component-specific error indicators may be independently selectable by a user of the computing device, and the GUI may be dynamically adapted, responsive to receiving the user selection specifying the specific component-specific error indicator, to present a diagnostic interface for diagnostic analysis of the error condition. For example, the GUI may be dynamically adapted to present information identifying one or more replacement parts available to address the error condition for purchase in an electronic marketplace. In some implementations, the information conveying one or more replacement parts available for purchase in the electronic marketplace may include a user-operable actuator to initiate a purchasing process for the one or more parts from the electronic marketplace.
In some implementations, a method according to the first aspect further comprises receiving, at the computing device over the communication network, a service request notification message indicating that a specific customer associated with a specific bathing unit system in the listing of bathing unit systems presented on the GUI has requested to be contacted, and, in response to receipt of the service request notification message, dynamically adapting the GUI to display a service request GUI element in association with a specific entry in the listing of bathing unit systems associated with the specific bathing unit system. In a specific practical implementation, the service request GUI element may be displayed in conjunction with at least one operational status indicator in association with the specific entry in the listing of bathing unit systems associated with the specific bathing unit system. In some implementations, the service request GUI element may be selectable by a user of the computing device, and the GUI may be dynamically adapted to present one or more communication options for contacting the customer and/or provide a user-operable actuator to initiate a communication process for contacting the customer, responsive to the user selection of the service request GUI element. For example, the one or more communication options may include at least one of: e-mail; SMS message; video conference; text message; and telephone call.
In some implementations, a method according to the first aspect further comprises processing operational status information associated with at least a subset of the plurality of bathing unit systems to identify at least a subset of the bathing unit systems in need of replacing a specific bathing unit system component. In such implementations, the GUI may be adapted to present an offer for purchasing one or more units of the specific bathing unit system component for the identified subset of the bathing unit systems. For example, the GUI may be adapted to provide a user-operable actuator configured to be responsive to a user input to initiate a purchasing process for the one or more units of the specific bathing unit system component. In a specific practical implementation, the GUI may be configured to display, in association with each entry in the identified subset of the bathing unit systems in need of replacing the specific bathing unit system component, a component-specific error indicator conveying the specific bathing unit system component that has been identified as being in need of replacement. Non-limiting examples of the specific bathing unit system components include: a bathing unit system filter; a bathing unit system heater component or part thereof, a bathing unit system sanitizing component or part thereof, a bathing unit system pump or part thereof, an ozonator system; and a UV lamp.
In some implementations, the computing device is associated with a bathing unit system service technician or a service technician team.
In accordance with a second aspect, a method to facilitate maintenance of a network-enabled bathing unit system owned and operated by a customer is provided. A method according to the second aspect comprises:
In some implementations, the GUI is configured for displaying an error indicator indicating that an operational error has been detected in the bathing unit system, wherein the user operable control for receiving the service request commands is displayed on the GUI in conjunction with the error indicator. For example, the error indicator may be a component-specific error indicator conveying that an error condition has been detected in connection with a specific bathing unit component.
In some implementations, the error indicator may be user-selectable through the GUI, wherein in response to receiving a user selection for the error indicator, the GUI may be dynamically adapted to present a diagnostic interface providing additional information of an error condition associated with the error indicator. For example, dynamically adapting the GUI to present the diagnostic interface may include presenting information identifying one or more replacement parts available for purchase to address the error condition. In a specific practical implementation, the presenting the information conveying one or more replacement parts available for purchase includes providing a user-operable actuator to initiate a purchasing process for the one or more parts from an electronic marketplace.
In some implementations, a method according to the second aspect further comprises dynamically adapting the GUI to display a service request GUI element following receipt of the service request command via the user operable control, the service request GUI element indicating that a service request notification message in respect of the bathing unit system has been transmitted.
In some implementations, a method according to the second aspect further comprises receiving, at the computing device, an invitation message that includes a request to permit remote control and monitoring of the bathing unit system associated with the customer by a remote bathing unit system technician or a service technician team. Following receipt of the invitation message, the GUI may be dynamically adapted to present user-selectable options to enable the customer to selectively accept or reject the request to permit remote control and monitoring of the bathing unit system by the bathing unit system technician or the service technician team. In a specific practical implementation, the invitation message may be received over the communication network via a web-server or gateway with which a user of the computing device and the bathing unit system technician or the service technician team are registered.
In some implementations, the computing device may be a portable device associated with the customer. For example, the computing device may be a smartphone. In other implementations, the computing device may be installed as part of the bathing unit system and includes a top-side control panel, wherein the GUI is displayed on a screen of the top-side control panel.
In accordance with a third aspect, an apparatus to facilitate centralized control and monitoring of remote network-enabled bathing unit systems owned and operated by different customers is provided. An apparatus according to the third aspect comprises:
In some implementations, the computer readable instructions when executed by the processor configure the apparatus to transmit the invitation message to the specific customer over the communication network via a web-server or gateway with which a user of the apparatus and the specific customer are registered. In a specific practical implementation, the data conveying operational status information may be received over the communication network via the web-server or gateway.
In some implementations, the entries in the plurality of entries of the listing of bathing unit systems convey: identification information associated with a respective specific bathing unit system; at least one operational status indicator conveying operational status information of the respective specific bathing unit system.
In some implementations, the computer readable instructions when executed by the processor further configure the apparatus to configure the GUI to provide a user operable control for receiving user sort commands for sorting the plurality of entries in the listing of bathing unit systems according to user-selectable sorting criteria.
In some implementations, the computer readable instructions when executed by the processor further configure the apparatus to dynamically adapt the GUI, in response to receipt of a specific user sort command conveying a specific sorting criterion, to present a sorted version of the listing of bathing unit systems, wherein the plurality of entries in the sorted version of the listing of bathing unit systems are arranged according to the specific sorting criterion conveyed by the specific user sort command.
In some implementations, the computer readable instructions when executed by the processor further configure the apparatus to configure the GUI to provide a user operable control for receiving user filter commands for filtering the pluralities entries in the listing of bathing unit systems according to user-selectable filtering criteria.
In some implementations, the computer readable instructions when executed by the processor further configure the apparatus to dynamically adapt the GUI, in response to receipt of a specific user filter command conveying a specific filtering criterion, to present a filtered version of the listing of bathing unit systems, wherein the plurality of entries in the filtered version of listing of bathing unit systems omit one or more entries from the listing of bathing unit systems according to the specific filtering criterion conveyed by the specific user filter command.
In some implementations, the entries in the listing of bathing unit systems are independently selectable by a user of the apparatus, wherein the computer readable instructions when executed by the processor further configure the apparatus to dynamically adapt the GUI, in response to receiving a user selection specifying an entry amongst the entries presented in the listing of bathing unit systems, to present a bathing unit system-specific interface for remotely controlling and monitoring the bathing unit system corresponding to the selected entry. For example, in some implementations, the computer readable instructions that when executed by the processor further configure the apparatus to dynamically adapt the GUI to present a bathing unit system-specific interface include computer readable instructions that when executed by the processor further configure the apparatus to: configure the GUI to present one or more user-operable input objects configured to accept user inputs to modify one or more operational parameters of the bathing unit system corresponding to the selected entry; and in response to receipt of a specific user input to modify one or more operational parameters of the bathing unit system corresponding to the selected entry, transmit a command signal to the bathing unit system corresponding to the selected entry over the communication network, via the network interface, to cause a change in one or more operational parameters.
In some implementations, the bathing unit system-specific interface is configured to present one or more error messages associated to specific bathing unit components of the bathing unit system corresponding to the selected entry.
In some implementations, the bathing unit system-specific interface is configured to present operational status information associated with one or more bathing unit components of the bathing unit system corresponding to the selected entry.
In some implementations, the operational status indicators include general error indicators indicating that errors have been detected for one or more components of the bathing unit system. For example, the general error indicators may be independently selectable GUI elements, and the GUI may be dynamically adapted, in response to receiving a user selection for a specific one of the general error indicators associated with a specific bathing unit system associated with an entry amongst the plurality of entries presented in the listing of bathing unit systems, to present a diagnostic interface providing additional information of an error condition for the specific bathing unit system associated to the selected specific one of the general error indicators.
In some implementations, the computer readable instructions when executed by the processor further configure the apparatus to derive one or more of the operational status indicators associated with the bathing unit systems presented in the listing of bathing unit systems at least in part by processing the data conveying operational status information received at the apparatus.
In some implementations, at least some of the operational status indicators are component-specific error indicators conveying specific bathing unit components on which errors have been detected.
In some implementations, the computer readable instructions when executed by the processor configure the apparatus to configure the GUI to display the component-specific error indicators as independently selectable GUI elements, and dynamically adapt the GUI, responsive to receiving a user selection specifying a specific component-specific error indicator associated with an entry amongst the plurality of entries presented in the listing of bathing unit systems, to present a diagnostic interface for diagnostic analysis of the error condition. For example, the GUI may be dynamically adapted to present information identifying one or more replacement parts available to address the error condition for purchase in an electronic marketplace. In some implementations, the information conveying one or more replacement parts available for purchase in the electronic marketplace may include a user-operable actuator to initiate a purchasing process for the one or more parts from the electronic marketplace.
In some implementations, the computer readable instructions when executed by the processor further configure the apparatus to dynamically adapt the GUI, in response to receiving a service request over the communication network via the network interface, the service request notification message indicating that a specific customer associated with a specific bathing unit system in the listing of bathing unit systems presented on the GUI has requested to be contacted, to display a service request GUI element in association with a specific entry in the listing of bathing unit systems associated with the specific bathing unit system. For example, the service request GUI element may be displayed in conjunction with at least one operational status indicator in association with the specific entry in the listing of bathing unit systems associated with the specific bathing unit system.
In some implementations, the computer readable instructions when executed by the processor configure the apparatus to: configure the GUI to display the service request GUI element as a user-selectable service request GUI element; and dynamically adapt the GUI, responsive to receiving a user selection of the service request GUI element, to present one or more communication options for contacting the customer.
In some implementations, the computer readable instructions when executed by the processor configure the apparatus to: configure the GUI to display the service request GUI element as a user-selectable service request GUI element; and dynamically adapt the GUI, responsive to receiving a user selection the service request GUI element, to provide a user-operable actuator to initiate a communication process for contacting the customer.
In some implementations, the computer readable instructions when executed by the processor further configure the apparatus to: process operational status information associated with at least a subset of the plurality of bathing unit systems to identify at least a subset of the bathing unit systems in need of replacing a specific bathing unit system component; and adapt the GUI to present an offer for purchasing one or more units of the specific bathing unit system component for the identified subset of the bathing unit systems. For example, the GUI may be adapted to present the offer for purchasing one or more of the specific bathing unit system component comprise computer readable instructions that when executed by the processor configure the apparatus to adapt the GUI to provide a user-operable actuator configured to be responsive to a user input to initiate a purchasing process for the one or more units of the specific bathing unit system component.
In some implementations, the computer readable instructions when executed by the processor configure the apparatus to configure the GUI to display, in association with each entry in the identified subset of the bathing unit systems in need of replacing the specific bathing unit system component, a component-specific error indicator conveying the specific bathing unit system component that has been identified as being in need of replacement.
In some implementations, the apparatus is implemented by a personal computing device, such as a smartphone or a tablet computer. In some implementations, the personal computing device may be associated with a bathing unit system service technician or a service technician team.
In accordance with a fourth aspect, an apparatus to facilitate maintenance of a network-enabled bathing unit system owned and operated by a customer is provided. An apparatus according to the fourth aspect comprises:
In some implementations, the computer readable instructions when executed by the processor further configure the apparatus to configure the GUI to display an error indicator indicating that an operational error has been detected in the bathing unit system, wherein the user operable control for receiving the service request commands is displayed on the GUI in conjunction with the error indicator.
In some implementations, the error indicator is a component-specific error indicator conveying that an error condition has been detected in connection with a specific bathing unit component.
In some implementations, the computer readable instructions when executed by the processor configure the apparatus to:
In some implementations, the computer readable instructions that when executed by the processor configure the apparatus to dynamically adapt the GUI to present the diagnostic interface providing additional information of an error condition associated with the error indicator comprise computer readable instructions that when executed by the processor configure the apparatus to dynamically adapt the GUI to present information identifying one or more replacement parts available for purchase to address the error condition.
In some implementations, the computer readable instructions that when executed by the processor configure the apparatus to present the information conveying one or more replacement parts available for purchase comprise computer readable instructions that when executed by the processor configure the apparatus to configure the GUI to provide a user-operable actuator to initiate a purchasing process for the one or more parts from an electronic marketplace.
In some implementations, the computer readable instructions when executed by the processor further configure the apparatus to:
In some implementations, the computer readable instructions when executed by the processor further configure the apparatus to:
In some implementations, the computer readable instructions when executed by the processor configure the apparatus for receiving the invitation message over the communication network via a web-server or gateway with which a user of the apparatus and the bathing unit system technician or the service technician team are registered.
In some implementations, the apparatus is implemented by a portable computing device, such as a smartphone or a tablet computer, associated with the customer. In other implementations, the apparatus is installed as part of the bathing unit system and includes a top-side control panel that includes the display screen.
In accordance with a fifth aspect, a method to facilitate centralized control and monitoring of remote network-enabled bathing unit systems owned and operated by different customers is provided. A method according to the fifth aspect comprises:
In accordance with a sixth aspect, a system to facilitate centralized control and monitoring of remote network-enabled bathing unit systems owned and operated by different customers is provided. A system according to the sixth aspect comprises:
All features of embodiments which are described in this disclosure and are not mutually exclusive can be combined with one another. Elements of one embodiment can be utilized in the other embodiments without further mention.
These and other aspects and features of the present invention will now become apparent to those of ordinary skill in the art upon review of the following description of specific embodiments of the invention in conjunction with the accompanying drawings.
A detailed description of the embodiments of the present invention is provided herein below, by way of example only, with reference to the accompanying drawings, in which:
In the drawings, the embodiments of the invention are illustrated by way of examples. It is to be expressly understood that the description and drawings are only for the purpose of illustration and are an aid for understanding. They are not intended to be a definition of the limits of the invention.
Specific examples of implementation of the invention will now be described with reference to the Figures.
The description below is directed to a specific implementation of the invention in the context of the control and monitoring of bathing unit systems. It is to be understood that the terms “bathing system” or “bathing unit system”, as used for the purposes of the present description, are used interchangeably and refer to spas, whirlpools, hot tubs, bathtubs, therapeutic baths, swimming pools and any other type of bathing unit that can be equipped with a control system for controlling various operational settings of the bathing unit components.
In the non-limiting embodiment shown, the network-enabled controller 24 includes a spa functionality controller 34 for controlling the set of bathing unit components 11, 13, 26, 28, 30 and a network processing unit 40 for coordinating interactions between the spa controller and external devices. It is to be appreciated that although in the embodiment illustrated in
The user control panel 31 provides an interface that allows a user to enter commands for causing the controller 34 to control the various operational settings of the bathing unit components 11, 13, 26, 28, 30. Some non-limiting examples of operational settings include temperature control settings, jet control settings, and lighting settings, among other possibilities. In a non-limiting embodiment where the bathing unit is connected to entertainment and/or multimedia modules, the operational settings of the bathing unit may also include audio settings and video settings, amongst others. Consequently, the expression “operational settings”, for the purpose of the present invention, is intended to cover operational settings for any suitable bathing unit component or components that can be operated by a user of the bathing system.
In normal operation, water flows from the bathing unit receptacle 18, through the drains 22 and is pumped by water pump 13 through the heating module 30 where the water is heated. The heated water then leaves the heating module 30 and re-enters the bathing unit receptacle 18 through jets 20. In addition, water flows from the bathing unit receptacle 18, through different drains 22 and is pumped by water pump 11 through filter 26. The filtered water then re-enters the bathing unit receptacle 18 through different jets 20. Water can flow through these two cycles continuously while the bathing system 10 is in operation. Optionally, water can also flow from the bathing unit receptacle 18 through one or more drains 22 to an air blower 28 that is operative for delivering air bubbles to water that re-enters the bathing unit receptacle 18 through jets 20.
The network-enabled controller 24 receives electrical power from an electric power source 36 that is connected thereto via service wiring 51. The power source 36 supplies the network-enabled controller 24 with any conventional power service suitable for residential or commercial use. In a non-limiting implementation, the power source 36 can supply 240 volts (V) AC to the network-enabled controller 24 via service wiring 51. In an alternative non-limiting implementation, the power source 36 can supply 120 volts (V) AC to the network-enabled controller 24 via service wiring 51. In yet a further alternative non-limiting implementation, the power source 36 can supply 120 Volts and 240 Volts AC to the network-enabled controller 24 via service wiring 51. It is to be appreciated that other voltage supply values or voltage supply combinations, for example depending on geographical location, are possible without detracting from the spirit and scope of the invention. In a non-limiting implementation, the service wiring 51 is passed through a ground fault circuit interrupter (GFCI) that is adapted for tripping in the presence of a current leakage to the ground. The ground fault circuit interrupter (GFCI) provides an added safety measure to the bathing system.
The spa functionality controller 34 is configured for controlling the distribution of power supplied to the various bathing unit components 11, 13, 26, 28, 30 in order to cause desired operational settings to be implemented on the basis of program instructions and signals received from the user control panel 31 or from a device external to the system 10 through the network processing unit 40. The spa functionality controller 34 may also receive control signals from various sensors 71 in order to cause the desired operational settings to be implemented. Manners in which the spa functionality controller 34 can be used to control the individual bathing unit components of the bathing system, such as for example the jets 20, the drains 22, the heating module 30, the water pumps 11 and 13, the filter 26, the air blower 24, a valve jet sequencer for massage, a variable speed pump with a pre-programmed massage setting, a water fall, an aroma therapy device and an atomizer, as well as any lighting and multimedia components, are well known in the art and are not critical to the invention and as such will not be described in further detail here.
A mentioned above, and as depicted in
The memory unit 42 stores program instructions and data for use by the network processing unit 40. The data stored in the memory 42 includes, amongst others, information conveying operational settings associated with components in the bathing unit. For example, the operational settings may include temperature control settings, jet control settings, and lighting settings, among other possibilities. The memory 42 may also store water temperature information conveying water temperature measurements for water in the bathing system. The program instructions stored in the memory unit 42 when executed by the network processing unit 40 provide network related functionality which will be described in greater detail in the present application.
In specific practical implementations, different suitable types of network connections may be used in in the context of providing remote control and monitoring capability for the bathing system depicted in
In the present document, one specific type of network architecture will be described for the purpose of illustrating a specific embodiment. It is however to be expressly understood that, while an example is described, any suitable practical mechanism for providing a network connection in the context of providing features of the invention may be used in alternate embodiments.
As such, in a specific practical example of implementation, the network-enabled controller 24 is used to facilitate the remote control and monitoring of the bathing system depicted in
More specifically, in use, the network-enabled controller 24 is in communication with the router 220.
The router 220 includes the necessary functionality for establishing a private (home) network 210 to which different network-enabled devices can connect. Amongst others, the router 220 is configured for assigning to each connected device on the private (home) network 210 a respective private network address that is used for communicating with the router and other devices within the network 210. In the example depicted in
As mentioned, the router 220 is configured to assign to each device a respective private network address that is used within the network 210. The router 220 also acts as an interface for communications between devices within the private (home) network 210 and devices residing on networks outside the private (home) network 210. In connection with such communications, the router 220 implements a network address translator (NAT) mechanism whereby the private network addresses of the devices in the private (home) network 210 are mapped to one public IP/Internet address. The public IP/Internet address will typically be assigned by an Internet service provider. There are different types of NATs that can be implemented by the router such asymmetric Cone, Symmetric Cone, or completely asymmetric. Routers suitable for establishing private (home) networks which provide Network Address Translation (NAT) capabilities are known in the art and will therefore not be described in further detail here.
In use, the network-enabled controller 24 is also in communication with the Internet accessible server 230, which implements a gateway. The server 230 is associated with a public IP/Internet address and is accessible by the network-enabled controller 24 over the public Internet.
When the network enabled controller 24 establishes a communication with the server 230 through the router 220, the server is programmed for processing that communication to obtain a public network address associated with the network-enabled controller 24. This public network address can then be sent back to the network-enabled controller 24 so that the network-enabled controller 24 is made aware of the public network address that it is using. In a specific example, the public network address associated with the network-enabled controller 24 includes an IP address component associated with the home router 220 and a port identifier component associated with the network-enabled controller 24, wherein the port identifier component was assigned by router 220. Different methods for obtaining the public network address may be used. In a specific practical implementation, the server 230 implements a STUN protocol to obtain the public network address associated with the network-enabled controller 24, wherein the network-enabled controller 24 implements a client portion of the STUN protocol. STUN is an acronym for referring to a Simple traversal of User Datagram Protocol (UDP) through Network address translators (NATs). A STUN protocol allows applications operating through a Network address translator (NAT) to discover the presence of a network address translator and to obtain the mapped (public) IP address (NAT address) and port number that the NAT has allocated for the application's User Datagram Protocol (UDP) connections to remote hosts. STUN techniques have been used in connection with IP telephony (VoIP) for establishing communication links between two secured devices behind respective NATs. The specific manner in which a STUN protocol is implemented may vary from one implementation to the next and is not critical to the present application and therefore will not be described in further detail here. Other techniques for obtaining the public network address associated with the network-enabled controller 24 may also be used in alternative examples of implementation for example Traversal Using Relay NAT (TURN) and Interactive Connectivity Establishment (ICE) could be used. For the purpose of simplicity, the examples presented in the present application will consider the case where a STUN protocol is used by the server 230.
In use through the server 230, in the system depicted in
The customer remote control client 250 that is implemented on the customer personal computing device 1200 and the technician remote control client 350 that is implemented on technician personal computing device 1300 provide users with remote access to the network-enabled controller 24 of the bathing system 10. More specifically, the customer personal computing device 1200 and the technician personal computing device 1300 communicate with the network-enabled controller 24 through the server 230 to transmit data based on information entered by the users via the customer remote control client 250 or the technician remote control client 350. In this manner, for example, a customer or a technician may provide commands to the network-enabled controller 24 in order to activate and/or modify the operational settings of the bathing unit components without actually having to be in proximity to the bathing unit system 10. For example, a customer or technician may be able to initiate activation of one or more bathing unit components (e.g. activate a pump, jet, heater, lights or other), and/or adjust the operational settings of the one or more bathing unit components (e.g. such as set a water temperature or an ambience setting), while the customer is travelling home from work, such that the bathing system 10 is ready for the customer by the time the customer gets home. Similarly, a technician may be able to provide a command to remotely initiate or activate one or more bathing unit component(s) for diagnostic/troubleshooting purposes.
In practical implementations, the customer personal computing device 1200 and the technician personal computing device 1300 may be embodied as any suitable type of computing device known in the art. For example, the customer and technician personal computing devices 1200 and 1300 may be a personal computer such as a desktop or laptop computer, or they may be a portable hand-held computing device, such as a PDA, a cell phone, a smart phone (such as a Blackberry™ or an iPhone™), or a web-enabled computing device (such as an iTouch™, iPad™ or computer Tablet), among other possibilities.
The customer remote control client 250 implemented by the customer personal computing device 1200 and the technician remote control client 350 implemented by the technician personal computing device 1300 provide, amongst others, spa control and monitoring functionality. The spa control and monitoring functionality enables a user to provide commands or other information in connection with the control of a bathing unit system, such as the bathing unit system 10 shown in
The particular spa control and monitoring functionality provided by the customer remote control client 250 may vary from one implementation to the other and is not critical to the present application and as such will not be described in greater detail here. For greater information on the type of spa control and monitoring functionality that can be provided through customer remote control client 250 executed by the customer personal computing device 1200 and the technician remote control client 350 executed by the technician personal computing device 1300, the reader is invited to refer to the following co-pending U.S. patent applications:
The contents of the aforementioned documents are incorporated herein by reference.
The customer remote control client 250 implemented by the customer personal computing device 1200 and the technician remote control client 350 implemented by the technician personal computing device 1300 may also implement remote connectivity functionality for establishing a communication link with the network-enabled controller 24 through the router 220.
In the example depicted in
In implementations in which the communication relationship to be established between the customer remote control client 250 and the network-enabled spa controller 24, and between the technician remote control client 350 and the network-enabled spa controller 24, through the server 230 are client-server relationships in which the customer remote control client 250 and the technician remote control client 350 behave as “clients” and issue requests to the network-enabled spa controller 24 and in which the network-enabled spa controller 24 behaves as the “server” and replies to these requests, no NAT traversal protocol on the side of the customer remote control client 250 or the technician remote control client 350 is required since each exchange between the remote control clients 250 and 350 and the network-enabled spa controller 24 is initiated by the customer remote control client 250 or the technician remote control client 350. In alternate implementations in which it is desirable for the remote control client 250 and 350 and the network-enabled spa controller 24 to establish a peer-to-peer communication relationship, in which any one of the network-enabled spa controller 24, the customer remote control client 250, and the technician remote control client 350 can initiate a communication, a NAT traversal protocol such as STUN may also be applied by the server to the remote control clients 250 and 350 in order to determine the public network addresses of the remote control clients.
For the purpose of simplicity, the present description will consider a situation in which a NAT traversal protocol on the side of the remote control clients 250 and 350 is not required. In light of the present description, it will become readily apparent to the person skilled in the art how a NAT traversal protocol could be applied in connection with the remote control clients 250 and 350 and as such no further details will be provided here.
In practical implementations of the remote control and monitoring system depicted in
In some implementations, the system 500 may also include an electronic marketplace 240 through which technicians and/or customers may purchase accessories, replacement components or part thereof, for a bathing unit system. As will be discussed in further detail later on, such purchases may be made by a technician via the technician remote control client 350 executing on the technician's personal computing device 1300, or by a customer via the customer remote control client 250 executing on the customer's personal computing device 1200 or via a similar customer control client 250 executing on a network-enabled controller 24 that is part of a customer's bathing unit system.
Each one of network enabled spa controllers 24.1 to 24.k (#1 to #K) may be analogous to network enabled spa controller 24, described above with reference to
In a specific non-limiting example of implementation, the server 230 maintains active communications links with the network enabled spa controllers 24.1 to 24.k (#1 to #K). In a first implementation, active communication links may also be maintained between the server 230 and each of the customer personal computing devices 1200.1 to 1200.X and the technician personal computing devices 1300.1 and 1300.2. Alternatively, the communication links between the server 230 and a given one of the personal computing devices 1200.1 to 1200.X, 1300.1 and 1300.2 may be established when the personal computing device wishes to send a message to a designated one of the network enabled spa controllers 24.1 to 24.k (#1 to #K) and destroyed once a reply is received and/or the communication link remains unused for a period of time exceeding a certain delay. It is to be appreciated that the specific practical manner in which communication links are established may vary between implementations as will become apparent to person skilled in the art.
The server 230 in the system of
For example, as shown in
Technician Personal Computing Device 1300′
The GUI depicted in
The example operations of the method depicted in
Referring again to
In this specific example, the user operable filter control 1422 is operable for receiving user filter commands for filtering the plurality of entries in the listing 1402 of bathing unit systems according to user-selectable filtering criteria. For example, responsive to user selection of the user operable filter control 1422 the GUI may be adaptively modified to present the user with a set of selectable filtering criteria for filtering the plurality of entries in the listing 1402 of bathing unit systems, for example by listing selectable filtering criteria in the set in a drop down menu (not shown in the figures). In some implementations, in response to receiving a specific user filter command conveying selection of a specific filtering criterion, the displayed GUI is dynamically adapted to present a filtered version of the listing 1402 of bathing unit systems that omits one or more entries from the listing of bathing unit systems according to the specific filtering criterion.
Some non-limiting examples of user-selectable filtering criteria that may be presented for user selection may include, within being limited to:
Returning now to
It is to be appreciated that, while
For example,
In some embodiments, component-specific error indicators, such as the component-specific error indicators 1416 shown in
For example, in order to illustrate the above, if the error message indicates that there is a flow problem in the circulation system and identifies the filter as being a potential cause of the error, the diagnostic interface may display one or more replacement filter options that may be purchased.
In some embodiments, information identifying one or more replacement parts available to address the error condition for purchase in an electronic marketplace may be presented on the GUI proactively by the technician remote control client executing on the technician personal computing device 1300′. For example, the technician remote control client may process the operational status information associated with the plurality of customer bathing unit systems in the listing to identify a subset of the bathing unit systems that may be in need of replacing a specific bathing unit system component. The GUI displayed on the display screen 1400 of the personal computing device 1300′ may in response be adapted to present an offer for purchasing one or more units of the specific bathing unit system component for the identified subset of the bathing unit systems.
Advantageously, by identifying multiple customers that may be in need of replacing a same component and informing the technician, the technician may be enabled to be (i) proactively contacting these customers to perform respective service appointments; (ii) order multiple components at the same thereby potentially benefiting from volume discounts; and (iii) order the components before the customer service appointments to arrive ready at the customer locations and to avoid having to schedule follow-up appointments to replace the component. As such, such functionality may assist the service technician in providing an improved and more proactive service to his customers and to do so in a more efficient manner than what was typically done in the past.
As shown at step 2412 in
At step 2416, the computing device adapts the GUI to present information conveying one or more options for purchasing one or more units of the specific bathing unit system component for the identified subset of the bathing unit systems. At 2418, which may be performed concurrently with or subsequent to step 2416, the GUI provides a user-operable actuator configured to be responsive to a user input to initiate a purchasing process. The display of the information notification 1432 and the user-operable actuator 1434 in the GUI shown in
At 2420, responsive to receiving user input via the user-operable actuator (for example actuator 1434), the computing device is configured to initiates a purchasing process for the one or more units of the specific bathing unit system component. Any suitable known manner of initiating a purchasing process may be used to complete this step. The example operations of the method depicted in
In some embodiments, customer remote control clients 250 (see
In a specific example, in response to receipt of such a service request notification message at the technician's personal computing device indicating that a specific customer associated with a specific bathing unit system in the listing 1402 of bathing unit systems presented on the GUI (shown in
Optionally, the service request GUI element may be configured to be user-selectable. In such an implementation, in response to the user selection of the service request GUI element, the GUI displayed on the technician's personal computing device may be dynamically adapted to present the user one or more individually selectable communication options for contacting the customer and/or to present the user with a user-operable actuator to initiate a communication process for contacting the customer. Non-limiting examples of communication options that may be presented to the user in such embodiments include e-mail, SMS message; chat message, push notification, video conference, text message, and telephone call.
In the specific examples of the technician personal computing device 1300′ depicted in
In the specific example depicted in the Figures, the user operable sort control 1426 may configured for receiving user sort commands for sorting the plurality of entries in the listing 1402 of bathing unit systems according to one or more user-selectable sorting criteria. For example, responsive to a user selection of the user operable sort control 1426 through the personal computing device 1300′, the GUI may be adaptively modified to present the user with a set of independently selectable sorting criteria for sorting the plurality of entries in the listing 1402 of bathing unit systems.
In some implementations, in response to receiving a specific user sort command conveying a specific sorting criterion, the GUI may be dynamically adapted to present a sorted version of the listing 1402 of bathing unit systems in which the plurality of entries are arranged according to the specific sorting criterion conveyed by the specific user sort command. Some non-limiting examples of user-selectable sorting criteria that may be presented for user selection may include, without being limited to:
As shown in the specific example depicted in
In a specific example, responsive to receiving user input identifying a specific customer via the user-operable input object 1450 shown in
In some implementations, once the personal computing device 1300′ has transmitted the invitation message, the dashboard interface of the GUI displayed on the display screen 1400 of the personal computing device 1300′ of the technician may be dynamically modified to display a new entry in the listing 1402 for the newly invited bathing unit system. For example, shown in
Customer Personal Computing Device 1200′
The following section will describe some functionality, GUI and processes that may be implemented at the customer computing device 1200′ and in some cases the technician computing device 1300′ described in the preceding section for facilitating centralized control and monitoring over a network of bathing unit system.
A non-limiting example of an invitation notification, review and authorization process viewed from the perspective of a customer personal computing device 1200′ will now be described with reference to
In specific practical implementations, the customer personal computing device may be a personal computing device of a customer, such as a smartphone, tablet or personal computer, or the computing device may be installed as part of the network enabled controller of the customer's bathing unit system, such as for example a top-side control panel.
In the non-limiting example depicted, the program instructions implementing the customer remote control client may be part of a software application that can be downloaded to the personal computing device 1200′ from an Internet accessible server according to any suitable known method, for example through an “app store” (or app marketplace) other similar type of digital distribution platform for computer software. In the specific example depicted in
In the example depicted in the Figures, the user-operable controls 1544 include a first user-operable control 1546 for a first pump, a second user-operable control 1548 for a second pump, and a third user-operable control 1550 for a lighting module. It is to be appreciated that additional (or fewer) user-operable controls may be provided in alternate implementations.
The GUI may also include a message center 1552 that may convey information pertaining to a current status of the bathing unit system, such as “currently heating”, filtration cycle “on”, error etc., corresponding to the color of the operational status indicator 1542. In some specific examples such as the one depicted, the message center 1552 may be configured to include a user operable input object, which when selected, may cause the GUI to be dynamically modified to display a spa state interface that may provide additional information regarding the state of the bathing unit system and/or its components. The GUI may also include one or more user-selectable menus 1553, which in this specific example include a water care menu 1554, a reminders menu 1556 and a settings menu 1558, each of which may also be independently selectable/operable by the user to present the user with different types of information.
In the specific example depicted, the GUI also includes a user-operable account settings control 1530 configured for causing the GUI to be adaptively modified to display an account settings interface on the personal computing device 1200′. In the specific embodiment shown in
In some embodiments, the customer's account settings interface 1560 may also optionally include a user-operable control 1576 for receiving service request commands for requesting that a specific bathing unit system service technician or a service technician team contact the customer associated with the selected bathing unit system. The specific bathing unit system service technician or service technician team may be selected from the list 1570 of dealers or technicians the customer has authorized to remotely control and monitor the customer's bathing unit system or, alternatively, a default dealer or technician may be contacted. Alternatively still, in order to identify the specific bathing unit system service technician or service technician team, the user may be prompted through the interface 1560 to provide identification information. In such embodiments, in response to receipt of a service request command via the user operable control 1576, the customer remote control client executing on the customer personal computing device 1200′ may cause a service request notification message to be transmitted to the specific service technician or service technician team to indicate that the customer associated with the bathing unit system has requested to be contacted. For example, the service request notification message may be transmitted via a server, such as the server 230 shown in
Shown in
In the specific example depicted in
Shown in
As shown at 2422 in
The example operations of the method depicted in
At step 2502, the server receives a message over a computer network from a computing device identifying a customer associated with a bathing unit system that a technician is requesting to remotely control and monitor. For example, the message may be received from a personal computing device executing program instructions implementing a technician remote control client as described herein. At step 2504, the server transmits a message over a network to the specific customer to notify the customer of the technician's request. For example, in some embodiments the message may be transmitted to a personal computing device executing program instructions implementing a customer remote control client as described herein. In other embodiments, the message may be additionally or alternatively transmitted to a network-enabled controller that is installed as part of the customer's bathing unit system to cause a notification message to be displayed on the screen of a topside control panel of the customer's bathing unit system.
At step 2506, the server receives a message confirming that the customer has granted (or declined) a permission to the technician to remotely control and monitor the bathing unit system associated with the customer. For example, the message may be received from the customer's personal computing device implementing a customer remote control client or from the network-enabled controller installed as part of the customer's bathing unit system.
At step 2508, the server transmits a message to the technician indicating that the customer has granted (or decline) a permission to remotely control and monitor the customer's bathing unit system.
The example operations of the method depicted in
As shown at step 2602, the customer computing device is directed to implement a GUI configured to present one or more user-operable input objects configured to accept user inputs to modify one or more operational parameters of a bathing unit system.
At step 2604, the customer computing device directs the GUI to display a user operable control for receiving service request commands for requesting that a bathing unit system service technician or a service technician team contact a customer associated with the bathing unit system. In some implementations, the user operable control for receiving service request commands is displayed on the GUI in conjunction with an error indicator indicating that an operational error has been detected in the bathing unit system. The error indicator may be a general error indicator (such as for example “error detected—servicing required” or, alternatively, may be a component-specific error indicator conveying that an error condition has been detected in connection with a specific bathing unit component. In such implementations, the GUI displayed on the customer computing device may optionally be adapted to selectively display the user operable control for receiving service request commands when operational error has been detected in the bathing unit system and to omit that the user operable control in the absence of such as error.
At step 2606, in response to receipt of a service request command at the customer computing device via the user operable control, the computing device transmits, over a communication network, a service request notification message indicating that the customer associated with the bathing unit system has requested to be contacted.
Optionally, at step 2608, the customer computing device dynamically adapts the GUI to display a service request GUI element indicating that a service request notification message in respect of the bathing unit system has been transmitted.
The example operations of the method depicted in
As shown at step 2432 in
At step 2436, the technician computing device receives a user selection specifying the service request GUI element. At step 2438, responsive to receiving the user selection, the technician computing device dynamically adapts the GUI to present one or more communication options for contacting the customer or, in some embodiments the GUI may provide a user-operable actuator to initiate a communication process for contacting the customer. For example, the GUI may display an email address for the customer and/or an email icon that is/are user selectable to initiate an email communication to the customer. Alternatively, the GUI may display a telephone number for the customer and/or a telephone icon that is/are user selectable to initiate a telephone communication with the customer.
The example operations of the method depicted in
As shown at step 2612 in
At 2616, the customer computing device may direct the GUI to present information identifying one or more replacement parts available for purchase to address the error condition. For example, this information may be displayed as part of the diagnostic interface or may be displayed responsive to receiving user selection of a user-selectable GUI element within the diagnostic interface. The information identifying one or more replacement parts may include a user-operable actuator configured to be responsive to a user input to initiate a purchasing process, as shown at 2618. At step 2630, responsive to receiving user input selecting the user-operable actuator, the computing device initiates a purchasing process for the one or more parts from an electronic marketplace, such as the electronic marketplace 240 shown in
The example operations of the method depicted in
Referring again to
Similar to the message center 1552 of the customer home page interface displayed by the customer personal computing device 1200′ shown in
Referring again to
Referring again to
Although the present invention has been described with reference to specific features and embodiments thereof, various modifications and combinations can be made thereto and will become apparent in view of the present description. The description and drawings are, accordingly, to be regarded simply as an illustration of some embodiments of the invention as defined by the appended claims. As one of ordinary skill in the art will readily appreciate from the disclosure of the present invention, processes, machines, manufacture, compositions of matter, means, methods, or steps, presently existing or later to be developed, that perform substantially the same function or achieve substantially the same result as the corresponding embodiments described herein may be utilized in alternative implementations if the invention.
Moreover, any module, component, or device exemplified herein that executes instructions may include or otherwise have access to a non-transitory computer/processor readable storage medium or media for storage of information, such as computer/processor readable instructions, data structures, program modules, and/or other data. A non-exhaustive list of examples of non-transitory computer/processor readable storage media includes magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, optical disks such as compact disc read-only memory (CD-ROM), digital video discs or digital versatile disc (DVDs), Blu-ray Disc™, or other optical storage, volatile and non-volatile, removable and non-removable media implemented in any method or technology, random-access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology. Any such non-transitory computer/processor storage media may be part of a device or accessible or connectable thereto. Any application or module herein described may be implemented using computer/processor readable/executable instructions that may be stored or otherwise held by such non-transitory computer/processor readable storage media.
The foregoing is considered as illustrative only of the principles of the invention. Since numerous modifications and changes will become readily apparent to those skilled in the art in light of the present description, it is not desired to limit the invention to the exact examples and embodiments shown and described, and accordingly, suitable modifications and equivalents may be resorted to. It will be understood by those of skill in the art that throughout the present specification, the term “a” used before a term encompasses embodiments containing one or more to what the term refers. It will also be understood by those of skill in the art that throughout the present specification, the term “comprising”, which is synonymous with “including,” “containing,” or “characterized by,” is inclusive or open-ended and does not exclude additional, un-recited elements or method steps.
Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention pertains. In the case of conflict, the present document, including definitions will control.
Although the present invention has been described in considerable detail with reference to certain embodiments thereof, variations and refinements are possible and will become apparent to the person skilled in the art in view of the present description. The invention is defined more particularly by the attached claims.
The present application is a continuation under 35 USC § 120 of U.S. patent application Ser. No. 16/002,965 filed Jun. 7, 2018. The contents of the aforementioned document are incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
4568821 | Boe | Feb 1986 | A |
5361215 | Tompkins et al. | Nov 1994 | A |
5710409 | Schwarzbacker et al. | Jan 1998 | A |
5930852 | Gravatt et al. | Aug 1999 | A |
6166729 | Acosta et al. | Dec 2000 | A |
6200108 | Caudill et al. | Mar 2001 | B1 |
6355913 | Authier et al. | Mar 2002 | B1 |
6476363 | Authier et al. | Nov 2002 | B1 |
6488408 | Laflamme et al. | Dec 2002 | B1 |
6676831 | Wolfe | Jan 2004 | B2 |
6714977 | Fowler | Mar 2004 | B1 |
6717050 | Laflamme et al. | Apr 2004 | B2 |
6734879 | Hasha et al. | May 2004 | B2 |
6744223 | Laflamme et al. | Jun 2004 | B2 |
6754321 | Innes et al. | Jun 2004 | B1 |
6775374 | Nishikawa | Aug 2004 | B2 |
6782309 | Laflamme et al. | Aug 2004 | B2 |
6813575 | Laflamme | Nov 2004 | B2 |
6874175 | Laflamme et al. | Apr 2005 | B2 |
6900736 | Crumb | May 2005 | B2 |
6929516 | Brochu et al. | Aug 2005 | B2 |
6942354 | Metayer et al. | Sep 2005 | B2 |
7010363 | Donnelly et al. | Mar 2006 | B2 |
7046163 | Macey | May 2006 | B2 |
7112768 | Brochu et al. | Sep 2006 | B2 |
7292898 | Clark et al. | Nov 2007 | B2 |
7327275 | Brochu et al. | Feb 2008 | B2 |
7398138 | Emery et al. | Jul 2008 | B2 |
7419406 | Brochu et al. | Sep 2008 | B2 |
7420293 | Donnelly et al. | Sep 2008 | B2 |
7440820 | Gougerot et al. | Oct 2008 | B2 |
7489986 | Laflamme et al. | Feb 2009 | B1 |
7514884 | Potucek et al. | Apr 2009 | B2 |
7593789 | Gougerot et al. | Sep 2009 | B2 |
7619181 | Authier | Nov 2009 | B2 |
7701679 | Brochu et al. | Apr 2010 | B2 |
7843357 | Brochu et al. | Nov 2010 | B2 |
7982625 | Brochu et al. | Jul 2011 | B2 |
8104110 | Caudill et al. | Jan 2012 | B2 |
8150552 | Brochu et al. | Apr 2012 | B2 |
8164470 | Brochu et al. | Apr 2012 | B2 |
8612061 | Laflamme et al. | Dec 2013 | B2 |
8644960 | Laflamme et al. | Feb 2014 | B2 |
8892261 | Hoonhout et al. | Nov 2014 | B2 |
9043472 | Chau | May 2015 | B1 |
9405441 | Trafton et al. | Aug 2016 | B2 |
9442639 | Laflamme et al. | Sep 2016 | B2 |
10037675 | Uy | Jul 2018 | B2 |
10159624 | Laflamme et al. | Dec 2018 | B2 |
10235033 | Laflamme et al. | Mar 2019 | B2 |
10447492 | Jacobson | Oct 2019 | B1 |
10624812 | Laflamme et al. | Apr 2020 | B2 |
10789335 | Kang et al. | Sep 2020 | B2 |
10809905 | Laflamme et al. | Oct 2020 | B2 |
11116692 | Laflamme et al. | Sep 2021 | B2 |
11213455 | Laflamme et al. | Jan 2022 | B2 |
11455092 | Laflamme et al. | Sep 2022 | B2 |
20010029407 | Tompkins et al. | Oct 2001 | A1 |
20020025050 | Macey | Feb 2002 | A1 |
20020070875 | Crumb | Jun 2002 | A1 |
20020175828 | Macey | Nov 2002 | A1 |
20030011634 | Hasha et al. | Jan 2003 | A1 |
20030020742 | Hasha et al. | Jan 2003 | A1 |
20030022635 | Benning et al. | Jan 2003 | A1 |
20030121094 | Laflamme et al. | Jul 2003 | A1 |
20040054789 | Breh et al. | Mar 2004 | A1 |
20040117330 | Ehlers et al. | Jun 2004 | A1 |
20040119814 | Clisham et al. | Jun 2004 | A1 |
20040244103 | Laflamme et al. | Dec 2004 | A1 |
20050015458 | La | Jan 2005 | A1 |
20050045621 | Chenier et al. | Mar 2005 | A1 |
20050088119 | Potucek et al. | Apr 2005 | A1 |
20050167345 | De Wet et al. | Aug 2005 | A1 |
20050222786 | Tarpo et al. | Oct 2005 | A1 |
20050222933 | Wesby | Oct 2005 | A1 |
20050288821 | Laflamme | Dec 2005 | A1 |
20060031476 | Mathes et al. | Feb 2006 | A1 |
20060092008 | Corrington et al. | May 2006 | A1 |
20060221841 | Lee | Oct 2006 | A1 |
20070106403 | Emery et al. | May 2007 | A1 |
20080021685 | Emery | Jan 2008 | A1 |
20080039977 | Clark et al. | Feb 2008 | A1 |
20080129578 | Petersen et al. | Jun 2008 | A1 |
20080154394 | Lin | Jun 2008 | A1 |
20080163416 | Go | Jul 2008 | A1 |
20080168599 | Caudill et al. | Jul 2008 | A1 |
20080205865 | Lesage et al. | Aug 2008 | A1 |
20080259056 | Freier et al. | Oct 2008 | A1 |
20080311898 | Benco | Dec 2008 | A1 |
20090013210 | McIntosh et al. | Jan 2009 | A1 |
20090106890 | Rosenau | Apr 2009 | A1 |
20090164049 | Nibler et al. | Jun 2009 | A1 |
20090187499 | Mulder et al. | Jul 2009 | A1 |
20090200245 | Steinbrueck et al. | Aug 2009 | A1 |
20090204263 | Love | Aug 2009 | A1 |
20090218296 | King et al. | Sep 2009 | A1 |
20090240766 | Kikkawa et al. | Sep 2009 | A1 |
20090255049 | Rosenau | Oct 2009 | A1 |
20100049743 | Schmidt | Feb 2010 | A1 |
20100132106 | Cline | Jun 2010 | A1 |
20100138786 | McQueen | Jun 2010 | A1 |
20100150170 | Lee | Jun 2010 | A1 |
20100168878 | Hoonhout et al. | Jul 2010 | A1 |
20100206869 | Nelson et al. | Aug 2010 | A1 |
20100219962 | Brochu et al. | Sep 2010 | A1 |
20110006904 | Duchamp et al. | Jan 2011 | A1 |
20110023225 | Kaykov et al. | Feb 2011 | A1 |
20110030016 | Pino et al. | Feb 2011 | A1 |
20110046805 | Bedros et al. | Feb 2011 | A1 |
20110046806 | Nagel et al. | Feb 2011 | A1 |
20110093099 | Tran et al. | Apr 2011 | A1 |
20110098869 | Seo et al. | Apr 2011 | A1 |
20110202150 | Tran et al. | Aug 2011 | A1 |
20120055419 | Beyerle et al. | Mar 2012 | A1 |
20120078426 | Macey | Mar 2012 | A1 |
20120096637 | Laflamme et al. | Apr 2012 | A1 |
20120158336 | Duchamp | Jun 2012 | A1 |
20120173382 | Loveland | Jul 2012 | A1 |
20130094444 | Lai et al. | Apr 2013 | A1 |
20130166965 | Brochu | Jun 2013 | A1 |
20140108986 | Laflamme et al. | Apr 2014 | A1 |
20140123180 | Xiao | May 2014 | A1 |
20150067018 | Connolly | Mar 2015 | A1 |
20150095402 | Fraccaroli | Apr 2015 | A1 |
20150335523 | Kang et al. | Nov 2015 | A1 |
20150381795 | Brochu | Dec 2015 | A1 |
20160342323 | Laflamme et al. | Nov 2016 | A1 |
20170100656 | Laflamme et al. | Apr 2017 | A1 |
20170203634 | Dickow | Jul 2017 | A1 |
20170209339 | Potucek et al. | Jul 2017 | A1 |
20170267547 | Miller et al. | Sep 2017 | A1 |
20180240322 | Potucek | Aug 2018 | A1 |
20190155494 | Laflamme et al. | May 2019 | A1 |
20190242813 | Stahlman | Aug 2019 | A1 |
20190374431 | Laflamme et al. | Dec 2019 | A1 |
20200188227 | Laflamme et al. | Jun 2020 | A1 |
20210132782 | Laflamme et al. | May 2021 | A1 |
Number | Date | Country |
---|---|---|
2430862 | Nov 2007 | CA |
2324598 | May 2008 | CA |
2483876 | Apr 2009 | CA |
2349106 | Oct 2009 | CA |
2442861 | Dec 2009 | CA |
2521572 | Dec 2009 | CA |
2361096 | Mar 2011 | CA |
2467015 | Jul 2011 | CA |
2730873 | Aug 2011 | CA |
2492350 | Nov 2011 | CA |
2357641 | Jan 2012 | CA |
2412221 | Jan 2012 | CA |
2499551 | May 2012 | CA |
2762788 | Jun 2013 | CA |
2755672 | Apr 2016 | CA |
2755673 | Jun 2017 | CA |
2934395 | Nov 2017 | CA |
2904274 | Dec 2017 | CA |
3007688 | Apr 2022 | CA |
3063474 | Oct 2022 | CA |
2017127802 | Jul 2017 | WO |
Entry |
---|
Non-Final Office Action dated Jul. 28, 2021 in connection with U.S. Appl. No. 16/803,340—7 pages. |
Examiner's Report dated Sep. 20, 2021 in connection with Canadian Patent Application No. 3,063,474—6 pages. |
Notice of Allowance dated Oct. 6, 2021 in connection with U.S. Appl. No. 16/803,340—8 pages. |
Non-Final Office Action dated Oct. 15, 2021 in connection with U.S. Appl. No. 17/073,537—10 pages. |
Jacuzzi, “Explore the Jacuzzi ProLink App”, https://www.youtube.com/watch?v=fiW-DfNAJzM, Sep. 8, 2015 (Sep. 8, 2015). |
Notice of Allowance dated Jun. 24, 2022 in connection with U.S. Appl. No. 17/073,537—17 pages. |
Notice of Allowance dated Jun. 30, 2022 in connection with Canadian Patent Application No. 3,063,474—1 page. |
Final Office Action dated Oct. 26, 2012 in connection with U.S. Appl. No. 12/910,615, 13 pages. |
Final Office Action dated Mar. 22, 2013 in connection with U.S. Appl. No. 12/916,160, 16 pages. |
Notice of Allowance dated Aug. 16, 2013 in connection with U.S. Appl. No. 12/916,160, 7 pages. |
Restriction Requirement dated Sep. 30, 2013 in connection with U.S. Appl. No. 13/336,513, 4 pages. |
Notice of Allowance dated Sep. 25, 2013 in connection with U.S. Appl. No. 12/910,615, 13 pages. |
Non-final Office Action dated Nov. 7, 2013 in connection with U.S. Appl. No. 13/336,513, 8 pages. |
Non-final Office Action dated Mar. 11, 2014 in connection with U.S. Appl. No. 14/0106,554, 11 pages. |
Final Office Action dated Jun. 26, 2014 in connection with U.S. Appl. No. 13/336,513, 7 pages. |
Restriction Requirement dated Nov. 4, 2014 in connection with U.S. Appl. No. 14/106,554, 5 pages. |
Non-final Office Action dated Jan. 23, 2015 in connection with U.S. Appl. No. 13/336,513, 6 pages. |
Examiner's Report dated Feb. 10, 2015 in connection with Canadian Patent Application 2, 755,672, 8 pages. |
Ex parte Quayle Action dated Apr. 22, 2015 in connection with U.S. Appl. No. 14/106,554, 4 pages. |
Final Office Action dated Jul. 14, 2015 in connection with U.S. Appl. No. 13/336,513, 5 pages. |
Newport Controls, LLC, “Azure Control Panel—User's Manual”, Newport Controls User Manual downloaded from website on Sep. 27, 2010, 37 pages. |
Notice of Allowance dated Sep. 17, 2015 in connection with Canadian Patent Application 2,755,672, 1 page. |
Non-Finai Office Action dated Nov. 4, 2015 in connection with U.S. Appl. No. 14/106,554, 11 pages. |
Non-Final Office Action dated Dec. 14, 2015 in connection with U.S. Appl. No. 14/852,792, 8 pages. |
Examiner's Report dated May 10, 2016 in connection with Canadian Patent Application 2, 755,673, 2 pages. |
Final Office Action dated May 5, 2016 in connection with U.S. Appl. No. 14/852,792, 6 pages. |
Notice of Allowance dated May 6, 2016 in connection with U.S. Appl. No. 14/106,554, 5 pages. |
Non-Final Office Action dated Dec. 2, 2016 in connection with related U.S. Appl. No. 14/852,792, 7 pages. |
Examiner's Report dated Jan. 24, 2017 in connection with Canadian application No. 2,904,274—3 pages. |
Examiner's Report dated Jan. 24, 2017 in connection with Canadian application No. 2,762,788—3 pages. |
Final Office Action dated Mar. 27, 2017 in connection with related U.S. Appl. No. 14/852,792, 15 pages. |
Notice of Allowance dated Apr. 12, 2017 in connection with Canadian application No. 2,934,395—1 page. |
Notice of Allowance dated Jun. 29, 2017 in connection with Canadian application No. 2,904,274—1 page. |
Non Final Office Action dated Aug. 30, 2017 in connection with U.S. Appl. No. 14/852,792—13 pages. |
Examiner's Report dated Oct. 12, 2017 in connection with Canadian Patent Application No. 2,762,788—5 pages. |
Restriction Requirement dated Nov. 7, 2017 in connection with U.S. Appl. No. 15/227,404—6 pages. |
Non-final Office Action dated Jan. 10, 2018 in connection with U.S. Appl. No. 15/227,404—6 pages. |
Restriction Requirement dated Jan. 12, 2018 in connection with U.S. Appl. No. 14/851,986—8 pages. |
Notice of Allowance dated Aug. 14, 2018 in connection with U.S. Appl. No. 14/851,986—12 pages. |
Corrected Notice of Allowance dated Sep. 12, 2018 in connection with U.S. Appl. No. 14/851,986—2 pages. |
Examiner's Report dated Sep. 28, 2018 in connection with Canadian Patent Application No. 2,762,788—5 pages. |
Examiner's Report dated Nov. 13, 2018 in connection with Canadian Patent Application No. 2,982,143—3 pages |
Notice of Allowance dated Nov. 15, 2018 in connection with U.S. Appl. No. 15/227,404—9 pages. |
Non-Finai Office Action dated Jul. 17, 2019 in connection with U.S. Appl. No. 15/916,041—8 pages. |
Examiner's Report dated Aug. 28, 2019 in connection with CA Patent Application No. 2,982,143—3 pages. |
Examiner's Report dated Sep. 5, 2019 in connection with Canadian Patent Application No. 3,007,688—7 pages. |
Examiner's Report dated Oct. 4, 2019 in connection with Canadian patent Application No. 2,762,788—6 pages. |
Notice of Allowance dated Dec. 2, 2019 in connection with U.S. Appl. No. 15/916,041—4 pages. |
Non-Finai Office Action dated Feb. 6, 2020 in connection with U.S. Appl. No. 16/260,555—8 pages. |
Notice of Allowance dated Jun. 24, 2020 in connection with U.S. Appl. No. 16/260,555—8 pages. |
Non-Finai office Action dated Jun. 24, 2020 in connexion with U.S. Appl. No. 16/002,956—16 pages. |
Notice of Allowance dated Jul. 27, 2020 in connection with Canadian application No. 3,007,688—1 page. |
Notice of Allowance dated Sep. 16, 2020 in connection with U.S. Appl. No. 16/260,555—6 pages. |
Examiner's Report dated Sep. 16, 2020 in connexion with Canadian Patent Application No. 3,007,688—5 pages. |
Final Office Action dated Jan. 1, 2021 in connection with U.S. Appl. No. 16/002,956—19 pages. |
Examiner's Report dated Jan. 18, 2021 in connection with Canadian Patent Application No. 3,063,474—5 pages. |
Examiner's Report dated May 3, 2021 in connection with Canadian Patent Application No. 3,007,688—10 pages. |
Notice of Allowance dated May 27, 2021 in connection with U.S. Appl. No. 16/002,956—30 pages. |
Corrected Notice of Allowance dated Nov. 17, 2021 in connection with U.S. Appl. No. 16/803,340—13 pages. |
Notice of Allowance dated Jan. 26, 2022 in connection with Canadian Patent Application No. 3,007,688—1 page. |
Number | Date | Country | |
---|---|---|---|
20210369561 A1 | Dec 2021 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 16002956 | Jun 2018 | US |
Child | 17399230 | US |