Patent Description:
In confined areas, such as in a school or a private or public building, detecting and locating the source of gunshots is a complicated problem. A gunshot typically generates several sounds including the gunshot itself, the bullet's bow shockwave, noise from bullet impacts and noise of reflected gunshot sounds. In addition, numerous noises are generated in buildings that may be mistakenly identified as gunshots.

The broad concept of detecting gunshots utilizing acoustics is known. More specifically, it is known to provide a gunshot detection system including an array of acoustic sensors positioned in a pattern which enables signals from the sensors to be employed to not only detect the firing of a gunshot but to also locate the origin of the shot. One main requirement of such a system is the need to accurately distinguish between the sound produced from a gunshot and a host of other ambient sounds. In at least one known arrangement, a microphone is used to detect each sound, which is then amplified, converted to an electrical signal and then the electrical signal is compared with a threshold value above which a gunshot sound is expected to exceed.

Recently, gunshot detection systems with improved accuracy, dependability, and effectiveness have been described. One such system is described in International Publication Number <CIT> and entitled "System and Method for Acoustically Identifying Gunshots Fired Indoors. " This system provides for low false alarms or false positives and high detection rates by employing two microelectromechanical microphones (MEMs) having different sensitivity levels. Acoustic signals from a first microphone with lower sensitivity (for example, making the anomaly detection microphone essentially deaf to routine sounds) are first analyzed for a peak amplitude level large enough to be a potential gunshot. Then acoustic signals from a second microphone having a higher sensitivity are then analyzed further to confirm that the sound was a gunshot.

Gunshot detection methods have also been proposed that can count the number of gunshots fired, particularly from an automatic or fast acting weapon. One such method is described in International Publication Number <CIT> and entitled "Method for Acoustically Counting Gunshots Fired Indoors. " In this method, an acoustic signature of captured noise is analyzed to accurately count how many shots are fired. The method can be employed to identify that the gun is an automatic or rapid fire weapon, which information can be provided to emergency personnel.

Additionally, gunshot detection system that can accurately determine where sensed events are located have been proposed. One such system is described in International Publication Number <CIT> and entitled "System and Method for Identifying and Locating Sensed Events. " Here, a sensor network is employed to detect an event in the form of an audible signal. The event is time stamped and sent to a controller, which evaluates the event as either unique or a multiple detection using the sensor's time of alarm to determine which sensor activated first and to suppress subsequent alarms for the same event. This process is known as de-confliction.

<CIT> describes a threat sensing system including a plurality of threat sensing devices distributed throughout a school or facility, with each of the threat sensing devices comprising one or more acoustic sensors, one or more gas sensors, and a communication circuit or communication device configured to output sensor data to a system gateway. The system gateway is configured to receive and process the sensor data output from the threat sensing devices and determine whether the processed sensor data corresponds to one of a predetermined plurality of known threats (e.g., a gunshot) and, if so, to communicate the existence of the threat, the processed sensor information, and/or predetermined messaging information to one or more recipient devices (e.g., first responders, dispatchers).

Features can be added to these gunshot detection systems to make them more useful in a wider range of contexts. For example, audio capture and recording, live monitoring and two-way communication via distributed gunshot sensor units would be useful. Moreover, in many cases it would be beneficial to retain all recorded event data and/or audio data for the data for forensic processing, for example, by law enforcement entities.

In general, according to one aspect, the invention features a system for detecting gunshots within a premises as set out in claim <NUM>.

Typically, the control panel might determine which one of the gunshot sensor units is closest to the source of the acoustic anomaly based on the received event data and instruct the de-conflicted gunshot sensor units that are not closest to the source to locally store the audio data. During this process, the control panel would also generate and store order information indicating an order in which the gunshot sensor units detected the acoustic anomalies based on the received event data.

In addition, the control panel might generate and display a graphical user interface, on a touch-screen display panel, for example, for providing sensor information to an operator and for receiving input from the operator indicating selections of different gunshot sensor units for retrieval of the locally stored audio data and/or event data.

The gunshot sensor units can send the locally stored audio data and/or event data to computing devices of law enforcement entities and/or to a cloud gunshot detection management system. Such a cloud gunshot detection management system would generally be characterized as a system of application servers and databases that are only accessible over data connections that include public networks among other networks.

In addition to the audio data, the gunshot sensor units can also generate environmental data indicating environmental conditions in an area surrounding the gunshot sensor unit or the unit itself. This environmental data is generated via environmental sensors of the gunshot sensor units, including accelerometers, temperature sensors, humidity sensors, pressure sensors, e.g., barometric pressure sensors, and/or low frequency radar sensors.

In general, according to another aspect, the invention features a method for detecting gunshots within a premises as set out in claim <NUM>.

The above and other features of the invention including various novel details of construction and combinations of parts, and other advantages, will now be more particularly described with reference to the accompanying drawings and pointed out in the claims. It will be understood that the particular method and device embodying the invention are shown by way of illustration and not as a limitation of the invention. The principles and features of this invention may be employed in various and numerous embodiments without departing from the scope of the invention, as defined in the appended claims.

