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.

<CIT> relates to systems including audio download and/or noise incident location system features.

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.

Especially as gunshot detection systems become more prevalent, security concerns must addressed. It is important to prevent third parties from intercepting and/or forging and/or downloading captured audio information.

Such concerns exist in a number of different topologies. Certainly, it would be desirable to encrypt the audio data stored on the sensor units and/or transmitted by the sensor units and/or stored by the control panel. This applies to wired systems as well as wireless/wired hybrid systems and all-wireless systems. Specially, wireless-equipped gunshot sensor units would allow greater flexibility in installing and maintaining the units while minimizing costs. But, the wireless aspect exacerbates existing security concerns. In particular, there is a need to prevent third parties from intercepting and/or contaminating and/or spoofing the signals exchanged between the gunshot sensor units and/or a control panel during or after a gunshot detection event.

A gunshot detection system according to the present invention is a system as defined in claim <NUM>.

The gunshot sensor units encrypt the audio data before storing it and/or sending it to the control panel. The control panel can similarly store the encrypted audio data and decrypt the audio data before presenting it (e.g. via speakers) to an operator of the control panel. Encryption and decryption keys are used by the gunshot sensor units and the control panel to encrypt and decrypt the audio data. Encryption keys might be programmed at the control panel and distributed to the gunshot sensor units or generated by an outside program and used by the control panel. The control panel would also store decryption keys for decrypting the audio data from each of the different gunshot sensor units or request those keys from an outside system or source based on the security privileges of the operator of the control panel.

An additional layer of end-to-end encryption is also provided. The gunshot sensor units and the control panel are equipped with encryption/decryption modules for encrypting and decrypting messages exchanged between the devices and/or one or both could be make requests for these services, which are then are processed outside the system. These messages might include the encrypted audio data.

Although the encryption functionality can work with existing wired communication infrastructures for gunshot detection systems, in the preferred embodiment, the gunshot sensor units and possibly even the control panel are equipped with wireless network interfaces for wirelessly communicating with each other over a communication network. To address potential bandwidth issues, the gunshot sensor units can monitor the communication network to discern network conditions. Compression modules of the gunshot sensor units are configured to compress the audio data before encryption based on the current network conditions.

In embodiments, the gunshot sensor units might store the encrypted audio data in local nonvolatile storage of the gunshot sensor units, along with audio encryption keys that are used to encrypt the audio data. The control panel might store a symmetric decryption key or asymmetric decryption keys associated with each gunshot sensor unit in its nonvolatile memory, the decryption keys being used to decrypt the audio data. The control panel could distribute the symmetric or asymmetric audio encryption keys to the gunshot sensor units, periodically sending updated the audio encryption keys. In addition, the gunshot sensor units can generate messages including the encrypted audio data and further encrypt these messages via encryption/decryption modules of the gunshot sensor units. The control panel would similarly decrypt the messages via its own encryption decryption module before decrypting the encrypted audio data contained in the messages. The gunshot sensor units might wirelessly send the encrypted audio data over a communication network via wireless network interfaces.

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, encrypt the event data, and locally store and/or send the encrypted event data to the control panel <NUM>. The gunshot sensor units <NUM> send the encrypted event data to the control panel <NUM> by sending messages containing the encrypted audio data. Whether or not they contain the encrypted audio data, these messages are themselves encrypted by
the gunshot sensor units <NUM> before being sent. The gunshot sensor units <NUM> also decrypt incoming encrypted messages. Thus, the gunshot detection system <NUM> provides end-to-end encryption for communication links between the gunshot sensor unit <NUM> and the control panel <NUM>.

The event data includes audio data (e.g. digitized audio clips) depicting the acoustic anomalies, metadata including time information indicating when the acoustic anomalies started and/or stopped, duration information for the acoustic anomalies, the audio data depicting the acoustic anomalies, file information, and identification information for the gunshot sensor unit <NUM>, and 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.

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 partial event data ( metadata indicating time and date information) from multiple gunshot sensor units <NUM> and 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> then sends 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. Similar to the gunshot sensor units <NUM>, the control panel <NUM> encrypts outgoing messages and decrypts incoming messages, and if any of the incoming messages contain encrypted audio data, the control panel <NUM> further decrypts the audio data before, for example, presenting the audio data to an operator of the control panel <NUM>.

