US10121473B2 - System and method for determining recipient of spoken command in a control system - Google Patents

System and method for determining recipient of spoken command in a control system Download PDF

Info

Publication number
US10121473B2
US10121473B2 US15/376,846 US201615376846A US10121473B2 US 10121473 B2 US10121473 B2 US 10121473B2 US 201615376846 A US201615376846 A US 201615376846A US 10121473 B2 US10121473 B2 US 10121473B2
Authority
US
United States
Prior art keywords
audible command
command
controlling device
time
digitized
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
US15/376,846
Other versions
US20170092272A1 (en
Inventor
Fred Bargetzi
Ara Seferian
Josh Stene
Mark LaBosco
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Crestron Electronics Inc
Original Assignee
Crestron Electronics Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US14/850,904 external-priority patent/US20170097621A1/en
Application filed by Crestron Electronics Inc filed Critical Crestron Electronics Inc
Priority to US15/376,846 priority Critical patent/US10121473B2/en
Assigned to CRESTRON ELECTRONICS INC. reassignment CRESTRON ELECTRONICS INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: BARGETZI, FRED, LABOSCO, MARK, SEFERIAN, ARA, STENE, JOSH
Publication of US20170092272A1 publication Critical patent/US20170092272A1/en
Application granted granted Critical
Publication of US10121473B2 publication Critical patent/US10121473B2/en
Priority to US16/272,224 priority patent/US10748539B2/en
Priority to US16/272,252 priority patent/US10783888B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/30Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command

Definitions

  • aspects of the embodiments relate generally to control networks, and more specifically to systems, methods, and modes for controlling controllable devices in the control network based on audio commands alone, according to an aspect of the embodiments, and in further aspects of the embodiments, controlling the controllable devices of the control network based on audio commands and other sensory information.
  • control systems that include lighting, shades, environmental controls, security, audio-visual (AV), and other types of sub-systems.
  • the user can turn and off components of such systems (from hereon in referred to as “controllable devices”), for example, lighting products, by a switch, one or more remote control (RC) devices (such as a dedicated RC device, or through some other type of RC device), remotely through network messages (e.g., command and control messages through the internet), and other means, such as speech.
  • RC remote control
  • inoperativeness As those of skill in the art can appreciate, there are several problems with speech based control systems that must be addressed. Among them are inoperativeness, false positives, collocation issues, and privacy issues. In regard to inoperativeness, this is defined by the speech based control system simply failing to respond at all to a proper command. A false positive is when a user does not intend the controllable device to turn off, but it does. This can occur because the speech recognition system misinterprets the recorded audible signal, and incorrectly applies a control, when one was not intended. Collocation issues can arise when two control devices are relatively close to each other, and a command is heard by both, and both or the wrong device acts on the command that was intended for a first control device, but not the second.
  • the privacy issue arises when certain private areas of a home (e.g., the lavatory) are adjacent to other rooms; commands issued in or near that room can be misinterpreted by the system, causing occupants to make possible embarrassing counter-commands.
  • a need has arisen for more precise audible control of a control network and the controllable devices that make up the control network by providing systems, methods, and modes for controlling controllable devices in the control network based on audio commands alone, according to an aspect of the embodiments, and in further aspects of the embodiments, controlling the controllable devices of the control network based on audio commands and other sensory information.
  • a system for determining which controllable device an audible command is directed towards, the system comprising two or more controllable devices; two or more electronic devices, each of which is adapted to receive the audible command, add a respective electronic device identifier to the received audible command, time and date stamp the received audible command, and transmit the respective time and date stamped versions of the audible command, and wherein each of the two or more electronic device are further adapted to control respective ones of the two or more controllable devices; and a central processor adapted to receive each of the transmitted time and date stamped versions of the audible command and perform processing based on the time and date stamp, wherein the electronic device that reports the earlier time and date stamp, as ascertained by the respective electronic device identifier and a comparison of each of the time and date stamps performed by the central processor, is the electronic device to which the audible command is directed towards.
  • the time and date stamped versions of the audible command further conveys amplitude information of the respectively received audible command
  • each of the two or more electronic devices are further adapted to compare the amplitudes of the received audible commands, and determine, based on the amplitude of the received audible commands, which controllable device the audible command is directed towards, based on a larger amplitude.
  • a system for determining which controllable device an audible command is directed towards, the system comprising two or more controllable devices; two or more controlling devices, each of which is adapted to control respective ones of the two or more controllable devices, receive the audible command, digitize the received audible command, and transmit the same; and a central processor adapted to receive the transmitted digitized audible commands from the two or more controlling devices, and apply a speech recognition algorithm to the received digitized audible commands to determine which controllable device the received audible command is directed towards.
  • the system further comprises the central processor being further adapted to prepare and transmit a control command to the controllable device that the received audible command was directed towards, to enact the audible command.
  • a method for determining which controllable device an audible command is directed towards comprising: receiving at two or more controlling devices an audible command, the audible command directed to control at least one of two or more controllable devices controlled by a respective one of the two or more controlling devices; digitizing the received audible command and transmitting the same by each of the two or more controlling devices; receiving the transmitted digitized audible commands at a central processor and applying a speech recognition algorithm to determine which of the at least two or more controllable devices the audible command was directed towards.
  • the method further comprises adding a unique controlling device identifier to the received audible command at each respective controlling device; applying a time and date stamp to the received audible command at each respective controlling device; transmitting the respective time and date stamped versions of the received audible command; and receiving the transmitted time and date stamped versions of the audible commands at a central processor, the central processor adapted to receive each of the transmitted time and date stamped versions of the audible command and perform processing based on the time and date stamp, and wherein the central processor is further adapted to determine the earliest time and date stamp of each of the received audible commands by comparing each of the respective time and date stamps of each of the received audible commands; generating a command signal by the central processor and transmitting the same to the controllable device that corresponds to the controlling device that had the earliest time and date stamp.
  • the method further comprises adding a unique controlling device identifier to the received audible command at each respective controlling device; transmitting the respective audible commands with the unique controlling device identifier; and receiving the transmitted audible commands at a central processor, the central processor adapted to receive each of the transmitted audible commands and applying a central processor generated time and date stamp to each received audible commands, and wherein the central processor is further adapted to determine the earliest time and date stamp of each of the received audible commands by comparing each of the respective time and date stamps of each of the received audible commands; generating a command signal by the central processor and transmitting the same to the controllable device that corresponds to the controlling device that had the earliest time and date stamp.
  • a method for determining which controllable device an audible command is directed towards comprising: receiving at each of two or more controlling devices the audible command, the audible command being directed to control at least one of two or more controllable devices controlled by a respective one of the two or more controlling devices; digitizing each of the received audible commands; attaching a time-date stamp to each of the digitized audible commands using a time-date stamp generator that employs a time synch protocol, and further attaching a unique identifier to each of the time-date stamped digitized audible commands so as to uniquely correlate it to a respective controlling device; determining a first received digitized audible command on the basis of an earliest time-date stamp, and further determining to which controlling device the audible command is directed to on the basis of the unique identifier of the first received digitized audible command; performing speech recognition on the first received digitized audible command to determine a command for
  • the method further comprises: receiving the command by the controlling device; and controlling the controllable device in accordance with the received command.
  • the step of determining further comprises: determining a magnitude of each of the digitized audible commands from respective controlling devices; and verifying that the magnitude of the digitized audible command with the earliest time-date stamp is equal to or larger than any other digitized audible commands.
  • the method further comprises: applying additional processing to determine which controlling device the received audible command is directed to if the magnitude of the received and digitized audible command with the earliest time-date stamp is less than any other received and digitized audible command.
  • the step of applying additional processing comprises: checking one or more of an occupancy sensor reading, proximity sensor reading, and motion detector reading, each of which is associated with respective controlling devices to determine which controlling device the received audible command is directed to.
  • the method further comprises: determining that the occupancy sensor reading associated with a respective controlling device matches the received audible command in order to determine that the received audible command should be applied to the controllable device controlled by the respective controlling device.
  • the method further comprises: determining that the proximity sensor reading associated with a respective controlling device matches the received audible command in order to determine that the received audible command should be applied to the controllable device controlled by the respective controlling device.
  • the method further comprises: determining that the motion detector reading associated with a respective controlling device matches the received audible command in order to determine that the received audible command should be applied to the controllable device controlled by the respective controlling device.
  • the method further comprises: applying noise reduction processing.
  • the step of applying noise reduction to the received audible command comprises: filtering the received audible command in an analog domain to attenuate a first bandwidth of noise energy.
  • the step of applying noise reduction comprises: using one or more of acoustic echo cancellation filtering, direction of arrival filtering, and directionally adaptive beam forming filtering, to filter the digitized audible command in a digital domain to attenuate noise energy and to amplify audible command energy.
  • the noise energy comprises: noise energy generated by one or more of a fan motor, music, air conditioning noise, audio generated by multi-media presentations, and non-command words.
  • the method further comprises: receiving at least one additional audible command from at least one additional spatially separated microphone, the at least one additional spatially separated microphone associated with a respective controlling device; digitizing the at least one additional audible command received from the at least one additional spatially separated microphone; attaching a time-date stamp to the at least one digitized additional audible command, and further attaching a unique identifier to each time-date stamped digitized additional audible command so as to uniquely correlate it to its respective controlling device; and using the at least one additional digitized audible command to assist in determining to which controlling device the audible command is directed to.
  • the step of determining, on the basis of the time-date stamp, to which controlling device the digitized audible command is directed to comprises: generating the time-date stamp using a time-date stamp generator, the time-date stamp generator located in at least one controlling device that includes a plurality of microphones located at the controlling device; averaging all of the time-date stamps generated at the controlling device with a plurality of microphones; and attaching the averaged time-date stamp to each of the plurality of digitized audible commands prior to the step of transmitting.
  • the steps of determining, performing, and forwarding are performed by a central controller.
  • the steps of digitizing, and attaching the time-date stamp are performed by the controlling device.
  • controllable devices include one or more of a sensor, lighting control device, shade device, audio/video device, environmental control device, security device, household appliance, control device, and industrial device.
  • the controlling device comprises a keypad.
  • an acoustic sensor network comprising: two or more controllable devices; two or more controlling devices, each of two or more controlling devices comprising at least one respective microphone, a time-date stamp generator, and an analog to digital converter, each of the two or more controlling devices being adapted to control a respective one of the two or more controllable devices, and wherein each of the two or more controlling devices are further adapted to receive an audible command through its respective microphone, the received audible command being directed to control one of the two or more controllable devices controlled by a respective controlling device, and wherein each of the analog to digital converters are adapted to digitize the received audible command, and wherein each of the two or more controlling devices are further adapted to attach a time-date stamp to each of the digitized audible commands using the time-date stamp generator that employs a time synch protocol and attach a unique identifier to each of the time-date stamped digitized audible commands so as to uniquely correlate the time
  • the controlling device that receives the command is adapted to control the controllable device in accordance with the received command.
  • the central controller is further adapted to determine a magnitude of each of the digitized audible commands from respective controlling devices, and verify that the magnitude of the digitized audible command with the earliest time-date stamp is equal to or larger than any other digitized audible command signal.
  • the central controller is further adapted to apply additional processing to determine which controlling device the received audible command is directed to if the magnitude of the digitized audible command signal with the earliest time-date stamp is less than any other received audible command.
  • the central controller is further adapted to check one or more of an occupancy sensor reading, proximity sensor reading, and motion detector reading, each of which is associated with respective controlling devices to determine which controlling device the received audible command is directed to.
  • the central controller is further adapted to determine that the occupancy sensor reading associated with a respective controlling device matches the received audible command in order to determine that the received audible command should be applied to the controllable device controlled by the respective controlling device.
  • the central controller is further adapted to determine that the proximity sensor reading associated with a respective controlling device matches the received audible command in order to determine that the received audible command should be applied to the controllable device controlled by the respective controlling device.
  • the central controller is further adapted to determine that the motion detector reading associated with a respective controlling device matches the received audible command in order to determine that the received audible command should be applied to the controllable device controlled by the respective controlling device.
  • the controlling device further comprises a noise reduction processing circuit.
  • the noise reduction processing circuit is adapted to filter the received analog audible command signal in an analog domain to attenuate a first bandwidth of noise energy.
  • the noise reduction processing circuit is adapted to use one or more of acoustic echo cancellation filtering, direction of arrival filtering, and directionally adaptive beam forming filtering, to filter the digital audible command signal in a digital domain to attenuate noise energy and to amplify audible command energy.
  • the noise energy comprises: noise energy generated by one or more of a fan motor, music, air conditioning noise, audio generated by multi-media presentations, and non-command words.
  • the acoustic sensor network further comprises at least one additional spatially separated microphone, adapted to receive the audible command and associated with one of the at least two controlling devices; an analog to digital converter associated with the at least one additional spatially separated microphone, and adapted to digitize the received audible command; a time-date stamp generator adapted to add a time-date stamp to the at least one additional digitized audible command, and further adapted to add a unique identifier to the at least one time-dated stamped additional digitized audible command, the unique identifier corresponding to the associated one of the controlling devices, and further wherein the central controller uses the at least one additional digitized audible command to assist in determining to which controlling device the audible command is directed to.
  • the controlling device further comprises: a time-date stamp generator adapted to generate the time-date stamp; and at least two microphones, each of which digitizes the received audible command.
  • the controlling device is further adapted to average all of the time-date stamps generated at the controlling device, and attach the averaged time-date stamps to each of the plurality of digitized audible commands prior to transmitting the same.
  • controllable devices include one or more of a sensor, lighting control device, shade device, audio/video device, environmental control device, security device, household appliance, control device, and industrial device.
  • the controlling device comprises a keypad.
  • a method for determining which controllable device an audible command is directed towards comprising: receiving at each of two or more controlling devices the audible command signal, the audible command being directed to control at least one of two or more controllable devices controlled by a respective one of the two or more controlling devices; digitizing each of the received audible command signals; attaching a unique identifier to each digitized audible command so as to uniquely correlate it to a respective controlling device; determining a magnitude of each of the digitized audible command; determining a digitized audible command with the greatest magnitude, and further determining to which controlling device the audible command is directed to on the basis of the unique identifier associated with the digitized audible command with the greatest magnitude; performing speech recognition on the digitized audible command with the greatest magnitude; and forwarding a command to the controlling device corresponding to the digitized audible command with the greatest magnitude, the command corresponding to the audible
  • the method further comprises: receiving the command by the controlling device; and controlling the controllable device in accordance with the received command.
  • the step of determining further comprises: attaching a time-date stamp to the digitized audible command; and verifying that the time-date stamp of the greatest magnitude digitized audible command is the same or earlier than any other digitized audible command.
  • the step of attaching a time-date stamp to the digitized audible command is performed by the controlling device that received the audible command through use of a time-date stamp generator using a time synch protocol.
  • the step of attaching a time-date stamp to the digitized audible command is performed by a central controller.
  • the method further comprises: generating a test signal to determine a travel time from each of the plurality of controlling devices to the central controller; and modifying the time-date stamp of each received digitized audible command signal according to the travel time from a respective controlling device to the central processor, and using the modified time-date stamp to assist in determining to which controlling device the audible command signal is directed to.
  • the method further comprises: applying additional processing to determine which controlling device the audible command is directed to if the time-date stamp of the digitized audible command with the largest magnitude is later than any other digitized audible command.
  • the step of applying additional processing comprises: checking one or more of an occupancy sensor reading, proximity sensor reading, and motion detector reading, each of which is associated with respective controlling devices to determine which controlling device the audible command is directed to.
  • the method further comprises: determining that the occupancy sensor reading associated with a respective controlling device matches the audible command in order to determine that the audible command should be applied to the controllable device controlled by the respective controlling device.
  • the method further comprises: determining that the proximity sensor reading associated with a respective controlling device matches the audible command in order to determine that the audible command should be applied to the controllable device controlled by the respective controlling device.
  • the method further comprises: determining that the motion detector reading associated with a respective controlling device matches the audible command in order to determine that the audible command should be applied to the controllable device controlled by the respective controlling device.
  • the step of attaching a time-date stamp comprises: generating the time-date stamp using a time-date stamp generator, the time-date stamp generator located in at least one controlling device that includes a plurality of microphones located at the controlling device; averaging all of the time-date stamps generated at the controlling device with a plurality of microphones; and attaching the averaged time-date stamp to each of the plurality of digitized audible commands prior to the step of transmitting.
  • the method further comprises: applying noise reduction processing, and wherein the step of applying noise reduction to the audible command comprises: filtering the received audible command signal in an analog domain to attenuate a first bandwidth of noise energy.
  • the step of applying noise reduction comprises: using one or more of acoustic echo cancellation filtering, direction of arrival filtering, and directionally adaptive beam forming filtering, to filter the digitized audible command in a digital domain to attenuate noise energy and to amplify audible command energy.
  • the noise energy comprises: noise energy generated by one or more of a fan motor, music, air conditioning noise, audio generated by multi-media presentations, and non-command words.
  • the method further comprises: receiving at least one additional audible command from at least one additional spatially separated microphone, the at least one additional spatially separated microphone associated with a respective controlling device; digitizing the at least one additional audible command received from the at least one additional spatially separated microphone; attaching a time-date stamp to the at least one additional digitized audible command, and further attaching a unique identifier to each time-date stamped additional digitized audible command so as to uniquely correlate it to its respective controlling device; and using the at least one additional digitized audible command in the step of determining to which controlling device the audible command is directed to.
  • the steps of determining a magnitude, determining to which controlling device the audible command is directed to, performing, and forwarding are performed by a central controller.
  • the steps of receiving, digitizing, attaching the time-date stamp, and determining a magnitude are performed by the controlling device.
  • controllable devices include one or more of a sensor, lighting control device, shade device, audio/video device, environmental control device, security device, household appliance, control device, and industrial device.
  • the controlling device comprises a keypad.
  • an acoustic sensor network comprising: two or more controllable devices; two or more controlling devices, each of two or more controlling devices comprising at least one respective microphone, and an analog to digital converter, each of the two or more controlling devices being adapted to control a respective one of the two or more controllable devices, and wherein each of the two or more controlling devices are further adapted to receive an audible command through at least one respective microphone, the received audible command being directed to control one of the two or more controllable devices controlled by a respective controlling device, and wherein each of the analog to digital converters are adapted to digitize the received audible command, and wherein each of the two or more controlling devices are further adapted to attach a unique identifier to each of the digitized audible commands so as to uniquely correlate it to a respective controlling device and transmit the same; and a central controller adapted to receive each of the transmitted digitized audible commands, determine a magnitude of each of the digitized audible
  • the controlling device that receives the command is adapted to control the controllable device in accordance with the received command.
  • each of the controlling devices are further adapted to attach a time-date stamp to the digitized audible commands through use of a time-date stamp generator using a time synch protocol, and wherein the central controller is further adapted to verify that the time-date stamp of the digitized audible command with the greatest magnitude is the same or earlier than the time-date stamp of any other digitized received audible command signal.
  • the central controller is further adapted to generate a test signal to determine a travel time from each of the plurality of controlling devices to the central controller, modify the time-date stamp of each received digitized audible command signal according to the travel time from a respective controlling device to the central processor, and use the modified time-date stamp to assist in determining to which controlling device the audible command signal is directed to.
  • the central controller is further adapted to apply additional processing to determine which controlling device the received audible command is directed to if the time-date stamp of the digitized audible command signal with the greatest magnitude is later than the time-date stamp any other digitized audible command.
  • the central controller is further adapted to check one or more of an occupancy sensor reading, proximity sensor reading, and motion detector reading, each of which is associated with respective controlling devices to determine which controlling device the received audible command is directed to.
  • the central controller is further adapted to determine that the occupancy sensor reading associated with a respective controlling device matches the received audible command in order to determine that the received audible command should be applied to the controllable device controlled by the respective controlling device.
  • the central controller is further adapted to determine that the proximity sensor reading associated with a respective controlling device matches the received audible command in order to determine that the received audible command should be applied to the controllable device controlled by the respective controlling device.
  • the central controller is further adapted to determine that the motion detector reading associated with a respective controlling device matches the received audible command in order to determine that the received audible command should be applied to the controllable device controlled by the respective controlling device.
  • the controlling device further comprises a noise reduction processing circuit.
  • the noise reduction processing circuit is adapted to filter the received audible command in an analog domain to attenuate a first bandwidth of noise energy.
  • the noise reduction processing circuit is adapted to use one or more of acoustic echo cancellation filtering, direction of arrival filtering, and directionally adaptive beam forming filtering, to filter the digitized audible command in a digital domain to attenuate noise energy and to amplify audible command energy.
  • the noise energy comprises noise energy generated by one or more of a fan motor, music, air conditioning noise, audio generated by multi-media presentations, and non-command words.
  • the acoustic sensor network further comprises: at least one additional spatially separated microphone, adapted to receive the audible command, and associated with one of the at least two controlling devices; an analog to digital converter associated with the at least one spatially separated microphone, and adapted to digitize the received audible command; a time-date stamp generator adapted to add a time-date stamp to the additional digitized audible command, and further adapted to add a unique identifier to the additional digitized audible command, the unique identifier corresponding to the associated one of the controlling devices, and further wherein the central controller uses the at least one additional digitized audible command to assist in determining to which controlling device the audible command is directed to.
  • the controlling device further comprises: a time-date stamp generator adapted to generate the time-date stamp; and at least two microphones, each of which digitizes the received audible command.
  • the controlling device is further adapted to average all of the time-date stamps generated at the controlling device, and attach the averaged time-date stamps to each of the plurality of digitized audible commands prior to transmitting the same.
  • controllable devices include one or more of a sensor, lighting control device, shade device, audio/video device, environmental control device, security device, household appliance, control device, and industrial device.
  • the controlling device comprises a keypad.
  • FIG. 1 illustrates a block diagram of a control network for controlling one or more controllable devices in a home, business, or enterprise environment according to aspects of the embodiments.
  • FIG. 2 illustrates a block diagram of a controller for use in the control network of FIG. 1 according to aspects of the embodiments.
  • FIG. 3 illustrates a block diagram of a gateway for use in the control network of FIG. 1 according to aspects of the embodiments.
  • FIG. 4 illustrates a block diagram of a personal electronic device for use with the control system of FIG. 1 according to aspects of the embodiments.
  • FIG. 5 illustrates a block diagram of a wall mount keypad for use in the control network as shown in FIG. 1 , wherein the wall mount keypad can be used as part of an acoustic sensory network according to aspects of the embodiments.
  • FIG. 6 illustrates a simplified view of the generation and detection of sound waves as used in the aspects of the embodiments.
  • FIG. 7 illustrates a plan view of a floor of a house in which the system and method for determining which controllable device an audible command is directed to can be used according to aspects of the embodiments.
  • FIG. 8 illustrates a flow diagram of a method for determining which controllable device an audible command is directed to according to aspects of the embodiments.
  • FIG. 9 illustrates processing and memory components/circuitry of one or more of the personal electronic device 104 of FIG. 4 , gateway device 114 of FIG. 3 , controller 116 of FIG. 2 , and any other devices that uses one or more processors as described herein that uses software and/or applications to perform various functions and actions as described herein according to aspects of the embodiments.
  • FIG. 10 illustrates several audio processing blocks that can occur within either or both of an audio processing board and a voice recognition system-on-a-chip circuit according to aspects of the embodiments.
  • the devices and systems offered by Crestron streamlines technology, improving the quality of life in commercial buildings, universities, hotels, hospitals, and homes, among other locations. Accordingly, the systems, methods, and modes of the aspects of the embodiments described herein, as embodied as control network 100 , and its constituent components, can be manufactured by Crestron Electronics, Inc., located in Rockleigh, N.J.
  • FIG. 1 illustrates a block diagram of control network 100 that includes controllable devices, monitoring devices, and active devices according to aspects of the embodiments.
  • Control network 100 comprises portable electronic device (PED) 104 , control point (e.g., keypad) 106 , gateway device (gateway) 114 , controller (controller) 116 , and one or more controllable devices such as, but not limited to, sensors 108 , lighting control devices (lighting device) 110 , shade control devices (shade device) 112 , audio/video (AN) devices 118 , heating ventilation and air conditioning (HVAC) devices 120 , and security devices 122 .
  • PED portable electronic device
  • control point e.g., keypad
  • gateway device gateway
  • controller controller
  • one or more controllable devices such as, but not limited to, sensors 108 , lighting control devices (lighting device) 110 , shade control devices (shade device) 112 , audio/video (AN) devices 118 , heating ventilation and air conditioning (
  • gateway 114 and controller 116 can be part of the same device, as the dashed line box around the two indicates.
  • ostensible all or substantially all of the controllable devices will be wireless devices, one or more can be connected to gateway 114 and/or controller 116 by cabling (not shown).
  • First antenna 115 is designed to work in the frequency band appropriate for Institute of Electrical and Electronic Engineers (IEEE) standard 802.11n, where n can be one of “a,” “b,” and “g,” among other versions of the standard (herein after referred to as “802.11”).
  • IEEE Institute of Electrical and Electronic Engineers
  • 802.11n can be one of “a,” “b,” and “g,” among other versions of the standard (herein after referred to as “802.11”).
  • IEEE 802.11 standards encompass wireless local area networks (LANs), in this case, those that are referred to as “Wi-Fi” networks.
  • first antenna 115 is an antenna capable of transceiving Wi-Fi signals.
  • First antenna 115 is therefore included as part of PED 104 , controller 116 , which communicate via communication network 134 , described in greater detail below, as well as any of the devices 106 , 108 , 110 , 112 , 118 , 120 , 122 , 124 , 126 , 128 , and 130 .
  • Each component that includes first antenna 115 also can include a suitably arranged transceiver, such as a Wi-Fi transceiver, which can process signals for Wi-Fi (IEEE 802.11) transmission and reception thereof as well.
  • Second antenna 117 is designed to work in the frequency band appropriate for IEEE standard 802.15.n, where n can be one of 3, 4, 5, 6, among other versions of the standard (herein after referred to as “802.15”).
  • the IEEE 802.15 standards encompass low rate wireless personal area wireless networks (LR WPANs).
  • the LR WPAN can be one those that are referred to as “ZigBee” networks, or, according to further aspects of the embodiments, an Infinet® as designed and manufactured by Crestron Electronics, Inc., of Rockleigh, N.J. (among other types of LR WPANs, which can include WirelessHart, Mi-Wi, and Thread, among others).
  • second antenna 117 is an antenna capable of transceiving ZigBee or Infinet signals.
  • second antenna 117 (which can include one or more of devices 104 , 106 , 108 , 110 , 112 , 114 , 116 , 118 , 120 , 122 , 124 , 126 , 128 , and 130 ) is a suitably arranged transceiver, such as IEEE 802.15.4 LR-WPAN transceiver (LR-WPAN transceiver) 214 that can process signals for ZigBee/Infinet transmission and reception thereof as well.
  • LR-WPAN transceiver LR-WPAN transceiver
  • All of the other controllable devices can also utilize such wireless communications devices, so one, some, or all of them can also include second antenna 117 , and be also equipped with a suitable transceiver, for substantially similar purposes as that of gateway device 114 , among others, such as keypad 106 .
  • each of the devices of network 100 can further include third antenna 119 , which is adapted to work with one or more of third generation (3G), fourth generation (4G), and long term evolution (LTE) cellular (cellular) transceiver 216 .
  • controller 116 includes third antenna 119 and cellular transceiver 216 according to aspects of the embodiments.
  • controller 116 As those of skill in the art can appreciate, and in fulfillment of the dual purposes of clarity and brevity, a more detailed discussion of the internal operation of controller 116 is not needed to understand the various aspects of the embodiments described herein, and therefore has been omitted from this discussion herein. However, such detailed discussion can be found in the co-pending related U.S. Non-provisional Patent Application referenced above, the entire contents of which are hereby incorporated herein in its entirety.
  • Control network 100 further comprises Institute of Electrical and Electronic Engineers standard (IEEE) 802.15.4 communication network (communication network) 102 .
  • IEEE Institute of Electrical and Electronic Engineers standard
  • Control network 100 can further include local area network (LAN) 134 (which can be an IEEE 802.3 communication network (e.g., Ethernet), router/firewall 136 , and internet 132 .
  • LAN local area network
  • PED 104 can access control network 100 through internet 132 and/or LAN 134 .
  • a router/firewall 136 can be used to protect control network 100 and direct commands from PED 104 to the remaining components of control network 100 , as well as provide feedback information to PED 104 from the devices of control network 100 .
  • a firewall a system designed to prevent unauthorized access to or from a private network. Firewalls can be implemented in either hardware or software, or a combination of both.
  • a router is a device that forwards data packets along networks.
  • a router can be connected to at least two networks and are located at gateways.
  • sensors 108 provide information to the various hardware and software components of the system and method of the aspects of the embodiments that can be used to ascertain the location, movements, and mannerisms of the users of control network 100 . That is, sensors 108 can be used in helping to determine patterns of usage, and also to augment decision making capabilities in determining what actions to take (e.g., open or close shades based on occupancy (or lack thereof)), or what actions not to take, as the case may be, according to aspects of the embodiments.
  • sensors 108 can be used in helping to determine patterns of usage, and also to augment decision making capabilities in determining what actions to take (e.g., open or close shades based on occupancy (or lack thereof)), or what actions not to take, as the case may be, according to aspects of the embodiments.
  • the one or more controllable devices comprise lighting control device (lighting device) 110 , which can include devices such as a lighting dimmer, and shade control device (shade device) 112 , which can include devices such as a shade motor.
  • lighting control device 110 can include devices such as a lighting dimmer
  • shade control device 112 can include devices such as a shade motor.
  • lighting device 110 can be a switch or a relay panel
  • shade device 112 can be a drapery motor or a smart window film.
  • the controllable devices are not limited to lighting control devices and shade control devices.
  • controllable devices can be: AN devices 118 that can include one or more of content sources (audio source, video source), content sinks (stereos with speakers, televisions, and the like), video recorders, audio receivers, speakers, projectors, and the like; Lighting devices 110 that can include one or more of lamps, ballasts, light emitting diode (LED) drivers; HVAC devices 120 that can include one or more of thermostats, occupancy sensors, air conditioning units, heating units, filtration systems, fans, humidifiers, and the like; Shading devices 112 that can include one or more of motorized window treatments, dimmable windows, and the like; Security devices 122 that can include one or more of security cameras, monitors, door locks, and the like; Household appliances 124 that can include one or more of refrigerators, ovens, blenders, microwaves, and the like; Control devices 126 that can include one or more of switches, relays, current limiting devices, and the like; and Industrial devices 128 that can include one or more of motors, pumps, chillers
  • control network 100 can comprise one or more control points 106 for receiving user inputs to control each of the one or more controllable devices.
  • Control points 106 can be keypads, touch-panels, remote controls, and thermostats.
  • keypads 106 can be user interfaces of the controllable devices themselves. Keypads 106 can transmit control commands to and through communication network 102 to control each of the other controllable devices of control network 100 , as well as communicate information to/from such controllable devices.
  • keypads 106 can communicate with each of the controllable devices or with controller 116 either directly or via one or more of gateways 114 and/or repeaters 130 (repeaters 130 can communicate with additions control networks 100 b , and/or communication networks 102 b , and so on).
  • keypad 106 can comprise feedback indicators to provide feedback to the user.
  • the feedback indicators can include any combination of visual feedback indicators, haptic feedback indicators, and audible feedback indicators.
  • Feedback indication control can be provided by keypad 106 upon receiving a user input, upon requesting feedback, or upon a change in the status of any of the controllable devices 108 - 130 , and PED 104 .
  • controllable lighting devices 110 and controllers 116 can be manufactured by Crestron Electronics Inc., of Rockleigh, N.J.
  • one or more controllable lighting devices 110 and controllers 116 can comprise the following devices, each available from Crestron Electronics: CLW-DIMEX wireless lighting dimmer, CLW-DELVEX wireless lighting dimmer, CLW-SWEX wireless switch, CLW-DIMSWEX wireless switch/dimmer combination, CLW-LSWEX wireless lamp switch, CLF-LDIMUEX wireless lamp dimmer, CLWI-DIMUEX universal phase dimmer, CLWI-SWEX in-wall switch, CLWI-1SW2EX in-wall 2-channel switch, CLWI-DIMFLVEX 0-10V Dimmer, CLCI-DIMUEX wireless in-ceiling dimmer, CLCI-1DIMFLV2EX wireless In-Ceiling 0-10V dimmer, CLCI-1SW2EX wireless in-ceiling switch, CLC-1DIMFLV2E
  • control network 100 can also be manufactured by Crestron Electronics Inc. These include one or more controllable shade devices 112 and controllers 116 that comprise the following devices: CSC-ACEX infiNET EX® Interface to shade motor, CSC-DCEX infiNET EX® interface to Crestron CSM-QMT30 Shades, CSC-DRPEX, and the CSM-QMT50EX QMT motor.
  • controllable shade devices 112 and controllers 116 that comprise the following devices: CSC-ACEX infiNET EX® Interface to shade motor, CSC-DCEX infiNET EX® interface to Crestron CSM-QMT30 Shades, CSC-DRPEX, and the CSM-QMT50EX QMT motor.
  • the one or more keypads 106 can comprise the following devices, also available from Crestron Electronics, Inc.: INET-CBDEX Cameo® Express Wireless Keypad with infiNET EX®, HTT-B2EX battery-powered infiNET EX® 2-button Wireless Keypad, and CLWI-KPLEX on-wall wireless lighting keypad.
  • sensors 108 can be included in control network 100 according to aspects of the embodiments.
  • Such sensors 108 can include occupancy sensors, and motion sensors, as well as sensors 108 related to fire and smoke detection, bio-hazard sensors, and the like.
  • the one or more sensors 108 can comprise the following devices, each available from Crestron Electronics, Inc. of Rockleigh, N.J.: GLS-OIR-CSM-EX-BATT battery-powered infiNET EX® occupancy sensor.
  • Controller 116 can be connected to the various controllable devices via either or both of a wired and wireless connection.
  • the one or more controllers 116 can be a DIN-AP3MEX DIN Rail 3-Series® Automation Processor with infiNET EX®, or an MC3 3-Series Control System® with infiNET EX®, each of which are available from Crestron Electronics Inc. of Rockleigh N.J. Any one or more of these controllers 116 can provide a substantially complete integrated automation solution.
  • the various controllable devices of the facility or enterprise become integrated and accessible through operation of controller 116 .
  • controller 116 can be a server, a personal computer (PC), or any other electronic device capable of processing electrical signals.
  • controller 116 further comprises a web x-panel project, to allow for PC based setup.
  • controller 116 can be a device manufactured by Crestron Electronics, Inc., of Rockleigh, N.J., comprising a PYNG-HUB. As shown in FIG. 1 , controller 116 and gateway 114 can be arranged as two separate devices, but, as indicated by the dashed line forming a box around 114 , 116 , they can be arranged to be one device, or contained within a single enclosure.
  • each of the devices in FIG. 1 can be interconnected with other components in either or both of a wired or wireless manner.
  • PED 104 can connect to internet 132 via a cellular communications interface, or can be connected through router/firewall device 136 using conventional Ethernet cables.
  • PED 104 can be connected to LAN 134 via a wired interface (typically a category 5 type cable, i.e., Ethernet cable), or via a wireless interface such as the Wi-Fi connection that is also shown.
  • each of the controllable and controlled devices of FIG. 1 such as sensors 108 , controller 116 , and gateway device 114 , can use a wireless protocol such as infiNET EX. Other wireless communications protocols can also be used.
  • FIG. 2 is a block diagram of controller 116 for use with control network 100 according to an aspect of the embodiments.
  • Controller 116 can be used to control various controllable devices, such as, for example, those described and discussed above that include, among others, controllable devices 108 , 110 , 112 , 118 , 120 , 122 , 124 , 126 , 128 , and 130 (security devices (e.g., door locks), lighting system devices, blinds/drapes, HVAC system devices, and sensors such as motion sensors, among many others).
  • One or more controllers 116 can comprise one or more logic engines for processing control commands.
  • Controller 116 can include at least one central processing unit (CPU) 202 , as well as internal bus 220 , the operation of which is known to those of skill in the art.
  • CPU 202 can represent one or more microprocessors, and the microprocessors may be “general purpose” microprocessors, a combination of general and special purpose microprocessors, or application specific integrated circuits (ASICs).
  • the CPU 191 may include one or more reduced instruction set processors (RISC), video processors, or related chip sets.
  • RISC reduced instruction set processors
  • CPU 22 can provide processing capability to execute an, run various applications, and/or provide processing for one or more of the techniques described herein.
  • Applications that can run on controller 116 can include, for example, software for processing control commands, software for managing a calendar, software for controlling other electronic devices via a control network as noted above, among other types of software/applications.
  • Controller 116 can further include main memory 206 , which can be communicably coupled to CPU 202 , and which can store data and executable code, as known to those of skill in the art.
  • Main memory 206 can represent volatile memory such as random access memory (RAM), but may also include nonvolatile memory, such as read-only memory (ROM) or Flash memory. In buffering or caching data related to operations of CPU 202 , main memory 206 can store data associated with applications running on controller 116 .
  • Nonvolatile storage 204 can represent any suitable, nonvolatile storage medium, such as a hard disk drive (HDD) or nonvolatile memory, such as flash memory. Being well-suited to long-term storage, nonvolatile storage 204 can store data files such as media, software, and preference information. Nonvolatile storage 204 can be removable and interchangeable, thereby allowing portability of stored files, such as project files, created during programming of control network 100 . According to aspects of the embodiments, project files can be used to map user desires into functions; as used thusly, project files are configuration files.
  • HDD hard disk drive
  • nonvolatile memory such as flash memory.
  • Nonvolatile storage 204 can store data files such as media, software, and preference information.
  • Nonvolatile storage 204 can be removable and interchangeable, thereby allowing portability of stored files, such as project files, created during programming of control network 100 .
  • project files can be used to map user desires into functions; as used thusly, project files are configuration files.
  • project files describe all the devices control system 100 knows about, what their buttons are configured to do, what types of devices they are, how they operate, and the operating parameters, among other features of each controllable device associated with control network 100 .
  • project files can also be used to keep track of scheduling data, which users are using the system (e.g., identifiable by PED 104 ).
  • Network interface 208 provides interface capability with one or more of several different types of network interfaces, including LR-PAN transceiver 212 , WLAN transceiver 214 , and cellular transceiver 216 .
  • Each of transceivers 212 , 214 , and 216 can provide wireless connectivity for controller 116 via respective ones of first, second, and third antennas 115 , 117 , and 119 .
  • Network interface 208 can represent, for example, one or more network interface controllers (NICs) or a network controller.
  • NICs network interface controllers
  • control system 100 can make use of each of a WAN, LAN, and PAN, or sometimes two or all three at one time, depending on the circumstances, as those of skill in the art can now appreciate.
  • network interface 208 can include LR-WPAN transceiver 212 .
  • LR-WPAN transceiver 212 can provide capabilities to network with, for example, a Bluetooth® network, a near field communication (NFC) type network, an IEEE 802.15.4 (e.g. ZigBee) network among others.
  • NFC near field communication
  • IEEE 802.15.4 e.g. ZigBee
  • the networks accessed by LR-WPAN transceiver 212 can, but do not necessarily, represent low power, low bandwidth, or close range wireless connections.
  • LR-WPAN transceiver 212 can permit one electronic device to connect to another local electronic device via an ad-hoc or peer-to-peer connection.
  • the connection can be disrupted if the separation between the two electronic devices exceeds the proscribed range capability of PAN interface 212 .
  • the networks described by IEEE 802.15.4 are mesh-type networks, and operate with a central router/coordinator; in control network 100 , the function of such central coordination is performed by one or more controller 116 and/or gateway 114 , according to aspects of the embodiments.
  • Network interface 208 can also include WLAN transceiver 214 .
  • WLAN transceiver 214 can represent an interface to a wireless LAN, such as an 802.11 wireless network. The range of WLAN transceiver 214 can generally exceed the range available via LR-WPAN transceiver 212 . Additionally, in many cases, a connection between two electronic devices via WLAN transceiver 214 can involve communication through a network router or other intermediary device (not shown in FIG. 2 ). WLAN transceivers 214 can also incorporate an ultra-wideband network.
  • network interfaces 208 can include the capability to connect directly to a WAN via cellular transceiver 216 .
  • Cellular transceiver 216 can permit connection to a cellular data network, such as the enhanced data rates for global system for mobile communications (GSM) Evolution (EDGE) (also known as enhanced general packet radio service (GPRS) (EGPRS), or international mobile telecommunications (IMT) single carrier (IMT-SC) EDGE network, or other third generation/further generation (3G/4G) cellular telecommunication networks (a detailed discussion of which is both not needed to understand the aspects of the embodiments, and beyond the scope of this discussion).
  • GSM global system for mobile communications
  • EDGE also known as enhanced general packet radio service (GPRS) (EGPRS)
  • IMT international mobile telecommunications
  • IMT-SC international mobile telecommunications
  • 3G/4G third generation/further generation
  • controller 116 When connected via cellular transceiver 216 , controller 116 can remain connected to the internet and, in some embodiments, to one or more other electronic devices, despite changes in location that might otherwise disrupt connectivity via LR-WPAN transceiver 212 , or WLAN transceiver 214 . Also shown in FIG. 2 as a component of controller 116 is internal bus 220 , which provides signal and data flow to and between all of the internal components of controller 116 in a manner known to those of skill in the art.
  • Ethernet connectivity enables integration with IP-controllable devices and allows controller 116 to be part of a larger managed control network.
  • controller 116 can provide secure, reliable interconnectivity with IP-enabled devices, such as touch screens (which can be part of keypad 106 ), computers, mobile devices, video displays, Blu-ray Disc® players, media servers, security systems, lighting, HVAC, and other equipment—both locally and globally.
  • Controller 116 can also include one or more wired input/output (I/O) interface 210 for a wired connection between controller 116 and one or more electronic devices.
  • Wired I/O interface 210 can represent a serial port.
  • a serial port is a serial communication physical interface through which information transfers in or out one bit at a time (as opposed to a parallel port, which transmits several bits (typically in groups of 8 bits wide) substantially simultaneously). While it is known that interfaces such as Ethernet, FireWire, and USB, all send data as a serial stream, the term “serial port” usually identifies hardware more or less compliant to the RS-232 standard, intended to interface with a modem or with a similar communication device.
  • Wired I/O interface 210 can also represent, for example, a Cresnet port.
  • Cresnet provides a network wiring solution for Crestron keypads, lighting controls, thermostats, and other devices that do not require the higher speed of Ethernet.
  • the Cresnet bus offers wiring and configuration, carrying bidirectional communication and 24 VDC power to each device over a simple 4-conductor cable.
  • One or more infrared (IR) interfaces can also be part of wired I/O interface 210 ; the IR interface can enable controller 116 to receive and/or transmit signals with infrared light.
  • the IR interface can comply with an infrared data acquisition (IrDA) specification for data transmission. Alternatively, the IR interface can function exclusively to receive control signals or to output control signals.
  • the IR interface can provide a direct connection with one or more devices such as a centralized AV sources, video displays, and other devices.
  • Controller 116 can also include, but not necessarily, one or more programmable relay ports 218 a - c .
  • Programmable relay ports 218 can be used by controller 116 to control window shades, projection screens, lifts, power controllers, and other contact-closure actuated equipment.
  • Controller 116 can include, as programmable relay port 218 , a “Versiport” relay port that is manufactured by Crestron Electronics Inc., of Rockleigh, N.J.
  • the Versiport relay port can be managed by a DIN-108 module (also manufactured by Crestron Electronics Inc.), which is a DIN rail-mounted automation control module that provides eight Versiport I/O ports for interfacing with a wide range of third-party devices and systems.
  • Each “Versiport” can be configured via software to function as a digital or analog sensing input, or as a digital trigger output.
  • the Versiport can sense a contact closure or logic level signal from devices such as motion detectors, partition sensors, alarm panels, 12V triggers, and all types of switches and relays.
  • the Versiport can sense changes in a resistance or DC voltage level, working with everything from temperature and light sensors to water level meters to volume control potentiometers.
  • the Versiport When operating as a digital output, the Versiport provides a logic level closure signal to trigger control and alarm inputs on a variety of external devices.
  • one or more “Versiport” programmable relay ports 218 can enable the integration of occupancy sensors, power sensors, door switches, or other devices by providing a dry contact closure, low-voltage logic, or 0-10 Volt DC signal.
  • a user can control one or more of the controllable devices and/or environment settings in a facility (home, place of business or manufacture, or enterprise location) from substantially anywhere in the world using PED 104 .
  • Such control can be accomplished by a dynamic domain name system (DNS) service.
  • DNS is a hierarchical distributed naming system used for computers, services, or any resource that is connected to the internet or a private network.
  • controller 116 can be configured to utilize dynamic host communication protocol (DHCP) communications that include a hostname prefixed by a model number.
  • DHCP dynamic host communication protocol
  • controller 116 A more detailed discussion of the internal operation of controller 116 is not needed to understand the various aspects of the embodiments described herein, and therefore is beyond the scope of discussion herein. However, such detailed discussion can be found in the aforementioned Applicants' co-pending U.S. Non-Provisional Patent Application, as referenced above.
  • controller 116 hosts a project file, such as a Crestron Core 3 project file, also referred to as “Smart Graphics [Project],” which is intended to be used by one or more mobile devices (such as PED 104 ) with a control application (App) such as a Crestron App (located on PED 104 ).
  • a project file such as a Crestron Core 3 project file, also referred to as “Smart Graphics [Project]
  • App such as a Crestron App (located on PED 104 ).
  • one or more project files can be created during the installation of control network 100 .
  • the Crestron App is designed to receive and render the Smart Graphics project file.
  • the Crestron App is responsible for communicating taps and feedback to the user.
  • Smart object App can be created for use with a local Crestron Mobile Pro Project as well as with foreign AV processors.
  • the Crestron Mobile Pro project can contain just a Core 3 Smart Object and nothing else.
  • the Smart Graphics Project file located on controller 116 , is a collection of items that are meaningful in some way to a control system program, such as Crestron App. This collection of items can include things like “buttons,” “sliders,” or “text” (among other graphical representations).
  • Smart graphics project file can include “smart object” file, which can be a predefined conglomeration of other objects (buttons, slides, among others).
  • a lighting smart object file can comprise a slider to report/set a light level, and a few buttons to raise/lower and turn on/off the lights.
  • smart object file talks directly to a Pyng-HUB, such as controller 116 .
  • smart object files can be used in or by any smart graphics project file, and they'll communicate with control network 100 and Crestron App, even if the project (i.e., the program currently being executed) is intended to control an external AV processor.
  • control network 100 further comprises communication network 102 that provides access with and between devices of control network 100 according to aspects of the embodiments.
  • Communication network 102 can be a PAN, LAN, metropolitan area network, WAN, an alternate network configuration, or some other combination of network types and/or topologies.
  • communication network 102 can employ both wired and wireless communication protocols.
  • the controllable devices can form communication network 102 with gateway device 114 (operating in a wireless manner) by communicating over a short range communication protocol such as Crestron infiNET EX wireless protocol (e.g., the IEEE 802.15.4 wireless protocol).
  • gateway device 114 operating in a wired manner, can form a LAN with PED 104 communicating via Ethernet protocols using a wire-based Ethernet capability (it can also do so in a wireless manner).
  • controller 116 or PED 104 can connect via a WAN such as the world wide web to access data stored on a remote server (not shown in FIG. 1 ).
  • communication network 102 can be a public switched telephone network (PSTN).
  • PSTN public switched telephone network
  • communication network 102 can further include a cable telephony network, an internet protocol (IP) telephony network, a wireless network, a hybrid cable/PSTN network, a hybrid IP/PSTN network, a hybrid wireless/PSTN network, or any other suitable communication network 102 or combination of communication networks.
  • IP internet protocol
  • other network embodiments can be deployed with many variations in the number and type of devices, communication networks, the communication protocols, system topologies, and myriad other details without departing from the spirit and scope of the aspects of the embodiments.
  • control network 100 can include one or more gateway devices 114 .
  • controller 116 further comprises a built-in gateway 114 .
  • control network 100 can comprise an external gateway 114 , such as a CEN-RFGW-EX gateway, available from Crestron Electronics, Inc.
  • gateway 114 of control network 100 provides network devices with an entrance to communication network 102 through controller 116 and can include software and/or hardware components to manage traffic entering and exiting communication network 102 and conversion between the communication protocols used by the network devices and communication network 102 .
  • Gateway 114 can be configured to operate in both a wired a wireless manner and act as the network coordinator, and can further manage network configurations. Additionally, gateway 114 can be configured to communicate with controller 116 via wired I/O interface 210 , such as an Ethernet interface (IEEE 802.3).
  • wired I/O interface 210 such as an Ethernet interface (IEEE 802.3).
  • One such gateway 114 according to an aspect of the embodiments is the CEN-RFGW-EX wireless gateway manufactured by Crestron Electronics, Inc., and which is a two-way radio frequency (RF) gateway ⁇ transceiver designed to enable communications and management for a complete infiNET EX wireless network of dimmers, keypads, remote control devices (RCDs), among other types of devices.
  • RF radio frequency
  • the CEN-RFGW-EX wireless gateway links the infiNET EX network to a Crestron control system via a wired connection such as Ethernet or Cresnet.
  • infiNET EX dimmers, switches, keypads, thermostats, and other devices can be linked to controller 116 via a single CEN-RFGW-EX gateway 114 .
  • Additional gateways 114 can be installed to support more devices.
  • Wireless expanders (not shown in FIG. 1 ) can be added wherever needed to extend control network 100 by filling in gaps between devices. That is, according to aspects of the embodiments, expanders can reinforce the network when operating in accordance with mesh networks principles.
  • FIG. 3 illustrates a block diagram of gateway 114 according to an aspect of the embodiments.
  • Gateway 114 can include one or more transceivers 212 , 214 , and 216 , which can provide connectivity for gateway 114 when acting in a wireless manner.
  • gateway 114 can further include a NWI that comprises one or more network interface cards (NICs), or network controllers (NWCs).
  • the network interface can include LR-WPAN transceiver 212 , which can provide capabilities to network with, for example, a Bluetooth® network, NFC network, or a ZigBee/Infinet network, among others.
  • the networks accessed by LR-WPAN transceiver 212 can, but do not necessarily, represent low power, low bandwidth, or close range wireless connections, such as that used by second antenna 117 .
  • LR-WPAN transceiver 212 can permit one electronic device to connect to another local electronic device via an ad-hoc or peer-to-peer connection.
  • Gateway 114 can further include wired I/O interface 210 , which can represent an interface to a wired Ethernet-based network.
  • Gateway 114 includes WLAN transceiver 214 , which can access an IEEE 802.11x wireless network.
  • the range of the WLAN interface can generally exceed the range available via the PAN interface.
  • a connection between two electronic devices via the LAN interface can involve communication through a network router or other intermediary devices.
  • gateway 114 further comprises LR-WPAN transceiver 212 that can access an IEEE 802.15.4 (e.g. ZigBee/InfiNet) network.
  • IEEE 802.15.4 e.g. ZigBee/InfiNet
  • the networks described by IEEE 802.15.4 are mesh-type networks, and operate with a central router/coordinator; in control network 100 , the function of such central coordination is performed by one or more controller 116 and/or gateway 114 , according to aspects of the embodiments.
  • wired I/O interface 210 can be a LAN power-over-Ethernet (PoE) interface that can be fashioned using an 8-wire RJ-45 female connection with two LED indicators.
  • a another type of NWI can be Cresnet interface 302 b , which is a 4-pin 3.5 millimeter (mm) detachable terminal block providing an interface for Cresnet proprietary communications on a LAN that includes power-over-Ethernet (PoE).
  • the PoE interface can be configured for receiving both an electric power signal and an information signal from a control network.
  • Cresnet interface 302 b can be connected through category 5 cable (CAT 5) to a LAN that contains a power supply, multiple control points, and signal generators.
  • CAT 5 category 5 cable
  • gateway 114 can interface with control network 100 .
  • gateway 114 (which can be both wired and wireless) can communicate with controller 116 , such as a PRO3 available from Crestron Electronics, Inc.
  • Gateway 114 comprises one or more connectors, indicators and interface buttons, as well as an antenna connection for the supplied antenna.
  • Gateway further comprises LED indicators, such as power on/off LED 304 , network activity indicator LED 306 , and activity indicator LED 308 .
  • Power on/off LED 304 is an indicator that shows that operating power is being supplied to gateway 114 whether from the Cresnet network or a PoE connection.
  • Network LED indicator 306 shows that communication with the Cresnet system is occurring.
  • Activity indicator LED 308 shows that wireless communications are occurring, such as those that involve the elements of the wireless PAN.
  • Gateway 114 further comprises acquire button 310 and setup button 312 .
  • Acquire button 310 and setup button 312 can be recessed push buttons each with an indicator LED.
  • Acquire button 310 can be employed to configure communication with the PAN and setup button 312 can be employed to configure communication with control network 100 .
  • Gateway 114 can be placed in the “Acquire” mode via acquire button 310 or a different means, such as the pushing of certain buttons in a certain order.
  • the associated LED can indicate that gateway 114 is in the “Acquire” mode.
  • the joining device can be brought into range and can be placed in the “Acquire” mode to be acquired by gateway 114 through a certain sequence.
  • Such sequence involves the pushing of buttons in a certain, specific order, a detailed discussion of which has been omitted in fulfillment of the dual purposes of clarity and brevity.
  • gateway 114 By pushing acquire button 310 a second time (within a predetermined time period), gateway 114 can exit the “Acquire” mode as indicated by the LED-illuminated acquire button 310 .
  • control network 100 can further comprise PED 104 .
  • PED 104 can be a smart phone, tablet, remote control, personal digital assistant (PDA), or any other electronic device configured for presenting a user interface, such as a graphical user interface (GUI) and receiving user inputs, such as in the form of selections from a graphic user interface.
  • GUI graphical user interface
  • FIG. 4 illustrates a block diagram of a personal electronic device 104 for use with control system 100 according to aspects of the embodiment.
  • PED 104 can include at least one central processing unit (CPU) 402 .
  • CPU 402 can represent one or more microprocessors, and the microprocessors can be “general purpose” microprocessors, a combination of general and special purpose microprocessors, or ASICs.
  • CPU 402 can include one or more reduced instruction set (RISC), advanced RISC machine (ARM), or complex instruction set (CISC) processors, video processors, or related chip sets.
  • RISC reduced instruction set
  • ARM advanced RISC machine
  • CISC complex instruction set
  • CPU 402 can provide processing capability to execute an operating system (OS), run various applications, and/or provide processing for one or more of the techniques described herein.
  • OS operating system
  • applications and/or provide processing for one or more of the techniques described herein.
  • Applications that can run on PED 104 can include, for example, software for managing and playing AV content, software for managing a calendar, software for controlling telephone capabilities, software for controlling other electronic devices via a control network as noted above, as well as software for controlling various other functions and interconnected devices.
  • PED 104 further comprises main memory 414 , which can be communicably coupled to CPU 402 , and which may store data and executable code.
  • Main memory 414 can represent volatile memory such as RAM, but can also include nonvolatile memory, such as ROM or flash memory. In buffering or caching data related to operations of CPU 402 , main memory 414 can store data associated with applications running on PED 104 .
  • Nonvolatile storage 412 can represent any suitable nonvolatile storage medium, such as a HDD or nonvolatile memory, such as flash memory. Being well-suited to long-term storage, nonvolatile storage 412 may store data files such as media, software and preference information. Nonvolatile storage 412 can be removable and interchangeable, thereby allowing portability of stored files such as project files created during programming of control network 100 . Those of skill in the art can appreciate that data associated with controlling certain other electronic devices, such as a project file for a control application, can be saved in nonvolatile storage 412 .
  • Display 410 can display images and data for PED 104 . As those of skill in the art can appreciate, display 410 is optional. If included in PED 104 , however, display 410 can use any type of display technology, such as, but not limited to, a liquid crystal display (LCD), a light emitting diode (LED) based display, an organic light emitting diode (OLED) based display, a cathode ray tube (CRT) display, or an analog or digital television, among other types. According to other aspects of the embodiments, display 410 can function as a touch screen display through which a user can interact with PED 104 .
  • LCD liquid crystal display
  • LED light emitting diode
  • OLED organic light emitting diode
  • CRT cathode ray tube
  • display 410 can function as a touch screen display through which a user can interact with PED 104 .
  • PED 104 can further include user interface 408 .
  • User interface 408 can include indicator lights and user input structures, but can also include a GUI on display 410 .
  • user interface 408 can operate via CPU 402 , using memory from main memory 414 and long-term storage in nonvolatile storage 412 , among using other types of memory (such as an HDD, not shown in FIG. 4 ).
  • display 410 is not included in PED 104 , indicator lights, sound devices, buttons, and other various input/output (I/O) devices can allow a user to interface with PED 104 .
  • I/O input/output
  • user interface 408 can provide interaction with interface elements on display 410 via certain user input structures, user input peripherals such as a keyboard or mouse, or a touch sensitive implementation of display 410 .
  • one or more applications can be opened and accessible to a user via user interface 408 and displayed on display 410 of PED 104 .
  • One or more of the opened applications can be run on CPU 402 in conjunction with main memory 414 , nonvolatile storage 412 , display 410 , and user interface 408 .
  • Instructions stored in main memory 414 , nonvolatile storage 412 , or CPU 402 (CPU 402 can have its own internal storage, of many different types), of PED 104 can enable a user to install control network 100 .
  • the instructions for carrying out such techniques on PED 104 can represent a standalone application, a function of the OS on PED 104 , or a function of the hardware of CPU 402 , main memory 414 , nonvolatile storage 412 , or other hardware of PED 104 .
  • One such application that can be opened and accessible to the user is a configuration application for installing control network 100 according to an aspect of the embodiments.
  • the configuration application can be downloaded from an application marketplace such as from the Google Play application marketplace or the Apple iTunes® application marketplace, among other market places available through the internet, or other networks.
  • the project file provides the instructions allowing the control application to communicate with the target control network (control network 100 , according to aspects of the embodiments). Further, the project file comprises the menu pages of the control application corresponding to the locations of controllable devices. For example, the control application can display one or more menu pages identified by page identities for controlling the one or more controllable devices on control network 100 according to the project file. The menu pages comprise selectable elements corresponding to control functions as defined in the project file.
  • the configuration application displays a series of menu pages comprising selectable elements and graphical elements.
  • the one or more of the selectable elements can correspond to initialization functions of the configuration application.
  • PED 104 can transmit signals to control network 100 according to the initialization functions selected by the user. Additionally, control network 100 can communicate with PED 104 , such as by providing feedback signals to PED 104 . According to an aspect of the embodiments, PED 104 can communicate with controller 116 running a logic engine via communication network 102 .
  • Gateway 114 can be used to relay commands and return status information to and from sensors 108 and from the various controllable devices 110 , 112 , 118 , 120 , 122 , 124 , 126 , 128 , and 130
  • PED 104 can include location sensing circuitry 406 .
  • Location sensing circuitry 406 can comprise global positioning system (GPS) circuitry, but can also represent one or more algorithms and databases, stored in nonvolatile storage 412 or main memory 414 and executed by CPU 402 , which may be used to infer the location of PED 104 based on various observed factors.
  • GPS global positioning system
  • location sensing circuitry 406 can represent an algorithm and database used to approximate geographic location based on the detection of local 802.11x (Wi-Fi) networks or nearby cellular phone towers.
  • PED 104 can also include wired input/output (I/O) interface 210 for a wired interconnection between a first electronic device and a second electronic device.
  • Wired I/O interface 210 can represent, for example, a universal serial bus (USB) port, an IEEE 1394 port, or a FireWire® port.
  • wired I/O interface 210 can also represent a proprietary connection.
  • wired I/O interface 210 interface can permit a connection to user input peripheral devices, such as a keyboard or a mouse.
  • PED 104 further comprises infrared (IR) interface 430 that can enable PED 104 to receive and/or transmit signals with infrared light.
  • IR interface 430 can comply with an infrared IRDA specification for data transmission.
  • One or more network interfaces 208 can also be provided in PED 104 .
  • One or more of such network interfaces 208 can provide additional connectivity for PED 104 .
  • Network interfaces 208 can represent, for example, one or more network interface cards (NIC) or a network controller.
  • the network interface 208 can include LR-WPAN transceiver 212 .
  • LR-WPAN transceiver 212 can provide capabilities to network with, for example, a Bluetooth® network, an NFC network, or a ZigBee/CresNet network.
  • the networks accessed by LR-WPAN transceiver 212 can, but do not necessarily, represent low-power, low-bandwidth, or close range wireless connections.
  • LR-WPAN transceiver 212 can permit one electronic device to connect to another local electronic device via an ad-hoc, or peer-to-peer connection, such as that defined by the wireless PAN protocol IEEE 802.15.n, communications network 102 .
  • LR-WPAN transceiver 212 can also incorporate IEEE 802.15.4 (e.g. ZigBee) network, or an ultra-wideband network.
  • IEEE 802.15.4 e.g. ZigBee
  • the networks described by IEEE 802.15.4 are mesh-type networks, and operate with a central router/coordinator; in control network 100 , the function of such central coordination is performed by either or both of controller 116 and/or gateway 114 , according to aspects of the embodiments.
  • Network interface 208 can also include WLAN transceiver 214 .
  • WLAN transceiver 214 can represent an interface to a wireless LAN, such as an IEEE 802.11x wireless network (Wi-Fi).
  • the wireless operating range capability of LAN interface 426 can generally exceed the wireless operating range capability available via LR-WPAN transceiver 212 .
  • a connection between two electronic devices via WLAN transceiver 214 can involve communication through a network router or other intermediary devices.
  • WLAN transceiver 214 interfaces with first antenna 115
  • WLAN transceiver 212 interfaces with second antenna 117
  • cellular transceiver 216 interfaces with third antenna 119 according to aspects of the embodiments.
  • Communications network 134 is a wired or wireless LAN, such as that defined by IEEE 802.11.n (Wi-Fi), or 802.3 (Ethernet).
  • network interfaces 208 of PED 104 can further include the capability to connect directly to a WWAN via cellular transceiver 216 , and third antenna 119 according to aspects of the embodiments.
  • Cellular transceiver 216 can permit a connection to a cellular data network, such as an EDGE network, or another 3G/4G network, among others.
  • PED 104 When connected via cellular transceiver 216 , PED 104 can remain connected to the internet and, in some embodiments, to other electronic devices, despite changes in location that might otherwise disrupt connectivity via LR-WPAN transceiver 212 , or WLAN transceiver 214 .
  • wired I/O interface 210 and network interfaces 208 can represent both low- and high-bandwidth communication channels for transferring user data using the simplified data transfer techniques discussed herein.
  • NFC interface 416 can allow for extremely close range communications at relatively low data rates (e.g., about 464 kilo-bits/second (kb/s)), and can comply with such standards as International Standards Organization (ISO) 18092 or ISO 21521, or it can allow for close range communications at relatively high data rates (e.g., about 560 mega-bits/second (Mb/s)), and can comply with the TransferJet® protocol.
  • NFC interface 416 can have a range of between about 2 to about 4 centimeters (cm) (or between about 0.78′′ to about 1.57′′).
  • NFC interface 416 can take place via magnetic field induction, allowing NFC interface 416 to communicate with other NFC interfaces, or to retrieve information from tags having radio frequency identification (RFID) circuitry.
  • RFID radio frequency identification
  • NFC interface 416 can provide a manner of initiating or facilitating a transfer of user data from one electronic device to another electronic device.
  • PED 104 can also include camera 420 .
  • camera 420 PED 104 can obtain digital images or videos.
  • OCR optical character recognition
  • barcode-reading software or matrix-code-reading software running on PED 104
  • camera 420 can be used to input data from printed materials having text or barcode information.
  • data can include information indicating how to control another device from a matrix barcode that can be printed on the other device, as described in greater detail below.
  • PED 104 can also include one or more accelerometers 418 that can sense the movement or orientation of PED 104 .
  • Accelerometers 418 can provide input or feedback regarding the position of PED 104 to certain applications running on CPU 402 .
  • accelerometer 418 can be provided by devices made using microelectromechanical system (MEMS) technology.
  • MEMS devices which can be defined as die-level components of first-level packaging, can include pressure sensors, accelerometers, gyroscopes, microphones, digital mirror displays, microfluidic devices, among other devices.
  • control network 100 can be configured to be installed by untrained users executing a configuration application on PED 104 .
  • the control system and associated configuration application are referred to as Pyng, which are software programs created and manufactured by Crestron Electronics, Inc., of Rockleigh, N.J.
  • One such application that can be opened and accessible to the user is a configuration application for installing control network 100 according to an aspect of the embodiments.
  • the configuration application can be downloaded from an application marketplace such as from the Google Play application marketplace, or the Apple iTunes® application marketplace, among other application market places available through the internet, or other networks.
  • An application marketplace such as from the Google Play application marketplace, or the Apple iTunes® application marketplace, among other application market places available through the internet, or other networks.
  • a detailed discussion of the configuration application is both not needed to appreciate the various aspects of the embodiments, and can be found in the co-pending U.S. Non-provisional Patent Application referenced above; as such, a detailed discussion has been omitted in fulfillment of the dual purposes of clarity and brevity.
  • FIG. 5 illustrates wall mount keypad (keypad) 106 that can be used in control network 100 as part of an acoustic sensory network (ASN) according to aspects of the embodiments.
  • Keypad 106 includes display/touch panel 502 (an interactive display that can be a liquid crystal display (LCD) or light emitting diode display (LED), or combination thereof), microphone(s) 504 , optional audio processing board 505 (which comprises pre-amplifier 506 , analog-to-digital converter (ADC) 508 , and 60 Hertz (Hz) notch filter according to an aspect of the embodiments), processor 512 , IEEE 811.15.4 LR-WPAN transceiver (transceiver) 212 , WLAN transceiver 214 , cellular transceiver 216 (and their respective antennas, 115 , 117 , and 119 ), internal bus 516 , antenna 117 , LAN/Ethernet connector 518 , and voice recognition (VR) system-on
  • LCD liquid crystal
  • the devices, software, algorithms, and other components of the ASN are described in reference to keypad 106 and controller 116 , but can be distributed in one or more of any of the devices of network 100 , e.g., gateway 114 .
  • one or more of the components of the ASN can be separated from keypad 106 , such as microphones 504 , audio processing board 505 , and VR SoC circuit 520 , according to aspects of the embodiments.
  • audio processing board 505 and its components
  • VR SoC circuit 520 can be included in controller 116 or gateway 114 .
  • the following description of the devices, software, algorithms, and other components of the ASN shall be made in reference to keypad 106 and controller 116 .
  • the ASN includes audio processing components to interpret spoken words as commands to control the controllable devices, including those of lights and related devices, in such a manner as to overcome the problems of the prior art as previously described. That is, the ASN can include one or more microphones 504 a,b , VR SoC circuit 520 , or, in the alternative, optional audio processing board 505 , to capture, process, and implement audible commands.
  • VR SoC circuit 520 contains the necessary components to convert the audio signals received by each mic 504 a,b , into digital form, provide filtering before and/or after conversion to digital form, perform additional processing (as described in greater detail below), and can, according to aspects of the embodiments, include software to identify the word (or words) that were spoken to produce the digital words. Such processing can be referred to as acoustic finger printing, or voice recognition. Further, VR SoC circuit 520 can also provide a time stamp to the received audio signal, which can be further used in processing in a manner to be described below, or the time stamp can be provided by other circuitry, such as, for example, controller 116 . Optionally, substantially similar processing can occur in audio processing board 505 ; however, in fulfillment of the dual purposes of clarity and brevity, discussion shall only be made in regard to VR SoC circuit 520 .
  • either or both of VR SoC 520 and audio processing board 505 can be implemented in one or more of the dimmers, wall mounted touch panels, remote control devices, and the like, all of which can be considered to be part of control network 100 and the ASN according to aspects of the embodiments.
  • audio processing board 505 accepts as an input the analog audible signal (audible signal) received from each of microphones 504 a,b , applies a pre-amplification to the signal to scale it, then converts the same to a digital audible signal using ADC 508 .
  • the “raw” output of ADC 508 can then be filtered by notch filter 510 to remove as much 60 Hz “hum” as possible, and the filtered digital audible signal (digital audible signal) can then be sent to processor 512 for further processing.
  • FIG. 10 illustrates several audio processing blocks that can occur within either or both of audio processing board 505 and VR SoC circuit 520 according to aspects of the embodiments.
  • the processing blocks in fulfillment of the dual purposes of clarity and brevity, however, reference will be made as to the processing blocks as occurring within VR SoC circuit 520 , although that need not necessarily be the case; one or more of the processing blocks shown is within VR SoC circuit 520 can also be implemented in one or more separate devices, such as ASICs, or even the processors of keypad 106 , controller 116 , and keypad 104 , among other devices of network 100 .
  • microphones 504 a,b receive audio commands spoken by a user or occupant of the home or enterprise location, along with other extraneous audio signals, the latter of which can be collectively referred to as audio noise; thus, the combined analog audio signal consists of an audio command and audio noise, and is represented as the analog audio signal from microphone 504 a , or AASa, and similarly from mic 504 b , AASb.
  • AASa audio command and audio noise
  • both of the analog microphone output signals encounter analog processing circuit 1002 a,b respectively.
  • Analog processing circuit can include, among other circuitry, 60 Hz notch filters, one or more of a low pass filter, high pass filter and a bandpass filter, pre- and post-amplifiers, and an analog-to-digital converter (ADC).
  • the output of analog processing circuits 1002 a,b can be referred to as digital audio signal “a” and “b,” respectively, DASa, DASb.
  • DASa,b both still contain ambient, background noise that can include one or more noise signals generated by fans, motors, audio sources, and non-command words, among others.
  • each of DASa,b upon conversion from an analog to digital form, can have a time-date stamp applied to it.
  • the application of a time-date stamp can be applied to the received digital audio signal by time-date stamp generator 1004 .
  • any processing steps that occur at processor 512 of keypad 106 can also occur in one or both of gateway 114 and controller 116 .
  • the time-date stamp applied by time-date stamp generator 1004 can be used one or more different ways.
  • each microphone's output can be time-stamped, it can be determined which microphone was closest to the source of the audio command (once processing occurs to decipher the command, discussed below). Further, because in subsequent processing the two microphones' outputs are combined, a single average time stamp value can be generated and applied to the combined audio command output from the respective keypad 106 ; this average time stamp can then be used and compared to other time stamps generated by other keypads 106 to further ascertain which keypad first received the audio command.
  • time stamps can be generated and applied according to aspects of the embodiments.
  • the speed of sound, V s is about 1126 feet-per-second (fps) at sea level, under certain predefined conditions.
  • the speed varies with temperature, humidity, and altitude, as those of skill in the art can appreciate, but the generally accepted “norm” value of V s of 1126 fps can be used for the purposes of this discussion. Using this value yields a travel time of about 888.1 microseconds-per-foot ( ⁇ s/ft).
  • clock speeds of the processors and other digital circuitry will operate at much higher frequencies than 1100 Hz; however, it is not the absolute clock frequency that is important (though below a certain value, as those of skill in the art can appreciate, time stamping would not be effective), but that the clock speeds be substantially identical at each keypad 106 , and be substantially in synchronization with each other, at least by several orders of magnitude in regard to the expected differences in time between when a first keypad marks the audio sound and a second keypad marks the same audio sound.
  • there are several network communication protocols that can be used to generate time stamps of sufficient accuracy one such system uses ZigBee, as described in papers entitled “Time Synchronization for ZigBee Networks,” Cox, D.
  • Time-date stamp generator 1004 uses either or both the protocols described above, among others not mentioned, and generates the time-date stamp that is then added to digital word represented the amplitude output from each respective microphone; in this manner, the digital word now resembles a packet of data familiar to those of skill in the art of digital data transmission using protocols such as the Open Source Initiative (OSI) model and internet protocols, among others.
  • OSI Open Source Initiative
  • application of the time-date stamp can occur in one or both of controller 116 or gateway 114 after the audible command has been received from each of the keypads, assigned an identifier header (or footer), and transmitted following digitization.
  • the digitized audible commands can be sent in real time to controller 116 or gateway 114 .
  • controller 116 for purposes of this discussion, the use of controller 116 alone will be considered by means of a non-limiting example
  • delay in time-date stamping can be negligible.
  • test communications can be sent to each keypad in order to ascertain a trip delay, and such delay time can be subtracted from each received audible command digital word after it has been received and time-date stamped, and prior to processing, as described below in regard to FIG. 8 , and method 800 .
  • AEC acoustic echo cancellation
  • Such reference signal can be the audio portion of any video that might be playing in each respective room of the corresponding keypad 106 , or audio signal that it being provided to amplifiers and speakers in each corresponding room.
  • the AEC circuit uses a Least Mean Square (LMS) algorithm to create an adaptive filter used to eliminate the reference and acoustic echoes associate with it.
  • LMS Least Mean Square
  • non-linear adaptive filtering can also be used to further suppress this signal.
  • this processing can occur in keypad 106 , and the reference signal will then be provided to each keypad 106 from the media system to the respective keypad 106 either through the IEEE 802.15.4 radio connection (LR-WPAN transceiver 212 and second antenna 117 ), IEEE 802.11 radio connection (WLAN transceiver 214 and first antenna 115 ), cellular transceiver 216 (and third antenna 119 ), or via the IEEE 802.3 LAN connection (wired I/O interface 210 ).
  • AEC blocks 1006 a,b can also include reverb reduction and/or active noise cancellation, the operation of which are known to those of skill in the art.
  • each DAS from the respective microphones 504 a,b in a first keypad 104 a can have direction of arrival (DOA) processing performed in conjunction with directionally adapted beamforming (DABF); this processing can occur in DOA block 1008 , which, as shown in FIG. 10 , comprises at least two inputs, the respective DASs from each microphone 504 a,b in first keypad 104 a .
  • DOA block 1008 comprises at least two inputs, the respective DASs from each microphone 504 a,b in first keypad 104 a .
  • the output of DOA block 1008 is another digital packet of data that includes the DOA processed digital audio signals and a relative angle that each microphone 504 a,b received its analog audio signal.
  • the DABF block 1010 receives that output from DOA block 1008 and uses the directional information (the relative angle) and further reduces the noise in the portion of the digital packet that represents the digitized and further processed audio signals. In this manner, the output of VR SoC circuit 520 has now substantially minimized or reduced the noise that accompanied the spoken command, so that the signal-to-noise ratio (SNR) has been improved of the spoken audio command.
  • SNR signal-to-noise ratio
  • DOA block 1008 and DABF block 1010 A detailed discussion of the processing that occurs in either or both of DOA block 1008 and DABF block 1010 is not necessary to the understanding of the aspects of the embodiments; however, such processing is described in the following documents, the entire contents of each of which are incorporated herein in their entirety. Such documents include “A New DOA Estimation Method Using a Circular Microphone Array,” Karbasi, A., et al., School of Comp. and Commun.
  • DOA and DABF processing can be implemented at each keypad 106 in regard to the one or more microphones 504 in the respective keypad 106 , or, DOA and DABF processing can occur at a central location, such as in controller 116 and CPU 202 (or in gateway 114 , among other “central locations”). Or, according to still further aspects of the embodiments, DOA processing can occur at each keypad, and DABF processing can occur at the central location such as controller 116 and CPU 202 . Further, while it has been discussed and described that keypad 106 can have two microphones 504 , according to further aspects of the embodiments, keypads 106 can have one, three, or even more microphones 605 .
  • one or more such microphones 504 can be stand alone units, i.e., one or more or a plurality of just microphones can be installed in one or more of the rooms/hallways of the home or enterprise location without keypad 106 in order to provide a larger area to listen for commands, and obtain more detailed spatial information about the location of the source of the audible command, as well as increasing the likelihood of accurately determining the room to which the command is being directed towards.
  • the digital audible signal can be processed by a speech recognition algorithm in order to attempt to discern the command that is contained in the digital audible signal.
  • processing can be performed in each keypad 106 .
  • processing shall be discussed from the perspective of occurring in controller 116 , within CPU 202 , in fulfillment of the dual purposes of clarity and brevity.
  • controller 116 within CPU 202
  • any of this processing, as well as additional processing described and discussed above and below, can be distributed throughout a network such as network 100 , and could occur, for example, in one or more of gateway 114 .
  • one such command could be “lights off,” as the person is leaving a bathroom.
  • processor 512 could relatively easily act on the command, and turn off the lights in the bathroom.
  • Such “turning off” command can be acted upon even if the same command was received by an adjoining bedroom because of the relatively high percentage of certainty of the true nature of the command contained in the digital audible signal.
  • speech recognition capabilities can be located throughout a residential or commercial facility to facilitate control of devices in the residence/office/enterprise location.
  • extraneous noise does exist and it cannot be said with any degree of certainty that processor 512 of keypad 106 in the bathroom would act on such command, or that the lights of the bedroom next door would not also be turned off, much to the surprise of the occupant therein.
  • further processing of the received audio command can also determine the amplitude of the received digital audible signal at each respective keypad 106 ; such amplitude can be used by CPU 202 in controller 116 (or another processor, such as processor 512 , though discussion will be directed to such processing occurring within CPU 202 from hereon in), to compare the amplitude of a plurality of received digital audible signals DAS N . Relative amplitude between all of the received signals can be used to assist in determining which of the received signals was received first, as amplitude falls off with distance, as time increases as well.
  • FIGS. 6 and 7 which are described in greater detail below, illustrate the principles of operation of the time-date stamp and amplitude determination.
  • either or both of additional processing and additional circuitry can be used that reduces the likelihood of misinterpreting the received digital audio signal.
  • the first item to be considered is the use of two microphones 504 a,b in each keypad 106 , as shown in FIG. 5 .
  • the outputs of mics 504 a,b are both directed to VR SoC circuit 520 , or audio processing board 505 ; as discussed above, only use of the former will be described herein in fulfillment of the dual purposes of clarity and brevity.
  • the effects of noise on the intended audio signal can be reduced. Some sources of noise can include other people speaking, fans in bedrooms or bathrooms, ceiling speakers, televisions, cell-phones, and the like.
  • the ASN can be part of a larger control system, such as control network 100 . While the ASN can be part of control network 100 , or the ASN can operate autonomously, reference from hereon in shall be made to only the ASN.
  • microphone 502 can incorporated into existing devices such as keypads 500 and motion detectors, or can be stand-alone independent devices with communications capabilities such as IEEE 811.14 PAN transceiver 514 .
  • each device can have local voice recognition capabilities (i.e., through the use of a “mini” processor that is co-located with the standalone microphone), of can be part of a centralized voice recognition system wherein voice recognition processing occurs at a remote server (such as gateway 114 or controller 116 ) or a combination of the two.
  • a remote server such as gateway 114 or controller 116
  • FIG. 6 illustrates the scientific principles upon which time-date stamping and amplitude determination are based.
  • the source is shown as generating a sound; in this case, a “light-off” command directed towards room 1 .
  • the sound waves travel in the direction of arrow A, towards first and second microphones 504 a 1 and 504 b 1 of keypad 106 a in room 1 , and third and fourth microphones 504 a 2 and 504 b 2 of keypad 106 b in room 2 .
  • the sound waves arrive at first and second microphones 504 a 1 , b 1 of keypad 106 a in room 1 at times T 1′ and T 1′′ , respectively, with amplitudes of A 1′ and A 1′′ , respectively, wherein first microphone 504 a 1 is a distance d 1′ from the sound source, and second microphone 504 b 1 is a distance d 1′′ from the sound source.
  • the sound waves arrive at third and fourth microphones 504 a 2 , b 2 of keypad 106 b in room 2 at times T 2′ and T 2′′ , respectively, with amplitudes of A 2′ and A 2′′ , respectively, wherein third microphone 504 a 2 is a distance d 2′ from the sound source, and fourth microphone 504 b 2 is a distance d 2′′ from the sound source.
  • third microphone 504 a 2 is a distance d 2′ from the sound source
  • fourth microphone 504 b 2 is a distance d 2′′ from the sound source.
  • the sound waves arriving at second microphone 504 b 1 should be somewhat smaller in amplitude, and arrive at a later time than those that arrive at first microphone 504 a 1 .
  • the sound waves at third microphone 504 a 2 should be smaller and arrive at a later time than those of second microphone 504 b 1 , and so on for the fourth, and other microphones, depending on their spatial location with respect to the source of the sound.
  • amplitude or even time stamping might not be sufficiently dispositive in some cases in regard to the determination of which room the audible command is being directed towards, but in those circumstances they can be useful factors to take into account.
  • FIG. 7 illustrates a plan view of a floor of a house in which the system and method for determining which controllable device an audible command is directed to can be used according to aspects of the embodiments.
  • a setting as discussed above can be as realized in FIG. 7 , wherein room 1 is “Jordyn's Room” and room 2 is “Nolan's Room.”
  • Room 1 is “Jordyn's Room”
  • room 2 is “Nolan's Room.”
  • someone has just left room 1 , at position ( 1 ), carrying bags in each hand, and cannot hit the light switch to turn off the lights on the way out. So, the person uses an audible command “Lights off,” as they pass position ( 2 ).
  • the controllable device associated with the first pair of microphones 504 a 1 , b 1 of keypad 106 a will be directed to respond to the audible command.
  • This processing decision can also be made, or verified, by comparing amplitudes of the first and second digital signals—amplitude A 1 will be greater, albeit by a small amount, than amplitude A 2 , and as such whichever processor processes the received digital signals, it will ascertain that the command was directed to Jordyn's room, room 1 , because the amplitude of the received signal is greater at Jordyn's room than at Nolan's room.
  • the user would prefer that the lights in Jordyn's room be turned off well before they get to position ( 3 )—the bottom of the stairs.
  • the ASN can further include proximity sensors as a further means for discerning the presence or location of a user, which can assist in determining which room the command to the controllable device is directed towards.
  • proximity sensors can be the same or different as occupancy sensors; that is, an occupancy sensor can be a passive detection device; motion, heat, among other types.
  • Proximity sensors can be active—using near field communications (NFC), Bluetooth, Wi-Fi, or other low- or medium-power communications protocols, that transmit signals to which a device, such as PED 104 , can respond to, thereby tracking movement and position of the user, without the user's input. For example, in FIG. 7 , the user, when at position ( 2 ), has left Jordyn's room and is now at the top of the stairs. While each of proximity sensors 702 a - e can, most likely, detect the presence of the user, each will have a different power level received signal from PED 104 that the user is carrying with them.
  • NFC near field communications
  • Bluetooth Wireless Fidelity
  • a central processor such as central processor 116 or gateway 114 will receive data from each of proximity sensors 702 and will be able to check the signal strength level from each of proximity sensors 702 a - e .
  • the processor will therefore know that (a) the user has just left Jordyn's room, (b) is now headed down the stairs, and (c) that a command has just been issued by the user to turn off lights. A review of the light status of each of the rooms on that floor will determine that the lights were left on in Jordyn's room, and a command can now be generated and transmitted to turn them off.
  • any one of the above proscribed processes can effectively turn off the light in the room as intended by the audible command—speech recognition algorithms, amplitude comparisons, time-date stamp comparisons, those of skill in the art can appreciate that additional problems can, from time to time, arise in the system and can potentially be the cause in erroneous operation.
  • any two of the three processes can be combined, or all three can be used.
  • additional processes can be implemented to construct an ASN that can operate substantially effectively, substantially all of the time.
  • one or more processors can obtain received digital audible signals (e.g., DAS 1 and DAS 2 ), and can process each of DAS 1 and DAS 2 using speech recognition algorithms to determine the nature of the command, if any, contained in DAS 1 and DAS 2 . If the command can be ascertained with a degree of certainty that meets or exceeds a predetermined degree of certainty (those of skill in the art can appreciate that currently available speech recognition algorithms can assign a value of certainty in regard to recognition of the speech of the received digital audio signals), then the controllable device to which the received digital audible signal is directed can be instructed to act on the command. Sometimes, however, such received digital audible signals are not recognizable by the speech recognition algorithms.
  • a time-date stamp can be applied to each received DAS, and then those time-date stamps can be compared to make a determination as to which DAS occurred first.
  • the controllable device associated with the microphone that received the first DAS can then be directed to act on the command.
  • the amplitude of the received DAS can also be compared; the controllable device associated with the microphone that received the DAS with the larger amplitude can be considered to be the one to which the command was directed.
  • Amplitude comparisons, time-date stamp comparison, and speech recognition can be used independently of each other, or in various combinations with each other. Other processes can also be used, as described below.
  • the ASN can include speech recognition algorithm (SRA) that recognizes and distinguish audible commands from silence.
  • SRA speech recognition algorithm
  • the SRA can learn, over time, the ambient noise levels of the room in which a respective microphone is located. According to an embodiment, these ambient levels become characterized as “silence” in the sense that they do not convey useful command and control information, or can be actually very low noise/sound level situations. According to further aspects of the embodiments, the SRA can then determine a state of silence (or absence of a command), a state that a command has been issued, and then silence again.
  • the SRA of the ASN recognizes zone commands.
  • the SRA of the ASN can recognize commands such as “Master Bathroom Off” and “Guest Room On,” among others.
  • a user can speak such commands in a learning mode to that the SRA can learn to recognize the different vocal traits of the user or users.
  • any number of users can input “practice” commands that can then be learned by the SRA.
  • the SRA and acoustic sensory network is not necessarily limited to such “learned” commands, nor does it even require such learned commands in order to recognize zone commands.
  • the SRA and acoustic sensor network can increase its efficiency in recognizing and responding to received DASs.
  • occupancy indicators can be utilized to determine location and deduce likely commands. For example, once an occupancy sensor determines occupancy in a room and automatically triggers the lights to turn on, the acoustic sensor network can then deduce that an “Off” command is likely to follow in that room.
  • occupancy indicators can be combined, such as AV equipment operation, among others.
  • the occupancy sensors of each of the rooms can be checked, and if one still indicates an occupied room with the lights on, then it is likely the “Off” command was not directed towards it.
  • additional processing can be implemented that takes into account time of day, day of the week, additional commands received within specified periods of time (e.g., correcting commands; a first “Off” command followed by a second “Off” command seconds later), among other processes.
  • additional processing steps can be used to implement additional features.
  • the ASN at start-up, can temporarily employ a remote server to learn the operating environment of the keypad. Once a noise signature of the environment is deduced, the device may use a local processor to filter out background noise and recognize commands.
  • the ASN which is part of control network 100 (or which can be a stand-alone network), can reduce background noise to make determination of commands via SRAs more effective.
  • the ASN can request that certain noise producing devices be turned off in an area where a command is likely to be heard. For example, after detecting lack of occupancy in a bedroom, the ASN can reduce the volume of any audio/video devices that may still be operating, and also reduce heating or air conditioning to the room; this can lower the ambient background noise, and make detection and determination of any commands easier.
  • the ASN can reduce or eliminate collocation problems.
  • collation problems are those that related to two or more microphone devices 504 that are relatively close to one another on two separate keypads 106 for different rooms; see, e.g., keypads 106 a , 106 b , in FIG. 7 for Jordyn and Nolan's room.
  • One manner of reducing or substantially eliminating collocation issues, especially in systems that do not utilize zone commands, is to check for occupancy in different rooms/areas. After detecting occupancy in an area or room, the ASN can then disable microphones 504 known to be in adjacent zones (areas/rooms).
  • the ASN can also use occupancy sensor data that shows no-occupancy as a means for reducing or substantially eliminating collocation issues. In this latter case, occupancy sensors from all adjoining rooms are checked against each other; if a room fails to show occupancy, then commands for that room that room would turn off lights are ignored. As those of skill in the art can appreciate, there are numerous variations on how to use occupancy sensor data by the ASN in processing commands to control controllable devices such as lights.
  • the SRA of the ASN can recognize characteristic sounds and deduce likely commands to be received in the vicinity. For example, a flushed toilet and running water are likely indicators that a bathroom microphone will receive a “lights off” command. A further example can be a garage door closing, among others.
  • the ASN can use voice or speech recognition to identify speakers, learn preferences, and set defaults accordingly.
  • the SAR algorithm of the ASN can recognize that certain individual users prefer certain temperature, humidity, AV, shade, and/or light settings, and set devices at those settings when detecting the user is present.
  • the ASN can determine an optimal setting by taking into account each user's preference.
  • the ASN can determine an optimum setting by taking into account each user's preference.
  • FIG. 8 illustrates a flow chart of method 800 for determining which controllable device out of a plurality of controllable devices an audible command is directed towards according to aspects of the embodiments.
  • FIG. 8 illustrates a flowchart of various steps performed during the encoding process. The steps of FIG. 8 are not intended to completely describe the encoding process but only to illustrate some of the aspects discussed above.
  • the encoding process can be further embodied in one or more programs that reside in one or more memory locations of one or more devices, such as, for example, VR SoC circuit 520 , controller 116 and gateway 114 , among other devices.
  • VR SoC circuit 520 a device that controls the playback of the audio signals
  • controller 116 a device that controls the display of the audio signals
  • gateway 114 a device that provides the video signals.
  • ACPD audible command processing and determination
  • Method 800 begins with optional method step 802 .
  • Each of the operations of method steps 802 - 810 has been described in greater detail above in regard to FIGS. 1-7 ; therefore, in fulfillment of the dual purposes of clarity and brevity, a detailed discussion of the same operations and system devices has been omitted from the discussion below of FIG. 8 and method 800 .
  • the ASN can be used to learn a user's speech characteristics in the manner as described above.
  • method 800 can also acquire information regarding the zones or rooms of a building, office, home, or enterprise location. The latter information can be used to assist in determining which zone or room an audible command is directed towards as described in greater detail below.
  • Method 800 can use the zone/room information to determine the intended “target” of the command by matching control devices to the rooms and zones, and verifying the presence and operational status of the proximity and occupancy sensors, and their locations with regard to each of the rooms and zones.
  • method 800 receives audio information in the form of an analog signal at one or more microphones 504 at one or more keypads 106 according to aspects of the embodiments.
  • the analog signals are digitized, time and date stamped, can be further processed to substantially eliminate or reduce noise (using AEC, DOA, DABF), and prepared for further processing.
  • the audio signal is now in the form of digital data, or packets, and can be represented as AF n (t), where n ranges from 1 to the total number of keypads 106 that report an audible signal.
  • each of the received plurality digitized audio signals AF n (t) is analyzed by a speech recognition algorithm (SRA) in ACPD program 222 in order to determine which keypad 106 and controllable devices the audio command signal is directed towards.
  • SRA speech recognition algorithm
  • method 800 (and certain modules of ACPD program 222 ) can be directed to the control of lighting devise; therefore, each command is therefore understandable in the sense that is directed to turning lights on or off, or up or down in intensity, but the question is generally which room or zone is the command directed towards?
  • method 800 is not limited to lighting devices only, but can be used in controlling a plurality of different devices as has been described herein. With modifications that have been described herein method 800 can be used to control audio-video, HVAC, shading, security, and many other types of devices and/or systems, alone or in combination with each other. These can be embodied in one larger version of ACPD program 222 , or can be embodied in multiple modules of ACPD program 222 as the case may be.
  • method 800 can direct the command to the appropriate device (“Yes” step from decision step 806 ). If the output of the SRA is such that the controllable device of the audio signal cannot be discerned (“No” path from decision step 806 ), then method 800 proceeds to decision step 808 . In decision step 808 , method 800 compares the date-time stamp and magnitude of each of the received AF n (t) signals, presuming there is more than one (if there is only one, then method 800 applies the command to the controllable device to which the control device received the audible signal AF n (t)).
  • the magnitude of the earliest signal should be greater than the magnitude of later arriving signals.
  • t 1 should be less than t 2
  • the magnitude of AF 1 (t 1 ) should be greater than the magnitude of AF 2 (t 2 ). If this is the case (“Yes” path from decision step 808 ), method 800 proceeds to step 807 and applies the command to the controllable devices associated with the first keypad 106 .
  • controllable devices of the control device that reports the earliest time-date stamp and greatest magnitude of AF n (t) are the controllable devices to which the command contained in the received AF n (t) signal will be directed towards.
  • method 800 takes into account the fact that the speed of sound in a home or office of enterprise location is essentially and substantially constant, and thus the control device that reports the earliest or greatest magnitude audible signal is the one that the command is directed to. If these equalities do not hold true (“No” path from decision step 808 ), then method 800 and ACPD program 222 are directed to decision step 810 for further processing and determinations according to aspects of the embodiments.
  • step 810 additional processing can be performed to determine which room or zone or controllable device the received audible signal is directed towards.
  • One, some, or all of the following processing steps/parameters can be taken into account and/or performed, in any particular order, or none can and decision step 800 can terminate with step 808 , as described above.
  • a further step that can be taken in decision step 810 alone or in conjunction with one or more of the other processing steps can be to make use of proximity sensors to determine which controllable device the audible signal (command) is directed to. That is, the system and method according to aspects of the embodiments, can use the knowledge of the presence, of lack of presence of a user as determined by one or more proximity sensors can be used to determine which controllable device the command is directed to. This can be accomplished through the use of low/medium power communications protocols such as Bluetooth, NFC, Wi-Fi, among others.
  • a transmitted signal interrogates an electronic device such as PED 104 ; appropriate software located therein received such a transmission, and responds in kind to the proximity sensor.
  • a plurality of proximity sensors can send such location interrogation transmissions. Upon processing all of the responses from each proximity sensor, and determination can be made as to location based on the strength and/or time stamp of the signal transmitted by PED 104 and received by each of the proximity sensors.
  • a further step that can be taken in method step 810 alone or in conjunction with one or more of the other processing steps can be to make use of background and/or ambient noise in a passive measure. That is, the system and method according to aspects of the embodiments can use microphones 504 to periodically measure the background of ambient noise levels from time to time and one or more processors, wherever located, can store such readings. These noise levels can then be subtracted from future readings in order to facilitate the presence of commands.
  • method 800 can assist in helping to determine when a command has been issued, and in conjunction with other processing steps and/or parameter determinations can be used to determine the nature of the command (e.g., which controllable device in which zone/room the command is directed towards).
  • a further step that can be taken in method step 810 alone or in conjunction with one or more of the other processing steps can be to make active use of the occupancy sensor data. That is, the system and method according to aspects of the embodiments can determine the presence or not of a person or persons in a room, and further determine when such person or persons leave the room. Then it can be expected that any ensuing command could be directed towards that room or zone that was just vacated.
  • a further step that can be taken in method step 810 alone or in conjunction with one or more of the other processing steps can be to make active use of the output of the occupancy and proximity sensors. That is, the system and method according to aspects of the embodiments can turn off or reduce in volume any “noise” producing devices when occupancy and/or proximity sensors suggest that a room or zone is unoccupied. By reducing the ambient noise level—in this case, noise referring to any audible sound that is not a command (e.g., music, video audio)—the commands, or any commands that might be issued, will become easier to discern, and respond to.
  • a command e.g., music, video audio
  • a further step that can be taken in method step 810 can be to make active use of the output of the occupancy and proximity sensors in another, different manner than that just described. That is, the system and method according to aspects of the embodiments can turn off or disable one or more microphones 504 in one or more rooms or zones when occupancy and/or proximity sensors suggest that a room or zone is unoccupied. By eliminating one or more outputs from microphones 504 in which a command is not expected, the system and method according to aspects of the embodiments will be able to detect with greater accuracy the controllable device that the command is being directed towards.
  • a further step that can be taken in method step 810 alone or in conjunction with one or more of the other processing steps can be to make active use of background and/or ambient noises; that is, when certain background or ambient noises occur, the system and method according to aspects of the embodiments can predict future operations based on those noises. Such predictive behavior can be learned over time.
  • a command to turn off the lights in the garage can be expected.
  • a toilet flushes, or running water is turned off in the bathroom sink, the command to turn off the lights in the bathroom can be expected.
  • method 800 can determine whether, within a certain predefined degree of certainty as to which room the command is directed. If method 800 can make the determination (“Yes” path from decision step 810 ), method 800 proceeds to method step 807 wherein the command is applied to the specified controllable device of the specified room or controlled zone. If, however, after all of the processing of method 800 as embodied as ACPD program 222 , a determination still cannot be made, then no response is provided, and the command is ignored. The user or users can be informed of this by some type of audible, visual, or haptic feedback, or any combination thereof (including all of the feedback methods).
  • FIG. 9 illustrates processing and memory components/circuitry of one or more of the personal electronic device 104 of FIG. 4 , gateway device 114 of FIG. 3 , controller 116 of FIG. 2 , and any other devices that uses one or more processors as described herein that uses software and/or applications to perform various functions and actions as described herein according to aspects of the embodiments.
  • FIG. 9 illustrates processing and memory components/circuitry (generally referred to as a “computer” or personal computer (PC)) of one or more of the personal electronic device 104 of FIG. 4 , gateway device 114 of FIG. 3 , controller 116 of FIG. 2 , and any other devices that uses one or more processors as described herein that uses or runs or implements software and/or applications, such as the configuration application, project files, or control applications, to perform various functions and actions as described herein according to aspects of the embodiments, suitable for use to implement method 800 for determining which controllable device an audible command is directed towards according to an embodiment.
  • a computer personal computer
  • PC 900 comprises, among other items, integrated display/touch-screen 902 (though not used in every application of PC 900 ), internal data/command bus (bus) 904 , processor board/PC internal memory (internal memory) 932 , and one or more processors 908 with processor internal memory 906 (which can be typically read only memory (ROM) and/or RAM).
  • bus internal data/command bus
  • processor board/PC internal memory internal memory 932
  • processors 908 with processor internal memory 906 (which can be typically read only memory (ROM) and/or RAM).
  • ROM read only memory
  • RAM random access memory
  • PC 900 further comprises multiple input/output ports, such as universal serial bus ports 910 , Ethernet ports 911 , and video graphics array (VGA) ports/high definition multimedia interface (HDMI) ports 922 , among other types.
  • PC 900 includes externally accessible drives such as compact disk (CD)/digital video disk (DVD) read/write (RW) (CD/DVD/RW) drive 912 , and floppy diskette drive 914 (though less used currently, many PCs still include this device).
  • Internal memory 932 itself can comprise hard disk drive (HDD) 916 (these can include conventional magnetic storage media, but, as is becoming increasingly more prevalent, can include flash drive memory 934 , among other types), read-only memory (ROM) 918 (these can include electrically erasable (EE) programmable ROM (EEPROMs), ultra-violet erasable PROMs (UVPROMs), among other types), and RAM 920 .
  • HDD hard disk drive
  • ROM read-only memory
  • ROM read-only memory
  • EEPROMs electrically erasable (EE) programmable ROM (EEPROMs), ultra-violet erasable PROMs (UVPROMs), among other types
  • RAM 920 Usable with USB port 910 is flash drive memory 934 , and usable with CD/DVD/RW drive 912 are CD/DVD disks 936 (which can be both read and write-able).
  • Usable with floppy diskette drive 914 are floppy diskettes 938 .
  • External memory storage 924 can be used to store data and programs external to box 901 of PC 900 , and can itself comprise another hard disk drive 916 a , flash drive memory 934 , among other types of memory storage. External memory storage 924 is connectable to PC 900 via USB cable 956 .
  • Each of the memory storage devices, or the memory storage media can contain parts or components, or in its entirety, executable software programming code or application (application, or “App”), such as ACPD program 222 , which can implement part or all of the portions of method 800 described herein.
  • Bus 904 provides a data/command pathway for items such as: the transfer and storage of data/commands between processor 908 , integrated display 902 , USB port 910 , Ethernet port 911 , VGA/HDMI port 922 , CD/DVD/RW drive 912 , floppy diskette drive 914 , and internal memory 932 .
  • bus 904 data can be accessed that is stored in internal memory 932 .
  • Processor 908 can send information for visual display to either or both of integrated and external displays, and the user can send commands to system operating programs/software/Apps 940 that might reside in processor internal memory 906 of processor 908 , or any of the other memory devices ( 936 , 938 , 916 , 918 , and 920 ).
  • PC 900 and either processor internal memory 906 or internal memory 932 , can be used to implement method 800 for determining which controllable device an audible command is directed towards according to an embodiment.
  • Hardware, firmware, software or a combination thereof can be used to perform the various steps and operations described herein.
  • App 940 for carrying out the above discussed steps can be stored and distributed on multi-media storage devices such as devices 916 , 918 , 920 , 934 , 936 and/or 938 (described above) or other form of media capable of portably storing information.
  • Storage media 934 , 936 and/or 938 can be inserted into, and read by devices such as USB port 910 , CD/DVD/RW drive 912 , and disk drives 914 , respectively.
  • the various functional aspects of the embodiments may be embodied in a wireless communication device, a telecommunication network, or as a method or in a computer program product. Accordingly, the embodiments may take the form of an entirely hardware embodiment or an embodiment combining hardware and software aspects. Further, the embodiments may take the form of a computer program product stored on a computer-readable storage medium having computer-readable instructions embodied in the medium. Any suitable computer-readable medium may be utilized, including hard disks, CD-ROMs, digital versatile discs (DVDs), optical storage devices, or magnetic storage devices such a floppy disk or magnetic tape. Other non-limiting examples of computer-readable media include flash-type memories or other known types of memories.
  • Such programmable devices and/or other types of circuitry as previously discussed can include a processing unit, a system memory, and a system bus that couples various system components including the system memory to the processing unit.
  • the system bus can be any of several types of bus structures including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures.
  • various types of computer readable media can be used to store programmable instructions.
  • Computer readable media can be any available media that can be accessed by the processing unit.
  • computer readable media can comprise computer storage media and communication media.
  • Computer storage media includes volatile and nonvolatile as well as removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data.
  • Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CDROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the processing unit.
  • Communication media can embody computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and can include any suitable information delivery media.
  • the system memory can include computer storage media in the form of volatile and/or nonvolatile memory such as ROM and/or RAM.
  • a basic input/output system (BIOS) containing the basic routines that help to transfer information between elements connected to and between the processor, such as during start-up, can be stored in memory.
  • BIOS basic input/output system
  • the memory can also contain data and/or program modules that are immediately accessible to and/or presently being operated on by the processing unit.
  • the memory can also include an operating system, application programs, other program modules, and program data.
  • the processor can also include other removable/non-removable and volatile/nonvolatile computer storage media.
  • the processor can access a hard disk drive that reads-from or writes-to non-removable, nonvolatile magnetic media, a magnetic disk drive that reads from or writes to a removable, nonvolatile magnetic disk, and/or an optical disk drive that reads from or writes to a removable, nonvolatile optical disk, such as a CD-ROM or other optical media.
  • Other removable/non-removable, volatile/nonvolatile computer storage media that can be used in the operating environment include, but are not limited to, magnetic tape cassettes, flash memory cards, digital versatile disks, digital video tape, solid state RAM, solid state ROM and the like.
  • a hard disk drive can be connected to the system bus through a non-removable memory interface such as an interface, and a magnetic disk drive or optical disk drive can be connected to the system bus by a removable memory interface, such as an interface.
  • the embodiments discussed herein can also be embodied as computer-readable codes on a computer-readable medium.
  • the computer-readable medium can include a computer-readable recording medium and a computer-readable transmission medium.
  • the computer-readable recording medium is any data storage device that can store data which can be thereafter read by a computer system. Examples of the computer-readable recording medium include ROM, RAM, CD-ROMs and generally optical data storage devices, magnetic tapes, flash drives, and floppy disks.
  • the computer-readable recording medium can also be distributed over network coupled computer systems so that the computer-readable code is stored and executed in a distributed fashion.
  • the computer-readable transmission medium can transmit carrier waves or signals (e.g., wired or wireless data transmission through the Internet). Also, functional programs, codes, and code segments to, when implemented in suitable electronic hardware, accomplish or support exercising certain elements of the appended claims can be readily construed by programmers skilled in the art to which the embodiments pertain.
  • the aspects of the embodiments are directed towards systems, methods, and modes for controlling controllable devices in the control network based on audio commands alone, according to an aspect of the embodiments, and in further aspects of the embodiments, controlling the controllable devices of the control network based on audio commands and other sensory information.
  • the disclosed embodiments provide a system, software, and a method for determining which of one or more controllable devices an audible command is directed towards using one or more of speech recognition, time-date stamping, amplitude analysis, and other techniques, as described herein. It should be understood that this description is not intended to limit the embodiments. On the contrary, the embodiments are intended to cover alternatives, modifications, and equivalents, which are included in the spirit and scope of the embodiments as defined by the appended claims. Further, in the detailed description of the embodiments, numerous specific details are set forth to provide a comprehensive understanding of the claimed embodiments. However, one skilled in the art would understand that various embodiments may be practiced without such specific details.

Abstract

Disclosed is an apparatus and method for determining which controllable device an audible command is directed towards, the method comprising: receiving at each of two or more controlling devices the audible command signal, the audible command being directed to control at least one of two or more controllable devices controlled by a respective one of the two or more controlling devices; digitizing each of the received audible command signals; attaching a unique identifier to each digitized audible command so as to uniquely correlate it to a respective controlling device; determining a magnitude of each of the digitized audible command; determining a digitized audible command with the greatest magnitude, and further determining to which controlling device the audible command is directed to on the basis of the unique identifier associated with the digitized audible command with the greatest magnitude; performing speech recognition on the digitized audible command with the greatest magnitude; and forwarding a command to the controlling device corresponding to the digitized audible command with the greatest magnitude, the command corresponding to the audible command that can be implemented on the controllable device controlled by the controlling device.

Description

PRIORITY INFORMATION
The present application claims priority under 35 U.S.C. § 120 as a Continuation Application to U.S. Non-provisional patent application Ser. No. 15/261,296, filed 9 Sep. 2016, which claims priority under 35 U.S.C. § 119(e) to U.S. Provisional Patent Application No. 62/216,971, filed 10 Sep. 2015, and further claims priority under 35 U.S.C. § 120 to U.S. Non-provisional patent application Ser. No. 14/850,904, filed 10 Sep. 2015, which claims priority under 35 U.S.C. § 119(e) to U.S. Provisional Patent Application No. 62/048,722, filed 10 Sep. 2014, the entire contents of all of which are expressly incorporated herein by reference.
CROSS REFERENCE TO RELATED APPLICATIONS
Related subject matter is disclosed in Applicants' co-pending U.S. Non-Provisional patent application Ser. No. 14/850,904, entitled “Improvements in Configuring a Control System,” filed on 10 Sep. 2015, the entire contents of which are expressly incorporated herein by reference. Related subject matter is also disclosed in Applicants' co-pending U.S. Non-Provisional patent application Ser. No. 15/261,296, entitled “Acoustic Sensory Network,” filed on 9 Sep. 2016, the entire contents of which are expressly incorporated herein by reference.
BACKGROUND
Technical Field
Aspects of the embodiments relate generally to control networks, and more specifically to systems, methods, and modes for controlling controllable devices in the control network based on audio commands alone, according to an aspect of the embodiments, and in further aspects of the embodiments, controlling the controllable devices of the control network based on audio commands and other sensory information.
Background Art
Today, there are home control systems that include lighting, shades, environmental controls, security, audio-visual (AV), and other types of sub-systems. In many of the currently available home control systems, the user can turn and off components of such systems (from hereon in referred to as “controllable devices”), for example, lighting products, by a switch, one or more remote control (RC) devices (such as a dedicated RC device, or through some other type of RC device), remotely through network messages (e.g., command and control messages through the internet), and other means, such as speech.
In the latter case, users always desire more convenient methods for managing controllable devices, and the advent of speech based control in handheld devices has led to a desire for speech based control of controllable devices. Currently, lights can be turned on and off automatically when a user enters a room via use of a motion sensor. However, the motion sensor can take several minutes after an occupant has left a room to turn off the lights. This leads to wasted energy and frustration. Speech based control can allow a user to (relatively) quickly turn off lights while leaving a room. That is, when speech based control systems work.
As those of skill in the art can appreciate, there are several problems with speech based control systems that must be addressed. Among them are inoperativeness, false positives, collocation issues, and privacy issues. In regard to inoperativeness, this is defined by the speech based control system simply failing to respond at all to a proper command. A false positive is when a user does not intend the controllable device to turn off, but it does. This can occur because the speech recognition system misinterprets the recorded audible signal, and incorrectly applies a control, when one was not intended. Collocation issues can arise when two control devices are relatively close to each other, and a command is heard by both, and both or the wrong device acts on the command that was intended for a first control device, but not the second. The privacy issue arises when certain private areas of a home (e.g., the lavatory) are adjacent to other rooms; commands issued in or near that room can be misinterpreted by the system, causing occupants to make possible embarrassing counter-commands.
Accordingly, a need has arisen for more precise audible control of a control network and the controllable devices that make up the control network by providing systems, methods, and modes for controlling controllable devices in the control network based on audio commands alone, according to an aspect of the embodiments, and in further aspects of the embodiments, controlling the controllable devices of the control network based on audio commands and other sensory information.
SUMMARY
It is an object of the embodiments to substantially solve at least the problems and/or disadvantages discussed above, and to provide at least one or more of the advantages described below.
It is therefore a general aspect of the embodiments to provide systems, methods, and modes that will obviate or minimize problems of the type previously described by controlling controllable devices in a control network based on audio commands alone, according to an aspect of the embodiments, and in further aspects of the embodiments, controlling the controllable devices of the control network based on audio commands and other sensory information.
This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
Further features and advantages of the aspects of the embodiments, as well as the structure and operation of the various embodiments, are described in detail below with reference to the accompanying drawings. It is noted that the aspects of the embodiments are not limited to the specific embodiments described herein. Such embodiments are presented herein for illustrative purposes only. Additional embodiments will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein.
According to a first aspect of the embodiments, a system is provided for determining which controllable device an audible command is directed towards, the system comprising two or more controllable devices; two or more electronic devices, each of which is adapted to receive the audible command, add a respective electronic device identifier to the received audible command, time and date stamp the received audible command, and transmit the respective time and date stamped versions of the audible command, and wherein each of the two or more electronic device are further adapted to control respective ones of the two or more controllable devices; and a central processor adapted to receive each of the transmitted time and date stamped versions of the audible command and perform processing based on the time and date stamp, wherein the electronic device that reports the earlier time and date stamp, as ascertained by the respective electronic device identifier and a comparison of each of the time and date stamps performed by the central processor, is the electronic device to which the audible command is directed towards.
According to the first aspect of the embodiments, the time and date stamped versions of the audible command further conveys amplitude information of the respectively received audible command, and wherein each of the two or more electronic devices are further adapted to compare the amplitudes of the received audible commands, and determine, based on the amplitude of the received audible commands, which controllable device the audible command is directed towards, based on a larger amplitude.
According to a second aspect of the embodiments, a system is provided for determining which controllable device an audible command is directed towards, the system comprising two or more controllable devices; two or more controlling devices, each of which is adapted to control respective ones of the two or more controllable devices, receive the audible command, digitize the received audible command, and transmit the same; and a central processor adapted to receive the transmitted digitized audible commands from the two or more controlling devices, and apply a speech recognition algorithm to the received digitized audible commands to determine which controllable device the received audible command is directed towards.
According to the second aspect of the embodiments, the system further comprises the central processor being further adapted to prepare and transmit a control command to the controllable device that the received audible command was directed towards, to enact the audible command.
According to a third aspect of the embodiments, a method for determining which controllable device an audible command is directed towards is provided, the method comprising: receiving at two or more controlling devices an audible command, the audible command directed to control at least one of two or more controllable devices controlled by a respective one of the two or more controlling devices; digitizing the received audible command and transmitting the same by each of the two or more controlling devices; receiving the transmitted digitized audible commands at a central processor and applying a speech recognition algorithm to determine which of the at least two or more controllable devices the audible command was directed towards.
According to the third aspect of the embodiments, the method further comprises adding a unique controlling device identifier to the received audible command at each respective controlling device; applying a time and date stamp to the received audible command at each respective controlling device; transmitting the respective time and date stamped versions of the received audible command; and receiving the transmitted time and date stamped versions of the audible commands at a central processor, the central processor adapted to receive each of the transmitted time and date stamped versions of the audible command and perform processing based on the time and date stamp, and wherein the central processor is further adapted to determine the earliest time and date stamp of each of the received audible commands by comparing each of the respective time and date stamps of each of the received audible commands; generating a command signal by the central processor and transmitting the same to the controllable device that corresponds to the controlling device that had the earliest time and date stamp.
According to the third aspect of the embodiments, the method further comprises adding a unique controlling device identifier to the received audible command at each respective controlling device; transmitting the respective audible commands with the unique controlling device identifier; and receiving the transmitted audible commands at a central processor, the central processor adapted to receive each of the transmitted audible commands and applying a central processor generated time and date stamp to each received audible commands, and wherein the central processor is further adapted to determine the earliest time and date stamp of each of the received audible commands by comparing each of the respective time and date stamps of each of the received audible commands; generating a command signal by the central processor and transmitting the same to the controllable device that corresponds to the controlling device that had the earliest time and date stamp.
According to a fourth aspect of the embodiments, a method for determining which controllable device an audible command is directed towards is provided, the method comprising: receiving at each of two or more controlling devices the audible command, the audible command being directed to control at least one of two or more controllable devices controlled by a respective one of the two or more controlling devices; digitizing each of the received audible commands; attaching a time-date stamp to each of the digitized audible commands using a time-date stamp generator that employs a time synch protocol, and further attaching a unique identifier to each of the time-date stamped digitized audible commands so as to uniquely correlate it to a respective controlling device; determining a first received digitized audible command on the basis of an earliest time-date stamp, and further determining to which controlling device the audible command is directed to on the basis of the unique identifier of the first received digitized audible command; performing speech recognition on the first received digitized audible command to determine a command for a controllable device; and forwarding the command to the controlling device corresponding to the first received digitized audible command, the command corresponding to the spoken audible command that can be implemented on the controllable device controlled by the controlling device.
According to the fourth aspect of the embodiments, the method further comprises: receiving the command by the controlling device; and controlling the controllable device in accordance with the received command.
According to the fourth aspect of the embodiments, the step of determining further comprises: determining a magnitude of each of the digitized audible commands from respective controlling devices; and verifying that the magnitude of the digitized audible command with the earliest time-date stamp is equal to or larger than any other digitized audible commands.
According to the fourth aspect of the embodiments, the method further comprises: applying additional processing to determine which controlling device the received audible command is directed to if the magnitude of the received and digitized audible command with the earliest time-date stamp is less than any other received and digitized audible command.
According to the fourth aspect of the embodiments, the step of applying additional processing comprises: checking one or more of an occupancy sensor reading, proximity sensor reading, and motion detector reading, each of which is associated with respective controlling devices to determine which controlling device the received audible command is directed to.
According to the fourth aspect of the embodiments, the method further comprises: determining that the occupancy sensor reading associated with a respective controlling device matches the received audible command in order to determine that the received audible command should be applied to the controllable device controlled by the respective controlling device.
According to the fourth aspect of the embodiments, the method further comprises: determining that the proximity sensor reading associated with a respective controlling device matches the received audible command in order to determine that the received audible command should be applied to the controllable device controlled by the respective controlling device.
According to the fourth aspect of the embodiments, the method further comprises: determining that the motion detector reading associated with a respective controlling device matches the received audible command in order to determine that the received audible command should be applied to the controllable device controlled by the respective controlling device.
According to the fourth aspect of the embodiments, the method further comprises: applying noise reduction processing.
According to the fourth aspect of the embodiments, the step of applying noise reduction to the received audible command comprises: filtering the received audible command in an analog domain to attenuate a first bandwidth of noise energy.
According to the fourth aspect of the embodiments, the step of applying noise reduction comprises: using one or more of acoustic echo cancellation filtering, direction of arrival filtering, and directionally adaptive beam forming filtering, to filter the digitized audible command in a digital domain to attenuate noise energy and to amplify audible command energy.
According to the fourth aspect of the embodiments, the noise energy comprises: noise energy generated by one or more of a fan motor, music, air conditioning noise, audio generated by multi-media presentations, and non-command words.
According to the fourth aspect of the embodiments, the method further comprises: receiving at least one additional audible command from at least one additional spatially separated microphone, the at least one additional spatially separated microphone associated with a respective controlling device; digitizing the at least one additional audible command received from the at least one additional spatially separated microphone; attaching a time-date stamp to the at least one digitized additional audible command, and further attaching a unique identifier to each time-date stamped digitized additional audible command so as to uniquely correlate it to its respective controlling device; and using the at least one additional digitized audible command to assist in determining to which controlling device the audible command is directed to.
According to the fourth aspect of the embodiments, the step of determining, on the basis of the time-date stamp, to which controlling device the digitized audible command is directed to, comprises: generating the time-date stamp using a time-date stamp generator, the time-date stamp generator located in at least one controlling device that includes a plurality of microphones located at the controlling device; averaging all of the time-date stamps generated at the controlling device with a plurality of microphones; and attaching the averaged time-date stamp to each of the plurality of digitized audible commands prior to the step of transmitting.
According to the fourth aspect of the embodiments, the steps of determining, performing, and forwarding are performed by a central controller.
According to the fourth aspect of the embodiments, the steps of digitizing, and attaching the time-date stamp are performed by the controlling device.
According to the fourth aspect of the embodiments, the controllable devices include one or more of a sensor, lighting control device, shade device, audio/video device, environmental control device, security device, household appliance, control device, and industrial device.
According to the fourth aspect of the embodiments, the controlling device comprises a keypad.
According to a fifth aspect of the embodiments, an acoustic sensor network is provided, comprising: two or more controllable devices; two or more controlling devices, each of two or more controlling devices comprising at least one respective microphone, a time-date stamp generator, and an analog to digital converter, each of the two or more controlling devices being adapted to control a respective one of the two or more controllable devices, and wherein each of the two or more controlling devices are further adapted to receive an audible command through its respective microphone, the received audible command being directed to control one of the two or more controllable devices controlled by a respective controlling device, and wherein each of the analog to digital converters are adapted to digitize the received audible command, and wherein each of the two or more controlling devices are further adapted to attach a time-date stamp to each of the digitized audible commands using the time-date stamp generator that employs a time synch protocol and attach a unique identifier to each of the time-date stamped digitized audible commands so as to uniquely correlate the time-date stamped digitized audible command to a respective controlling device; and a central controller adapted to determine, on the basis of an earliest time-date stamp, a first received digitized audible command and the controlling device to which the audible command is directed to, and wherein the central controller is further adapted to perform speech recognition on the first received digitized audible command to determine a command for a controllable device, and wherein the central controller is further adapted to forward the command to the controlling device corresponding to the first received digitized audible command, the command corresponding to the audible command that can be implemented on the controllable device controlled by the controlling device.
According to the fifth aspect of the embodiments, the controlling device that receives the command is adapted to control the controllable device in accordance with the received command.
According to the fifth aspect of the embodiments, the central controller is further adapted to determine a magnitude of each of the digitized audible commands from respective controlling devices, and verify that the magnitude of the digitized audible command with the earliest time-date stamp is equal to or larger than any other digitized audible command signal.
According to the fifth aspect of the embodiments, the central controller is further adapted to apply additional processing to determine which controlling device the received audible command is directed to if the magnitude of the digitized audible command signal with the earliest time-date stamp is less than any other received audible command.
According to the fifth aspect of the embodiments, the central controller is further adapted to check one or more of an occupancy sensor reading, proximity sensor reading, and motion detector reading, each of which is associated with respective controlling devices to determine which controlling device the received audible command is directed to.
According to the fifth aspect of the embodiments, the central controller is further adapted to determine that the occupancy sensor reading associated with a respective controlling device matches the received audible command in order to determine that the received audible command should be applied to the controllable device controlled by the respective controlling device.
According to the fifth aspect of the embodiments, the central controller is further adapted to determine that the proximity sensor reading associated with a respective controlling device matches the received audible command in order to determine that the received audible command should be applied to the controllable device controlled by the respective controlling device.
According to the fifth aspect of the embodiments, the central controller is further adapted to determine that the motion detector reading associated with a respective controlling device matches the received audible command in order to determine that the received audible command should be applied to the controllable device controlled by the respective controlling device.
According to the fifth aspect of the embodiments, the controlling device further comprises a noise reduction processing circuit.
According to the fifth aspect of the embodiments, the noise reduction processing circuit is adapted to filter the received analog audible command signal in an analog domain to attenuate a first bandwidth of noise energy.
According to the fifth aspect of the embodiments, the noise reduction processing circuit is adapted to use one or more of acoustic echo cancellation filtering, direction of arrival filtering, and directionally adaptive beam forming filtering, to filter the digital audible command signal in a digital domain to attenuate noise energy and to amplify audible command energy.
According to the fifth aspect of the embodiments, the noise energy comprises: noise energy generated by one or more of a fan motor, music, air conditioning noise, audio generated by multi-media presentations, and non-command words.
According to the fifth aspect of the embodiments, the acoustic sensor network further comprises at least one additional spatially separated microphone, adapted to receive the audible command and associated with one of the at least two controlling devices; an analog to digital converter associated with the at least one additional spatially separated microphone, and adapted to digitize the received audible command; a time-date stamp generator adapted to add a time-date stamp to the at least one additional digitized audible command, and further adapted to add a unique identifier to the at least one time-dated stamped additional digitized audible command, the unique identifier corresponding to the associated one of the controlling devices, and further wherein the central controller uses the at least one additional digitized audible command to assist in determining to which controlling device the audible command is directed to.
According to the fifth aspect of the embodiments, the controlling device further comprises: a time-date stamp generator adapted to generate the time-date stamp; and at least two microphones, each of which digitizes the received audible command.
According to the fifth aspect of the embodiments, the controlling device is further adapted to average all of the time-date stamps generated at the controlling device, and attach the averaged time-date stamps to each of the plurality of digitized audible commands prior to transmitting the same.
According to the fifth aspect of the embodiments, the controllable devices include one or more of a sensor, lighting control device, shade device, audio/video device, environmental control device, security device, household appliance, control device, and industrial device.
According to the fifth aspect of the embodiments, the controlling device comprises a keypad.
According to a sixth aspect of the embodiments, a method for determining which controllable device an audible command is directed towards is provided, the method comprising: receiving at each of two or more controlling devices the audible command signal, the audible command being directed to control at least one of two or more controllable devices controlled by a respective one of the two or more controlling devices; digitizing each of the received audible command signals; attaching a unique identifier to each digitized audible command so as to uniquely correlate it to a respective controlling device; determining a magnitude of each of the digitized audible command; determining a digitized audible command with the greatest magnitude, and further determining to which controlling device the audible command is directed to on the basis of the unique identifier associated with the digitized audible command with the greatest magnitude; performing speech recognition on the digitized audible command with the greatest magnitude; and forwarding a command to the controlling device corresponding to the digitized audible command with the greatest magnitude, the command corresponding to the audible command that can be implemented on the controllable device controlled by the controlling device.
According to the sixth aspect of the embodiments, the method further comprises: receiving the command by the controlling device; and controlling the controllable device in accordance with the received command.
According to the sixth aspect of the embodiments, the step of determining further comprises: attaching a time-date stamp to the digitized audible command; and verifying that the time-date stamp of the greatest magnitude digitized audible command is the same or earlier than any other digitized audible command.
According to the sixth aspect of the embodiments, the step of attaching a time-date stamp to the digitized audible command is performed by the controlling device that received the audible command through use of a time-date stamp generator using a time synch protocol.
According to the sixth aspect of the embodiments, the step of attaching a time-date stamp to the digitized audible command is performed by a central controller.
According to the sixth aspect of the embodiments, the method further comprises: generating a test signal to determine a travel time from each of the plurality of controlling devices to the central controller; and modifying the time-date stamp of each received digitized audible command signal according to the travel time from a respective controlling device to the central processor, and using the modified time-date stamp to assist in determining to which controlling device the audible command signal is directed to.
According to the sixth aspect of the embodiments, the method further comprises: applying additional processing to determine which controlling device the audible command is directed to if the time-date stamp of the digitized audible command with the largest magnitude is later than any other digitized audible command.
According to the sixth aspect of the embodiments, the step of applying additional processing comprises: checking one or more of an occupancy sensor reading, proximity sensor reading, and motion detector reading, each of which is associated with respective controlling devices to determine which controlling device the audible command is directed to.
According to the sixth aspect of the embodiments, the method further comprises: determining that the occupancy sensor reading associated with a respective controlling device matches the audible command in order to determine that the audible command should be applied to the controllable device controlled by the respective controlling device.
According to the sixth aspect of the embodiments, the method further comprises: determining that the proximity sensor reading associated with a respective controlling device matches the audible command in order to determine that the audible command should be applied to the controllable device controlled by the respective controlling device.
According to the sixth aspect of the embodiments the method further comprises: determining that the motion detector reading associated with a respective controlling device matches the audible command in order to determine that the audible command should be applied to the controllable device controlled by the respective controlling device.
According to the sixth aspect of the embodiments, the step of attaching a time-date stamp comprises: generating the time-date stamp using a time-date stamp generator, the time-date stamp generator located in at least one controlling device that includes a plurality of microphones located at the controlling device; averaging all of the time-date stamps generated at the controlling device with a plurality of microphones; and attaching the averaged time-date stamp to each of the plurality of digitized audible commands prior to the step of transmitting.
According to the sixth aspect of the embodiments, the method further comprises: applying noise reduction processing, and wherein the step of applying noise reduction to the audible command comprises: filtering the received audible command signal in an analog domain to attenuate a first bandwidth of noise energy.
According to the sixth aspect of the embodiments, the step of applying noise reduction comprises: using one or more of acoustic echo cancellation filtering, direction of arrival filtering, and directionally adaptive beam forming filtering, to filter the digitized audible command in a digital domain to attenuate noise energy and to amplify audible command energy.
According to the sixth aspect of the embodiments the noise energy comprises: noise energy generated by one or more of a fan motor, music, air conditioning noise, audio generated by multi-media presentations, and non-command words.
According to the sixth aspect of the embodiments, the method further comprises: receiving at least one additional audible command from at least one additional spatially separated microphone, the at least one additional spatially separated microphone associated with a respective controlling device; digitizing the at least one additional audible command received from the at least one additional spatially separated microphone; attaching a time-date stamp to the at least one additional digitized audible command, and further attaching a unique identifier to each time-date stamped additional digitized audible command so as to uniquely correlate it to its respective controlling device; and using the at least one additional digitized audible command in the step of determining to which controlling device the audible command is directed to.
According to the sixth aspect of the embodiments, the steps of determining a magnitude, determining to which controlling device the audible command is directed to, performing, and forwarding are performed by a central controller.
According to the sixth aspect of the embodiments, the steps of receiving, digitizing, attaching the time-date stamp, and determining a magnitude, are performed by the controlling device.
According to the sixth aspect of the embodiments the controllable devices include one or more of a sensor, lighting control device, shade device, audio/video device, environmental control device, security device, household appliance, control device, and industrial device.
According to the sixth aspect of the embodiments, the controlling device comprises a keypad.
According to a seventh aspect of the embodiments, an acoustic sensor network is provided, comprising: two or more controllable devices; two or more controlling devices, each of two or more controlling devices comprising at least one respective microphone, and an analog to digital converter, each of the two or more controlling devices being adapted to control a respective one of the two or more controllable devices, and wherein each of the two or more controlling devices are further adapted to receive an audible command through at least one respective microphone, the received audible command being directed to control one of the two or more controllable devices controlled by a respective controlling device, and wherein each of the analog to digital converters are adapted to digitize the received audible command, and wherein each of the two or more controlling devices are further adapted to attach a unique identifier to each of the digitized audible commands so as to uniquely correlate it to a respective controlling device and transmit the same; and a central controller adapted to receive each of the transmitted digitized audible commands, determine a magnitude of each of the digitized audible commands, determine a digitized audible command with the greatest magnitude, and further determine to which controlling device the audible command is directed to on the basis of the unique identifier associated with the digitized audible command with the greatest magnitude, and wherein the central controller is further adapted to perform speech recognition on the digitized audible command with the greatest magnitude to determine a command for a controllable device, and wherein the central controller is further adapted to forward the command to the controlling device corresponding to the digitized audible command with the greatest magnitude, the command corresponding to the audible command that can be implemented on the controllable device controlled by the controlling device.
According to the seventh aspect of the embodiments, the controlling device that receives the command is adapted to control the controllable device in accordance with the received command.
According to the seventh aspect of the embodiments, each of the controlling devices are further adapted to attach a time-date stamp to the digitized audible commands through use of a time-date stamp generator using a time synch protocol, and wherein the central controller is further adapted to verify that the time-date stamp of the digitized audible command with the greatest magnitude is the same or earlier than the time-date stamp of any other digitized received audible command signal.
According to the seventh aspect of the embodiments, the central controller is further adapted to generate a test signal to determine a travel time from each of the plurality of controlling devices to the central controller, modify the time-date stamp of each received digitized audible command signal according to the travel time from a respective controlling device to the central processor, and use the modified time-date stamp to assist in determining to which controlling device the audible command signal is directed to.
According to the seventh aspect of the embodiments, the central controller is further adapted to apply additional processing to determine which controlling device the received audible command is directed to if the time-date stamp of the digitized audible command signal with the greatest magnitude is later than the time-date stamp any other digitized audible command.
According to the seventh aspect of the embodiments, the central controller is further adapted to check one or more of an occupancy sensor reading, proximity sensor reading, and motion detector reading, each of which is associated with respective controlling devices to determine which controlling device the received audible command is directed to.
According to the seventh aspect of the embodiments, the central controller is further adapted to determine that the occupancy sensor reading associated with a respective controlling device matches the received audible command in order to determine that the received audible command should be applied to the controllable device controlled by the respective controlling device.
According to the seventh aspect of the embodiments, the central controller is further adapted to determine that the proximity sensor reading associated with a respective controlling device matches the received audible command in order to determine that the received audible command should be applied to the controllable device controlled by the respective controlling device.
According to the seventh aspect of the embodiments, the central controller is further adapted to determine that the motion detector reading associated with a respective controlling device matches the received audible command in order to determine that the received audible command should be applied to the controllable device controlled by the respective controlling device.
According to the seventh aspect of the embodiments, the controlling device further comprises a noise reduction processing circuit.
According to the seventh aspect of the embodiments, the noise reduction processing circuit is adapted to filter the received audible command in an analog domain to attenuate a first bandwidth of noise energy.
According to the seventh aspect of the embodiments, the noise reduction processing circuit is adapted to use one or more of acoustic echo cancellation filtering, direction of arrival filtering, and directionally adaptive beam forming filtering, to filter the digitized audible command in a digital domain to attenuate noise energy and to amplify audible command energy.
According to the seventh aspect of the embodiments, the noise energy comprises noise energy generated by one or more of a fan motor, music, air conditioning noise, audio generated by multi-media presentations, and non-command words.
According to the seventh aspect of the embodiments, the acoustic sensor network further comprises: at least one additional spatially separated microphone, adapted to receive the audible command, and associated with one of the at least two controlling devices; an analog to digital converter associated with the at least one spatially separated microphone, and adapted to digitize the received audible command; a time-date stamp generator adapted to add a time-date stamp to the additional digitized audible command, and further adapted to add a unique identifier to the additional digitized audible command, the unique identifier corresponding to the associated one of the controlling devices, and further wherein the central controller uses the at least one additional digitized audible command to assist in determining to which controlling device the audible command is directed to.
According to the seventh aspect of the embodiments, the controlling device further comprises: a time-date stamp generator adapted to generate the time-date stamp; and at least two microphones, each of which digitizes the received audible command.
According to the seventh aspect of the embodiments, the controlling device is further adapted to average all of the time-date stamps generated at the controlling device, and attach the averaged time-date stamps to each of the plurality of digitized audible commands prior to transmitting the same.
According to the seventh aspect of the embodiments, the controllable devices include one or more of a sensor, lighting control device, shade device, audio/video device, environmental control device, security device, household appliance, control device, and industrial device.
According to the seventh aspect of the embodiments, the controlling device comprises a keypad.
BRIEF DESCRIPTION OF THE DRAWINGS
The above and other objects and features of the embodiments will become apparent and more readily appreciated from the following description of the embodiments with reference to the following figures. Different aspects of the embodiments are illustrated in reference figures of the drawings. It is intended that the embodiments and figures disclosed herein are to be considered to be illustrative rather than limiting. The components in the drawings are not necessarily drawn to scale, emphasis instead being placed upon clearly illustrating the principles of the aspects of the embodiments. In the drawings, like reference numerals designate corresponding parts throughout the several views.
BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING
FIG. 1 illustrates a block diagram of a control network for controlling one or more controllable devices in a home, business, or enterprise environment according to aspects of the embodiments.
FIG. 2 illustrates a block diagram of a controller for use in the control network of FIG. 1 according to aspects of the embodiments.
FIG. 3 illustrates a block diagram of a gateway for use in the control network of FIG. 1 according to aspects of the embodiments.
FIG. 4 illustrates a block diagram of a personal electronic device for use with the control system of FIG. 1 according to aspects of the embodiments.
FIG. 5 illustrates a block diagram of a wall mount keypad for use in the control network as shown in FIG. 1, wherein the wall mount keypad can be used as part of an acoustic sensory network according to aspects of the embodiments.
FIG. 6 illustrates a simplified view of the generation and detection of sound waves as used in the aspects of the embodiments.
FIG. 7 illustrates a plan view of a floor of a house in which the system and method for determining which controllable device an audible command is directed to can be used according to aspects of the embodiments.
FIG. 8 illustrates a flow diagram of a method for determining which controllable device an audible command is directed to according to aspects of the embodiments.
FIG. 9 illustrates processing and memory components/circuitry of one or more of the personal electronic device 104 of FIG. 4, gateway device 114 of FIG. 3, controller 116 of FIG. 2, and any other devices that uses one or more processors as described herein that uses software and/or applications to perform various functions and actions as described herein according to aspects of the embodiments.
FIG. 10 illustrates several audio processing blocks that can occur within either or both of an audio processing board and a voice recognition system-on-a-chip circuit according to aspects of the embodiments.
DETAILED DESCRIPTION
The embodiments are described more fully hereinafter with reference to the accompanying drawings, in which embodiments of the inventive concept are shown. In the drawings, the size and relative sizes of layers and regions may be exaggerated for clarity. Like numbers refer to like elements throughout. The embodiments may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the inventive concept to those skilled in the art. The scope of the embodiments is therefore defined by the appended claims. The detailed description that follows is written from the point of view of a control systems company, so it is to be understood that generally the concepts discussed herein are applicable to various subsystems and not limited to only a particular controlled device or class of devices, such as home controllable devices.
Reference throughout the specification to “one embodiment” or “an embodiment” means that a particular feature, structure, or characteristic described in connection with an embodiment is included in at least one embodiment of the embodiments. Thus, the appearance of the phrases in “one embodiment” on in “an embodiment” in various places throughout the specification is not necessarily referring to the same embodiment. Further, the particular feature, structures, or characteristics may be combined in any suitable manner in one or more embodiments.
LIST OF REFERENCE NUMBERS FOR THE ELEMENTS IN THE DRAWINGS IN NUMERICAL ORDER
The following is a list of the major elements in the drawings in numerical order.
  • 100 Control Network
  • 102 Institute of Electrical and Electronic Engineers standard (IEEE) 802.15.4 Low Rate Wireless Personal Area Network (LR-PAN) (Communication Network)
  • 104 Portable Electronic Device (PED)
  • 106 Control Point/User Interface/Keypad (Keypad)
  • 108 Sensor
  • 110 Lighting Control Device (Lighting Device)
  • 112 Shade Control Device (Shade Device)
  • 114 Gateway Device
  • 115 First Antenna
  • 116 Controller (Controller)
  • 117 Second Antenna
  • 118 Audio/Video (AV) Device
  • 119 Third Antenna
  • 120 Heating Ventilation and Air Conditioning (HVAC) Device
  • 122 Security Device
  • 124 Household Appliances
  • 126 Control Device
  • 128 Industrial Device
  • 130 Repeaters
  • 132 Internet
  • 134 Local Area Network (LAN)
  • 136 Router/Firewall
  • 202 Central Processor Unit (CPU)
  • 204 Nonvolatile Storage
  • 206 Main Memory
  • 208 Network Interfaces
  • 210 Wired I/O Interface
  • 212 Low Rate Wireless Personal Area Network (LR-WPAN) Transceiver (LR-WPAN Transceiver) (IEEE 802.15.4)
  • 214 Wireless Local Area Network (WLAN) Transceiver (WLAN Transceiver) (IEEE 802.11)
  • 216 3G/4G/LTE Wireless Wide Area Network (WWAN) Cellular Transceiver (Cellular Transceiver)
  • 218 Programmable Relay Ports
  • 220 Internal Bus
  • 222 Audible Command Processing and Determination Program
  • 302 Network Interface
  • 304 Power On/Off LED
  • 306 Network Activity Indicator LED
  • 308 Activity Indicator LED
  • 310 Acquire Button
  • 312 Setup Button
  • 314 Wireless Transceiver
  • 316 Processor
  • 318 Internal Bus
  • 402 Central Processing Unit
  • 406 Location Sensing Circuitry
  • 408 User Interface
  • 410 Display
  • 412 Non-volatile Storage
  • 414 Main Memory
  • 416 NFC Interface
  • 418 Accelerometers
  • 420 Camera
  • 502 Display/Touch Panel
  • 504 Microphone
  • 505 Audio Processing Board
  • 506 Pre-amplifier
  • 508 Analog-to-Digital Converter (ADC)
  • 510 60 Hz Notch Filter
  • 512 Processor
  • 516 Internal Bus
  • 518 LAN/Ethernet Connector (IEEE 802.3)
  • 520 Voice Recognition (VR) System-on-a-Chip (SoC) Circuit (VR SoC Circuit)
  • 702 Proximity Sensor
  • 800 Method for Determining Which Controllable Device an Audible Command is Directed Towards
  • 802-812 Method Steps of Method 800
  • 900 Personal Computer/Laptop/Tablet/Personal Electronic Device (PED)/Server (PC)
  • 902 Integrated Display/Touch-Screen (laptop/tablet etc.)
  • 904 Internal Data/Command Bus (Bus)
  • 906 Processor Internal Memory
  • 908 Processor(s)
  • 910 Universal Serial Bus (USB) Port
  • 911 Ethernet Port
  • 912 Compact Disk (CD)/Digital Video Disk (DVD) Read/Write (RW) (CD/DVD/RW) Drive
  • 914 Floppy Diskette Drive
  • 916 Hard Disk Drive (HDD)
  • 918 Read-Only Memory (ROM)
  • 920 Random Access Memory (RAM)
  • 922 Video Graphics Array (VGA) Port or High Definition Multimedia Interface (HDMI)
  • 924 External Memory Storage Device
  • 932 Processor Board/PC Internal Memory (Internal Memory)
  • 934 Flash Drive Memory
  • 936 CD/DVD Diskettes
  • 938 Floppy Diskettes
  • 940 Executable Software Programming Code/Application (Application, or “App”)
  • 956 Universal Serial Bus (USB) Cable
  • 1002 Analog Processing Circuit
  • 1004 Time-Date Stamp Generator
  • 1006 Acoustic Echo Cancellation Block
  • 1008 Direction of Arrival Block
  • 1010 Directionally Adaptive Beam Forming Block
List of Acronyms Used in the Specification in Alphabetical Order
The following is a list of the acronyms used in the specification in alphabetical order.
  • 3G Third Generation Cellular Telecommunications Network
  • 4G Fourth Generation Cellular Telecommunications Network
  • ACPD Audio Command Processing and Determination
  • ADC Analog-to-Digital Converter
  • ASIC Application Specific Integrated Circuit
  • ASN Acoustic Sensory Network
  • AV Audio Video
  • CPU Central Processing Unit
  • CRT Cathode Ray Tubes
  • DHCP Dynamic Host Communication Protocol
  • EDGE GSM Evolution
  • EGPRS Enhanced GPRS
  • GPRS general packet radio service
  • GPS Global Positioning System
  • GSM Global System for Mobile Communications
  • HDD Hard Disk Drive
  • HVAC Heating Ventilation and Air Conditioning
  • Hz Hertz
  • I/O Input/Output
  • IEEE Institute of Electrical and Electronic Engineers
  • IMT International Mobile Telecommunications
  • IR Infrared
  • IrDA Infra-Red Data Association
  • ISO International Standards Organization
  • LAN Local Area Network
  • LED Light Emitting Diode
  • LMS Least Mean Square(s)
  • LR-WPAN Low Rate Wireless Personal Area Network
  • MEMS Microelectromechanical System
  • MODEM Modulator/Demodulator
  • NFC Near Field Communications
  • NIC Network Interface Card
  • NWC Network Controller
  • NWI Network Interface
  • OCR Optical Character Recognition
  • OLED Organic LED
  • OS Operating System
  • PAN Personal Area Network
  • PED Personal Electronic Device
  • RAM Random Access Memory
  • RFID Radio Frequency Identification
  • RISC Reduced Instruction Set Processor
  • ROM Read Only Memory
  • SC Single Carrier
  • SoC System-on-a-Chip
  • SRA Speech Recognition Algorithm
  • USB Universal Serial Bus
  • UWB Ultra-Wide Band
  • VDC Voltage, Direct Current
  • VR Voice Recognition
  • WAN Wide Area Network
  • Wi-Fi IEEE 802.11n Wireless Communication Standard (Where “n” includes, “a,” “b,” or “g,” among others)
The different aspects of the embodiments described herein pertain to the context of a home, office, or enterprise location control network, but is not limited thereto, except as may be set forth expressly in the appended claims.
For 40 years Creston Electronics Inc., of Rockleigh, N.J., has been the world's leading manufacturer of advanced control and automation systems, innovating technology to simplify and enhance modern lifestyles and businesses. Crestron designs, manufactures, and offers for sale integrated solutions to control audio, video, computer, and environmental systems. In addition, the devices and systems offered by Crestron streamlines technology, improving the quality of life in commercial buildings, universities, hotels, hospitals, and homes, among other locations. Accordingly, the systems, methods, and modes of the aspects of the embodiments described herein, as embodied as control network 100, and its constituent components, can be manufactured by Crestron Electronics, Inc., located in Rockleigh, N.J.
FIG. 1 illustrates a block diagram of control network 100 that includes controllable devices, monitoring devices, and active devices according to aspects of the embodiments. Control network 100 comprises portable electronic device (PED) 104, control point (e.g., keypad) 106, gateway device (gateway) 114, controller (controller) 116, and one or more controllable devices such as, but not limited to, sensors 108, lighting control devices (lighting device) 110, shade control devices (shade device) 112, audio/video (AN) devices 118, heating ventilation and air conditioning (HVAC) devices 120, and security devices 122. As those of skill in the art can appreciate, there can be one or more of each of the controllable devices, and controller 116, PED 104, keypad 106, and gateway 114. According to further aspects of the embodiments, gateway 114 and controller 116 can be part of the same device, as the dashed line box around the two indicates. According to further aspects of the embodiments, while ostensible all or substantially all of the controllable devices will be wireless devices, one or more can be connected to gateway 114 and/or controller 116 by cabling (not shown).
Also shown in FIG. 1 are first antenna 115, second antenna 117, and third antenna 119. First antenna 115 is designed to work in the frequency band appropriate for Institute of Electrical and Electronic Engineers (IEEE) standard 802.11n, where n can be one of “a,” “b,” and “g,” among other versions of the standard (herein after referred to as “802.11”). As those of skill in the art can appreciate, the IEEE 802.11 standards encompass wireless local area networks (LANs), in this case, those that are referred to as “Wi-Fi” networks. Thus, first antenna 115 is an antenna capable of transceiving Wi-Fi signals. First antenna 115 is therefore included as part of PED 104, controller 116, which communicate via communication network 134, described in greater detail below, as well as any of the devices 106, 108, 110, 112, 118, 120, 122, 124, 126, 128, and 130. Each component that includes first antenna 115 also can include a suitably arranged transceiver, such as a Wi-Fi transceiver, which can process signals for Wi-Fi (IEEE 802.11) transmission and reception thereof as well.
Second antenna 117 is designed to work in the frequency band appropriate for IEEE standard 802.15.n, where n can be one of 3, 4, 5, 6, among other versions of the standard (herein after referred to as “802.15”). As those of skill in the art can appreciate, the IEEE 802.15 standards encompass low rate wireless personal area wireless networks (LR WPANs). In this case, the LR WPAN can be one those that are referred to as “ZigBee” networks, or, according to further aspects of the embodiments, an Infinet® as designed and manufactured by Crestron Electronics, Inc., of Rockleigh, N.J. (among other types of LR WPANs, which can include WirelessHart, Mi-Wi, and Thread, among others). Thus, second antenna 117 is an antenna capable of transceiving ZigBee or Infinet signals. Included in any of the devices that includes second antenna 117 (which can include one or more of devices 104, 106, 108, 110, 112, 114, 116, 118, 120, 122, 124, 126, 128, and 130) is a suitably arranged transceiver, such as IEEE 802.15.4 LR-WPAN transceiver (LR-WPAN transceiver) 214 that can process signals for ZigBee/Infinet transmission and reception thereof as well. All of the other controllable devices can also utilize such wireless communications devices, so one, some, or all of them can also include second antenna 117, and be also equipped with a suitable transceiver, for substantially similar purposes as that of gateway device 114, among others, such as keypad 106.
According to further aspects of the embodiments, each of the devices of network 100, which can include devices 104, 106, 108, 110, 112, 114, 116, 118, 120, 122, 124, 126, 128, and 130, can further include third antenna 119, which is adapted to work with one or more of third generation (3G), fourth generation (4G), and long term evolution (LTE) cellular (cellular) transceiver 216. Thus, controller 116 includes third antenna 119 and cellular transceiver 216 according to aspects of the embodiments.
As those of skill in the art can appreciate, and in fulfillment of the dual purposes of clarity and brevity, a more detailed discussion of the internal operation of controller 116 is not needed to understand the various aspects of the embodiments described herein, and therefore has been omitted from this discussion herein. However, such detailed discussion can be found in the co-pending related U.S. Non-provisional Patent Application referenced above, the entire contents of which are hereby incorporated herein in its entirety.
Control network 100 further comprises Institute of Electrical and Electronic Engineers standard (IEEE) 802.15.4 communication network (communication network) 102. As those of skill in the art can appreciate, there can be one or more of each of the controllable or controlling devices described above in network 100, and even two or more communication networks 102 a,b according to aspects of the embodiments. Control network 100 can further include local area network (LAN) 134 (which can be an IEEE 802.3 communication network (e.g., Ethernet), router/firewall 136, and internet 132. As shown in FIG. 1, PED 104 can access control network 100 through internet 132 and/or LAN 134. In the former, a router/firewall 136 can be used to protect control network 100 and direct commands from PED 104 to the remaining components of control network 100, as well as provide feedback information to PED 104 from the devices of control network 100. As those of skill in the art can appreciate, a firewall a system designed to prevent unauthorized access to or from a private network. Firewalls can be implemented in either hardware or software, or a combination of both. A router is a device that forwards data packets along networks. A router can be connected to at least two networks and are located at gateways.
According to further aspects of the embodiments, sensors 108 provide information to the various hardware and software components of the system and method of the aspects of the embodiments that can be used to ascertain the location, movements, and mannerisms of the users of control network 100. That is, sensors 108 can be used in helping to determine patterns of usage, and also to augment decision making capabilities in determining what actions to take (e.g., open or close shades based on occupancy (or lack thereof)), or what actions not to take, as the case may be, according to aspects of the embodiments.
According to aspects of the embodiments, the one or more controllable devices comprise lighting control device (lighting device) 110, which can include devices such as a lighting dimmer, and shade control device (shade device) 112, which can include devices such as a shade motor. It should be understood that the controllable devices are not limited to a dimmer and a shade motor. For example, lighting device 110 can be a switch or a relay panel, and shade device 112 can be a drapery motor or a smart window film. Additionally, those of skill in the art can appreciate that the controllable devices are not limited to lighting control devices and shade control devices. For example, the controllable devices can be: AN devices 118 that can include one or more of content sources (audio source, video source), content sinks (stereos with speakers, televisions, and the like), video recorders, audio receivers, speakers, projectors, and the like; Lighting devices 110 that can include one or more of lamps, ballasts, light emitting diode (LED) drivers; HVAC devices 120 that can include one or more of thermostats, occupancy sensors, air conditioning units, heating units, filtration systems, fans, humidifiers, and the like; Shading devices 112 that can include one or more of motorized window treatments, dimmable windows, and the like; Security devices 122 that can include one or more of security cameras, monitors, door locks, and the like; Household appliances 124 that can include one or more of refrigerators, ovens, blenders, microwaves, and the like; Control devices 126 that can include one or more of switches, relays, current limiting devices, and the like; and Industrial devices 128 that can include one or more of motors, pumps, chillers, air compressors, and the like.
In addition, control network 100 can comprise one or more control points 106 for receiving user inputs to control each of the one or more controllable devices. Control points 106 can be keypads, touch-panels, remote controls, and thermostats. For the purposes of this discussion, and in fulfillment of the dual purposes of clarity and brevity, control points shall herein after be referred to as keypads 106. Additionally, keypads 106 can be user interfaces of the controllable devices themselves. Keypads 106 can transmit control commands to and through communication network 102 to control each of the other controllable devices of control network 100, as well as communicate information to/from such controllable devices. For example, keypads 106 can communicate with each of the controllable devices or with controller 116 either directly or via one or more of gateways 114 and/or repeaters 130 (repeaters 130 can communicate with additions control networks 100 b, and/or communication networks 102 b, and so on).
According to further aspects of the embodiments, keypad 106 can comprise feedback indicators to provide feedback to the user. The feedback indicators can include any combination of visual feedback indicators, haptic feedback indicators, and audible feedback indicators. Feedback indication control can be provided by keypad 106 upon receiving a user input, upon requesting feedback, or upon a change in the status of any of the controllable devices 108-130, and PED 104.
Such controllable lighting devices 110 and controllers 116 can be manufactured by Crestron Electronics Inc., of Rockleigh, N.J. For example, one or more controllable lighting devices 110 and controllers 116 can comprise the following devices, each available from Crestron Electronics: CLW-DIMEX wireless lighting dimmer, CLW-DELVEX wireless lighting dimmer, CLW-SWEX wireless switch, CLW-DIMSWEX wireless switch/dimmer combination, CLW-LSWEX wireless lamp switch, CLF-LDIMUEX wireless lamp dimmer, CLWI-DIMUEX universal phase dimmer, CLWI-SWEX in-wall switch, CLWI-1SW2EX in-wall 2-channel switch, CLWI-DIMFLVEX 0-10V Dimmer, CLCI-DIMUEX wireless in-ceiling dimmer, CLCI-1DIMFLV2EX wireless In-Ceiling 0-10V dimmer, CLCI-1SW2EX wireless in-ceiling switch, CLC-1DIMFLV2EX-24V wireless in-ceiling 0-10V dimmer.
Other components of control network 100 can also be manufactured by Crestron Electronics Inc. These include one or more controllable shade devices 112 and controllers 116 that comprise the following devices: CSC-ACEX infiNET EX® Interface to shade motor, CSC-DCEX infiNET EX® interface to Crestron CSM-QMT30 Shades, CSC-DRPEX, and the CSM-QMT50EX QMT motor.
In addition, the one or more keypads 106 can comprise the following devices, also available from Crestron Electronics, Inc.: INET-CBDEX Cameo® Express Wireless Keypad with infiNET EX®, HTT-B2EX battery-powered infiNET EX® 2-button Wireless Keypad, and CLWI-KPLEX on-wall wireless lighting keypad.
As described above, sensors 108 can be included in control network 100 according to aspects of the embodiments. Such sensors 108 can include occupancy sensors, and motion sensors, as well as sensors 108 related to fire and smoke detection, bio-hazard sensors, and the like. The one or more sensors 108 can comprise the following devices, each available from Crestron Electronics, Inc. of Rockleigh, N.J.: GLS-OIR-CSM-EX-BATT battery-powered infiNET EX® occupancy sensor.
Controller 116 can be connected to the various controllable devices via either or both of a wired and wireless connection. The one or more controllers 116 can be a DIN-AP3MEX DIN Rail 3-Series® Automation Processor with infiNET EX®, or an MC3 3-Series Control System® with infiNET EX®, each of which are available from Crestron Electronics Inc. of Rockleigh N.J. Any one or more of these controllers 116 can provide a substantially complete integrated automation solution. According to aspects of the embodiments, the various controllable devices of the facility or enterprise become integrated and accessible through operation of controller 116. According to further aspects of the embodiments, controller 116 can be a server, a personal computer (PC), or any other electronic device capable of processing electrical signals. Still further, according to further aspects of the embodiments, controller 116 further comprises a web x-panel project, to allow for PC based setup. According to still further aspects of the embodiments, controller 116 can be a device manufactured by Crestron Electronics, Inc., of Rockleigh, N.J., comprising a PYNG-HUB. As shown in FIG. 1, controller 116 and gateway 114 can be arranged as two separate devices, but, as indicated by the dashed line forming a box around 114, 116, they can be arranged to be one device, or contained within a single enclosure.
According to still further aspects of the embodiments, each of the devices in FIG. 1 can be interconnected with other components in either or both of a wired or wireless manner. For example, PED 104 can connect to internet 132 via a cellular communications interface, or can be connected through router/firewall device 136 using conventional Ethernet cables. And, as shown in FIG. 1, PED 104 can be connected to LAN 134 via a wired interface (typically a category 5 type cable, i.e., Ethernet cable), or via a wireless interface such as the Wi-Fi connection that is also shown. According to still further aspects of the embodiments, each of the controllable and controlled devices of FIG. 1, such as sensors 108, controller 116, and gateway device 114, can use a wireless protocol such as infiNET EX. Other wireless communications protocols can also be used.
FIG. 2 is a block diagram of controller 116 for use with control network 100 according to an aspect of the embodiments. Controller 116 can be used to control various controllable devices, such as, for example, those described and discussed above that include, among others, controllable devices 108, 110, 112, 118, 120, 122, 124, 126, 128, and 130 (security devices (e.g., door locks), lighting system devices, blinds/drapes, HVAC system devices, and sensors such as motion sensors, among many others). One or more controllers 116 can comprise one or more logic engines for processing control commands.
Controller 116 can include at least one central processing unit (CPU) 202, as well as internal bus 220, the operation of which is known to those of skill in the art. For example, CPU 202 can represent one or more microprocessors, and the microprocessors may be “general purpose” microprocessors, a combination of general and special purpose microprocessors, or application specific integrated circuits (ASICs). Additionally, or alternatively, the CPU 191 may include one or more reduced instruction set processors (RISC), video processors, or related chip sets. CPU 22 can provide processing capability to execute an, run various applications, and/or provide processing for one or more of the techniques described herein. Applications that can run on controller 116 can include, for example, software for processing control commands, software for managing a calendar, software for controlling other electronic devices via a control network as noted above, among other types of software/applications.
Controller 116 can further include main memory 206, which can be communicably coupled to CPU 202, and which can store data and executable code, as known to those of skill in the art. Main memory 206 can represent volatile memory such as random access memory (RAM), but may also include nonvolatile memory, such as read-only memory (ROM) or Flash memory. In buffering or caching data related to operations of CPU 202, main memory 206 can store data associated with applications running on controller 116.
Controller 116 can also further include nonvolatile storage 204. Nonvolatile storage 204 can represent any suitable, nonvolatile storage medium, such as a hard disk drive (HDD) or nonvolatile memory, such as flash memory. Being well-suited to long-term storage, nonvolatile storage 204 can store data files such as media, software, and preference information. Nonvolatile storage 204 can be removable and interchangeable, thereby allowing portability of stored files, such as project files, created during programming of control network 100. According to aspects of the embodiments, project files can be used to map user desires into functions; as used thusly, project files are configuration files. These project files describe all the devices control system 100 knows about, what their buttons are configured to do, what types of devices they are, how they operate, and the operating parameters, among other features of each controllable device associated with control network 100. According to further aspects of the embodiments, project files can also be used to keep track of scheduling data, which users are using the system (e.g., identifiable by PED 104).
Also shown as part of controller 116 is network interface 208. Network interface 208 provides interface capability with one or more of several different types of network interfaces, including LR-PAN transceiver 212, WLAN transceiver 214, and cellular transceiver 216. Each of transceivers 212, 214, and 216 can provide wireless connectivity for controller 116 via respective ones of first, second, and third antennas 115, 117, and 119. Network interface 208 can represent, for example, one or more network interface controllers (NICs) or a network controller. As those of skill in the art can appreciate, the difference between a LAN and PAN can be less certain, and more one of degree; that is, in some cases, PANs are defined as those interconnections of devices that are within a few meters of each other, while other definitions indicated that devices that are within ten meters or so and are interconnected in a manner that can be considered to be within a PAN. Regardless of the exact definition, or, if no exact definition should ever exist, control system 100 can make use of each of a WAN, LAN, and PAN, or sometimes two or all three at one time, depending on the circumstances, as those of skill in the art can now appreciate.
According to certain aspects of the embodiments, network interface 208 can include LR-WPAN transceiver 212. LR-WPAN transceiver 212 can provide capabilities to network with, for example, a Bluetooth® network, a near field communication (NFC) type network, an IEEE 802.15.4 (e.g. ZigBee) network among others. As can be appreciated by those of skill in the art, the networks accessed by LR-WPAN transceiver 212 can, but do not necessarily, represent low power, low bandwidth, or close range wireless connections. LR-WPAN transceiver 212 can permit one electronic device to connect to another local electronic device via an ad-hoc or peer-to-peer connection. However, the connection can be disrupted if the separation between the two electronic devices exceeds the proscribed range capability of PAN interface 212. As those of skill in the art can appreciate, the networks described by IEEE 802.15.4 are mesh-type networks, and operate with a central router/coordinator; in control network 100, the function of such central coordination is performed by one or more controller 116 and/or gateway 114, according to aspects of the embodiments.
Network interface 208 can also include WLAN transceiver 214. WLAN transceiver 214 can represent an interface to a wireless LAN, such as an 802.11 wireless network. The range of WLAN transceiver 214 can generally exceed the range available via LR-WPAN transceiver 212. Additionally, in many cases, a connection between two electronic devices via WLAN transceiver 214 can involve communication through a network router or other intermediary device (not shown in FIG. 2). WLAN transceivers 214 can also incorporate an ultra-wideband network.
According to further aspects of the embodiments in regard to controller 116, network interfaces 208 can include the capability to connect directly to a WAN via cellular transceiver 216. Cellular transceiver 216 can permit connection to a cellular data network, such as the enhanced data rates for global system for mobile communications (GSM) Evolution (EDGE) (also known as enhanced general packet radio service (GPRS) (EGPRS), or international mobile telecommunications (IMT) single carrier (IMT-SC) EDGE network, or other third generation/further generation (3G/4G) cellular telecommunication networks (a detailed discussion of which is both not needed to understand the aspects of the embodiments, and beyond the scope of this discussion). When connected via cellular transceiver 216, controller 116 can remain connected to the internet and, in some embodiments, to one or more other electronic devices, despite changes in location that might otherwise disrupt connectivity via LR-WPAN transceiver 212, or WLAN transceiver 214. Also shown in FIG. 2 as a component of controller 116 is internal bus 220, which provides signal and data flow to and between all of the internal components of controller 116 in a manner known to those of skill in the art.
As known by those of skill in the art, Ethernet connectivity enables integration with IP-controllable devices and allows controller 116 to be part of a larger managed control network. Whether residing on a sensitive, security-conscious corporate LAN 134, a home network, or accessing Internet 132 through a cable modem, controller 116 can provide secure, reliable interconnectivity with IP-enabled devices, such as touch screens (which can be part of keypad 106), computers, mobile devices, video displays, Blu-ray Disc® players, media servers, security systems, lighting, HVAC, and other equipment—both locally and globally.
Controller 116 can also include one or more wired input/output (I/O) interface 210 for a wired connection between controller 116 and one or more electronic devices. Wired I/O interface 210 can represent a serial port. A serial port, as those of skill in the art can appreciate, is a serial communication physical interface through which information transfers in or out one bit at a time (as opposed to a parallel port, which transmits several bits (typically in groups of 8 bits wide) substantially simultaneously). While it is known that interfaces such as Ethernet, FireWire, and USB, all send data as a serial stream, the term “serial port” usually identifies hardware more or less compliant to the RS-232 standard, intended to interface with a modem or with a similar communication device.
Wired I/O interface 210 can also represent, for example, a Cresnet port. Cresnet provides a network wiring solution for Crestron keypads, lighting controls, thermostats, and other devices that do not require the higher speed of Ethernet. The Cresnet bus offers wiring and configuration, carrying bidirectional communication and 24 VDC power to each device over a simple 4-conductor cable.
One or more infrared (IR) interfaces can also be part of wired I/O interface 210; the IR interface can enable controller 116 to receive and/or transmit signals with infrared light. The IR interface can comply with an infrared data acquisition (IrDA) specification for data transmission. Alternatively, the IR interface can function exclusively to receive control signals or to output control signals. The IR interface can provide a direct connection with one or more devices such as a centralized AV sources, video displays, and other devices.
Controller 116 can also include, but not necessarily, one or more programmable relay ports 218 a-c. Programmable relay ports 218 can be used by controller 116 to control window shades, projection screens, lifts, power controllers, and other contact-closure actuated equipment. Controller 116 can include, as programmable relay port 218, a “Versiport” relay port that is manufactured by Crestron Electronics Inc., of Rockleigh, N.J. The Versiport relay port can be managed by a DIN-108 module (also manufactured by Crestron Electronics Inc.), which is a DIN rail-mounted automation control module that provides eight Versiport I/O ports for interfacing with a wide range of third-party devices and systems. Each “Versiport” can be configured via software to function as a digital or analog sensing input, or as a digital trigger output. When configured as a digital input, the Versiport can sense a contact closure or logic level signal from devices such as motion detectors, partition sensors, alarm panels, 12V triggers, and all types of switches and relays. When configured as an analog input, the Versiport can sense changes in a resistance or DC voltage level, working with everything from temperature and light sensors to water level meters to volume control potentiometers. When operating as a digital output, the Versiport provides a logic level closure signal to trigger control and alarm inputs on a variety of external devices.
Thus, one or more “Versiport” programmable relay ports 218 can enable the integration of occupancy sensors, power sensors, door switches, or other devices by providing a dry contact closure, low-voltage logic, or 0-10 Volt DC signal.
By leveraging remote access of controller 116, a user can control one or more of the controllable devices and/or environment settings in a facility (home, place of business or manufacture, or enterprise location) from substantially anywhere in the world using PED 104. Such control can be accomplished by a dynamic domain name system (DNS) service. Those of skill in the art can appreciate that DNS is a hierarchical distributed naming system used for computers, services, or any resource that is connected to the internet or a private network. According to further aspects of the embodiments, controller 116 can be configured to utilize dynamic host communication protocol (DHCP) communications that include a hostname prefixed by a model number. A more detailed discussion of the internal operation of controller 116 is not needed to understand the various aspects of the embodiments described herein, and therefore is beyond the scope of discussion herein. However, such detailed discussion can be found in the aforementioned Applicants' co-pending U.S. Non-Provisional Patent Application, as referenced above.
According to aspects of the embodiments, controller 116 hosts a project file, such as a Crestron Core 3 project file, also referred to as “Smart Graphics [Project],” which is intended to be used by one or more mobile devices (such as PED 104) with a control application (App) such as a Crestron App (located on PED 104). As described above, one or more project files can be created during the installation of control network 100. The Crestron App is designed to receive and render the Smart Graphics project file. The Crestron App is responsible for communicating taps and feedback to the user. Additionally, Smart object App can be created for use with a local Crestron Mobile Pro Project as well as with foreign AV processors. The Crestron Mobile Pro project can contain just a Core 3 Smart Object and nothing else. The Smart Graphics Project file, located on controller 116, is a collection of items that are meaningful in some way to a control system program, such as Crestron App. This collection of items can include things like “buttons,” “sliders,” or “text” (among other graphical representations). According to further aspects of the embodiments, Smart graphics project file can include “smart object” file, which can be a predefined conglomeration of other objects (buttons, slides, among others). For example, a lighting smart object file can comprise a slider to report/set a light level, and a few buttons to raise/lower and turn on/off the lights. According to further aspects of the embodiments, in control network 100, smart object file talks directly to a Pyng-HUB, such as controller 116. As such, smart object files can be used in or by any smart graphics project file, and they'll communicate with control network 100 and Crestron App, even if the project (i.e., the program currently being executed) is intended to control an external AV processor.
Referring back to FIG. 1, control network 100 further comprises communication network 102 that provides access with and between devices of control network 100 according to aspects of the embodiments. Communication network 102 can be a PAN, LAN, metropolitan area network, WAN, an alternate network configuration, or some other combination of network types and/or topologies.
According to an aspect of the embodiments, communication network 102 can employ both wired and wireless communication protocols. For example, the controllable devices can form communication network 102 with gateway device 114 (operating in a wireless manner) by communicating over a short range communication protocol such as Crestron infiNET EX wireless protocol (e.g., the IEEE 802.15.4 wireless protocol). Or, according to a different aspect of the embodiments, gateway device 114, operating in a wired manner, can form a LAN with PED 104 communicating via Ethernet protocols using a wire-based Ethernet capability (it can also do so in a wireless manner). According to a further aspect of the embodiments, controller 116 or PED 104 can connect via a WAN such as the world wide web to access data stored on a remote server (not shown in FIG. 1).
According to further aspects of the embodiments, communication network 102 can be a public switched telephone network (PSTN). Alternatively, communication network 102 can further include a cable telephony network, an internet protocol (IP) telephony network, a wireless network, a hybrid cable/PSTN network, a hybrid IP/PSTN network, a hybrid wireless/PSTN network, or any other suitable communication network 102 or combination of communication networks. In addition, other network embodiments can be deployed with many variations in the number and type of devices, communication networks, the communication protocols, system topologies, and myriad other details without departing from the spirit and scope of the aspects of the embodiments.
Referring now to FIG. 3, control network 100 can include one or more gateway devices 114. According to a further aspect of the embodiments, controller 116 further comprises a built-in gateway 114. According to still further aspects, control network 100 can comprise an external gateway 114, such as a CEN-RFGW-EX gateway, available from Crestron Electronics, Inc.
According to aspects of the embodiments, gateway 114 of control network 100 provides network devices with an entrance to communication network 102 through controller 116 and can include software and/or hardware components to manage traffic entering and exiting communication network 102 and conversion between the communication protocols used by the network devices and communication network 102.
Gateway 114 can be configured to operate in both a wired a wireless manner and act as the network coordinator, and can further manage network configurations. Additionally, gateway 114 can be configured to communicate with controller 116 via wired I/O interface 210, such as an Ethernet interface (IEEE 802.3). One such gateway 114 according to an aspect of the embodiments is the CEN-RFGW-EX wireless gateway manufactured by Crestron Electronics, Inc., and which is a two-way radio frequency (RF) gateway\transceiver designed to enable communications and management for a complete infiNET EX wireless network of dimmers, keypads, remote control devices (RCDs), among other types of devices. The CEN-RFGW-EX wireless gateway links the infiNET EX network to a Crestron control system via a wired connection such as Ethernet or Cresnet. infiNET EX dimmers, switches, keypads, thermostats, and other devices, can be linked to controller 116 via a single CEN-RFGW-EX gateway 114. Additional gateways 114 can be installed to support more devices. Wireless expanders (not shown in FIG. 1) can be added wherever needed to extend control network 100 by filling in gaps between devices. That is, according to aspects of the embodiments, expanders can reinforce the network when operating in accordance with mesh networks principles.
FIG. 3 illustrates a block diagram of gateway 114 according to an aspect of the embodiments. Gateway 114 can include one or more transceivers 212, 214, and 216, which can provide connectivity for gateway 114 when acting in a wireless manner. In addition to the transceivers 212, 214, 216, gateway 114 can further include a NWI that comprises one or more network interface cards (NICs), or network controllers (NWCs). In certain embodiments, the network interface can include LR-WPAN transceiver 212, which can provide capabilities to network with, for example, a Bluetooth® network, NFC network, or a ZigBee/Infinet network, among others. As can be appreciated by those of skill in the art, the networks accessed by LR-WPAN transceiver 212 can, but do not necessarily, represent low power, low bandwidth, or close range wireless connections, such as that used by second antenna 117. LR-WPAN transceiver 212 can permit one electronic device to connect to another local electronic device via an ad-hoc or peer-to-peer connection.
Gateway 114 can further include wired I/O interface 210, which can represent an interface to a wired Ethernet-based network. Gateway 114 includes WLAN transceiver 214, which can access an IEEE 802.11x wireless network. The range of the WLAN interface (WLAN transceiver 214) can generally exceed the range available via the PAN interface. Additionally, in many cases, a connection between two electronic devices via the LAN interface can involve communication through a network router or other intermediary devices. As discussed above, gateway 114 further comprises LR-WPAN transceiver 212 that can access an IEEE 802.15.4 (e.g. ZigBee/InfiNet) network. As those of skill in the art can appreciate, the networks described by IEEE 802.15.4 are mesh-type networks, and operate with a central router/coordinator; in control network 100, the function of such central coordination is performed by one or more controller 116 and/or gateway 114, according to aspects of the embodiments.
In a wired configuration, wired I/O interface 210 can be a LAN power-over-Ethernet (PoE) interface that can be fashioned using an 8-wire RJ-45 female connection with two LED indicators. According to a further aspect of the embodiments, a another type of NWI can be Cresnet interface 302 b, which is a 4-pin 3.5 millimeter (mm) detachable terminal block providing an interface for Cresnet proprietary communications on a LAN that includes power-over-Ethernet (PoE). The PoE interface can be configured for receiving both an electric power signal and an information signal from a control network. For example, Cresnet interface 302 b can be connected through category 5 cable (CAT 5) to a LAN that contains a power supply, multiple control points, and signal generators. Through Crestnet interface/LAN PoE interface 302 b, gateway 114 can interface with control network 100. For example, gateway 114 (which can be both wired and wireless) can communicate with controller 116, such as a PRO3 available from Crestron Electronics, Inc.
Gateway 114 comprises one or more connectors, indicators and interface buttons, as well as an antenna connection for the supplied antenna. Gateway further comprises LED indicators, such as power on/off LED 304, network activity indicator LED 306, and activity indicator LED 308. Power on/off LED 304 is an indicator that shows that operating power is being supplied to gateway 114 whether from the Cresnet network or a PoE connection. Network LED indicator 306 shows that communication with the Cresnet system is occurring. Activity indicator LED 308 shows that wireless communications are occurring, such as those that involve the elements of the wireless PAN.
Gateway 114 further comprises acquire button 310 and setup button 312. Acquire button 310 and setup button 312 can be recessed push buttons each with an indicator LED. Acquire button 310 can be employed to configure communication with the PAN and setup button 312 can be employed to configure communication with control network 100.
Gateway 114 can be placed in the “Acquire” mode via acquire button 310 or a different means, such as the pushing of certain buttons in a certain order. The associated LED can indicate that gateway 114 is in the “Acquire” mode. Once gateway 114 has been placed in the “Acquire” mode, the joining device can be brought into range and can be placed in the “Acquire” mode to be acquired by gateway 114 through a certain sequence. Such sequence involves the pushing of buttons in a certain, specific order, a detailed discussion of which has been omitted in fulfillment of the dual purposes of clarity and brevity. By pushing acquire button 310 a second time (within a predetermined time period), gateway 114 can exit the “Acquire” mode as indicated by the LED-illuminated acquire button 310.
As discussed above, control network 100 can further comprise PED 104. PED 104 can be a smart phone, tablet, remote control, personal digital assistant (PDA), or any other electronic device configured for presenting a user interface, such as a graphical user interface (GUI) and receiving user inputs, such as in the form of selections from a graphic user interface.
FIG. 4 illustrates a block diagram of a personal electronic device 104 for use with control system 100 according to aspects of the embodiment. PED 104 can include at least one central processing unit (CPU) 402. For example, CPU 402 can represent one or more microprocessors, and the microprocessors can be “general purpose” microprocessors, a combination of general and special purpose microprocessors, or ASICs. Additionally, or alternatively, CPU 402 can include one or more reduced instruction set (RISC), advanced RISC machine (ARM), or complex instruction set (CISC) processors, video processors, or related chip sets. CPU 402 can provide processing capability to execute an operating system (OS), run various applications, and/or provide processing for one or more of the techniques described herein. Applications that can run on PED 104 can include, for example, software for managing and playing AV content, software for managing a calendar, software for controlling telephone capabilities, software for controlling other electronic devices via a control network as noted above, as well as software for controlling various other functions and interconnected devices.
PED 104 further comprises main memory 414, which can be communicably coupled to CPU 402, and which may store data and executable code. Main memory 414 can represent volatile memory such as RAM, but can also include nonvolatile memory, such as ROM or flash memory. In buffering or caching data related to operations of CPU 402, main memory 414 can store data associated with applications running on PED 104.
PED 104 can also include nonvolatile storage 412. Nonvolatile storage 412 can represent any suitable nonvolatile storage medium, such as a HDD or nonvolatile memory, such as flash memory. Being well-suited to long-term storage, nonvolatile storage 412 may store data files such as media, software and preference information. Nonvolatile storage 412 can be removable and interchangeable, thereby allowing portability of stored files such as project files created during programming of control network 100. Those of skill in the art can appreciate that data associated with controlling certain other electronic devices, such as a project file for a control application, can be saved in nonvolatile storage 412.
Display 410 can display images and data for PED 104. As those of skill in the art can appreciate, display 410 is optional. If included in PED 104, however, display 410 can use any type of display technology, such as, but not limited to, a liquid crystal display (LCD), a light emitting diode (LED) based display, an organic light emitting diode (OLED) based display, a cathode ray tube (CRT) display, or an analog or digital television, among other types. According to other aspects of the embodiments, display 410 can function as a touch screen display through which a user can interact with PED 104.
PED 104 can further include user interface 408. User interface 408 can include indicator lights and user input structures, but can also include a GUI on display 410. As those of skill in the art can appreciate, user interface 408 can operate via CPU 402, using memory from main memory 414 and long-term storage in nonvolatile storage 412, among using other types of memory (such as an HDD, not shown in FIG. 4). According to aspects of the embodiments, if display 410 is not included in PED 104, indicator lights, sound devices, buttons, and other various input/output (I/O) devices can allow a user to interface with PED 104. If, however, display 410 is included in PED 104 and uses a GUI, user interface 408 can provide interaction with interface elements on display 410 via certain user input structures, user input peripherals such as a keyboard or mouse, or a touch sensitive implementation of display 410.
As can be appreciated by those of skill in the art, one or more applications can be opened and accessible to a user via user interface 408 and displayed on display 410 of PED 104. One or more of the opened applications can be run on CPU 402 in conjunction with main memory 414, nonvolatile storage 412, display 410, and user interface 408. Instructions stored in main memory 414, nonvolatile storage 412, or CPU 402 (CPU 402 can have its own internal storage, of many different types), of PED 104 can enable a user to install control network 100. As such, those of skill in the art can appreciate that the instructions for carrying out such techniques on PED 104 can represent a standalone application, a function of the OS on PED 104, or a function of the hardware of CPU 402, main memory 414, nonvolatile storage 412, or other hardware of PED 104.
One such application that can be opened and accessible to the user is a configuration application for installing control network 100 according to an aspect of the embodiments. The configuration application can be downloaded from an application marketplace such as from the Google Play application marketplace or the Apple iTunes® application marketplace, among other market places available through the internet, or other networks.
As briefly described above, the project file provides the instructions allowing the control application to communicate with the target control network (control network 100, according to aspects of the embodiments). Further, the project file comprises the menu pages of the control application corresponding to the locations of controllable devices. For example, the control application can display one or more menu pages identified by page identities for controlling the one or more controllable devices on control network 100 according to the project file. The menu pages comprise selectable elements corresponding to control functions as defined in the project file.
The configuration application displays a series of menu pages comprising selectable elements and graphical elements. As will be described in greater detail below, the one or more of the selectable elements can correspond to initialization functions of the configuration application. PED 104 can transmit signals to control network 100 according to the initialization functions selected by the user. Additionally, control network 100 can communicate with PED 104, such as by providing feedback signals to PED 104. According to an aspect of the embodiments, PED 104 can communicate with controller 116 running a logic engine via communication network 102. Gateway 114, according to further aspects of the embodiments, can be used to relay commands and return status information to and from sensors 108 and from the various controllable devices 110, 112, 118, 120, 122, 124, 126, 128, and 130
According to various aspects of the embodiments, PED 104 can include location sensing circuitry 406. Location sensing circuitry 406 can comprise global positioning system (GPS) circuitry, but can also represent one or more algorithms and databases, stored in nonvolatile storage 412 or main memory 414 and executed by CPU 402, which may be used to infer the location of PED 104 based on various observed factors. For example, location sensing circuitry 406 can represent an algorithm and database used to approximate geographic location based on the detection of local 802.11x (Wi-Fi) networks or nearby cellular phone towers.
PED 104 can also include wired input/output (I/O) interface 210 for a wired interconnection between a first electronic device and a second electronic device. Wired I/O interface 210 can represent, for example, a universal serial bus (USB) port, an IEEE 1394 port, or a FireWire® port. However, wired I/O interface 210 can also represent a proprietary connection. Additionally, wired I/O interface 210 interface can permit a connection to user input peripheral devices, such as a keyboard or a mouse. In addition to wired input/output (I/O) interface 210, PED 104 further comprises infrared (IR) interface 430 that can enable PED 104 to receive and/or transmit signals with infrared light. By way of example, IR interface 430 can comply with an infrared IRDA specification for data transmission.
One or more network interfaces 208 can also be provided in PED 104. One or more of such network interfaces 208 can provide additional connectivity for PED 104. Network interfaces 208 can represent, for example, one or more network interface cards (NIC) or a network controller. In certain embodiments, the network interface 208 can include LR-WPAN transceiver 212. LR-WPAN transceiver 212 can provide capabilities to network with, for example, a Bluetooth® network, an NFC network, or a ZigBee/CresNet network. As should be appreciated, the networks accessed by LR-WPAN transceiver 212 can, but do not necessarily, represent low-power, low-bandwidth, or close range wireless connections. However, as those of skill in the art can appreciate, the connection in a PAN can be disrupted if the separation between the two electronic devices exceeds the operational range capability of LR-WPAN transceiver 212. LR-WPAN transceiver 212 can permit one electronic device to connect to another local electronic device via an ad-hoc, or peer-to-peer connection, such as that defined by the wireless PAN protocol IEEE 802.15.n, communications network 102.
LR-WPAN transceiver 212 can also incorporate IEEE 802.15.4 (e.g. ZigBee) network, or an ultra-wideband network. As those of skill in the art can appreciate, the networks described by IEEE 802.15.4 are mesh-type networks, and operate with a central router/coordinator; in control network 100, the function of such central coordination is performed by either or both of controller 116 and/or gateway 114, according to aspects of the embodiments.
Network interface 208 can also include WLAN transceiver 214. WLAN transceiver 214 can represent an interface to a wireless LAN, such as an IEEE 802.11x wireless network (Wi-Fi). The wireless operating range capability of LAN interface 426 can generally exceed the wireless operating range capability available via LR-WPAN transceiver 212. Additionally, in many cases, a connection between two electronic devices via WLAN transceiver 214 can involve communication through a network router or other intermediary devices. In PED 104 WLAN transceiver 214 interfaces with first antenna 115, WLAN transceiver 212 interfaces with second antenna 117, and cellular transceiver 216 interfaces with third antenna 119 according to aspects of the embodiments. Communications network 134 is a wired or wireless LAN, such as that defined by IEEE 802.11.n (Wi-Fi), or 802.3 (Ethernet).
According to further aspects of the embodiments, network interfaces 208 of PED 104 can further include the capability to connect directly to a WWAN via cellular transceiver 216, and third antenna 119 according to aspects of the embodiments. Cellular transceiver 216 can permit a connection to a cellular data network, such as an EDGE network, or another 3G/4G network, among others. When connected via cellular transceiver 216, PED 104 can remain connected to the internet and, in some embodiments, to other electronic devices, despite changes in location that might otherwise disrupt connectivity via LR-WPAN transceiver 212, or WLAN transceiver 214. As will be discussed in greater detail below, wired I/O interface 210 and network interfaces 208 can represent both low- and high-bandwidth communication channels for transferring user data using the simplified data transfer techniques discussed herein.
PED 104 can also include near field communication (NFC) interface 416. NFC interface 416 can allow for extremely close range communications at relatively low data rates (e.g., about 464 kilo-bits/second (kb/s)), and can comply with such standards as International Standards Organization (ISO) 18092 or ISO 21521, or it can allow for close range communications at relatively high data rates (e.g., about 560 mega-bits/second (Mb/s)), and can comply with the TransferJet® protocol. NFC interface 416 can have a range of between about 2 to about 4 centimeters (cm) (or between about 0.78″ to about 1.57″). The close range communication with NFC interface 416 can take place via magnetic field induction, allowing NFC interface 416 to communicate with other NFC interfaces, or to retrieve information from tags having radio frequency identification (RFID) circuitry. As discussed in greater detail below, NFC interface 416 can provide a manner of initiating or facilitating a transfer of user data from one electronic device to another electronic device.
PED 104 can also include camera 420. With camera 420, PED 104 can obtain digital images or videos. In combination with optical character recognition (OCR) software, barcode-reading software, or matrix-code-reading software running on PED 104, camera 420 can be used to input data from printed materials having text or barcode information. Such data can include information indicating how to control another device from a matrix barcode that can be printed on the other device, as described in greater detail below.
According to further aspects of the embodiments, PED 104 can also include one or more accelerometers 418 that can sense the movement or orientation of PED 104. Accelerometers 418 can provide input or feedback regarding the position of PED 104 to certain applications running on CPU 402. According to further aspects of the embodiments, accelerometer 418 can be provided by devices made using microelectromechanical system (MEMS) technology. MEMS devices, which can be defined as die-level components of first-level packaging, can include pressure sensors, accelerometers, gyroscopes, microphones, digital mirror displays, microfluidic devices, among other devices.
According to aspects of the embodiments, control network 100 can be configured to be installed by untrained users executing a configuration application on PED 104. According to further aspects of the embodiments, the control system and associated configuration application are referred to as Pyng, which are software programs created and manufactured by Crestron Electronics, Inc., of Rockleigh, N.J.
One such application that can be opened and accessible to the user is a configuration application for installing control network 100 according to an aspect of the embodiments. The configuration application can be downloaded from an application marketplace such as from the Google Play application marketplace, or the Apple iTunes® application marketplace, among other application market places available through the internet, or other networks. A detailed discussion of the configuration application is both not needed to appreciate the various aspects of the embodiments, and can be found in the co-pending U.S. Non-provisional Patent Application referenced above; as such, a detailed discussion has been omitted in fulfillment of the dual purposes of clarity and brevity.
Attention is now directed towards FIG. 5, which illustrates wall mount keypad (keypad) 106 that can be used in control network 100 as part of an acoustic sensory network (ASN) according to aspects of the embodiments. Keypad 106 includes display/touch panel 502 (an interactive display that can be a liquid crystal display (LCD) or light emitting diode display (LED), or combination thereof), microphone(s) 504, optional audio processing board 505 (which comprises pre-amplifier 506, analog-to-digital converter (ADC) 508, and 60 Hertz (Hz) notch filter according to an aspect of the embodiments), processor 512, IEEE 811.15.4 LR-WPAN transceiver (transceiver) 212, WLAN transceiver 214, cellular transceiver 216 (and their respective antennas, 115, 117, and 119), internal bus 516, antenna 117, LAN/Ethernet connector 518, and voice recognition (VR) system-on-a-chip (SoC) circuit (VR SoC circuit) 520. As those of skill in the art can appreciate, other components have been omitted from FIG. 5 in fulfillment of the dual purposes of clarity and brevity, as they would not aid in understanding the various aspects of the embodiments. According to further aspects of the embodiments, the devices, software, algorithms, and other components of the ASN are described in reference to keypad 106 and controller 116, but can be distributed in one or more of any of the devices of network 100, e.g., gateway 114. In addition, one or more of the components of the ASN can be separated from keypad 106, such as microphones 504, audio processing board 505, and VR SoC circuit 520, according to aspects of the embodiments. For example, either or both of audio processing board 505 (and its components) or VR SoC circuit 520 can be included in controller 116 or gateway 114. However, in fulfillment of the dual purposes of clarity and brevity, and according to aspects of the embodiments, the following description of the devices, software, algorithms, and other components of the ASN shall be made in reference to keypad 106 and controller 116.
The ASN according to aspects of the embodiments includes audio processing components to interpret spoken words as commands to control the controllable devices, including those of lights and related devices, in such a manner as to overcome the problems of the prior art as previously described. That is, the ASN can include one or more microphones 504 a,b, VR SoC circuit 520, or, in the alternative, optional audio processing board 505, to capture, process, and implement audible commands. As those of skill in the art can appreciate, VR SoC circuit 520 contains the necessary components to convert the audio signals received by each mic 504 a,b, into digital form, provide filtering before and/or after conversion to digital form, perform additional processing (as described in greater detail below), and can, according to aspects of the embodiments, include software to identify the word (or words) that were spoken to produce the digital words. Such processing can be referred to as acoustic finger printing, or voice recognition. Further, VR SoC circuit 520 can also provide a time stamp to the received audio signal, which can be further used in processing in a manner to be described below, or the time stamp can be provided by other circuitry, such as, for example, controller 116. Optionally, substantially similar processing can occur in audio processing board 505; however, in fulfillment of the dual purposes of clarity and brevity, discussion shall only be made in regard to VR SoC circuit 520.
According to still further aspects of the embodiments, either or both of VR SoC 520 and audio processing board 505 can be implemented in one or more of the dimmers, wall mounted touch panels, remote control devices, and the like, all of which can be considered to be part of control network 100 and the ASN according to aspects of the embodiments.
In cases where it is implemented, audio processing board 505 accepts as an input the analog audible signal (audible signal) received from each of microphones 504 a,b, applies a pre-amplification to the signal to scale it, then converts the same to a digital audible signal using ADC 508. The “raw” output of ADC 508 can then be filtered by notch filter 510 to remove as much 60 Hz “hum” as possible, and the filtered digital audible signal (digital audible signal) can then be sent to processor 512 for further processing.
Attention is also directed to FIG. 10, which illustrates several audio processing blocks that can occur within either or both of audio processing board 505 and VR SoC circuit 520 according to aspects of the embodiments. In fulfillment of the dual purposes of clarity and brevity, however, reference will be made as to the processing blocks as occurring within VR SoC circuit 520, although that need not necessarily be the case; one or more of the processing blocks shown is within VR SoC circuit 520 can also be implemented in one or more separate devices, such as ASICs, or even the processors of keypad 106, controller 116, and keypad 104, among other devices of network 100.
Referring now to FIGS. 5 and 10, microphones 504 a,b receive audio commands spoken by a user or occupant of the home or enterprise location, along with other extraneous audio signals, the latter of which can be collectively referred to as audio noise; thus, the combined analog audio signal consists of an audio command and audio noise, and is represented as the analog audio signal from microphone 504 a, or AASa, and similarly from mic 504 b, AASb. Within VR SoC circuit 520, both of the analog microphone output signals encounter analog processing circuit 1002 a,b respectively. Analog processing circuit can include, among other circuitry, 60 Hz notch filters, one or more of a low pass filter, high pass filter and a bandpass filter, pre- and post-amplifiers, and an analog-to-digital converter (ADC). The output of analog processing circuits 1002 a,b can be referred to as digital audio signal “a” and “b,” respectively, DASa, DASb. Although some noise has been removed, DASa,b both still contain ambient, background noise that can include one or more noise signals generated by fans, motors, audio sources, and non-command words, among others.
According to further aspects of the embodiments, upon conversion from an analog to digital form, each of DASa,b can have a time-date stamp applied to it. According to aspects of the embodiments, the application of a time-date stamp can be applied to the received digital audio signal by time-date stamp generator 1004. As those of skill in the art can appreciate, any processing steps that occur at processor 512 of keypad 106 (or any other similarly situated control or controllable device of control network 100) can also occur in one or both of gateway 114 and controller 116. The time-date stamp applied by time-date stamp generator 1004 can be used one or more different ways. For example, because each microphone's output can be time-stamped, it can be determined which microphone was closest to the source of the audio command (once processing occurs to decipher the command, discussed below). Further, because in subsequent processing the two microphones' outputs are combined, a single average time stamp value can be generated and applied to the combined audio command output from the respective keypad 106; this average time stamp can then be used and compared to other time stamps generated by other keypads 106 to further ascertain which keypad first received the audio command.
There are several mechanisms through which time stamps can be generated and applied according to aspects of the embodiments. As those of skill in the art can appreciate, a certain degree of accuracy is required in generating the time stamp in order to make the time stamp useful in determining the order of arrival of audio signals. The speed of sound, Vs, is about 1126 feet-per-second (fps) at sea level, under certain predefined conditions. The speed varies with temperature, humidity, and altitude, as those of skill in the art can appreciate, but the generally accepted “norm” value of Vs of 1126 fps can be used for the purposes of this discussion. Using this value yields a travel time of about 888.1 microseconds-per-foot (μs/ft). Most clock speeds of the processors and other digital circuitry will operate at much higher frequencies than 1100 Hz; however, it is not the absolute clock frequency that is important (though below a certain value, as those of skill in the art can appreciate, time stamping would not be effective), but that the clock speeds be substantially identical at each keypad 106, and be substantially in synchronization with each other, at least by several orders of magnitude in regard to the expected differences in time between when a first keypad marks the audio sound and a second keypad marks the same audio sound. According to aspects of the embodiments, there are several network communication protocols that can be used to generate time stamps of sufficient accuracy; one such system uses ZigBee, as described in papers entitled “Time Synchronization for ZigBee Networks,” Cox, D. et al., IEEE 0-7803-8808, September 2005, and “Non-invasive Time Synchronization for ZigBee Wireless Sensor Networks,” Ferrari, P., et al., IEEE 978-1-4244-2275, March, 2008, the entire contents of both of which are incorporated herein by reference. Time-date stamp generator 1004 uses either or both the protocols described above, among others not mentioned, and generates the time-date stamp that is then added to digital word represented the amplitude output from each respective microphone; in this manner, the digital word now resembles a packet of data familiar to those of skill in the art of digital data transmission using protocols such as the Open Source Initiative (OSI) model and internet protocols, among others.
According to still further aspects of the embodiments, application of the time-date stamp can occur in one or both of controller 116 or gateway 114 after the audible command has been received from each of the keypads, assigned an identifier header (or footer), and transmitted following digitization. Thus, the digitized audible commands can be sent in real time to controller 116 or gateway 114. Considering the substantially instantaneous rate of communication from each keypad to the controller 116 (for purposes of this discussion, the use of controller 116 alone will be considered by means of a non-limiting example), such delay in time-date stamping can be negligible. According to further aspects of the embodiments, test communications can be sent to each keypad in order to ascertain a trip delay, and such delay time can be subtracted from each received audible command digital word after it has been received and time-date stamped, and prior to processing, as described below in regard to FIG. 8, and method 800.
Following the application of the time-date stamp by time-date stamp generator 1004, acoustic echo cancellation (AEC) algorithms can be applied through use of AEC processors 1006 a,b to the respective digitals signals, DASa,b. The implementation and use of AEC processing is known to those of skill in the art, and therefore, in fulfillment of the dual purposes of clarity and brevity, a detailed discussion thereof need not be repeated herein. However, one known goal of use of AEC is to reduce extraneous media sounds from the digital audio signals. As those of skill in the art can appreciate, AEC can use an audio signal as a reference, and then cancels this reference signal from the microphone input. The reference signal can be provided to each AEC circuit from one or both of controller 116 and gateway 114. Such reference signal can be the audio portion of any video that might be playing in each respective room of the corresponding keypad 106, or audio signal that it being provided to amplifiers and speakers in each corresponding room. The AEC circuit uses a Least Mean Square (LMS) algorithm to create an adaptive filter used to eliminate the reference and acoustic echoes associate with it. In addition, non-linear adaptive filtering can also be used to further suppress this signal. According to aspects of the embodiments, this processing can occur in keypad 106, and the reference signal will then be provided to each keypad 106 from the media system to the respective keypad 106 either through the IEEE 802.15.4 radio connection (LR-WPAN transceiver 212 and second antenna 117), IEEE 802.11 radio connection (WLAN transceiver 214 and first antenna 115), cellular transceiver 216 (and third antenna 119), or via the IEEE 802.3 LAN connection (wired I/O interface 210). According to further aspects of the embodiments, AEC blocks 1006 a,b can also include reverb reduction and/or active noise cancellation, the operation of which are known to those of skill in the art.
Following AEC in AEC blocks 1006 a,b, the digital audio signal can be further processed and/or enhanced according to several further aspects of the embodiments. Each DAS from the respective microphones 504 a,b in a first keypad 104 a can have direction of arrival (DOA) processing performed in conjunction with directionally adapted beamforming (DABF); this processing can occur in DOA block 1008, which, as shown in FIG. 10, comprises at least two inputs, the respective DASs from each microphone 504 a,b in first keypad 104 a. The output of DOA block 1008 is another digital packet of data that includes the DOA processed digital audio signals and a relative angle that each microphone 504 a,b received its analog audio signal. The DABF block 1010 receives that output from DOA block 1008 and uses the directional information (the relative angle) and further reduces the noise in the portion of the digital packet that represents the digitized and further processed audio signals. In this manner, the output of VR SoC circuit 520 has now substantially minimized or reduced the noise that accompanied the spoken command, so that the signal-to-noise ratio (SNR) has been improved of the spoken audio command.
A detailed discussion of the processing that occurs in either or both of DOA block 1008 and DABF block 1010 is not necessary to the understanding of the aspects of the embodiments; however, such processing is described in the following documents, the entire contents of each of which are incorporated herein in their entirety. Such documents include “A New DOA Estimation Method Using a Circular Microphone Array,” Karbasi, A., et al., School of Comp. and Commun. Sciences, Ecole Polytechnique F'ed'erale de Lausanne CH-1015 Lausanne, Switzerland, and Common Platform Software Research Labs., NEC Corporation Kawasaki 211-8666, Japan, 2007; “Direction of Arrival Estimation Using the Parameterized Spatial Correlation Matrix,” Dmochowski, J., et al., IEEE Transactions On Audio, Speech, and Language Processing, Vol. 15, No. 4, May 2007; and “Microphone Arrays: A Tutorial,” McCowan, I., derived from “Robust Speech Recognition using Microphone Arrays,” McCowan, I., PhD Thesis, Queensland University of Technology, Australia, 2001.
In addition, the following websites provide further information as to implementation of direction of arrival and directionally adaptive beamforming circuitry and processing: https://www.xmos.com/support/boards?product=35564, and http://www.vocal.com/voice/, both of which were current and available as of the date of filing of this U.S. Non-provisional Patent Application, and the entire contents of each of which are incorporated herein in their entirety.
According to aspects of the embodiments, DOA and DABF processing can be implemented at each keypad 106 in regard to the one or more microphones 504 in the respective keypad 106, or, DOA and DABF processing can occur at a central location, such as in controller 116 and CPU 202 (or in gateway 114, among other “central locations”). Or, according to still further aspects of the embodiments, DOA processing can occur at each keypad, and DABF processing can occur at the central location such as controller 116 and CPU 202. Further, while it has been discussed and described that keypad 106 can have two microphones 504, according to further aspects of the embodiments, keypads 106 can have one, three, or even more microphones 605. Further still, one or more such microphones 504 can be stand alone units, i.e., one or more or a plurality of just microphones can be installed in one or more of the rooms/hallways of the home or enterprise location without keypad 106 in order to provide a larger area to listen for commands, and obtain more detailed spatial information about the location of the source of the audible command, as well as increasing the likelihood of accurately determining the room to which the command is being directed towards.
Following the processes described above, the digital audible signal can be processed by a speech recognition algorithm in order to attempt to discern the command that is contained in the digital audible signal. Such processing can be performed in each keypad 106. According to further aspects of the embodiments, however, such processing shall be discussed from the perspective of occurring in controller 116, within CPU 202, in fulfillment of the dual purposes of clarity and brevity. However, those of skill in the art can appreciate that such any of this processing, as well as additional processing described and discussed above and below, can be distributed throughout a network such as network 100, and could occur, for example, in one or more of gateway 114.
For example, one such command could be “lights off,” as the person is leaving a bathroom. In a first scenario, it will be presumed that no extraneous noise exists, and that the command can only be heard by the keypad/processor in the room to which it is directed. Then, using a speech recognition algorithm in the respective keypad 106, processor 512 could relatively easily act on the command, and turn off the lights in the bathroom. Such “turning off” command can be acted upon even if the same command was received by an adjoining bedroom because of the relatively high percentage of certainty of the true nature of the command contained in the digital audible signal. As those of skill in the art can appreciate, speech recognition capabilities can be located throughout a residential or commercial facility to facilitate control of devices in the residence/office/enterprise location. However, as has been discussed above, extraneous noise does exist and it cannot be said with any degree of certainty that processor 512 of keypad 106 in the bathroom would act on such command, or that the lights of the bedroom next door would not also be turned off, much to the surprise of the occupant therein.
Therefore, according to further aspects of the embodiments, further processing of the received audio command can also determine the amplitude of the received digital audible signal at each respective keypad 106; such amplitude can be used by CPU 202 in controller 116 (or another processor, such as processor 512, though discussion will be directed to such processing occurring within CPU 202 from hereon in), to compare the amplitude of a plurality of received digital audible signals DASN. Relative amplitude between all of the received signals can be used to assist in determining which of the received signals was received first, as amplitude falls off with distance, as time increases as well. Therefore, if one of the received audio signals has a larger amplitude than the other, then the microphone associated with the (digital) audible signal with the larger amplitude can be considered to be the device to which the command is directed towards, or at least it can be considered as a factor to take into account. FIGS. 6 and 7, which are described in greater detail below, illustrate the principles of operation of the time-date stamp and amplitude determination.
According to further aspects of the embodiments, either or both of additional processing and additional circuitry can be used that reduces the likelihood of misinterpreting the received digital audio signal. The first item to be considered is the use of two microphones 504 a,b in each keypad 106, as shown in FIG. 5. The outputs of mics 504 a,b are both directed to VR SoC circuit 520, or audio processing board 505; as discussed above, only use of the former will be described herein in fulfillment of the dual purposes of clarity and brevity. When two (or more) mics 504 a,b are used, the effects of noise on the intended audio signal can be reduced. Some sources of noise can include other people speaking, fans in bedrooms or bathrooms, ceiling speakers, televisions, cell-phones, and the like.
Those of skill in the art can appreciate that a detailed discussion of the technology and processing required to implement noise reduction with the use of two or more mics 504 is not needed to understand the aspects of the embodiments. Nonetheless, the following is provided for completeness. Regardless of how far away the source of the audio signal, i.e., the voice command, one signal from a respective mic 504 will be stronger than the other. The two sound waves can be compared following filtering, digitization, and other processing. The non-voice signal, or the one with the lower amplitude can be subtracted from the other, meaning the voice or audible command signal is now cleaner, with less noise.
According to aspects of the embodiment, the ASN can be part of a larger control system, such as control network 100. While the ASN can be part of control network 100, or the ASN can operate autonomously, reference from hereon in shall be made to only the ASN. As shown in FIG. 5, microphone 502 can incorporated into existing devices such as keypads 500 and motion detectors, or can be stand-alone independent devices with communications capabilities such as IEEE 811.14 PAN transceiver 514. Accordingly, each device can have local voice recognition capabilities (i.e., through the use of a “mini” processor that is co-located with the standalone microphone), of can be part of a centralized voice recognition system wherein voice recognition processing occurs at a remote server (such as gateway 114 or controller 116) or a combination of the two.
Attention is now directed towards FIG. 6, which illustrates the scientific principles upon which time-date stamping and amplitude determination are based. In FIG. 6, the source is shown as generating a sound; in this case, a “light-off” command directed towards room 1. The sound waves, as indicated, travel in the direction of arrow A, towards first and second microphones 504 a 1 and 504 b 1 of keypad 106 a in room 1, and third and fourth microphones 504 a 2 and 504 b 2 of keypad 106 b in room 2. The sound waves arrive at first and second microphones 504 a 1, b 1 of keypad 106 a in room 1 at times T1′ and T1″, respectively, with amplitudes of A1′ and A1″, respectively, wherein first microphone 504 a 1 is a distance d1′ from the sound source, and second microphone 504 b 1 is a distance d1″ from the sound source. Similarly, the sound waves arrive at third and fourth microphones 504 a 2, b 2 of keypad 106 b in room 2 at times T2′ and T2″, respectively, with amplitudes of A2′ and A2″, respectively, wherein third microphone 504 a 2 is a distance d2′ from the sound source, and fourth microphone 504 b 2 is a distance d2″ from the sound source. The calculations for determining the time in view of the velocity of sound are known to those of skill in the art, and therefore have been omitted herein in fulfillment of the dual purposes of clarity and brevity.
Accordingly, as the amplitude of the sound waves generally decreases with time and distance, the sound waves arriving at second microphone 504 b 1 should be somewhat smaller in amplitude, and arrive at a later time than those that arrive at first microphone 504 a 1. And, the sound waves at third microphone 504 a 2 should be smaller and arrive at a later time than those of second microphone 504 b 1, and so on for the fourth, and other microphones, depending on their spatial location with respect to the source of the sound. However, as those of skill in the art can appreciate, sometimes sound waves reflect off objects, causing larger amplitudes at farther distances, or become attenuated for a variety of reasons that might be different from one location to the other, even if the locations within a setting are within relatively short distances (meters, or yards), depending on the construction of the home or enterprise location. Thus, according to further aspects of the embodiments, amplitude or even time stamping might not be sufficiently dispositive in some cases in regard to the determination of which room the audible command is being directed towards, but in those circumstances they can be useful factors to take into account.
FIG. 7 illustrates a plan view of a floor of a house in which the system and method for determining which controllable device an audible command is directed to can be used according to aspects of the embodiments. Such a setting as discussed above can be as realized in FIG. 7, wherein room 1 is “Jordyn's Room” and room 2 is “Nolan's Room.” Someone has just left room 1, at position (1), carrying bags in each hand, and cannot hit the light switch to turn off the lights on the way out. So, the person uses an audible command “Lights off,” as they pass position (2). However, both of microphone 504 a 1,b 1 (Jordyn's room, room 1) in keypad 106 a, and both of microphones 504 a 2,b 2 (Nolan's room, room 2) in keypad 106 b, receive the audible command, and there can be confusion as to which lights to turn off. There could be someone still in Nolan's room, and to turn off those lights could be dangerous, or at least inconvenient. Since the first pair of microphones 504 a 1, b 1 received the command earlier (through comparison of the time-date stamp), the controllable device associated with the first pair of microphones 504 a 1, b 1 of keypad 106 a will be directed to respond to the audible command. This processing decision can also be made, or verified, by comparing amplitudes of the first and second digital signals—amplitude A1 will be greater, albeit by a small amount, than amplitude A2, and as such whichever processor processes the received digital signals, it will ascertain that the command was directed to Jordyn's room, room 1, because the amplitude of the received signal is greater at Jordyn's room than at Nolan's room. According to aspects of the embodiments, the user would prefer that the lights in Jordyn's room be turned off well before they get to position (3)—the bottom of the stairs.
According to further aspects of the embodiments, the ASN can further include proximity sensors as a further means for discerning the presence or location of a user, which can assist in determining which room the command to the controllable device is directed towards. For example, in FIG. 7, there are shown a plurality of proximity sensors 702 a-d, one each for Jordyn's room, Nolan's room, Raegyn's room, and the bathroom, as well, as 702 e for the hallway. According to further aspects of the embodiments, proximity sensors can be the same or different as occupancy sensors; that is, an occupancy sensor can be a passive detection device; motion, heat, among other types. Proximity sensors can be active—using near field communications (NFC), Bluetooth, Wi-Fi, or other low- or medium-power communications protocols, that transmit signals to which a device, such as PED 104, can respond to, thereby tracking movement and position of the user, without the user's input. For example, in FIG. 7, the user, when at position (2), has left Jordyn's room and is now at the top of the stairs. While each of proximity sensors 702 a-e can, most likely, detect the presence of the user, each will have a different power level received signal from PED 104 that the user is carrying with them. Of course, as those of skill in the art can appreciate, this means that the user has to have loaded onto their PED 104 a configuration application that contains a portion of the program dedicated to the particular low- or medium-power communications protocol being used by the ASN. Thus, a central processor, such as central processor 116 or gateway 114 will receive data from each of proximity sensors 702 and will be able to check the signal strength level from each of proximity sensors 702 a-e. The processor will therefore know that (a) the user has just left Jordyn's room, (b) is now headed down the stairs, and (c) that a command has just been issued by the user to turn off lights. A review of the light status of each of the rooms on that floor will determine that the lights were left on in Jordyn's room, and a command can now be generated and transmitted to turn them off.
While any one of the above proscribed processes can effectively turn off the light in the room as intended by the audible command—speech recognition algorithms, amplitude comparisons, time-date stamp comparisons, those of skill in the art can appreciate that additional problems can, from time to time, arise in the system and can potentially be the cause in erroneous operation. In some cases, any two of the three processes can be combined, or all three can be used. In addition, as immediately described below, additional processes can be implemented to construct an ASN that can operate substantially effectively, substantially all of the time.
As described above, according to aspects of the embodiments, one or more processors can obtain received digital audible signals (e.g., DAS1 and DAS2), and can process each of DAS1 and DAS2 using speech recognition algorithms to determine the nature of the command, if any, contained in DAS1 and DAS2. If the command can be ascertained with a degree of certainty that meets or exceeds a predetermined degree of certainty (those of skill in the art can appreciate that currently available speech recognition algorithms can assign a value of certainty in regard to recognition of the speech of the received digital audio signals), then the controllable device to which the received digital audible signal is directed can be instructed to act on the command. Sometimes, however, such received digital audible signals are not recognizable by the speech recognition algorithms. In these cases, additional processing can be necessary to ascertain the device to which the received DAS is directed. In this latter case, a time-date stamp can be applied to each received DAS, and then those time-date stamps can be compared to make a determination as to which DAS occurred first. The controllable device associated with the microphone that received the first DAS can then be directed to act on the command. In addition to comparing time-date stamps, the amplitude of the received DAS can also be compared; the controllable device associated with the microphone that received the DAS with the larger amplitude can be considered to be the one to which the command was directed. Amplitude comparisons, time-date stamp comparison, and speech recognition can be used independently of each other, or in various combinations with each other. Other processes can also be used, as described below.
According to further aspects of the embodiments, to reduce false positives, the ASN can include speech recognition algorithm (SRA) that recognizes and distinguish audible commands from silence. The SRA can learn, over time, the ambient noise levels of the room in which a respective microphone is located. According to an embodiment, these ambient levels become characterized as “silence” in the sense that they do not convey useful command and control information, or can be actually very low noise/sound level situations. According to further aspects of the embodiments, the SRA can then determine a state of silence (or absence of a command), a state that a command has been issued, and then silence again.
To reduce collocation errors, the SRA of the ASN recognizes zone commands. For example, the SRA of the ASN can recognize commands such as “Master Bathroom Off” and “Guest Room On,” among others. In order to reduce errors in the acoustic sensory network, a user can speak such commands in a learning mode to that the SRA can learn to recognize the different vocal traits of the user or users. According to further aspects of the embodiments, any number of users can input “practice” commands that can then be learned by the SRA. However, as those of skill in the art can appreciate, the SRA and acoustic sensory network is not necessarily limited to such “learned” commands, nor does it even require such learned commands in order to recognize zone commands. However, by knowing the different zones beforehand, the SRA and acoustic sensor network can increase its efficiency in recognizing and responding to received DASs.
According to still further aspects of the embodiments, to reduce false positives and collocation problems, occupancy indicators can be utilized to determine location and deduce likely commands. For example, once an occupancy sensor determines occupancy in a room and automatically triggers the lights to turn on, the acoustic sensor network can then deduce that an “Off” command is likely to follow in that room. Similarly, other types of occupancy indicators can be combined, such as AV equipment operation, among others. Further, if a command is received by two or more co-located microphones, the occupancy sensors of each of the rooms can be checked, and if one still indicates an occupied room with the lights on, then it is likely the “Off” command was not directed towards it. However, additional processing can be implemented that takes into account time of day, day of the week, additional commands received within specified periods of time (e.g., correcting commands; a first “Off” command followed by a second “Off” command seconds later), among other processes.
According to further aspects of the embodiments, additional processing steps can be used to implement additional features. For example, to reduce privacy concerns, the ASN, at start-up, can temporarily employ a remote server to learn the operating environment of the keypad. Once a noise signature of the environment is deduced, the device may use a local processor to filter out background noise and recognize commands.
According to further aspects of the embodiments, the ASN, which is part of control network 100 (or which can be a stand-alone network), can reduce background noise to make determination of commands via SRAs more effective. In order to reduce background noise, the ASN can request that certain noise producing devices be turned off in an area where a command is likely to be heard. For example, after detecting lack of occupancy in a bedroom, the ASN can reduce the volume of any audio/video devices that may still be operating, and also reduce heating or air conditioning to the room; this can lower the ambient background noise, and make detection and determination of any commands easier.
According to further aspects of the embodiments, the ASN can reduce or eliminate collocation problems. As described above, collation problems are those that related to two or more microphone devices 504 that are relatively close to one another on two separate keypads 106 for different rooms; see, e.g., keypads 106 a, 106 b, in FIG. 7 for Jordyn and Nolan's room. One manner of reducing or substantially eliminating collocation issues, especially in systems that do not utilize zone commands, is to check for occupancy in different rooms/areas. After detecting occupancy in an area or room, the ASN can then disable microphones 504 known to be in adjacent zones (areas/rooms). According to further aspects of the embodiments the ASN can also use occupancy sensor data that shows no-occupancy as a means for reducing or substantially eliminating collocation issues. In this latter case, occupancy sensors from all adjoining rooms are checked against each other; if a room fails to show occupancy, then commands for that room that room would turn off lights are ignored. As those of skill in the art can appreciate, there are numerous variations on how to use occupancy sensor data by the ASN in processing commands to control controllable devices such as lights.
According to still further aspects of the embodiments, the SRA of the ASN can recognize characteristic sounds and deduce likely commands to be received in the vicinity. For example, a flushed toilet and running water are likely indicators that a bathroom microphone will receive a “lights off” command. A further example can be a garage door closing, among others.
According to still further aspects of the embodiments, the ASN can use voice or speech recognition to identify speakers, learn preferences, and set defaults accordingly. For example, the SAR algorithm of the ASN can recognize that certain individual users prefer certain temperature, humidity, AV, shade, and/or light settings, and set devices at those settings when detecting the user is present. When multiple users are present, the ASN can determine an optimal setting by taking into account each user's preference. According to still further aspects of the embodiments, when multiple users are present, the ASN can determine an optimum setting by taking into account each user's preference.
Attention is now directed towards FIG. 8 that illustrates a flow chart of method 800 for determining which controllable device out of a plurality of controllable devices an audible command is directed towards according to aspects of the embodiments.
As described herein, an encoding process is discussed in reference to FIG. 8 and method 800. The encoding process is not meant to limit the aspects of the embodiments, or to suggest that the aspects of the embodiments should be implemented following the encoding process. The purpose of the following encoding process is to facilitate the understanding of one or more aspects of the embodiments and to provide the reader with one or many possible implementations of the processed discussed herein. FIG. 8 illustrates a flowchart of various steps performed during the encoding process. The steps of FIG. 8 are not intended to completely describe the encoding process but only to illustrate some of the aspects discussed above. The encoding process can be further embodied in one or more programs that reside in one or more memory locations of one or more devices, such as, for example, VR SoC circuit 520, controller 116 and gateway 114, among other devices. However, in fulfillment of the dual purposes of clarity and brevity, discussion shall be made of method 800 as embodied in audible command processing and determination (ACPD) program 222 (shown in FIG. 2) that resides in memory 206 and can include one or more of AEC, DOA, and DABF processing, as well as SRAs.
Method 800 begins with optional method step 802. Each of the operations of method steps 802-810 has been described in greater detail above in regard to FIGS. 1-7; therefore, in fulfillment of the dual purposes of clarity and brevity, a detailed discussion of the same operations and system devices has been omitted from the discussion below of FIG. 8 and method 800. In method step 802, the ASN can be used to learn a user's speech characteristics in the manner as described above. In addition, method 800 can also acquire information regarding the zones or rooms of a building, office, home, or enterprise location. The latter information can be used to assist in determining which zone or room an audible command is directed towards as described in greater detail below. Method 800 can use the zone/room information to determine the intended “target” of the command by matching control devices to the rooms and zones, and verifying the presence and operational status of the proximity and occupancy sensors, and their locations with regard to each of the rooms and zones.
In method step 804, method 800 receives audio information in the form of an analog signal at one or more microphones 504 at one or more keypads 106 according to aspects of the embodiments. As described in greater detail above, the analog signals are digitized, time and date stamped, can be further processed to substantially eliminate or reduce noise (using AEC, DOA, DABF), and prepared for further processing. The audio signal is now in the form of digital data, or packets, and can be represented as AFn(t), where n ranges from 1 to the total number of keypads 106 that report an audible signal. In decision step 806 of method 800, each of the received plurality digitized audio signals AFn(t) is analyzed by a speech recognition algorithm (SRA) in ACPD program 222 in order to determine which keypad 106 and controllable devices the audio command signal is directed towards. According to one non-limiting aspect of the embodiments, for example, method 800 (and certain modules of ACPD program 222) can be directed to the control of lighting devise; therefore, each command is therefore understandable in the sense that is directed to turning lights on or off, or up or down in intensity, but the question is generally which room or zone is the command directed towards? As those of skill in the art can appreciate, however, the example of method 800 is not limited to lighting devices only, but can be used in controlling a plurality of different devices as has been described herein. With modifications that have been described herein method 800 can be used to control audio-video, HVAC, shading, security, and many other types of devices and/or systems, alone or in combination with each other. These can be embodied in one larger version of ACPD program 222, or can be embodied in multiple modules of ACPD program 222 as the case may be.
If the output of the SRA is of a certainty that exceeds a predetermined threshold of certainty, then method 800 can direct the command to the appropriate device (“Yes” step from decision step 806). If the output of the SRA is such that the controllable device of the audio signal cannot be discerned (“No” path from decision step 806), then method 800 proceeds to decision step 808. In decision step 808, method 800 compares the date-time stamp and magnitude of each of the received AFn(t) signals, presuming there is more than one (if there is only one, then method 800 applies the command to the controllable device to which the control device received the audible signal AFn(t)). According to aspects of the embodiments, the magnitude of the earliest signal should be greater than the magnitude of later arriving signals. Thus, by way of example, if there are two audible signals, AF1(t1) and AF2(t2), t1 should be less than t2, and the magnitude of AF1(t1) should be greater than the magnitude of AF2(t2). If this is the case (“Yes” path from decision step 808), method 800 proceeds to step 807 and applies the command to the controllable devices associated with the first keypad 106. The controllable devices of the control device that reports the earliest time-date stamp and greatest magnitude of AFn(t) are the controllable devices to which the command contained in the received AFn(t) signal will be directed towards. In this manner, method 800 takes into account the fact that the speed of sound in a home or office of enterprise location is essentially and substantially constant, and thus the control device that reports the earliest or greatest magnitude audible signal is the one that the command is directed to. If these equalities do not hold true (“No” path from decision step 808), then method 800 and ACPD program 222 are directed to decision step 810 for further processing and determinations according to aspects of the embodiments.
As those of skill in the art can no doubt now appreciate in view of the discussion above, there are situations and cases where the proscribed process steps 802-808 of method 800 might not be enough to discern which controllable device to direct the command to. Thus, in method step 810, additional parameters/processing/factors can be taken into consideration. As each of these has been described in greater detail above, they will be only briefly discussed again at this point in fulfillment of the dual purposes of clarity and brevity.
In method decision step 810, additional processing can be performed to determine which room or zone or controllable device the received audible signal is directed towards. One, some, or all of the following processing steps/parameters can be taken into account and/or performed, in any particular order, or none can and decision step 800 can terminate with step 808, as described above.
According to still further aspects of the embodiments, a further step that can be taken in decision step 810 alone or in conjunction with one or more of the other processing steps can be to make use of proximity sensors to determine which controllable device the audible signal (command) is directed to. That is, the system and method according to aspects of the embodiments, can use the knowledge of the presence, of lack of presence of a user as determined by one or more proximity sensors can be used to determine which controllable device the command is directed to. This can be accomplished through the use of low/medium power communications protocols such as Bluetooth, NFC, Wi-Fi, among others. According to aspects of the embodiments, a transmitted signal interrogates an electronic device such as PED 104; appropriate software located therein received such a transmission, and responds in kind to the proximity sensor. A plurality of proximity sensors can send such location interrogation transmissions. Upon processing all of the responses from each proximity sensor, and determination can be made as to location based on the strength and/or time stamp of the signal transmitted by PED 104 and received by each of the proximity sensors.
According to still further aspects of the embodiments, a further step that can be taken in method step 810 alone or in conjunction with one or more of the other processing steps can be to make use of background and/or ambient noise in a passive measure. That is, the system and method according to aspects of the embodiments can use microphones 504 to periodically measure the background of ambient noise levels from time to time and one or more processors, wherever located, can store such readings. These noise levels can then be subtracted from future readings in order to facilitate the presence of commands. As those of skill in the art can appreciate, while such a determination may not in and of itself tell method 800 which controllable device the command is directed to, it can assist in helping to determine when a command has been issued, and in conjunction with other processing steps and/or parameter determinations can be used to determine the nature of the command (e.g., which controllable device in which zone/room the command is directed towards).
According to still further aspects of the embodiments, a further step that can be taken in method step 810 alone or in conjunction with one or more of the other processing steps can be to make active use of the occupancy sensor data. That is, the system and method according to aspects of the embodiments can determine the presence or not of a person or persons in a room, and further determine when such person or persons leave the room. Then it can be expected that any ensuing command could be directed towards that room or zone that was just vacated.
According to still further aspects of the embodiments, a further step that can be taken in method step 810 alone or in conjunction with one or more of the other processing steps can be to make active use of the output of the occupancy and proximity sensors. That is, the system and method according to aspects of the embodiments can turn off or reduce in volume any “noise” producing devices when occupancy and/or proximity sensors suggest that a room or zone is unoccupied. By reducing the ambient noise level—in this case, noise referring to any audible sound that is not a command (e.g., music, video audio)—the commands, or any commands that might be issued, will become easier to discern, and respond to.
According to still further aspects of the embodiments, a further step that can be taken in method step 810, alone or in conjunction with one or more of the other processing steps, can be to make active use of the output of the occupancy and proximity sensors in another, different manner than that just described. That is, the system and method according to aspects of the embodiments can turn off or disable one or more microphones 504 in one or more rooms or zones when occupancy and/or proximity sensors suggest that a room or zone is unoccupied. By eliminating one or more outputs from microphones 504 in which a command is not expected, the system and method according to aspects of the embodiments will be able to detect with greater accuracy the controllable device that the command is being directed towards.
According to still further aspects of the embodiments, a further step that can be taken in method step 810 alone or in conjunction with one or more of the other processing steps can be to make active use of background and/or ambient noises; that is, when certain background or ambient noises occur, the system and method according to aspects of the embodiments can predict future operations based on those noises. Such predictive behavior can be learned over time. By way of non-limiting examples, when a user closes a garage door, for example, a command to turn off the lights in the garage can be expected. Similarly, when a toilet flushes, or running water is turned off in the bathroom sink, the command to turn off the lights in the bathroom can be expected.
Once one, some, or all of the above additional processing for ascertaining the correct room to which the received audible command is directed towards are performed, method 800 (ACPD program 222) can determine whether, within a certain predefined degree of certainty as to which room the command is directed. If method 800 can make the determination (“Yes” path from decision step 810), method 800 proceeds to method step 807 wherein the command is applied to the specified controllable device of the specified room or controlled zone. If, however, after all of the processing of method 800 as embodied as ACPD program 222, a determination still cannot be made, then no response is provided, and the command is ignored. The user or users can be informed of this by some type of audible, visual, or haptic feedback, or any combination thereof (including all of the feedback methods).
FIG. 9 illustrates processing and memory components/circuitry of one or more of the personal electronic device 104 of FIG. 4, gateway device 114 of FIG. 3, controller 116 of FIG. 2, and any other devices that uses one or more processors as described herein that uses software and/or applications to perform various functions and actions as described herein according to aspects of the embodiments.
FIG. 9 illustrates processing and memory components/circuitry (generally referred to as a “computer” or personal computer (PC)) of one or more of the personal electronic device 104 of FIG. 4, gateway device 114 of FIG. 3, controller 116 of FIG. 2, and any other devices that uses one or more processors as described herein that uses or runs or implements software and/or applications, such as the configuration application, project files, or control applications, to perform various functions and actions as described herein according to aspects of the embodiments, suitable for use to implement method 800 for determining which controllable device an audible command is directed towards according to an embodiment.
PC 900 comprises, among other items, integrated display/touch-screen 902 (though not used in every application of PC 900), internal data/command bus (bus) 904, processor board/PC internal memory (internal memory) 932, and one or more processors 908 with processor internal memory 906 (which can be typically read only memory (ROM) and/or RAM). Those of ordinary skill in the art can appreciate that in modern PC systems, parallel processing is becoming increasingly prevalent, and whereas a single processor would have been used in the past to implement many or at least several functions, it is more common currently to have a single dedicated processor for certain functions (e.g., digital signal processors) and therefore could be several processors, acting in serial and/or parallel, as required by the specific application. PC 900 further comprises multiple input/output ports, such as universal serial bus ports 910, Ethernet ports 911, and video graphics array (VGA) ports/high definition multimedia interface (HDMI) ports 922, among other types. Further, PC 900 includes externally accessible drives such as compact disk (CD)/digital video disk (DVD) read/write (RW) (CD/DVD/RW) drive 912, and floppy diskette drive 914 (though less used currently, many PCs still include this device).
Internal memory 932 itself can comprise hard disk drive (HDD) 916 (these can include conventional magnetic storage media, but, as is becoming increasingly more prevalent, can include flash drive memory 934, among other types), read-only memory (ROM) 918 (these can include electrically erasable (EE) programmable ROM (EEPROMs), ultra-violet erasable PROMs (UVPROMs), among other types), and RAM 920. Usable with USB port 910 is flash drive memory 934, and usable with CD/DVD/RW drive 912 are CD/DVD disks 936 (which can be both read and write-able). Usable with floppy diskette drive 914 are floppy diskettes 938. External memory storage 924 can be used to store data and programs external to box 901 of PC 900, and can itself comprise another hard disk drive 916 a, flash drive memory 934, among other types of memory storage. External memory storage 924 is connectable to PC 900 via USB cable 956. Each of the memory storage devices, or the memory storage media (906, 916, 918, 920, 924, 934, 936, and 938, among others), can contain parts or components, or in its entirety, executable software programming code or application (application, or “App”), such as ACPD program 222, which can implement part or all of the portions of method 800 described herein.
Bus 904 provides a data/command pathway for items such as: the transfer and storage of data/commands between processor 908, integrated display 902, USB port 910, Ethernet port 911, VGA/HDMI port 922, CD/DVD/RW drive 912, floppy diskette drive 914, and internal memory 932. Through bus 904, data can be accessed that is stored in internal memory 932. Processor 908 can send information for visual display to either or both of integrated and external displays, and the user can send commands to system operating programs/software/Apps 940 that might reside in processor internal memory 906 of processor 908, or any of the other memory devices (936, 938, 916, 918, and 920).
PC 900, and either processor internal memory 906 or internal memory 932, can be used to implement method 800 for determining which controllable device an audible command is directed towards according to an embodiment. Hardware, firmware, software or a combination thereof can be used to perform the various steps and operations described herein. According to an embodiment, App 940 for carrying out the above discussed steps can be stored and distributed on multi-media storage devices such as devices 916, 918, 920, 934, 936 and/or 938 (described above) or other form of media capable of portably storing information. Storage media 934, 936 and/or 938 can be inserted into, and read by devices such as USB port 910, CD/DVD/RW drive 912, and disk drives 914, respectively.
As also will be appreciated by one skilled in the art, the various functional aspects of the embodiments may be embodied in a wireless communication device, a telecommunication network, or as a method or in a computer program product. Accordingly, the embodiments may take the form of an entirely hardware embodiment or an embodiment combining hardware and software aspects. Further, the embodiments may take the form of a computer program product stored on a computer-readable storage medium having computer-readable instructions embodied in the medium. Any suitable computer-readable medium may be utilized, including hard disks, CD-ROMs, digital versatile discs (DVDs), optical storage devices, or magnetic storage devices such a floppy disk or magnetic tape. Other non-limiting examples of computer-readable media include flash-type memories or other known types of memories.
Further, those of ordinary skill in the art in the field of the embodiments can appreciate that such functionality can be designed into various types of circuitry, including, but not limited to field programmable gate array structures (FPGAs), application specific integrated circuitry (ASICs), microprocessor based systems, among other types. A detailed discussion of the various types of physical circuit implementations does not substantively aid in an understanding of the embodiments, and as such has been omitted for the dual purposes of brevity and clarity. However, as well known to those of ordinary skill in the art, the systems and methods discussed herein can be implemented as discussed, and can further include programmable devices.
Such programmable devices and/or other types of circuitry as previously discussed can include a processing unit, a system memory, and a system bus that couples various system components including the system memory to the processing unit. The system bus can be any of several types of bus structures including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures. Furthermore, various types of computer readable media can be used to store programmable instructions. Computer readable media can be any available media that can be accessed by the processing unit. By way of example, and not limitation, computer readable media can comprise computer storage media and communication media. Computer storage media includes volatile and nonvolatile as well as removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CDROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the processing unit. Communication media can embody computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and can include any suitable information delivery media.
The system memory can include computer storage media in the form of volatile and/or nonvolatile memory such as ROM and/or RAM. A basic input/output system (BIOS), containing the basic routines that help to transfer information between elements connected to and between the processor, such as during start-up, can be stored in memory. The memory can also contain data and/or program modules that are immediately accessible to and/or presently being operated on by the processing unit. By way of non-limiting example, the memory can also include an operating system, application programs, other program modules, and program data.
The processor can also include other removable/non-removable and volatile/nonvolatile computer storage media. For example, the processor can access a hard disk drive that reads-from or writes-to non-removable, nonvolatile magnetic media, a magnetic disk drive that reads from or writes to a removable, nonvolatile magnetic disk, and/or an optical disk drive that reads from or writes to a removable, nonvolatile optical disk, such as a CD-ROM or other optical media. Other removable/non-removable, volatile/nonvolatile computer storage media that can be used in the operating environment include, but are not limited to, magnetic tape cassettes, flash memory cards, digital versatile disks, digital video tape, solid state RAM, solid state ROM and the like. A hard disk drive can be connected to the system bus through a non-removable memory interface such as an interface, and a magnetic disk drive or optical disk drive can be connected to the system bus by a removable memory interface, such as an interface.
The embodiments discussed herein can also be embodied as computer-readable codes on a computer-readable medium. The computer-readable medium can include a computer-readable recording medium and a computer-readable transmission medium. The computer-readable recording medium is any data storage device that can store data which can be thereafter read by a computer system. Examples of the computer-readable recording medium include ROM, RAM, CD-ROMs and generally optical data storage devices, magnetic tapes, flash drives, and floppy disks. The computer-readable recording medium can also be distributed over network coupled computer systems so that the computer-readable code is stored and executed in a distributed fashion. The computer-readable transmission medium can transmit carrier waves or signals (e.g., wired or wireless data transmission through the Internet). Also, functional programs, codes, and code segments to, when implemented in suitable electronic hardware, accomplish or support exercising certain elements of the appended claims can be readily construed by programmers skilled in the art to which the embodiments pertain.
INDUSTRIAL APPLICABILITY
To solve the aforementioned problems, the aspects of the embodiments are directed towards systems, methods, and modes for controlling controllable devices in the control network based on audio commands alone, according to an aspect of the embodiments, and in further aspects of the embodiments, controlling the controllable devices of the control network based on audio commands and other sensory information.
The disclosed embodiments provide a system, software, and a method for determining which of one or more controllable devices an audible command is directed towards using one or more of speech recognition, time-date stamping, amplitude analysis, and other techniques, as described herein. It should be understood that this description is not intended to limit the embodiments. On the contrary, the embodiments are intended to cover alternatives, modifications, and equivalents, which are included in the spirit and scope of the embodiments as defined by the appended claims. Further, in the detailed description of the embodiments, numerous specific details are set forth to provide a comprehensive understanding of the claimed embodiments. However, one skilled in the art would understand that various embodiments may be practiced without such specific details.
Although the features and elements of aspects of the embodiments are described being in particular combinations, each feature or element can be used alone, without the other features and elements of the embodiments, or in various combinations with or without other features and elements disclosed herein.
This written description uses examples of the subject matter disclosed to enable any person skilled in the art to practice the same, including making and using any devices or systems and performing any incorporated methods. The patentable scope of the subject matter is defined by the claims, and may include other examples that occur to those skilled in the art. Such other examples are intended to be within the scope of the claims.
The above-described embodiments are intended to be illustrative in all respects, rather than restrictive, of the embodiments. Thus the embodiments are capable of many variations in detailed implementation that can be derived from the description contained herein by a person skilled in the art. No element, act, or instruction used in the description of the present application should be construed as critical or essential to the embodiments unless explicitly described as such. Also, as used herein, the article “a” is intended to include one or more items.
All United States patents and applications, foreign patents, and publications discussed above are hereby incorporated herein by reference in their entireties.
ALTERNATE EMBODIMENTS
Alternate embodiments may be devised without departing from the spirit or the scope of the different aspects of the embodiments.

Claims (30)

What is claimed is:
1. A method for determining which controllable device an audible command is directed towards, the method comprising:
receiving at each of two or more controlling devices the audible command signal, the audible command being directed to control at least one of two or more controllable devices controlled by a respective one of the two or more controlling devices;
digitizing each of the received audible command signals;
attaching a unique identifier to each digitized audible command so as to uniquely correlate it to a respective controlling device;
determining a magnitude of each of the digitized audible command;
determining a digitized audible command with the greatest magnitude, and further determining to which controlling device the audible command is directed to on the basis of the unique identifier associated with the digitized audible command with the greatest magnitude;
performing speech recognition on the digitized audible command with the greatest magnitude; and
forwarding a command to the controlling device corresponding to the digitized audible command with the greatest magnitude, the command corresponding to the audible command that can be implemented on the controllable device controlled by the controlling device, wherein the step of determining a magnitude further comprises—
attaching a time-date stamp to the digitized audible command; and
verifying that the time-date stamp of the greatest magnitude digitized audible command is the same or earlier than any other digitized audible command, and wherein the method further comprises—
applying additional processing to determine which controlling device the audible command is directed to if the time-date stamp of the digitized audible command with the largest magnitude is later than any other digitized audible command, and wherein
the step of applying additional processing comprises—
checking one or more of an occupancy sensor reading, proximity sensor reading, and motion detector reading, each of which is associated with respective controlling devices to determine which controlling device the audible command is directed to, and wherein the method further comprises—
determining that the occupancy sensor reading associated with a respective controlling device matches the audible command in order to determine that the audible command should be applied to the controllable device controlled by the respective controlling device.
2. The method according to claim 1, further comprising:
receiving the command by the controlling device; and
controlling the controllable device in accordance with the received command.
3. The method according to claim 1, wherein
the step of attaching a time-date stamp to the digitized audible command is performed by the controlling device that received the audible command through use of a time-date stamp generator using a time synch protocol.
4. The method according to claim 1, wherein
the step of attaching a time-date stamp to the digitized audible command is performed by a central controller.
5. The method according to claim 4, further comprising:
generating a test signal to determine a travel time from each of the plurality of controlling devices to the central controller; and
modifying the time-date stamp of each received digitized audible command signal according to the travel time from a respective controlling device to the central processor, and using the modified time-date stamp to assist in determining to which controlling device the audible command signal is directed to.
6. The method according to claim 1, further comprising:
determining that the proximity sensor reading associated with a respective controlling device matches the audible command in order to determine that the audible command should be applied to the controllable device controlled by the respective controlling device.
7. The method according to claim 1, further comprising:
determining that the motion detector reading associated with a respective controlling device matches the audible command in order to determine that the audible command should be applied to the controllable device controlled by the respective controlling device.
8. The method according to claim 1, wherein the step of attaching a time-date stamp comprises:
generating the time-date stamp using a time-date stamp generator, the time-date stamp generator located in at least one controlling device that includes a plurality of microphones located at the controlling device;
averaging all of the time-date stamps generated at the controlling device with a plurality of microphones; and
attaching the averaged time-date stamp to each of the plurality of digitized audible commands prior to the step of transmitting.
9. The method according to claim 1, further comprising:
applying noise reduction processing.
10. The method according to claim 9, wherein the step of applying noise reduction to the audible command comprises:
filtering the received audible command signal in an analog domain to attenuate a first bandwidth of noise energy.
11. The method according to claim 9, wherein the step of applying noise reduction comprises:
using one or more of acoustic echo cancellation filtering, direction of arrival filtering, and directionally adaptive beam forming filtering, to filter the digitized audible command in a digital domain to attenuate noise energy and to amplify audible command energy.
12. The method according to claim 11, wherein the noise energy comprises:
noise energy generated by one or more of a fan motor, music, air conditioning noise, audio generated by multi-media presentations, and non-command words.
13. The method according to claim 1, further comprising:
receiving at least one additional audible command from at least one additional spatially separated microphone, the at least one additional spatially separated microphone associated with a respective controlling device;
digitizing the at least one additional audible command received from the at least one additional spatially separated microphone;
attaching a time-date stamp to the at least one additional digitized audible command, and further attaching a unique identifier to each time-date stamped additional digitized audible command so as to uniquely correlate it to its respective controlling device; and
using the at least one additional digitized audible command in the step of determining to which controlling device the audible command is directed to.
14. The method according to claim 1, wherein
the steps of determining a magnitude, determining to which controlling device the audible command is directed to, performing, and forwarding are performed by a central controller.
15. The method according to claim 1, wherein
the steps of receiving, digitizing, attaching the time-date stamp, and determining a magnitude, are performed by the controlling device.
16. The method according to claim 1, wherein
the controllable devices include one or more of a sensor, lighting control device, shade device, audio/video device, environmental control device, security device, household appliance, control device, and industrial device.
17. The method according to claim 1, wherein the controlling device comprises:
a keypad.
18. An acoustic sensor network comprising:
two or more controllable devices;
two or more controlling devices, each of two or more controlling devices comprising at least one respective microphone, and an analog to digital converter, each of the two or more controlling devices being adapted to control a respective one of the two or more controllable devices, and wherein
each of the two or more controlling devices are further adapted to receive an audible command through at least one respective microphone, the received audible command being directed to control one of the two or more controllable devices controlled by a respective controlling device, and wherein
each of the analog to digital converters are adapted to digitize the received audible command, and wherein
each of the two or more controlling devices are further adapted to attach a unique identifier to each of the digitized audible commands so as to uniquely correlate it to a respective controlling device and transmit the same; and
a central controller adapted to
receive each of the transmitted digitized audible commands,
determine a magnitude of each of the digitized audible commands,
determine a digitized audible command with the greatest magnitude, and
further determine to which controlling device the audible command is directed to on the basis of the unique identifier associated with the digitized audible command with the greatest magnitude, and wherein
the central controller is further adapted to
perform speech recognition on the digitized audible command with the greatest magnitude to determine a command for a controllable device, and wherein
the central controller is further adapted to
forward the command to the controlling device corresponding to the digitized audible command with the greatest magnitude, the command corresponding to the audible command that can be implemented on the controllable device controlled by the controlling device, wherein
each of the controlling devices are further adapted to attach a time-date stamp to the digitized audible commands through use of a time-date stamp generator using a time synch protocol, and wherein
the central controller is further adapted to
verify that the time-date stamp of the digitized audible command with the greatest magnitude is the same or earlier than the time-date stamp of any other digitized received audible command signal, and wherein
the central controller is further adapted to
generate a test signal to determine a travel time from each of the plurality of controlling devices to the central controller,
modify the time-date stamp of each received digitized audible command signal according to the travel time from a respective controlling device to the central processor, and
use the modified time-date stamp to assist in determining to which controlling device the audible command signal is directed to, and wherein
the central controller is further adapted to
apply additional processing to determine which controlling device the received audible command is directed to if the time-date stamp of the digitized audible command signal with the greatest magnitude is later than the time-date stamp any other digitized audible command, and wherein
the central controller is further adapted to
check one or more of an occupancy sensor reading, proximity sensor reading, and motion detector reading, each of which is associated with respective controlling devices to determine which controlling device the received audible command is directed to, and wherein
the central controller is further adapted to
determine that the occupancy sensor reading associated with a respective controlling device matches the received audible command in order to determine that the received audible command should be applied to the controllable device controlled by the respective controlling device.
19. The acoustic sensor network according to claim 18, wherein
the controlling device that receives the command is adapted to control the controllable device in accordance with the received command.
20. The acoustic sensor network according to claim 18, wherein
the central controller is further adapted to
determine that the proximity sensor reading associated with a respective controlling device matches the received audible command in order to determine that the received audible command should be applied to the controllable device controlled by the respective controlling device.
21. The acoustic sensor network according to claim 18, wherein
the central controller is further adapted to
determine that the motion detector reading associated with a respective controlling device matches the received audible command in order to determine that the received audible command should be applied to the controllable device controlled by the respective controlling device.
22. The acoustic sensor network according to claim 18, wherein the controlling device further comprises:
a noise reduction processing circuit.
23. The acoustic sensor network according to claim 22, wherein
the noise reduction processing circuit is adapted to
filter the received audible command in an analog domain to attenuate a first bandwidth of noise energy.
24. The acoustic sensor network according to claim 22, wherein
the noise reduction processing circuit is adapted to
use one or more of acoustic echo cancellation filtering, direction of arrival filtering, and directionally adaptive beam forming filtering, to filter the digitized audible command in a digital domain to attenuate noise energy and to amplify audible command energy.
25. The acoustic sensor network according to claim 24, wherein the noise energy comprises:
noise energy generated by one or more of a fan motor, music, air conditioning noise, audio generated by multi-media presentations, and non-command words.
26. The acoustic sensor network according to claim 18, further comprising:
at least one additional spatially separated microphone, adapted to receive the audible command, and associated with one of the at least two controlling devices;
an analog to digital converter associated with the at least one spatially separated microphone, and adapted to digitize the received audible command;
a time-date stamp generator adapted to add a time-date stamp to the additional digitized audible command, and further adapted to add a unique identifier to the additional digitized audible command, the unique identifier corresponding to the associated one of the controlling devices, and further wherein
the central controller uses the at least one additional digitized audible command to assist in determining to which controlling device the audible command is directed to.
27. The acoustic sensor network according to claim 18, wherein the controlling device further comprises:
a time-date stamp generator adapted to generate the time-date stamp; and
at least two microphones, each of which digitizes the received audible command.
28. The acoustic sensor network according to claim 27, wherein
the controlling device is further adapted to average all of the time-date stamps generated at the controlling device, and attach the averaged time-date stamps to each of the plurality of digitized audible commands prior to transmitting the same.
29. The acoustic sensor network according to claim 18, wherein
the controllable devices include one or more of a sensor, lighting control device, shade device, audio/video device, environmental control device, security device, household appliance, control device, and industrial device.
30. The acoustic sensor network according to claim 18, wherein the controlling device comprises:
a keypad.
US15/376,846 2014-09-10 2016-12-13 System and method for determining recipient of spoken command in a control system Active US10121473B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US15/376,846 US10121473B2 (en) 2015-09-10 2016-12-13 System and method for determining recipient of spoken command in a control system
US16/272,224 US10748539B2 (en) 2014-09-10 2019-02-11 Acoustic sensory network
US16/272,252 US10783888B2 (en) 2015-09-10 2019-02-11 System and method for determining recipient of spoken command in a control system

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/850,904 US20170097621A1 (en) 2014-09-10 2015-09-10 Configuring a control sysem
US15/261,296 US10204622B2 (en) 2015-09-10 2016-09-09 Acoustic sensory network
US15/376,846 US10121473B2 (en) 2015-09-10 2016-12-13 System and method for determining recipient of spoken command in a control system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US15/261,296 Continuation US10204622B2 (en) 2014-09-10 2016-09-09 Acoustic sensory network

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US15/261,296 Continuation US10204622B2 (en) 2014-09-10 2016-09-09 Acoustic sensory network
US16/272,252 Continuation US10783888B2 (en) 2015-09-10 2019-02-11 System and method for determining recipient of spoken command in a control system

Publications (2)

Publication Number Publication Date
US20170092272A1 US20170092272A1 (en) 2017-03-30
US10121473B2 true US10121473B2 (en) 2018-11-06

Family

ID=58406609

Family Applications (6)

Application Number Title Priority Date Filing Date
US15/261,296 Active US10204622B2 (en) 2014-09-10 2016-09-09 Acoustic sensory network
US15/376,846 Active US10121473B2 (en) 2014-09-10 2016-12-13 System and method for determining recipient of spoken command in a control system
US16/207,924 Active 2036-03-17 US11069350B2 (en) 2014-09-10 2018-12-03 System for audio distribution including network microphones for voice applications
US16/207,847 Active 2036-02-07 US11158313B2 (en) 2014-09-10 2018-12-03 System for audio distribution including network microphones for voice applications
US16/229,263 Active 2039-04-07 US11056109B2 (en) 2016-09-09 2018-12-21 Reference audio extraction device for use with network microphones with acoustic echo cancellation and beamforming
US16/230,099 Active 2039-08-26 US11170771B2 (en) 2016-09-09 2018-12-21 Reference audio extraction device for use with network microphones with acoustic echo cancellation and beamforming

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US15/261,296 Active US10204622B2 (en) 2014-09-10 2016-09-09 Acoustic sensory network

Family Applications After (4)

Application Number Title Priority Date Filing Date
US16/207,924 Active 2036-03-17 US11069350B2 (en) 2014-09-10 2018-12-03 System for audio distribution including network microphones for voice applications
US16/207,847 Active 2036-02-07 US11158313B2 (en) 2014-09-10 2018-12-03 System for audio distribution including network microphones for voice applications
US16/229,263 Active 2039-04-07 US11056109B2 (en) 2016-09-09 2018-12-21 Reference audio extraction device for use with network microphones with acoustic echo cancellation and beamforming
US16/230,099 Active 2039-08-26 US11170771B2 (en) 2016-09-09 2018-12-21 Reference audio extraction device for use with network microphones with acoustic echo cancellation and beamforming

Country Status (1)

Country Link
US (6) US10204622B2 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190172463A1 (en) * 2014-09-10 2019-06-06 Fred Bargetzi Acoustic sensory network
US20200067720A1 (en) * 2016-06-03 2020-02-27 Crestron Electronics, Inc. Dual Sourcing Power Over Ethernet On A Single Data Path
US10783888B2 (en) * 2015-09-10 2020-09-22 Crestron Electronics Inc. System and method for determining recipient of spoken command in a control system
US11069350B2 (en) 2014-09-10 2021-07-20 Crestron Electronics, Inc. System for audio distribution including network microphones for voice applications
US20220028377A1 (en) * 2018-12-19 2022-01-27 Samsung Electronics Co., Ltd. Electronic device and method for controlling same

Families Citing this family (126)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US10255566B2 (en) 2011-06-03 2019-04-09 Apple Inc. Generating and processing task items that represent tasks to perform
US11592723B2 (en) 2009-12-22 2023-02-28 View, Inc. Automated commissioning of controllers in a window network
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US11054792B2 (en) 2012-04-13 2021-07-06 View, Inc. Monitoring sites containing switchable optical devices and controllers
US10964320B2 (en) * 2012-04-13 2021-03-30 View, Inc. Controlling optically-switchable devices
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
KR20230137475A (en) 2013-02-07 2023-10-04 애플 인크. Voice trigger for a digital assistant
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
EP3937002A1 (en) 2013-06-09 2022-01-12 Apple Inc. Device, method, and graphical user interface for enabling conversation persistence across two or more instances of a digital assistant
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
CA3156883A1 (en) 2014-03-05 2015-09-11 View, Inc. Monitoring sites containing switchable optical devices and controllers
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
AU2015266863B2 (en) 2014-05-30 2018-03-15 Apple Inc. Multi-command single utterance input method
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US10609475B2 (en) 2014-12-05 2020-03-31 Stages Llc Active noise control and customized audio system
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US20160378102A1 (en) * 2015-06-23 2016-12-29 Greg Goodrich Remotely deployable inverse proactive status monitoring and reporting system and method of use
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US9877266B1 (en) * 2015-12-10 2018-01-23 Massachusetts Mutual Life Insurance Company Methods and systems for beacon-based management of shared resources
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US11227589B2 (en) 2016-06-06 2022-01-18 Apple Inc. Intelligent list reading
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
US10945080B2 (en) 2016-11-18 2021-03-09 Stages Llc Audio analysis and processing system
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
CN106782585B (en) * 2017-01-26 2020-03-20 芋头科技(杭州)有限公司 Pickup method and system based on microphone array
KR101925034B1 (en) 2017-03-28 2018-12-04 엘지전자 주식회사 Smart controlling device and method for controlling the same
CA3062537A1 (en) * 2017-05-08 2018-11-15 Eaton Intelligent Power Limited Lighting control with location based communication
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. User interface for correcting recognition errors
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
DK201770429A1 (en) 2017-05-12 2018-12-14 Apple Inc. Low-latency intelligent automated assistant
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK179560B1 (en) 2017-05-16 2019-02-18 Apple Inc. Far-field extension for digital assistant services
US10303715B2 (en) 2017-05-16 2019-05-28 Apple Inc. Intelligent automated assistant for media exploration
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
KR102355966B1 (en) * 2017-05-16 2022-02-08 애플 인크. Far-field extension for digital assistant services
US10627479B2 (en) * 2017-05-17 2020-04-21 Zerokey Inc. Method for determining the position of an object and system employing same
CN107170450B (en) * 2017-06-14 2021-03-12 上海智蕙林医疗科技有限公司 Voice recognition method and device
US9949344B1 (en) * 2017-07-31 2018-04-17 Amazon Technologies, Inc. Computing-device lighting schemas
WO2019028672A1 (en) * 2017-08-08 2019-02-14 General Electric Company Multi-purpose voice activated lighting apparatus
US10623199B2 (en) * 2017-09-07 2020-04-14 Lenovo (Singapore) Pte Ltd Outputting audio based on user location
CN107577188A (en) * 2017-09-30 2018-01-12 广东美的制冷设备有限公司 Air-conditioner control method, device, air conditioner and computer-readable recording medium
DE102017123443A1 (en) * 2017-10-09 2019-04-11 Lenze Automation Gmbh System for controlling and / or diagnosing an electric drive system
KR102527278B1 (en) * 2017-12-04 2023-04-28 삼성전자주식회사 Electronic apparatus, method for controlling thereof and the computer readable recording medium
US10971173B2 (en) * 2017-12-08 2021-04-06 Google Llc Signal processing coordination among digital voice assistant computing devices
CN117632482A (en) 2017-12-08 2024-03-01 谷歌有限责任公司 Signal processing coordination among digital voice assistant computing devices
US11490248B2 (en) * 2017-12-14 2022-11-01 Lutron Technology Company Llc Privacy mode for a wireless audio device
KR101972545B1 (en) * 2018-02-12 2019-04-26 주식회사 럭스로보 A Location Based Voice Recognition System Using A Voice Command
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US20190335567A1 (en) * 2018-04-26 2019-10-31 Eaton Intelligent Power Limited Using Audio Components In Electrical Devices To Enable Smart Devices
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US11488590B2 (en) 2018-05-09 2022-11-01 Staton Techiya Llc Methods and systems for processing, storing, and publishing data collected by an in-ear device
JP2019200393A (en) * 2018-05-18 2019-11-21 シャープ株式会社 Determination device, electronic apparatus, response system, method for controlling determination device, and control program
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
DK179822B1 (en) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
NO20181210A1 (en) * 2018-08-31 2020-03-02 Elliptic Laboratories As Voice assistant
US11087754B2 (en) 2018-09-27 2021-08-10 Coretronic Corporation Intelligent voice system and method for controlling projector by using the intelligent voice system
US11010561B2 (en) 2018-09-27 2021-05-18 Apple Inc. Sentiment prediction from textual data
US11100926B2 (en) * 2018-09-27 2021-08-24 Coretronic Corporation Intelligent voice system and method for controlling projector by using the intelligent voice system
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
US11170166B2 (en) 2018-09-28 2021-11-09 Apple Inc. Neural typographical error modeling via generative adversarial networks
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
KR102569365B1 (en) * 2018-12-27 2023-08-22 삼성전자주식회사 Home appliance and method for voice recognition thereof
US11638059B2 (en) 2019-01-04 2023-04-25 Apple Inc. Content playback on multiple devices
US10867615B2 (en) * 2019-01-25 2020-12-15 Comcast Cable Communications, Llc Voice recognition with timing information for noise cancellation
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
CN111726642B (en) * 2019-03-19 2023-05-30 北京京东尚科信息技术有限公司 Live broadcast method, apparatus and computer readable storage medium
US11393463B2 (en) * 2019-04-19 2022-07-19 Soundhound, Inc. System and method for controlling an application using natural language communication
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. User activity shortcut suggestions
DK201970511A1 (en) 2019-05-31 2021-02-15 Apple Inc Voice identification in digital assistant systems
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
US11227599B2 (en) 2019-06-01 2022-01-18 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
WO2021004067A1 (en) * 2019-07-10 2021-01-14 海信视像科技股份有限公司 Display device
WO2021056255A1 (en) 2019-09-25 2021-04-01 Apple Inc. Text detection using global geometry estimators
KR102629796B1 (en) * 2019-10-15 2024-01-26 삼성전자 주식회사 An electronic device supporting improved speech recognition
CN113223544B (en) * 2020-01-21 2024-04-02 珠海市煊扬科技有限公司 Audio direction positioning detection device and method and audio processing system
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11038934B1 (en) 2020-05-11 2021-06-15 Apple Inc. Digital assistant hardware abstraction
US11755276B2 (en) 2020-05-12 2023-09-12 Apple Inc. Reducing description length based on confidence
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones
CN112612232A (en) * 2020-12-01 2021-04-06 河南东方世纪交通科技股份有限公司 Tunnel monitoring system based on Internet of things
US11798533B2 (en) * 2021-04-02 2023-10-24 Google Llc Context aware beamforming of audio data
CN113329316A (en) * 2021-05-28 2021-08-31 四川长虹电器股份有限公司 Array microphone missing detection circuit and method
TWI774490B (en) * 2021-07-28 2022-08-11 台灣立訊精密有限公司 Communication terminal, communication system and audio information processing method

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020083060A1 (en) 2000-07-31 2002-06-27 Wang Avery Li-Chun System and methods for recognizing sound and music signals in high noise and distortion
US8340975B1 (en) * 2011-10-04 2012-12-25 Theodore Alfred Rosenberger Interactive speech recognition device and system for hands-free building control
US20150039319A1 (en) * 2012-08-09 2015-02-05 Huawei Device Co., Ltd. Command Handling Method, Apparatus, and System
US9514752B2 (en) * 2014-10-09 2016-12-06 Google Inc. Hotword detection on multiple devices
US20170069321A1 (en) * 2014-03-28 2017-03-09 Panasonic Intellectual Property Management Co., Ltd. Voice command input device and voice command input method
US9640174B2 (en) * 2013-01-02 2017-05-02 Lg Electronics Inc. Home appliance and operation method thereof
US9721566B2 (en) * 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5708704A (en) * 1995-04-07 1998-01-13 Texas Instruments Incorporated Speech recognition method and system with improved voice-activated prompt interrupt capability
US6768914B1 (en) * 1998-08-31 2004-07-27 Skyworks Solutions, Inc. Full-duplex speakerphone with wireless microphone
US20030103075A1 (en) 2001-12-03 2003-06-05 Rosselot Robert Charles System and method for control of conference facilities and equipment
US8042048B2 (en) 2005-11-17 2011-10-18 Att Knowledge Ventures, L.P. System and method for home automation
US8014533B2 (en) * 2005-12-14 2011-09-06 Freescale Semiconductor, Inc. Audio output driver for reducing electromagnetic interference and improving audio channel performance
US8300801B2 (en) * 2008-06-26 2012-10-30 Centurylink Intellectual Property Llc System and method for telephone based noise cancellation
US20150296247A1 (en) * 2012-02-29 2015-10-15 ExXothermic, Inc. Interaction of user devices and video devices
US9088336B2 (en) * 2012-09-06 2015-07-21 Imagination Technologies Limited Systems and methods of echo and noise cancellation in voice communication
US9032219B2 (en) * 2012-11-16 2015-05-12 Nuance Communications, Inc. Securing speech recognition data
KR102058918B1 (en) 2012-12-14 2019-12-26 삼성전자주식회사 Home monitoring method and apparatus
US9380443B2 (en) 2013-03-12 2016-06-28 Comcast Cable Communications, Llc Immersive positioning and paring
US9384754B2 (en) * 2013-03-12 2016-07-05 Comcast Cable Communications, Llc Removal of audio noise
US9800429B2 (en) 2013-03-15 2017-10-24 Smartbotics Inc. Adaptive home and commercial automation devices, methods and systems based on the proximity of controlling elements
US9338551B2 (en) * 2013-03-15 2016-05-10 Broadcom Corporation Multi-microphone source tracking and noise suppression
US9530428B2 (en) * 2013-05-14 2016-12-27 Mitsubishi Electric Corporation Echo cancellation device
US9978387B1 (en) * 2013-08-05 2018-05-22 Amazon Technologies, Inc. Reference signal generation for acoustic echo cancellation
US20150198938A1 (en) 2014-01-15 2015-07-16 Green Edge Technologies, Inc. Systems, devices, methods and graphical user interface for configuring a building automation system
US10325591B1 (en) * 2014-09-05 2019-06-18 Amazon Technologies, Inc. Identifying and suppressing interfering audio content
US10204622B2 (en) 2015-09-10 2019-02-12 Crestron Electronics, Inc. Acoustic sensory network
US10623857B2 (en) * 2016-11-23 2020-04-14 Harman Becker Automotive Systems Gmbh Individual delay compensation for personal sound zones

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020083060A1 (en) 2000-07-31 2002-06-27 Wang Avery Li-Chun System and methods for recognizing sound and music signals in high noise and distortion
US8340975B1 (en) * 2011-10-04 2012-12-25 Theodore Alfred Rosenberger Interactive speech recognition device and system for hands-free building control
US20150039319A1 (en) * 2012-08-09 2015-02-05 Huawei Device Co., Ltd. Command Handling Method, Apparatus, and System
US9640174B2 (en) * 2013-01-02 2017-05-02 Lg Electronics Inc. Home appliance and operation method thereof
US20170069321A1 (en) * 2014-03-28 2017-03-09 Panasonic Intellectual Property Management Co., Ltd. Voice command input device and voice command input method
US9514752B2 (en) * 2014-10-09 2016-12-06 Google Inc. Hotword detection on multiple devices
US9721566B2 (en) * 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers

Non-Patent Citations (19)

* Cited by examiner, † Cited by third party
Title
"A Background Noise Reduction Technique Using Adapting Noise Cancellation for Microphone Arrays," Spalt, T., et al., American Institute of Aeronautics and Astronautics, Jun. 2011.
"A New DOA Estimation Method Using a Circular Microphone Array," Karbasi, A., et al., School of Comp. and Commun. Sciences, Ecole Polytechnique F'ed'erale de Lausanne CH-1015 Lausanne, Switzerland, and Common Platform Software Research Labs., NEC Corporation Kawasaki 211-8666, Japan, 2007.
"Background Noise Reduction: One of your smartphone's greatest tools," Thorn, T., Mobile Phones, Feb. 28, 2014, http://www.techradar.com/news/phone-and-communications/mobile-phones/background-noise-reduction-one-of-your-smartphone-s-greatest-tools-1228924.
"Direction of Arrival Estimation Using the Parameterized Spatial Correlation Matrix," Dmochowski, J., et al., IEEE Transactions on Audio, Speech, and Language Processing, vol. 15, No. 4, May 2007.
"Lutron Launches HomeKit-Enabled Caseta Wireless Smart Bridge," Ritchie, Renie, Jun. 2, 2015.
"Microphone Arrays: A Tutorial," McCowan, I., derived from "Robust Speech Recognition using Microphone Arrays," McCowan, I., PhD Thesis, Queensland University of Technology, Australia, 2001.
"Multi-Microphone Adaptive Noise Reduction Strategies for Coordinated Stumulation I Bilateral Cochlear Implant Devices," Kokkinakis, K., et al., Department of Electrical Engineering, University of Texas at Dallas, Richardson, Texas, May 2010.
"Non-invasive Time Synchronization for ZigBee Wireless Sensor Networks," Ferrari, P., et al., University of Brescia, DEA, Brescia, 38 Via Branze, Italy, 978-1-4244-2275, IEEE, Mar. 2008.
"Robust Adaptive Beamforming Algorithm Using Instantaneous Direction of Arrival with Enhanced Noise Suppression Capability," Yoon, B., et al., Department of Electrical Engineering, California Institute of Technology, Pasadena, CA, Proceedings of International Conference on Audio, Speech and Signal Processing ICASSP, Apr. 2007.
"Time Synchronization for ZigBee Networks," Cox., D., et al, Electrical and Computer Engineering Department, University of Alabama in Huntsville, Huntsville, AL, IEEE 0-7803-8808-09/05, Sep. 2005.
"Why Voice User Interfaces with Bemforming Microphones Work Better with xCore-Voice," Neil, P., Apr. 28, 2016, http://www.xmos.com/blog/xmos/post/introducing-xcore-voice-smart-microphone-applications.
"With HomeKit Support in the Caseta Wireless Smart Bridge Lutron lets iPhone and iPad Owners Light Up Their Lives," http://www.imore.com/lutron-launches-hoekit-enabled-cas-ta-wireless-smart-bridge; Jun. 2, 2015.
"XMOS: xCore-Voice USB Smart Microphone: High Performance Directional Microphone," XMOS Product Brief, 2016.
2018_01_11_OfficeAction_328_01.
2018_04_11_CP00328_01_Amnd_NFOA.
http://www.vocal.com/voice/; Sep. 1, 2016.
https://www.xmos.com/support/boards?product=35564; Sep. 1, 2016.
Webpage printout of Review of Amazon Echo Product; https://www.engadget.com/products/amazon/echo/; Sep. 4, 2016.
Yoon et al ("Robust Adaptive Beamforming Algorithm Using Instantaneous Direction of Arrival with Enhanced Noise Suppression Capability"), ICASSP, Apr. 2007. *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190172463A1 (en) * 2014-09-10 2019-06-06 Fred Bargetzi Acoustic sensory network
US10748539B2 (en) * 2014-09-10 2020-08-18 Crestron Electronics, Inc. Acoustic sensory network
US11069350B2 (en) 2014-09-10 2021-07-20 Crestron Electronics, Inc. System for audio distribution including network microphones for voice applications
US11158313B2 (en) 2014-09-10 2021-10-26 Crestron Electronics, Inc. System for audio distribution including network microphones for voice applications
US10783888B2 (en) * 2015-09-10 2020-09-22 Crestron Electronics Inc. System and method for determining recipient of spoken command in a control system
US20200067720A1 (en) * 2016-06-03 2020-02-27 Crestron Electronics, Inc. Dual Sourcing Power Over Ethernet On A Single Data Path
US11456884B2 (en) * 2016-06-03 2022-09-27 Crestron Electronics, Inc. Dual sourcing power over ethernet on a single data path
US11764983B2 (en) * 2016-06-03 2023-09-19 Crestron Electronics, Inc. Dual sourcing power over ethernet on a single data path
US20220028377A1 (en) * 2018-12-19 2022-01-27 Samsung Electronics Co., Ltd. Electronic device and method for controlling same
US11908464B2 (en) * 2018-12-19 2024-02-20 Samsung Electronics Co., Ltd. Electronic device and method for controlling same

Also Published As

Publication number Publication date
US20190103113A1 (en) 2019-04-04
US11069350B2 (en) 2021-07-20
US20170076721A1 (en) 2017-03-16
US11170771B2 (en) 2021-11-09
US20170092272A1 (en) 2017-03-30
US11158313B2 (en) 2021-10-26
US10204622B2 (en) 2019-02-12
US20190108838A1 (en) 2019-04-11
US20200175977A1 (en) 2020-06-04
US20200175978A1 (en) 2020-06-04
US11056109B2 (en) 2021-07-06

Similar Documents

Publication Publication Date Title
US10121473B2 (en) System and method for determining recipient of spoken command in a control system
US10783888B2 (en) System and method for determining recipient of spoken command in a control system
US11120636B2 (en) Smart-home device placement and installation using augmented-reality visualizations
US11501615B2 (en) Systems, methods, and devices for activity monitoring via a home assistant
US10985936B2 (en) Customized interface based on vocal input
US11929844B2 (en) Customized interface based on vocal input
US10545724B2 (en) Method and apparatus for proximity detection for device control
WO2019236120A1 (en) Systems and methods of ultrasonic sensing in smart devices
US20160155223A1 (en) Systems, devices, and methods for mapping devices to realize building automation and energy management
US10748539B2 (en) Acoustic sensory network
US11190485B2 (en) Naming smart devices
KARIMOV Hybrid Home Area Network for Automation System

Legal Events

Date Code Title Description
AS Assignment

Owner name: CRESTRON ELECTRONICS INC., NEW JERSEY

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BARGETZI, FRED;SEFERIAN, ARA;STENE, JOSH;AND OTHERS;REEL/FRAME:041528/0058

Effective date: 20161205

STCF Information on status: patent grant

Free format text: PATENTED CASE

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 4