<FIG> is a schematic diagram of an exemplary gunshot detection system <NUM>.

In general, the gunshot detection system <NUM> monitors, detects and reports the occurrence of gunshots or other emergencies within a premises <NUM> such as a building (e.g. office, hospital, warehouse, retail establishment, shopping mall, school, multi-unit dwelling, government building).

In the illustrated example, the premises <NUM> is a simplified floor example of a building with three areas <NUM>, a lecture hall <NUM>-<NUM>, classroom A <NUM>-<NUM>, and classroom B <NUM>-<NUM>. Two gunshot sensor units <NUM>-<NUM>, <NUM>-<NUM> are located in the lecture hall <NUM>-<NUM>, while one gunshot sensor unit <NUM>-<NUM> is located in classroom A <NUM>-<NUM>, and one gunshot sensor unit <NUM>-<NUM> is located in classroom B <NUM>-<NUM>.

In the illustrated embodiment, the gunshot detection system <NUM> includes gunshot sensor units <NUM>, a control panel <NUM>, and a communication network <NUM>. In general, and in one configuration, the gunshot sensor units <NUM> detect conditions indicative of the gunshots or other emergencies and alert the control panel <NUM>, which takes one or more responsive actions such as alerting building personnel, law enforcement, and/or a monitoring center, or collecting and presenting data pertaining to the detected gunshots to an operator of the control panel <NUM>. The gunshot sensor units <NUM> and the control panel <NUM> communicate over the communication network <NUM>.

More specifically, the gunshot sensor units <NUM> are distributed throughout the premises <NUM>, for example, in areas <NUM> of the premises such as rooms, hallways, lobbies or stairways, to name a few examples. The gunshot sensor units <NUM> detect acoustic anomalies indicating potential gunshots and generate audio data depicting the acoustic anomalies. The gunshot sensor units <NUM> also generate event data based on and descriptive of the acoustic anomalies and locally store and/or send the event data to the control panel <NUM>.

The event data often includes: audio data (e.g. digitized audio clips) depicting the acoustic anomalies; metadata including, for example, time information indicating when the acoustic anomalies started and/or stopped, duration information for the acoustic anomalies and/or the audio data depicting the acoustic anomalies, file information, and identification information for the gunshot sensor unit <NUM>; environmental data indicating environmental conditions in the areas <NUM> where the gunshot sensor units <NUM> are located; position information indicating positions of detected bodies (e.g. an active shooter, occupants of the premises <NUM>) with respect to the gunshot sensor unit <NUM>; and other sensor data generated by the gunshot sensor unit <NUM>. The event data can be locally stored, collected by the control panel <NUM>, transferred to remote servers, and/or transferred to devices of law enforcement entities for forensic analysis, for example. Additionally, some event data might be generated by other devices such as distributed devices of building management systems via environmental sensors of the distributed devices, for example.

On the other hand, the control panel <NUM> directs the overall functionality of the gunshot detection system <NUM> by sending instructions (e.g. control messages) to be executed by the gunshot sensor units <NUM>, receiving the event data from the gunshot sensor units <NUM> and taking the responsive actions based on the event data. The control panel <NUM> receives preliminary event data (namely truncated audio data) from multiple gunshot sensor units <NUM> and might perform a de-confliction process in order to determine which event data from the different sensor units <NUM> pertains to the same detected acoustic anomaly and which of the gunshot sensor units <NUM> is closest to the source of the acoustic anomaly based on, for example, which of the units first detected the acoustic anomaly. The control panel <NUM> might then send instructions to the gunshot sensor unit <NUM> closest to the source to send full event data (including a full audio data sample, environmental data, and other sensor data) to the control panel <NUM> for further processing and/or to be presented to the operator. At the same time, the control panel <NUM> instructs de-conflicted gunshot sensor units <NUM> that were not closest to the source to locally store the full event data for future retrieval.

It should be noted that the analytical processes performed by the control panel <NUM> and/or the gunshot sensor units <NUM> to be described might be performed in any combination of steps, using any combination of the described features of each of the devices, including omitting steps and/or features.

<FIG> is a block diagram showing an exemplary gunshot sensor unit <NUM>.

The gunshot sensor unit <NUM> includes a controller <NUM>, local nonvolatile storage <NUM>, a wired and/or wireless network interface <NUM>, a battery backup <NUM>, an anomaly detection microphone <NUM>, an audio capture microphone <NUM>, and an environmental board <NUM>.

The controller <NUM> executes firmware/operating system instructions and generally directs the functionality of the gunshot sensor unit <NUM>. In one example, the controller <NUM> is small single-board computer. In other examples, the controller is a microcontroller unit or a system on a chip (SoC), including one or more processor cores along with memory and programmable input/output peripherals such as analog to digital converts and digital to analog converters.

The wired and/or wireless network interface <NUM> provides connectivity with the control panel <NUM> and possibly other devices via the communication network <NUM>. In addition, the network might also provide power to the device, in many examples. Direct current (DC) might be superimposed upon the data that is transmitted between the devices and other nodes on the network such as in Power over Ethernet (PoE) systems. In other examples, the gunshot sensor units <NUM> might receive power from alternative power supplies such as a supervised power circuit, ambient solar power, or motion harvesting power generation.