<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 network interface <NUM>-<NUM>, an anomaly detection microphone <NUM>, an audio capture microphone <NUM>, and an encryption/decryption module <NUM>.

The controller <NUM> executes firmware instructions and an operating system (OS) <NUM> 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 operating system <NUM> interfaces with the hardware components of the gunshot sensor unit <NUM> for access by an audio data encryption process <NUM>, an audio data compression module <NUM>, and a monitoring process <NUM>, which are processes executing on top of the OS <NUM>.

The audio data encryption process <NUM> encrypts the audio data generated by the gunshot sensor unit <NUM>. In one example, the audio data encryption process <NUM> encrypts the audio data using an audio encryption key <NUM> stored in the local nonvolatile storage <NUM>. This audio encryption key <NUM> can be initially distributed and periodically updated by the control panel <NUM>. In another example, the encryption keys are programmed into the hardware of the units, such as stored in read only memory (ROM). In still other examples the encryption is performed by a special purpose application specific integrated circuit (ASIC) that is programed with both the encryption key and encryption algorithm or programed only with the encryption algorithm.

In addition, different kinds of encryption could be used.

In one example, a Public-key, or asymmetric, encryption approach is used. Here, the control panel disseminates its public key to the sensor units while retaining its private key. The sensor units then encrypt the audio data using the public key of the control panel, allowing only the control panel to decrypt the audio data using its private key.

In another example, a symmetric encryption approach is used. Here, the algorithms for cryptography use the same cryptographic keys for both encryption of the audio data and decryption of the audio data at the control panel.

In the preferred embodiment, the audio encryption key <NUM> is unique for each different gunshot sensor unit <NUM>, and all of the different decryption keys associated with the audio encryption keys <NUM> are stored by the control panel <NUM>. In an alternative embodiment, the audio encryption key <NUM> is a "public key" associated with the control panel <NUM>, the public key being known to the gunshot sensor units <NUM> allowing the gunshot sensor units <NUM> to encrypt the audio data such that only a "private key" counterpart to the public key known only to the control panel <NUM> can decrypt the audio data.

In another example, the control panel <NUM> might request audio encryption keys that were generated by a third party program, system, entity, and/or service, such as a cloud service executing on an application server accessible to the control panel <NUM> via a networks including one or more public network such as the internet. These encryption keys could then be distributed to the gunshot sensor units <NUM> and the control panel. These keys might be symmetric or asymmetric decryption keys. Similarly, the control panel <NUM> might request the decryption key(s) from the third party service before decrypting the encrypted audio data from the gunshot sensor units <NUM> or send the encrypted audio data directly to the third party service to be decrypted remotely. The third party service might be administered by a law enforcement entity, or the third party service might provide the decryption keys and/or decryption service only to law enforcement personnel, or to operators of the control panel <NUM> with superuser credentials, or in response to receiving a subpoena for the decrypted audio data, in examples.

The monitoring process <NUM> monitors the communication network <NUM> and determines current network conditions by measuring and/or analyzing network performance metrics such as bandwidth, throughput, latency, jitter and/or error rate. The monitoring process <NUM> generates and sends network conditions information to the audio data compression module <NUM> based on the determined network conditions.

The audio data compression module <NUM> compresses the audio data based on the network conditions of the communication network <NUM>. The audio data compression module <NUM> might request and receive the network conditions information from the monitoring process <NUM> and compress the audio data based on the network conditions information. The audio compression module <NUM> uses data compression algorithms to encode the audio data using fewer bits than the originally generated audio data used. In one example, the audio compression module <NUM> might remove from the audio data or de-emphasize the accuracy of perceptually irrelevant information (e.g. pertaining to sounds that are difficult or impossible for humans to hear). Different compression methods might be used based on the network conditions indicated by the network conditions information. For example, a lossy compression method resulting in compressed audio data with <NUM> to <NUM>% of the originally generated audio data might be used when the network conditions information indicates a congested or unreliable connection. On the other hand, a lossless method resulting in compressed audio data with <NUM> to <NUM>% of the originally generated audio data might be used when the network conditions information indicates a reliable connection. The audio data compression module <NUM> might even send the originally generated audio data without performing any data compression at all, based on the network conditions.