The battery backup <NUM> provides backup power to the gunshot sensor unit <NUM>, which might normally receive power from a primary power source such as over the networks or such as a mains power line (not pictured) supplying alternating current electric power to the gunshot sensor unit <NUM>, typically at voltages ranging from <NUM> to <NUM> Volts. In one embodiment, the mains power line or house power provides power at <NUM> or <NUM> Volts (V) to the control panel <NUM>, which then feeds the power to the gunshot sensor units <NUM> through a supervised power circuit at <NUM> V. In the event that the primary power source could not provide power (e.g. due to being damaged in a shooting incident), the battery backup <NUM> would continue to power the gunshot sensor unit <NUM> typically at <NUM> V.

The anomaly detection microphone <NUM> detects the acoustic anomalies, while the audio capture microphone <NUM> captures ambient sound and generates the audio data. In one embodiment, both microphones <NUM>, <NUM> are micro electro-mechanical system (MEMS) microphones having different sensitivity levels, and the controller <NUM> is configured to sample the microphones <NUM>, <NUM> such that outputs from the microphones can be continuously analyzed in near real time for an acoustic signature. The anomaly detection microphone <NUM> has the lower sensitivity level and a high clipping level, while the audio capture microphone <NUM> has the higher sensitivity level. The audio capture microphone <NUM> continuously captures ambient sound, which is stored in a loop of a preconfigured buffer duration (e.g. <NUM> seconds)in a ring buffer <NUM> of the controller <NUM>. At the same time, incoming acoustic signals from the anomaly detection microphone <NUM> are continuously analyzed to detect acoustic anomalies, particularly by searching the incoming acoustic signal for a peak amplitude level large enough to be at least preliminarily identified as a gunshot.

Once an indication of a possible gunshot has been triggered utilizing the anomaly detection microphone <NUM>, further processing may be performed by the controller <NUM>. The controller <NUM> analyzes the sound stored in the loop to confirm that the acoustic anomaly is a gunshot. If confirmed as a gunshot, the controller <NUM> stores the captured sound in the loop buffer <NUM>, which would include the acoustic anomaly and the previously captured sound (up to the entirety of the preconfigured buffer duration, which is <NUM> seconds in this example) as audio data <NUM> in the local nonvolatile storage <NUM> associated with different event files <NUM> or instances of event data for different gunshot detection events, along with the metadata <NUM> and the environmental data <NUM> for the events. In embodiments, the local nonvolatile storage <NUM> could be fixed storage such as flash memory, or removable storage such as an SD card, among other examples.

In another example, the gunshot sensor unit <NUM> includes one or more additional microphones for generating audio data to be live-streamed to the control panel <NUM> for the purposes of live-monitoring and/or two-way communication. This configuration allows the anomaly detection microphone <NUM> and the audio capture microphone <NUM> to be used exclusively for the primary purpose of the units, namely, detecting gunshots.

The environmental board <NUM> includes a series of environmental sensors for generating the environmental data. In the illustrated example, the environmental board <NUM> includes a <NUM>-axis accelerometer <NUM>, which detects the orientation of the gunshot sensor unit in the earth's gravitational field and movements of the unit, a temperature sensor <NUM>, which detects ambient air temperature, a humidity sensor <NUM>, which detects the humidity of the ambient air, a pressure sensor <NUM>, which detects the atmospheric pressure of the ambient air, a gas detector <NUM> which detects the presence of gases such as carbon monoxide (CO) and ammonia (NH<NUM>), which are typical components of fumes from firing weapons, and a smoke sensor <NUM> for detecting smoke and/or other airborne particles emitted from firing a weapon.

<FIG> is a block diagram showing an exemplary gunshot sensor unit <NUM> according to another embodiment of the present invention. Here, the gunshot sensor unit includes speakers <NUM> for providing audio playback of audio data streamed from the control panel <NUM> or another source. The speakers <NUM>, in combination with the unit's microphone(s) enable two-way communication between, for example, an operator of the control panel <NUM> and individuals the area <NUM> where the gunshot sensor unit <NUM> is located, such as an active shooter or occupants of the premises <NUM>.

<FIG> is a block diagram showing an exemplary gunshot sensor unit <NUM> according to another embodiment of the present invention. Here, the gunshot sensor unit includes a low frequency RADAR sensor <NUM> (operating in a <NUM>-<NUM> range, for example), which is used to generate position information <NUM> indicating positions with respect to the gunshot sensor unit <NUM> of bodies in the area <NUM> where the gunshot sensor unit <NUM> is located, such as those of an active shooter or occupants of the premises <NUM>. The position information preferably further includes information indicating relative spatial position as well as body position (e.g. upright, prone), along with physiological indicators. The position information <NUM> is generated and stored with the event data in the local nonvolatile storage <NUM>, sent to the control panel <NUM>, and/or provided to law enforcement.

In one embodiment, the low frequency RADAR sensor <NUM> could operate in conjunction with a wireless receiver and/or antenna (e.g. of the wired and/or wireless network interface <NUM>) for receiving radiofrequency signals according to IEEE <NUM> standards such as Bluetooth or Bluetooth Low Energy, among other examples. Individuals such as occupants, armed personnel including law enforcement officers or security personnel and/or first responders are then equipped with passive or active tags which broadcast wireless signals including, for example, identification information for the tags and/or the individuals. Each gunshot sensor unit <NUM> receives the broadcast identification information via the wireless receiver and sends the information to the control panel <NUM>, which resolves the identity and location of the individual based on the identification information and the location of the gunshot sensor unit <NUM>. The control panel <NUM> also determines whether there were individuals detected via the low frequency RADAR sensor <NUM> that were not detected via the wireless receiver and infer that the unidentified individual (e.g. without an actively transmitting tag) is the active shooter and/or a victim/civilian.

<FIG> is a block diagram showing an exemplary control panel <NUM>.

The control panel <NUM> includes a central processing unit (CPU) <NUM>, nonvolatile memory <NUM>, a wired and/or wireless network interface <NUM>, a display <NUM>, a microphone <NUM>, and speakers <NUM>.

Similar to analogous components on the gunshot sensor units <NUM>, the wired and/or wireless network interface <NUM> provides connectivity with the gunshot sensor units <NUM> and possibly other devices via the communication network <NUM>. In some examples, the control panel may also supply power to the units.

The speakers <NUM> provide audio playback of streamed audio data from the gunshot sensor units <NUM>. The audio data can be the locally stored audio data <NUM> depicting the acoustic anomalies or can be captured and streamed live for live monitoring of the ambient sound in the area <NUM> where the gunshot sensor unit <NUM> is located.

The microphone <NUM> is used to capture speech sound from the operator of the control panel <NUM> for generating audio data to be streamed back to the gunshot sensor units <NUM> during two-way communication between the control panel <NUM> and the gunshot sensor units <NUM>.

The CPU <NUM> executes firmware instructions and an operating system (OS) <NUM> and generally directs the functionality of the control panel <NUM>. The OS <NUM> interfaces with the hardware components of the control panel <NUM> for access by an audio analytics module <NUM> and a command and control application <NUM>, which are software processes executing on top of the OS <NUM>.

The audio analytics module <NUM> performs a higher-level analysis of audio data received from the gunshot sensor units <NUM>, for example, in order to confirm that the audio data depicts gunshots when a first analysis by the controller <NUM> of the gunshot sensor unit <NUM> is unable to confirm the gunshots with a certainty above a predetermined threshold. The audio analytics module <NUM> performs the analysis by retrieving audio data files from a first-in-first-out (FIFO) audio buffer <NUM> in the nonvolatile memory <NUM>, determining whether the ambient sound and/or acoustic anomalies depicted in the audio data files include gunshots and instructing the gunshot sensor unit <NUM> to either delete or permanently store the audio data and/or event data in local nonvolatile storage <NUM>. The higher-level analysis might also include analyzing the sensor data generated by the sensors of the environmental board <NUM> of the gunshot sensor units <NUM> for contextual information that might confirm that an acoustic anomaly was a gunshot. In one example, the audio analytics module <NUM> could isolate a loud acoustic signature in the audio data that could be a gunshot and determine whether the sensor data indicates that the presence of gases such as carbon monoxide (CO) and ammonia (NH<NUM>) and/or smoke and other airborne particles were detected by the gas detector <NUM> and the smoke sensor <NUM> shortly after the occurrence of the acoustic anomaly.

The command and control application <NUM>, in general, generates a graphical user interface (GUI) <NUM> that is rendered on the display <NUM> (e.g. touchscreen display) of the control panel <NUM>. The GUI <NUM> presents gunshot sensor unit information to the operator and receives input indicating selections of various options for controlling the gunshot sensor units <NUM> such as retrieving locally stored event data and/or audio data, initiating live monitoring, and/or initiating two-way communication between the control panel <NUM> and the gunshot sensor units <NUM>. Based on the received input, the command and control application <NUM> generates instructions (e.g. control messages) to be executed by the gunshot sensor units <NUM>, for example.

The gunshot detection system <NUM> also includes a gunshot event database <NUM> for storing event data, audio data, environmental data, position information, and any generated audio, event and/or environmental data analytics information, such as forensic data generated as a result of processing the data received from the gunshot sensor units <NUM>, or order information indicating the order in which the gunshot sensor units <NUM> detected the gunshots. In the illustrated example, the gunshot event database <NUM> is stored in the nonvolatile memory <NUM> of the control panel <NUM>. However, in other examples, the gunshot event database <NUM> might be part of a cloud management system and/or connected services system, which is accessible only over public networks, or even on the local nonvolatile storage <NUM> of the gunshot sensor units <NUM> themselves.

<FIG> is a sequence diagram illustrating an exemplary process by which the gunshot detection system <NUM> detects gunshots, locally stores event data and/or audio data, analyzes the event data and/or audio data and provides the event data and/or audio data to a law enforcement entity <NUM>.