The wired network interface <NUM>-<NUM> provides connectivity with the control panel <NUM> and possibly other devices via a wired link to the communication network <NUM>, using a cable (e.g. twisted pair, coaxial, fiber optic) connected to a port of the wired network interface <NUM>-<NUM>, for example. In addition, the network also provides power to the device, in many examples. Direct current (DC) is superimposed upon the data that is transmitted between the devices and other nodes on the network.

The encryption/decryption module <NUM> encrypts and decrypts messages exchanged via the network interface <NUM> by the gunshot sensor units <NUM>, the control panel <NUM> and/or other devices on the communication network <NUM>. Specifically, the encryption/decryption module <NUM> encrypts outgoing messages to be sent by the gunshot sensor units <NUM> and decrypts incoming encrypted messages received by the gunshot sensor units <NUM>. In one example, the encryption/decryption module <NUM> is implemented in hardware as an intervening chip between the controller <NUM> and the network interface <NUM>. The encryption/decryption module <NUM> may include or be part of a secure cryptoprocessor with built in anti-tamper and other physical security measures. In another example, the encryption/decryption module, the operating system <NUM>, audio data encryption process <NUM>, audio data compression module <NUM>, and/or the monitoring process <NUM> all execute on a secure cryptoprocessor, which also stores the encrypted audio data.

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 <NUM> second (for example) loop in a ring buffer 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 gunshot, the controller stores the captured sound stored in the loop buffer <NUM>, which would include the acoustic anomaly and the previously captured sound (up to <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>, which includes the time and data information 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.

<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 network interface <NUM>-<NUM>, a display <NUM>, and an encryption/decryption module <NUM>.

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

Similarly, the encryption/decryption module <NUM> encrypts and decrypts messages exchanged via the network interface <NUM> by the control panel <NUM>, the gunshot sensor units <NUM> and/or other devices on the communication network <NUM>. Specifically, the encryption/decryption module <NUM> encrypts outgoing messages to be sent by the control panel <NUM> and decrypts incoming encrypted messages received by the control panel <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 a command and control application <NUM>, which is a software process executing on top of the OS <NUM>.

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>. In one example, the GUI <NUM> might present gunshot sensor unit information to an operator of the control panel <NUM> and receive input indicating selections of various options for controlling the gunshot sensor units <NUM> such as programming the encryption and/or decryption keys for the control panel <NUM> and/or the gunshot sensor units <NUM>. In one example, the command and control application <NUM> might also be configured to decrypt the encrypted audio data received from the gunshot sensor units <NUM> and present the decrypted audio data (e.g. via speakers) based on input from the operator received via the GUI.

The nonvolatile memory <NUM> stores the audio decryption keys <NUM> for decrypting the encrypted audio data received from the gunshot sensor units <NUM>. In the illustrated example, the audio decryption keys <NUM> are stored in an audio decryption key table <NUM>. As previously described, in one example, the audio decryption key table <NUM> might include a series of audio, symmetric or asymmetric, decryption keys <NUM>, with each of the keys being associated with a different one of the gunshot sensor units <NUM>. The encrypted audio data received from the gunshot sensor units <NUM> are decrypted using the associated audio decryption keys <NUM>. On the other hand, in an alternative example, there might only be one audio decryption key <NUM> used to decrypt the encrypted audio data received from all of the gunshot sensor units <NUM>.

<FIG> is a schematic diagram of an exemplary gunshot detection system <NUM> according to another embodiment including a hybrid network with wireless-capable gunshot sensor units <NUM>-w. Here, a wireless access point <NUM> of the premises <NUM>, which might be, for example, a wireless router, connects to the wireless gunshot sensor units <NUM>-w via wireless links. The wireless access point <NUM> provides connectivity between the wireless gunshot sensor units <NUM>-w and the communication network <NUM>.

<FIG> is a block diagram showing an exemplary wireless-capable gunshot sensor unit <NUM>-w. Here, instead of the wired network interface <NUM>-<NUM>, the wireless-capable gunshot sensor unit <NUM>-w includes a wireless network interface <NUM>-<NUM> and an antenna <NUM>. The wireless network interface <NUM>-<NUM> provides connectivity with the control panel <NUM> and possibly other devices via a wireless link to the communication network <NUM> via the antenna <NUM>.

The wireless network interface <NUM>-<NUM> implements IEEE <NUM> standards, in one embodiment. It can use the <NUM> gigahertz UHF or <NUM> gigahertz SHF ISM radio bands.

In another embodiment, the wireless network interface <NUM>-<NUM> implements IEEE <NUM> standards, such as Bluetooth or Bluetooth Low Energy. In this case, the wireless network interface <NUM>-<NUM> could be used by the gunshot sensor units <NUM> to transmit encrypted audio data to handheld units (e.g. mobile computing devices) of law enforcement and/or other authorized entities.

In another embodiment, the wireless network interface <NUM>-<NUM> implements one or more standards associated with cellular technologies, such as Global System for Mobile communications (GSM) technologies in the range of <NUM> to <NUM>, Universal Mobile Telecommunications System (UMTS)/<NUM> technologies in the range of <NUM> to <NUM>, Long Term Evolution (LTE) technologies in the range of <NUM> to <NUM>, and/or <NUM> technologies in the ranges of <NUM> to <NUM> or <NUM> to <NUM>. In one example, the gunshot sensor units <NUM> communicate via a distributed antenna system (DAS) implemented locally within the premises <NUM> or across a wider geographical area using the wireless network interface <NUM>-<NUM>. The DAS might also be implemented in conjunction with an in-building cellular enhancement system for extending and distributing cellular signal of a mobile network within the premises <NUM>.

<FIG> is a block diagram showing an exemplary wireless-capable control panel <NUM>-w. Here, instead of the wired network interface <NUM>-<NUM>, the wireless-capable control panel <NUM>-w includes a wireless network interface <NUM>-<NUM> and an antenna <NUM>. The wireless network interface <NUM>-<NUM> provides connectivity with the gunshot sensor units <NUM> and possibly other devices via a wireless link to the communication network <NUM> via the antenna <NUM>.

<FIG> is a sequence diagram illustrating a process by which gunshot detection system encrypts and decrypts the audio data and messages exchanged between the gunshot sensor units <NUM> and the control panel <NUM>. The following process could apply to both the wired and wireless embodiments of the gunshot sensor units <NUM>.

First, in step <NUM>, the control panel <NUM> is programmed with the encryption key(s) for encrypting the audio data, which the control panel <NUM> distributes to the gunshot sensor units <NUM> in step <NUM>. But, in other examples, the sensor units are preprogrammed with the keys. In step <NUM>, the audio encryption keys are stored by the gunshot sensor units <NUM> in the local nonvolatile storage <NUM>, for example.

After a period of time (for example, a year or two after initial programming of the units), in step <NUM>, the gunshot sensor units <NUM> detect gunshots, and, in step <NUM>, the gunshot sensor units <NUM> generate and store in local nonvolatile storage <NUM> event data including audio data depicting acoustic anomalies (e.g. the gunshot sounds). Preferably, this audio data is first encrypted prior to being stored.

In step <NUM>, the gunshot sensor units <NUM> generate alert messages indicating that the gunshots were detected. These alert messages include partial event data including metadata indicating the time and duration of the detected shots. In step <NUM>, this alert message is encrypted by the encryption/decryption module <NUM>. The gunshot sensor units <NUM> send the encrypted alert messages to the control panel <NUM> in step <NUM>.

In step <NUM>, the control panel <NUM> decrypts the encrypted alert messages via the encryption/decryption module <NUM>. In step <NUM>, the control panel <NUM> generates a request message requesting the audio data depicting the gunshot sounds. The control panel <NUM> then encrypts this request message in step <NUM> and sends the encrypted request message to the gunshot sensor units <NUM> in step <NUM>.

In step <NUM>, the gunshot sensor units <NUM> decrypt the encrypted request message via the encryption/decryption module <NUM>. In response to the request message, the gunshot sensor units <NUM> then encrypt the audio data, if not previously encrypted, using the stored audio encryption key <NUM> via the audio data encryption process <NUM>. The gunshot sensor units <NUM> then generates a reply message containing the encrypted audio data in step <NUM> and encrypts the reply message in step <NUM> via the encryption/decryption module <NUM>. This encrypted reply message is then sent by the gunshot sensor units <NUM> to the control panel <NUM> in step <NUM>.

In step <NUM>, the control panel <NUM> decrypts the encrypted reply message via the encryption/decryption module <NUM>. The control panel <NUM>, in step <NUM>, also decrypts the audio data contained within the decrypted reply message using the audio decryption key <NUM> associated with the gunshot sensor units <NUM> from which the messages were sent. This audio data can then be presented, for example, via speakers of the control panel <NUM>.

In step <NUM>, the control panel <NUM> periodically sends updated audio encryption keys to the gunshot sensor units <NUM>, and the gunshot sensor units <NUM> store the updated audio encryption keys in the local nonvolatile storage <NUM>.

<FIG> is a sequence diagram illustrating a process by which the gunshot sensor units <NUM> compress the audio data based on conditions of the communication network <NUM>. As in <FIG>, this process could apply to both the wired and wireless embodiments of the gunshot sensor units <NUM>.

Steps <NUM> through <NUM> proceed as previously described, as the gunshot sensor units <NUM> detect gunshots, alert the control panel <NUM>, and receive request messages to send the audio data.

Now, however, in step <NUM>, the gunshot sensor units determine network conditions of the communication network <NUM> via the monitoring process <NUM> and compress the audio data based on the network conditions via the audio data compression module <NUM>.

In steps <NUM> through <NUM>, the compressed audio data is encrypted and sent to the control panel <NUM> as previously described.

In step <NUM>, as appropriate based on the compression method used, the control panel <NUM> might then decompress the audio data.

In another example, the gunshot sensor units <NUM> might encrypt the audio data, generate a message including the encrypted audio data, encrypt the message via the encryption/decryption module, and send the encrypted message to a third party cloud service (for example, executing on a service accessible to the gunshot sensor units <NUM> and/or control panel <NUM> only via a public network such as the internet). The third party cloud service might then process requests for the encrypted audio data from the control panel <NUM> or other devices.

Claim 1:
A system for detecting gunshots within a premises, the system comprising:
gunshot sensor units (<NUM>) for detecting gunshots, each of the gunshot sensor units (<NUM>) comprising one or more microphones (<NUM>, <NUM>) for detecting acoustic anomalies and generating event data including audio data depicting the acoustic anomalies and a controller (<NUM>) for encrypting the event data including audio data; and
a control panel (<NUM>) for receiving the encrypted event data including audio data from the gunshot sensor units (<NUM>), the control panel (<NUM>) comprising a controller (<NUM>) for decrypting the encrypted event data including audio data,
wherein the control panel (<NUM>) is configured to receive encrypted partial event data, containing metadata including time information indicating when the detected acoustic anomalies started and/or stopped and duration information of the detected acoustic anomalies, from the gunshot sensor units (<NUM>) and, based on the received partial event data, determine which partial event data pertains to the same detected acoustic anomaly and which of the gunshot sensor units is closest to the source of the detected acoustic anomaly, and
wherein the control panel (<NUM>) is configured to instruct the gunshot sensor unit (<NUM>) closest to the source of the detected acoustic anomaly to send full event data to the control panel (<NUM>) for further processing and/or to be presented to an operator.