First, in step <NUM>, three different gunshot sensor units <NUM>-<NUM>, <NUM>-<NUM>, <NUM>-<NUM> detect gunshots at different times relative to each other. This is a common scenario since the sound of the same gunshot will have different propagation delays to different sensors at different distances from the gunshot. The gunshot sensor units <NUM> detect acoustic anomalies indicative of the gunshot via the anomaly detection microphones <NUM>, for example, by searching the incoming acoustic signal from the anomaly detection microphone <NUM> for a peak amplitude level large enough to be identified as a gunshot. The timing of when the gunshot sensor units <NUM> detect the same gunshots relative to each other is significant, because the first gunshot sensor unit <NUM> to detect an acoustic anomaly can be inferred to be closest to the source of the acoustic anomaly and thus closest to an active shooter. In the illustrated example, the gunshot sensor unit <NUM>-<NUM> detects the gunshots first, followed by the gunshot sensor units <NUM>-<NUM>, <NUM>-<NUM>.

In step <NUM>, each of the three gunshot sensor units <NUM>-<NUM>, <NUM>-<NUM>, <NUM>-<NUM>, having detected the gunshots, generate and locally store event data based on the acoustic anomaly including metadata indicating the timing of the gunshots, audio data depicting the gunshots and any other ambient sound captured by the audio capture microphone <NUM> (e.g. audio data starting at a preconfigured buffer duration such as <NUM> seconds before the gunshots were detected and proceeding through the gunshot sounds and after), environmental data generated by the sensors of the environmental board <NUM>, and/or position information generated by the low frequency radar sensor <NUM>.

In step <NUM>, the three gunshot sensor units <NUM>-<NUM>, <NUM>-<NUM>, <NUM>-<NUM> alert the control panel <NUM> that gunshots were detected and send at least some of the event data to the control panel <NUM>. In one example that does not fall under the scope of the claims, the gunshot sensor units <NUM> might send only a preliminary portion of the event data to the control panel <NUM>, such as the metadata indicating the timing information for the gunshots. According to an embodiment the invention, the gunshot sensor units <NUM> send truncated audio data, i.e., audio data representing less than <NUM> second of sound, depicting only the acoustic anomalies (e.g. with ambient sound before and after the acoustic anomalies removed). In another example that does not fall under the scope of the claims, the gunshot sensor units <NUM> might stream the captured audio data to the control panel <NUM> for higher level analysis and include audio data representing more than <NUM> second of sound, such as the entire preconfigured buffer duration (e.g. all <NUM> seconds) of buffered audio data. In yet another example that does not fall under the scope of the claims, the gunshot sensor units <NUM> might send all of the recorded event data to the control panel <NUM>.

In step <NUM>, the control panel <NUM> performs a de-confliction process and determines which gunshot sensor unit <NUM> was closest to the source of the acoustic anomaly based on the received truncated audio data. As previously described, this process involves determining which event data received from the gunshot sensor units <NUM> pertain to the same acoustic anomalies and then determining which of the gunshot sensor units <NUM> detected each of the acoustic anomalies first (e.g. based on the metadata indicating the timing information for the gunshots). The control panel <NUM> generates and stores, for example, in the gunshot event database <NUM> of the gunshot detection system <NUM>, order information indicating an order in which the gunshot sensor units <NUM> detected each of the gunshots.

In step <NUM>, the control panel <NUM> sends instructions to the gunshot sensor unit <NUM>-<NUM> that was determined to be closest to the gunshots to send its full event data, including a full captured audio data sample depicting the gunshots and any ambient sound before and/or after the gunshots. In response, the gunshot sensor unit <NUM>-<NUM> sends the full event data including the full audio data sample to the control panel <NUM>. In one example, full the event includes the <NUM> seconds of buffered audio data and possibly more than <NUM> minute of stored audio data from after the gunshot. In addition, full event data also includes, in some examples, acceleration information from the <NUM>-axis accelerometer <NUM>, detected temperature from the temperature sensor <NUM>, detected humidity from the humidity sensor <NUM>, detected pressure from the pressure sensor <NUM> along with position information from the RADAR sensor <NUM>, detected gases from the gas detector <NUM>, and detected smoke and/or particles from the smoke sensor <NUM>.

In step <NUM>, the control panel <NUM> sends instructions to the de-conflicted gunshot sensor units <NUM> that were not closest to the source of the gunshots to encrypt and/or permanently store the event data and/or audio data in the local nonvolatile storage <NUM>. In response, the de-conflicted gunshot sensor units <NUM>-<NUM>, <NUM>-<NUM> permanently store the event data and/or audio data in the local nonvolatile storage <NUM> as encrypted or plaintext event files <NUM>, including the metadata <NUM>, audio data <NUM>, environmental data <NUM> and position information. In some examples, the control panel instructs the gunshot sensor units <NUM> to save only the preconfigured buffer duration (e.g. <NUM> seconds) of buffered audio data. In other examples, the control panel instructs the gunshot sensor units <NUM> to save longer periods of audio data such audio data depicting longer that <NUM> seconds of audio stretching from before the occurrence of the gunshot to after the gunshot.

In step <NUM>, the control panel <NUM> provides audio playback of the audio data received from the gunshot sensor unit <NUM>-<NUM> closest to the source of the gunshots to the operator of the control panel <NUM> via the speakers <NUM>. In one example, the operator might confirm the gunshots or determine, based on the audio playback, that the acoustic anomalies were not gunshots.

At this point, the control panel <NUM>, possibly based on input received from the operator via the GUI <NUM>, can take any number of responsive actions such as alerting law enforcement <NUM>, initiating building security procedures, or dismissing the alerts based on determining that the acoustic anomalies were not gunshots, among other examples.

In the illustrated example, the control panel <NUM>, in step <NUM>, proceeds to analyze the event data, including the audio data and environmental data, for example, to confirm the gunshots, detect destructive events such as explosions from an improvised explosive device (IED) based on the environmental data, detect seismic activity such as earthquakes based on the environmental data, or generate forensic data to be later used by law enforcement <NUM> or other entities in investigating the event.

In step <NUM>, the gunshot detection system <NUM> provides the event data, including the audio data, and any generated analytics information to law enforcement entities <NUM>. This might include transferring the data to computing devices of the law enforcement entities <NUM>. This data could also be transferred to remote servers, for example, of a cloud gunshot detection management system. Of note here is that in addition to the control panel <NUM> transferring the event data, the de-conflicted gunshot sensor units <NUM>-<NUM>, <NUM>-<NUM> can also be equipped to transfer the locally stored and/or encrypted event data from the local nonvolatile storage <NUM> to the law enforcement entities <NUM>, for example, via wired and/or wireless data transfer ports of the gunshot sensor units <NUM> in response to receiving credentials for superuser access and based on predetermined permissions settings, in examples.

<FIG> is a sequence diagram illustrating an exemplary process by which the control panel <NUM> retrieves locally stored event data from the gunshot sensor units <NUM>. Specifically, in the illustrated example, the control panel <NUM> retrieves and presents the audio data to the operator via the speakers <NUM>.

First, steps <NUM> through <NUM> proceed as previously described, as the gunshot sensor units <NUM> detect the gunshots, generate the event data, and locally store the event data in the local nonvolatile storage <NUM>.

Then, in step <NUM>, the control panel <NUM> receives, for example, from an officer of a law enforcement entity <NUM> a special input for superuser access. The special input might include a code or other credentials entered via the GUI <NUM>, or possibly a key inserted into an interface of the control panel <NUM>. The superuser access allows retrieval and/or decryption of the locally stored and/or encrypted event data from the gunshot sensor units <NUM> and/or the control panel <NUM> itself. In the preferred embodiment, superuser access is granted only in response to receiving the special input. The business entities administering the gunshot detection system <NUM> might have a policy for providing the superuser access to technicians, including doing so only in response to a subpoena or other official directive. The key and/or code for obtaining superuser access might even be held by a third party such as law enforcement.

In step <NUM>, having received the special input, the control panel <NUM> presents to the law enforcement officer <NUM> gunshot sensor unit information (e.g. identification information, location information, proximity information to the source of the detected gunshots, or other information) pertaining to the different gunshot sensor units <NUM> of the gunshot detection system <NUM>. In step <NUM>, the law enforcement officer <NUM> selects a particular gunshot sensor unit <NUM> for audio playback.

In step <NUM>, the control panel <NUM> sends instructions to the selected gunshot sensor unit <NUM>-<NUM>, which in the illustrated example is one of the two de-conflicted gunshot sensor units <NUM>-<NUM>, <NUM>-<NUM>, to stream the locally stored audio data. The gunshot sensor unit <NUM>-<NUM> streams the locally stored audio data in step <NUM>.

In step <NUM>, the control panel <NUM> presents the streaming audio data from the gunshot sensor unit <NUM>-<NUM> to the law enforcement officer <NUM> via the speakers <NUM>.

<FIG> is a sequence diagram illustrating an exemplary process by which the gunshot detection system <NUM> provides live monitoring of ambient sound in the areas <NUM> where the gunshot sensor units <NUM> are located and two-way communication between individuals in the areas <NUM> where the gunshot sensor units <NUM> are located and operators of the control panel <NUM> such as law enforcement officers <NUM> or other authorized individuals.

First, in step <NUM>, the authorized individual such as the law enforcement officer <NUM> enters the special input (e.g. keys, codes, , decryption keys for encrypted audio data, multi-factor authentication queries, physical tokens, biometric information generated by biometric sensors) for superuser access via the GUI <NUM> and/or other interfaces of the control panel <NUM>. In step <NUM>, the control panel <NUM> presents the gunshot sensor unit information to the law enforcement officer <NUM> via the GUI <NUM>. This process is similar to the analogous process described in steps <NUM> and <NUM> with respect to <FIG>.

In step <NUM>, the GUI <NUM> receives input from the law enforcement officer <NUM> indicating selection of a gunshot sensor unit <NUM> for live audio monitoring. In one example, the law enforcement office <NUM> might select the gunshot sensor unit <NUM> closest to the source of the gunshots with hopes of communicating with the shooter or victims.

In step <NUM>, the control panel <NUM> generates and sends live monitoring instructions to the selected gunshot sensor unit <NUM>-<NUM> to stream live audio data.

In step <NUM>, in response to receiving the live monitoring instructions, the gunshot sensor unit <NUM>-<NUM> captures ambient sound via the audio capture microphone <NUM>, generates audio data depicting the ambient sound, and streams live audio data to the control panel <NUM> in real time. The control panel <NUM>, in step <NUM>, presents the streamed live audio data to the law enforcement officer <NUM> via the speakers <NUM>.

In this way, the gunshot detection system <NUM> provides the live monitoring functionality.

In order to initiate two-way communication, in step <NUM>, the law enforcement officer <NUM> selects an option for providing audio input (e.g. a "push to talk" button on the GUI <NUM>). The GUI <NUM> receives the input from the law enforcement officer <NUM> indicating selection of the gunshot sensor unit <NUM> for two-way communication, and in step <NUM>, the control panel <NUM> prompts the law enforcement officer <NUM> for audio input.

In step <NUM>, the microphone <NUM> of the control panel <NUM> receives the audio input from the law enforcement officer <NUM> (e.g. captured speech sounds), and the control panel <NUM> generates audio data based on the audio input.

In step <NUM>, the control panel <NUM> streams the audio data back to the selected gunshot sensor unit <NUM>-<NUM>.

In step <NUM>, the gunshot sensor unit <NUM>-<NUM> outputs the audio data received from the control panel <NUM> via the speakers <NUM>, thus presenting the captured speech sounds from the law enforcement office <NUM> to any individuals in the area <NUM> where the gunshot sensor unit <NUM>-<NUM> is located.

<FIG> is an illustration of an exemplary screen of the GUI <NUM> presented on the display <NUM> of the control panel <NUM>. This screen is displayed, for example, at steps <NUM> and <NUM>, which were previously described with respect to <FIG> and <FIG> respectively. In general, the screen includes graphical elements <NUM>, <NUM>, <NUM>, <NUM> such as indicators for presenting information and/or virtual buttons for receiving user input. In particular, the gunshot sensor unit information indicators <NUM> present the gunshot sensor unit information for different gunshot sensor units <NUM>. Virtual buttons <NUM>, <NUM>, <NUM> are associated with each of the gunshot sensor unit information indicators <NUM>. Of these, the get local data button <NUM> provides an option for retrieving the event data and/or audio data locally stored on the gunshot sensor units <NUM>, the live monitoring button <NUM> provides an option for live monitoring of ambient sound captured by the gunshot sensor units <NUM>, and the push to talk button <NUM> provides an option for two-way communication between the control panel <NUM> and the gunshot sensor unit <NUM>.

<FIG> and <FIG> are flow diagrams illustrating an operation in which anomalies are detected across both the individual gunshot sensor units <NUM> and the control panel <NUM>. These flow diagrams do not fall under the scope of the claims but are useful to understand the invention.

<FIG> shows the operation of the gunshot sensor unit <NUM>.

In step <NUM>, the gunshot sensor unit <NUM> detects an acoustic anomaly via the anomaly detection microphone <NUM> and generates audio data depicting ambient sound including the acoustic anomaly.

In step <NUM>, the gunshot sensor unit <NUM> determines whether the ambient sound depicted in the audio data is in fact speech sounds. If so, in step <NUM>, the gunshot sensor unit <NUM> deletes the audio data and returns to step <NUM>.

If the ambient sound does not include speech sounds, however, in step <NUM>, the gunshot sensor unit <NUM> determines whether the captured ambient sound might include gunshots. If not, the gunshot sensor unit <NUM> deletes the audio data as previously described in step <NUM> and returns to step <NUM>.

However, in step <NUM>, if the ambient sound could include gunshots, the gunshot sensor unit <NUM> determines whether a certainty of the ambient sound including gunshots is above a predetermined threshold. If so, in step <NUM>, the gunshot sensor unit <NUM> alerts the control panel <NUM> of gunshots, sends the event data to the control panel <NUM> and then returns to step <NUM>.

The processes for evaluating whether the ambient sound could include gunshots in steps <NUM> and/or <NUM> might include analyzing the sensor data generated by the sensors of the environmental board <NUM>. In one example, the gunshot sensor unit <NUM> isolates a loud acoustic signature in the audio data that could be a gunshot and determines whether the sensor data indicates that the presence of gases indicative of the discharge of a weapon such as carbon monoxide (CO) and ammonia (NH<NUM>) and/or smoke and other airborne particles were detected by the gas detector <NUM> and the smoke sensor <NUM> shortly after the occurrence of the acoustic anomaly.

In step <NUM>, if the certainty of the ambient sound including gunshots is not above a predetermined threshold, the gunshot sensor unit <NUM> streams the audio data to the control panel <NUM> to be stored in the FIFO audio buffer <NUM>. At this point, the gunshot sensor unit <NUM> returns to step <NUM>.

The gunshot detection operation is then resumed by the control panel <NUM>, as shown in <FIG>.

In step <NUM>, the control panel <NUM> retrieves the next audio data file from its FIFO audio buffer <NUM>.

In step <NUM>, the control panel <NUM> performs a higher lever analysis on the audio data, which might not be possible for the gunshot sensor units <NUM> to perform due to limited processing capability, for example. In some example, the control panel employs a machine learning algorithm that compares the audio data to learned gunshot sounds to identify less common sounds such as gunshots from a suppressed gun and gunshots from subsonic ammunition.

In step <NUM>, the control panel <NUM> confirms whether or not the ambient sound includes gunshots. If so, in step <NUM>, the control panel <NUM> retrieves the event data from the gunshot sensor unit <NUM> and instructs the gunshot sensor unit <NUM> to permanently store the event data and/or audio data in local nonvolatile storage <NUM>.

In step <NUM>, if the ambient sound is determined by the control panel <NUM> to not include gunshots, the control panel <NUM> instructs the gunshot sensor unit <NUM> to delete the event data and/or audio data from its local nonvolatile storage <NUM>.

In either case, the control panel <NUM> returns to step <NUM> and repeats the process with the next audio file.

<FIG> and <FIG> are block diagrams showing an exemplary embodiment of the gunshot sensor unit <NUM>, in which the gunshot sensor unit <NUM> includes a data transfer interface <NUM> for transferring the locally stored event data <NUM> to computing devices of law enforcement entities such as handheld units <NUM> or other mobile computing devices. In both examples, the gunshot sensor unit <NUM> also connects to a cloud gunshot detection management system <NUM>, which might a remote server operated by law enforcement <NUM> or other entities. The gunshot sensor unit <NUM> transfers the event data <NUM> to the cloud gunshot detection management system <NUM> via the wired and/or wireless network interface <NUM>, the communication network <NUM>, and a public network such as the internet to which the cloud gunshot detection management system <NUM> and the communication network <NUM> are both connected.

In particular, the illustrated example of <FIG> shows a Bluetooth and/or near field communication (NFC) interface <NUM>-<NUM>, through which the gunshot sensor unit <NUM> wirelessly transmits the event data <NUM> to the law enforcement handheld unit <NUM>.

The illustrated example depicted in <FIG>, on the other hand, shows a wired data transfer interface <NUM>-<NUM>, through which the gunshot sensor unit <NUM> transmits the event data <NUM> to the law enforcement handheld unit <NUM>.

<FIG> is a flow diagram illustrating an exemplary process which does not fall under the scope of the claims but is useful to understand the invention and by which the gunshot sensor unit <NUM> autonomously performs the gunshot detection functions without a control panel <NUM>. In this example, the gunshot detection system <NUM> may not include a control panel <NUM> (e.g. for a small business entity at a smaller premises <NUM>), or the control panel <NUM> may be disabled or disconnected from the communication network <NUM>.

Steps <NUM> through <NUM> proceed as previously described, as the gunshot sensor unit <NUM> generates the audio data, determines whether the ambient sound depicted in the audio data is speech, and deletes the audio if so in step <NUM>.

Now, however, the gunshot sensor unit <NUM> autonomously determines whether the ambient sound includes gunshots in step <NUM>. If not, the gunshot sensor unit <NUM> deletes the audio data in step <NUM> and returns to step <NUM>.

If the ambient sound does include gunshots, however, in step <NUM>, the gunshot sensor unit <NUM> encrypts and permanently stores the event data including the audio data, metadata and environmental data in local storage <NUM>.

In step <NUM>, the gunshot sensor unit alerts the cloud gunshot detection management system <NUM> that gunshots were detected.

In step <NUM>, the gunshot sensor unit receives the special input for superuser access (e.g. code or other credentials, key, decryption key), and in step <NUM>, the gunshot sensor unit decrypts and transfers the locally stored event data <NUM> to a requesting device such as the law enforcement handheld unit <NUM> or the cloud gunshot detection management system <NUM>.

In this way, the gunshot sensor units <NUM> perform the gunshot detection functionality of the gunshot detection system autonomously without direction or participation of a control panel <NUM>.

Claim 1:
A system for detecting gunshots within a premises (<NUM>), the system comprising:
gunshot sensor units (<NUM>) for detecting the gunshots, the gunshot sensor units (<NUM>) comprising:
one or more microphones (<NUM>, <NUM>) for detecting acoustic anomalies indicating potential gunshots and for generating audio data depicting the acoustic anomalies,
controllers (<NUM>) for generating event data based on the detected acoustic anomalies, and
nonvolatile storage (<NUM>) for locally storing the audio data and the event data; and
a control panel (<NUM>) for receiving the event data and the audio data from the gunshot sensor units (<NUM>), characterised in that the gunshot sensor units (<NUM>) are configured to transmit and the control panel (<NUM>) is configured to
receive truncated audio data depicting only the acoustic anomalies and the control panel (<NUM>) is configured to instruct the gunshot sensor units (<NUM>) to send full audio data to the control panel (<NUM>) and/or locally store the full audio data and the event data based on the received truncated audio data.