Intelligent setup for playback devices

The intelligent setup process for networked playback devices addresses the complexity of configuring devices with varying capabilities by detecting and securely integrating them into the media playback system, enhancing user experience and reducing setup frustration.

JP7605975B2Active Publication Date: 2024-12-24SONOS INC
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
JP2023519037
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2020-09-25
Filing Date
2021-09-24
Publication Date
2024-12-24
Estimated Expiration
2041-09-24

AI Technical Summary

Technical Problem

The challenge of setting up networked playback devices with varying hardware and software capabilities in a media playback system is complex and cumbersome, leading to potential user frustration and misconfigurations due to the need to support a wide range of configurations and features, including network connectivity, media service integration, audio calibration, and voice assistant functionality.

Method used

An intelligent setup process for networked playback devices that accommodates diverse hardware and software capabilities, allowing flexible and efficient configuration by detecting available devices, establishing secure connections, and assigning them to the media playback system while reducing user input and simplifying the setup process.

Benefits of technology

The solution provides a streamlined user experience by intelligently configuring playback devices across different capabilities, reducing setup complexity and potential misconfigurations, and ensuring seamless integration into the media playback system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007605975000001
    Figure 0007605975000001
  • Figure 0007605975000002
    Figure 0007605975000002
  • Figure 0007605975000003
    Figure 0007605975000003
Patent Text Reader

Abstract

The playback device is configured to (i) send an indication via at least one wireless network interface that the playback device is available for setup, (ii) establish a direct communication path with a computing device configured to operate on the secure wireless network, (iii) provide authentication information to the computing device outside of the direct communication path, (iv) verify the authentication information with the computing device via the direct communication path, (v) receive network configuration parameters for connecting to the secure wireless network from the computing device via the direct communication path after verifying the authentication information via the direct communication path, (vi) connect to the secure wireless network using the network configuration parameters, and (vii) transition from communicating with the computing device via the direct communication path to communicating with the computing device via the secure wireless network.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] (CROSS REFERENCE TO RELATED APPLICATIONS) This international application claims the benefit of U.S. Provisional Patent Application No. 63 / 083,637, filed September 25, 2020, which is incorporated by reference in its entirety.

[0002] The present disclosure relates to consumer products, and in particular to methods, systems, products, features, services, and other elements directed to media playback, or aspects thereof. [Background technology]

[0003] Options for accessing and listening to digital audio in out-loud settings were limited until 2002, when Sonos, Inc. began developing a new type of playback system. Sonos filed one of its first patent applications in 2003, titled "Method for Synchronizing Audio Playback between Multiple Networked Devices," and began selling its first media playback system in 2005. The Sonos Wireless Home Sound System allows people to experience music from many sources through one or more networked playback devices. Through a software control application installed on a controller (e.g., smartphone, tablet, computer, audio input device), people can play their desired music in any room equipped with a networked playback device. Media content (e.g., songs, podcasts, video sounds) is streamed to the playback device, allowing each room equipped with a playback device to play corresponding different media content. It is also possible to group multiple rooms for synchronous playback of the same media content and / or to listen to the same media content synchronously in all rooms.

[0004] Given the ever-increasing interest in digital media, there remains a need to develop consumer-accessible technologies to further enhance the listening experience.

[0005] The features, aspects, and advantages of the technology disclosed herein may be better understood with reference to the following description, the appended claims, and the accompanying drawings, as set forth below. Those skilled in the art will appreciate that the features shown in the drawings are for illustrative purposes and that variations are possible, including different and / or additional features and arrangements thereof. [Brief description of the drawings]

[0006] [Figure 1A] 1 is a partial cross-sectional view of an environment including a media playback system configured in accordance with aspects of the disclosed technology. [Figure 1B] 1B is a schematic diagram of the media playback system and one or more networks of FIG. 1A. [Figure 1C] FIG. 2 is a block diagram of an exemplary playback device. [Figure 1D] FIG. 2 is a block diagram of an exemplary playback device. [Figure 1E] FIG. 2 is a block diagram of an exemplary playback device. [Figure 1F] FIG. 2 is a block diagram of an exemplary network microphone device. [Figure 1G] FIG. 2 is a block diagram of an exemplary playback device. [Figure 1H] FIG. 2 is a schematic partial view of an exemplary control device. [Figure 1I] FIG. 1C is a schematic diagram of an exemplary user interface of the exemplary control device of FIG. 1H. [Figure 1J] 3A-3C are schematic diagrams of corresponding exemplary media playback system zones. [Figure 1K] 3 is a schematic diagram of a corresponding exemplary media playback system zone. [Figure 1L]3 is a schematic diagram of a corresponding exemplary media playback system zone. [Figure 1M] 3 is a schematic diagram of a corresponding exemplary media playback system zone. [Diagram 2] 1 is a schematic diagram of an exemplary media playback system area. [Diagram 3] FIG. 2 is an isometric view of an example playback device housing. [Figure 4] FIG. 4 is a diagram of an example of a headset assembly for the playback device of FIG. [Diagram 5] 11 is a flowchart illustrating an example of operations for intelligent setup of a playback device. [Figure 6] 13 shows an example of a notification on a control device of a new playback device available for setup. [Figure 7A] 13 shows an example of instructions on a control device for scanning an NFC tag on a playback device. [Figure 7B] 13 shows another example of instructions on a control device for scanning an NFC tag on a playback device. [Figure 8] 13 shows an example of instructions on a control device for holding the control device near a playback device that plays an audible tone. [Figure 9] 1 shows an example of instructions on a control device for manually entering a PIN code. [Figure 10A] 1 shows an example of an instruction on a control device for pressing a button on a playback device. [Figure 10B] 13 shows another example of an instruction on a control device for pressing a button on a playback device. [Figure 11] 13 shows an example of a display on a control device for selecting a room name for a playback device. [Figure 12A] 13 illustrates an example of a display on a control device for initiating a setup process for joining a playback device as a member of a combined group. [Figure 12B]13 illustrates another example of a display on a control device for initiating a setup process for joining a playback device as a member of a combined group. [Figure 12C] 13 illustrates another example of a display on a control device for initiating a setup process for joining a playback device as a member of a combined group. [Figure 12D] 13 illustrates another example of a display on a control device for initiating a setup process for joining a playback device as a member of a combined group. [Figure 12E] 13 illustrates an example of a display on a control device for confirming updates to the location of a playback device in a media playback system. [Figure 13A] 1 shows an example of instructions on a control device for selecting a playback device that is moving to a given location and playing an audible tone. [Figure 13B] 13 illustrates another example of instructions on a control device for selecting a playback device that is moving to a given location and playing an audible tone. [Figure 14A] 1 illustrates an example of a notification on a control device regarding a voice assistant service. [Figure 14B] 13 shows another example of a notification on a control device regarding a voice assistant service. [Figure 15] 13 illustrates an example of a notification on a control device of a detected problem with a playback device in a bonded group. [Figure 16A] 13 shows an example of instructions on a control device for removing one or more playback devices from a bonded group. [Figure 16B] 13 illustrates another example of instructions on a control device for removing one or more playback devices from a combined group. [Figure 16C] 13 illustrates another example of instructions on a control device for removing one or more playback devices from a combined group.

[0007] The drawings are intended to illustrate some exemplary embodiments, but it will be understood by those skilled in the art that the technology disclosed herein is not limited to the arrangements and instrumentality shown in the drawings. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0008] I. Overview Sonos, Inc. ("Sonos") has been an innovator in the field of device setup experience since its early days. In 2005, Sonos filed U.S. patent application Ser. No. 11 / 147,116, which describes techniques for automatically configuring the necessary parameters of devices (e.g., playback devices) to be joined to a network with minimal human intervention. These techniques involved using another device (e.g., a controller device) to establish a basic communication path with the device and exchange the parameters necessary for the device to function properly within the network. U.S. patent application Ser. No. 11 / 147,116, filed Jun. 6, 2006, entitled "Establishing a secure wireless network with minimum human intervention" and issued as U.S. Patent No. 8,326,951, is incorporated herein by reference in its entirety. Additional concepts beyond those specifically discussed above are disclosed in U.S. patent application Ser. No. 11 / 147,116.

[0009] In 2011, Sonos filed U.S. Patent Application No. 13 / 340,110, which describes techniques for a wireless device (e.g., a smartphone) to identify and monitor available networks for connection to a multimedia playback network. The wireless device may evaluate network characteristics (e.g., signal strength) of one or more available networks to identify a preferred network for connection and facilitate switching of the wireless device's connection if the preferred network is not in use. U.S. Patent Application No. 13 / 340,110, filed December 29, 2011, entitled "Systems and methods for multi-network audio control" and issued as U.S. Patent No. 9,247,492, is incorporated herein by reference in its entirety. Additional concepts beyond those specifically discussed above are disclosed in U.S. Patent Application No. 13 / 340,110.

[0010] Sonos further discusses wireless device connectivity in U.S. patent application Ser. No. 13 / 340,116, which describes techniques for allowing a user to connect a wireless device (e.g., a smartphone) to a hidden network without the wireless device or user knowing or typing the network name. U.S. patent application Ser. No. 13 / 340,116, filed Dec. 29, 2011, entitled "Systems and methods for connecting an audio controller to a hidden audio network," issued as U.S. Patent No. 9,191,699, and is incorporated herein by reference in its entirety. Additional concepts beyond those specifically discussed above are disclosed in U.S. patent application Ser. No. 13 / 340,116.

[0011] In U.S. patent application Ser. No. 13 / 341,245, Sonos describes techniques for configuring and naming multimedia playback devices on a local playback network, including configuring and naming based on an analysis of one or more playback devices already connected to the network. U.S. patent application Ser. No. 13 / 341,245, filed Dec. 30, 2011, entitled "Systems and methods for player setup room names," and issued as U.S. Patent No. 9,344,292, is incorporated herein by reference in its entirety. Additional concepts beyond those specifically discussed above are disclosed in U.S. patent application Ser. No. 13 / 341,245.

[0012] In U.S. Patent Application No. 13 / 568,993, Sonos describes a technique in which a playback device may transmit an acoustic signature (e.g., outside the audible range of the human ear) that can be automatically detected by another device (e.g., a smartphone). The acoustic signature may be used to determine that the smartphone is in the vicinity of the playback device. U.S. Patent Application No. 13 / 568,993, filed August 7, 2012, entitled "Acoustic signatures in a playback system," and issued as U.S. Patent No. 8,930,005, is incorporated herein by reference in its entirety. Additional concepts beyond those specifically discussed above are disclosed in U.S. Patent Application No. 13 / 568,993.

[0013] In U.S. patent application Ser. No. 13 / 767,843, Sonos further discusses adding playback devices to a secure media playback network. The playback devices can exchange messages with devices already on the network without user input, thereby receiving security parameters for connecting to the secure network. U.S. patent application Ser. No. 13 / 767,843, filed Feb. 14, 2013, entitled "Automatic configuration of household playback devices," and issued as U.S. Patent No. 9,319,409, is incorporated herein by reference in its entirety. Additional concepts beyond those specifically discussed above are disclosed in U.S. patent application Ser. No. 13 / 767,843.

[0014] In U.S. Patent Application No. 13 / 767,850, Sonos further discusses adding playback devices to a secure media playback network. Devices already connected to the network can receive a configuration table from a remote device (e.g., a cloud-based device) indicating setup information for playback devices to be set up, and can provide the setup information to the playback devices so that they are configured accordingly. U.S. Patent Application No. 13 / 767,850, filed February 14, 2013, entitled "Automatic configuration of household playback devices," and issued as U.S. Patent No. 9,237,384, is incorporated herein by reference in its entirety. Additional concepts beyond those specifically discussed above are disclosed in U.S. Patent Application No. 13 / 767,850.

[0015] In U.S. Patent Application Serial No. 14 / 988,524, Sonos further discusses adding playback devices to a secure media playback network. Playback devices available to join the media playback system can receive a command to emit a sound, which allows a user to identify and verify the playback devices being set up. U.S. Patent Application Serial No. 14 / 988,524, filed January 5, 2016, entitled "Multiple-device setup," and issued as U.S. Patent No. 10,303,422, is incorporated herein by reference in its entirety. Additional concepts beyond those specifically discussed above are disclosed in U.S. Patent Application Serial No. 14 / 988,524.

[0016] In U.S. Patent Application No. 14 / 988,534, Sonos further discusses adding playback devices to a secure media playback network. During the setup process, a given device (e.g., a smartphone) can identify that the playback device and one or more other playback devices already connected to the media playback network are compatible with one or more combined zone configurations. Matching combined zone configurations can then be presented to the user for selection during the setup process. U.S. Patent Application No. 14 / 988,534, filed January 5, 2016, entitled "Intelligent group identification," and issued as U.S. Patent No. 10,284,980, is incorporated herein by reference in its entirety. Additional concepts beyond those specifically discussed above are disclosed in U.S. Patent Application No. 14 / 988,534.

[0017] In addition to the non-limiting examples above, many other issued patents and pending patent applications reflect Sonos' history of innovation in the area of ​​device setup experiences.

[0018] Since Sonos began selling the first networked playback device in 2005, many other types of networked consumer devices, sometimes referred to as "smart home" devices, or more generally as Internet of Things (IoT) devices, have become increasingly common. However, as a given ecosystem of products matures over time, providing a cohesive user experience across various models and versions of such products can begin to be a challenge. In particular, one of the most fundamental capabilities of connected devices, especially wireless devices, is the ability to establish a connection to the network on which the connected device operates, typically the user's home Wi-Fi network. Relatively older devices may have one set of networking capabilities based on their hardware, while relatively newer devices may have a different set of improved networking capabilities based on their newer hardware. However, expecting consumers to trade out older devices in favor of newer versions or "next generation" models every time there is an iterative improvement to the device can lead to substantial user frustration. It is therefore preferable to maintain support for various classes of older devices for as long as possible.

[0019] Nevertheless, as another challenge, wireless setup of a connected device is often performed by a user device (e.g., a smartphone) that makes the initial connection to the device to provide the device with the user's Wi-Fi credentials. In this regard, user devices can be yet another source of variation, as different user devices can have their own different hardware and networking capabilities and can run different operating systems.

[0020] For example, the Sonos ecosystem currently includes dozens of playback device models and / or versions, many of which have different hardware and network connection capabilities. Furthermore, even among playback devices of the same model, some devices may have received software updates (e.g., firmware updates) that others have not received, which may result in further differences in the behavior of the playback devices. Furthermore, a wider range of user devices, which may be running one of two different operating systems, may be used to configure a given Sonos playback device. As a result, a very large number of different configuration possibilities must be supported.

[0021] Furthermore, the variables to be considered when setting up a given device are not limited to those involving network hardware and firmware versions. As the capabilities of connected devices increase to include new and improved features, various additional configuration options for a given device may become available to the user. For example, an exemplary playback device configured to operate as part of a media playback system as discussed herein may support one or more features such as (i) linking with one or more of the user's media service provider accounts, (ii) integration into a multi-channel home theater setup, (iii) advanced audio calibration techniques, and (iv) incorporation of one or more voice assistant services, among many other features that may currently exist or may be developed in the future. Each of these features may require the user to complete some degree of additional configuration.

[0022] As a result, a setup process supporting all of these variables, as well as others, may become overly complicated and cumbersome, and may run the risk of presenting the user with instructions or options that are not necessary or otherwise relevant to the user's particular setup situation. This may negatively impact the user's experience by obscuring other, more important parts of the device setup, and may reduce the user's confidence in navigating the setup experience. This, in turn, may lead to more configuration errors.

[0023] For these reasons and others, implementing an initial setup procedure that can be applied across a system of devices with different capabilities, but remains simple and attractive so that users can reliably and accurately navigate device settings, can be a substantial challenge.

[0024] Accordingly, embodiments described herein relate to techniques for configuring playback devices to operate on a given data network, which may generally involve enabling playback devices to connect to the given data network and adding playback devices, some of which may already be connected to the given data network, as members of a media playback system of networked playback devices. These techniques may be flexibly and intelligently applied to set up many different types of playback devices having a wide range of hardware and software capabilities, while maintaining an efficient user experience that is easy to navigate and reduces the potential for user frustration in the setup process.

[0025] Although the exemplary network environments, connected devices, and setup processes described herein generally focus on media playback devices and their associated features, it should be understood that the intelligent setup techniques presented herein may also be implemented to address similar issues in other systems, such as networked devices, IoT devices, smart home devices, etc. Indeed, many of the same advantages, such as support for a wide range of product configurations and extended product lifespans, are equally applicable to many other types of systems.

[0026] Although some examples described herein may refer to functions performed by certain actors, such as "users," "listeners," and / or other entities, it should be understood that this is for purposes of illustration only, and the claims should not be construed as requiring action by such example actors unless expressly required by the language of the claims themselves.

[0027] II. Appropriate Operating Environment a. A suitable media playback system 1A and 1B illustrate an example configuration of a media playback system ("MPS") 100 in which one or more embodiments disclosed herein may be implemented. Referring initially to FIG. 1A, a partial cutaway view of MPS 100 distributed in an environment 101 (e.g., a home) is shown. The illustrated MPS 100 is associated with an example home environment having multiple rooms and spaces. MPS 100 comprises one or more playback devices 110 (individually identified as playback devices 110a-o), one or more network microphone devices ("NMDs") 120 (individually identified as NMDs 120a-c), and one or more control devices 130 (individually identified as control devices 130a and 130b).

[0028] As used herein, the term "playback device" may generally refer to a network device configured to receive, process, and output data for a media playback system. For example, a playback device may be a network device configured to receive and process audio content. In some embodiments, a playback device includes one or more transducers or speakers powered by one or more amplifiers. However, in other embodiments, a playback device includes either a speaker and an amplifier (or neither). For example, a playback device may include one or more amplifiers configured to drive one or more speakers external to the playback device via corresponding wires or cables.

[0029] Additionally, as used herein, the term NMD (i.e., "network microphone device") may generally refer to a network device configured for audio detection. In some embodiments, the NMD is a standalone device configured primarily for audio detection. In other embodiments, the NMD is integrated into a playback device (or vice versa).

[0030] The term "control device" may generally refer to a network device configured to perform related functions to facilitate user access, control and / or configuration of MPS 100.

[0031] Each of the playback devices 110 is configured to receive audio signals or data from one or more media sources (e.g., one or more remote servers, one or more local devices) and play the received audio signals or data as sound. One or more NMDs 120 are configured to receive spoken word commands, and one or more control devices 130 are configured to receive user input. In response to the received spoken word commands and / or user input, the MPS 100 can play audio via one or more of the playback devices 110. In certain embodiments, the playback devices 110 are configured to initiate playback of media content in response to a trigger. For example, one or more of the playback devices 110 can be configured to play a morning playlist when an associated trigger condition is detected (e.g., presence of a user in the kitchen, detection of operation of a coffee machine). In some embodiments, for example, the MPS 100 is configured to play audio from a first playback device (e.g., playback device 110a) in synchronization with a second playback device (e.g., playback device 110b). Interactions between the playback device 110, the NMD 120, and / or the control device 130 of an MPS 100 configured according to various embodiments of the present disclosure are described in more detail below with respect to FIGS. 1B-1H.

[0032] In the illustrated embodiment of FIG. 1A, environment 101 comprises a home having multiple rooms, spaces, and / or play zones, including (clockwise from top left) master bathroom 101a, master bedroom 101b, second bedroom 101c, family room or den 101d, office 101e, living room 101f, dining room 101g, kitchen 101h, and outdoor patio 101i. Although certain embodiments and examples are described below in the context of a home environment, the techniques described herein may be implemented in other types of environments. In some embodiments, for example, MPS 100 may be implemented in one or more commercial facilities (e.g., restaurants, malls, airports, hotels, retail stores or other establishments), one or more vehicles (e.g., sport utility vehicles, buses, automobiles, ships, boats, airplanes), multiple environments (e.g., a combination of home and vehicle environments), and / or another suitable environment where multi-zone audio may be desirable.

[0033] The MPS 100 can configure one or more play zones, some of which may correspond to rooms in the environment 101. The MPS 100 may be established with one or more play zones, and then additional zones may be added or removed to establish, for example, the configuration shown in FIG. 1A. Each zone may be given a name according to a different room or space, such as office 101e, master bathroom 101a, master bedroom 101b, second bedroom 101c, kitchen 101h, dining room 101g, living room 101f, and / or patio 101i. In some embodiments, a single play zone may include multiple rooms or spaces. In certain embodiments, a single room or space may include multiple play zones.

[0034] In the illustrated embodiment of FIG. 1A , master bathroom 101a, second bedroom 101c, office 101e, living room 101f, dining room 101g, kitchen 101h, and outdoor patio 101i each include one playback device 110, while master bedroom 101b and den 101d include multiple playback devices 110. In master bedroom 101b, playback devices 110l and 110m may be configured to synchronously play audio content, e.g., as individual ones of multiple playback devices 110, as combined playback zones, as integrated playback devices, and / or any combination thereof. Similarly, in den 101d, playback devices 110h-j may be configured to synchronously play audio content, e.g., as individual ones of multiple playback devices 110, as one or more combined playback devices, and / or as one or more integrated playback devices.

[0035] With reference to FIG. 1B, the home environment may include additional and / or other computing devices, including one or more smart lighting devices 108, a smart thermostat 140, and local network devices such as the local computing device 105 (FIG. 1A). In the embodiments described below, one or more of the various playback devices 110 may be configured as portable playback devices, while others may be configured as stationary playback devices. For example, the headphones 110o (FIG. 1B) may be a portable playback device, while the playback device 110e on the bookcase may be a stationary device. As another example, the playback device 110c on the patio may be a battery-powered device, which may allow the battery-powered device to be transported to various areas within and outside the environment 101 when not plugged into a wall outlet or the like.

[0036] 1B , the various playback devices, network microphone devices, and controller devices, and / or other network devices of MPS 100 may be coupled to one another via a local network 160, which may include a network router 109, via point-to-point connections, and / or via other connections, which may be wired and / or wireless. For example, playback device 110j in den 101d (FIG. 1A), which may be designated as the "left" device, may have a point-to-point connection with playback device 110k, also in den 101d, which may be designated as the "right" device. In a related embodiment, left playback device 110j may communicate with other network devices, such as playback device 110h, which may be designated as the "front" device, via point-to-point connections and / or other connections via local network 160.

[0037] Local network 160 may be, for example, a network that interconnects one or more devices within a limited area (e.g., a home, an office building, a car, a personal workspace, etc.). Local network 160 may include, for example, one or more local area networks (LANs), such as a wireless local area network (WLAN) (e.g., a Wi-Fi network, a Z-Wave network, etc.) and / or one or more personal area networks (PANs) (e.g., a Bluetooth network, a wireless USB network, a ZigBee network, an IRDA network, and / or other suitable wireless communication protocol networks) and / or a wired network (e.g., a network including Ethernet, a Universal Serial Bus (USB), and / or another suitable wired communication protocol). As will be appreciated by those skilled in the art, as used herein, "Wi-Fi" can refer to a number of different communications protocols including, for example, the Institute of Electrical and Electronics Engineers (IEEE) 802.11a, 802.11b, 802.11g, 802.12, 802.11ac, 802.11ac, 802.11ad, 802.11af, 802.11ah, 802.11ai, 802.11aj, 802.11aq, 802.11ax, 802.11ay, 802.15, etc., transmitted at 2.4 gigahertz (GHz), 5 GHz, 6 GHz, and / or other suitable frequencies.

[0038] MPS 100 is configured to receive media content from local network 160. The received media content may include, for example, a Uniform Resource Identifier (URI) and / or a Uniform Resource Locator (URL). For example, in some examples, MPS 100 may stream, download, or retrieve data from a URI or URL that corresponds to the received media content.

[0039] As further shown in FIG. 1B, MPS 100 may be coupled to one or more remote computing devices 106 via a wide area network ("WAN") 107. In some embodiments, each remote computing device 106 may take the form of one or more cloud servers. The remote computing devices 106 may be configured to interact with computing devices in environment 101 in a variety of ways. For example, the remote computing devices 106 may be configured to facilitate streaming and / or control of playback of media content, such as audio, in environment 101 (FIG. 1A).

[0040] In some implementations, the various playback devices 110, NMDs 120, and / or control devices 130 may be communicatively coupled to at least one remote computing device associated with a voice assistant service (“VAS”) and / or at least one remote computing device associated with a media content service (“MCS”). For example, in the illustrated example of FIG. 1B, remote computing device 106a is associated with VAS 190 and remote computing device 106b is associated with MCS 192. For clarity, only a single VAS 190 and a single MCS 192 are shown in the example of FIG. 1B, but MPS 100 may be coupled to multiple different VASs and / or MCSs. In some embodiments, the various playback devices 110, NMDs 120, and / or control devices 130 may transmit data related to the received voice input to a VAS configured to (i) process the received voice input data and (ii) transmit a corresponding command to MPS 100. In some aspects, for example, the computing device 106a may comprise one or more modules and / or servers of a VAS. In some implementations, the VAS may be operated by one or more of SONOS®, AMAZON®, GOOGLE®, APPLE®, MICROSOFT®, NUANCE®, or other voice assistant providers. In some implementations, the MCS may be operated by one or more of SPOTIFY, PANDORA, AMAZON MUSIC, YOUTUBE® MUSIC, APPLE MUSIC, or other media content services.

[0041] In some embodiments, local network 160 comprises a dedicated communications network that MPS 100 uses to transmit messages between individual devices and / or to transmit media content to and from the MCS. In certain embodiments, local network 160 is configured to be accessible only to devices within MPS 100, thereby reducing interference and contention with other home devices. However, in other embodiments, local network 160 comprises an existing home communications network (e.g., a home Wi-Fi network). In some embodiments, MPS 100 is implemented without local network 160, and the various devices that comprise MPS 100 can communicate with each other via, for example, one or more direct connections, PANs, telecommunications networks (e.g., LTE networks or 5G networks, etc.), and / or other suitable communications links.

[0042] In some embodiments, audio content sources may be added or removed from MPS 100 periodically. In some embodiments, for example, MPS 100 performs media item indexing when one or more media content sources are updated, added, and / or removed from MPS 100. MPS 100 may scan for identifiable media items in some or all folders and / or directories accessible to various playback devices and generate or update a media content database that includes metadata (e.g., title, artist, album, track length) and other associated information (e.g., URI, URL) for each identifiable media item found. In some embodiments, for example, the media content database is stored in one or more of the various playback devices, network microphone devices, and / or control devices of MPS 100.

[0043] 1B, the remote computing device 106 further includes a remote computing device 106c configured to perform certain operations such as, among others, remotely facilitating media playback functions, managing device and system status information, and directing communications between devices of the MPS 100 and one or more VASs and / or MCSs. In one example, the remote computing device 106c provides a cloud server for one or more SONOS wireless HiFi systems.

[0044] In various embodiments, one or more of the playback devices 110 may take the form of or include an on-board (e.g., integrated) network microphone device configured to receive audio utterances from a user. For example, the playback devices 110c-110h and 110k include or comprise corresponding NMDs 120c-120h and 120k, respectively. A playback device that includes or comprises an NMD may be interchangeably referred to herein as a playback device or an NMD, unless otherwise indicated herein. In some cases, one or more of the NMDs 120 may be a standalone device. For example, the NMD 120l may be a standalone device. A standalone NMD may omit components and / or features that are typically included in a playback device, such as a speaker or associated electronics. For example, in such cases, the standalone NMD may not generate audio output or may generate limited audio output (e.g., relatively low quality audio output).

[0045] Each of the various playback and network microphone devices 110 and 120 of the MPS 100 may be associated with a unique name, which may be assigned to each device by a user, such as during setup of one or more of these devices. For example, as shown in the illustrated example of FIG. 1B, a user may assign the name "Bookcase" to playback device 110e because it is physically located in a bookcase. Similarly, NMD 120l may be assigned the name "Island" because it is physically located on the countertop of an island in kitchen 101h (FIG. 1A). Some playback devices may be assigned names according to zones or rooms, such as playback devices 110g, 110d, and 110f, which may be named "Bedroom," "Dining Room," and "Office," respectively. Additionally, certain playback devices may have names that are functionally descriptive. For example, playback devices 110k and 110h are assigned the names "Right" and "Front," respectively, because these two devices are configured to provide specific audio channels during media playback in a zone of den 101d (FIG. 1A). Playback device 110c in the patio may be named "Portable" because it is battery-powered and / or easily movable to different areas of environment 101. Other naming conventions are possible.

[0046] As previously described, an NMD can detect and process sounds from its environment, such as sounds that include background noise mixed with speech from a person proximate to the NMD. For example, when a sound is detected by an NMD in the environment, the NMD can process the detected sound to determine whether the sound includes audio input intended for the NMD, and ultimately, speech that includes a particular VAS. For example, the NMD can identify whether the speech includes a wake word associated with a particular VAS.

[0047] In the illustrated example of FIG. 1B, the NMD 120 is configured to interact with the VAS 190 via the local network 160 and / or the router 109. The interaction with the VAS 190 may begin, for example, when the NMD identifies a potential wake word in the detected sound. This identification causes a wake word event, which causes the NMD to initiate transmission of detected sound data to the VAS 190. In some implementations, the various local network devices 105, 110, 120, 130 (FIG. 1A) of the MPS 100 and / or the remote computing device 106c can exchange various feedback, information, instructions, and / or related data with the remote computing device associated with the selected VAS. Such exchanges may be related to or independent of the transmitted message, including the voice input. In some embodiments, the remote computing device and MPS 100 may exchange data via communication paths described herein and / or using a metadata exchange channel as described in U.S. Patent Application Publication No. 2017-0242653, entitled “Voice Control of a Media Playback System,” published on August 24, 2017, which is incorporated herein by reference in its entirety.

[0048] Upon receiving the stream of sound data, the VAS 190 can determine whether there is speech input in the stream data from the NMD, and if so, the VAS 190 can also determine the intent underlying the speech input. The VAS 190 can then send a response back to the MPS 100, which can include sending a response directly to the NMD that caused the wake word event. The response is typically based on the intent that the VAS 190 determined was present in the speech input. As an example, in response to the VAS 190 receiving a speech input with the utterance "Play Hey Jude by the Beatles," the VAS 190 may determine that the intent underlying the speech input is to initiate playback, and further determine that the intent of the speech input is to play the particular song "Hey Jude." After these determinations, the VAS 190 can send a command to a particular MCS 192 to retrieve content (i.e., the song "Hey Jude"), which in turn provides (e.g., streams) this content to the NIPS 100 directly or indirectly via the VAS 190. In some implementations, the VAS 190 may send a command to the NIPS 100 that causes the MPS 100 to itself retrieve the content from the MCS 192 .

[0049] In certain embodiments, NMDs can facilitate arbitration between each other when an audio input is identified in the sounds detected by two or more NMDs located in close proximity to each other. For example, NMD-equipped playback device 110e in environment 101 (FIG. 1A) is relatively close to NMD-equipped living room playback device 120b, and both devices 110e and 120b may detect the same sound, at least occasionally. In such cases, this may require arbitration as to which device is ultimately responsible for providing the detected sound data to the remote VAS. Examples of arbitration between NMDs can be found, for example, in the above-referenced U.S. Patent Application Publication No. 2017-0242653.

[0050] In certain embodiments, an NMD may be assigned or associated with a designated or default playback device that may not include an NMD. For example, an island NMD 120l in a kitchen 101h (FIG. 1A) may be assigned to a dining room playback device 110d that is relatively close to the island NMD 120l. In practice, an NMD may instruct an assigned playback device to play audio in response to receiving voice input from the NMD to play audio, and an NMD may send audio to a VAS in response to a user speaking a command to play a particular song, album, playlist, etc. Further details regarding assigning an NMD and a playback device as a designated or default device may be found, for example, in U.S. Patent Application Publication No. 2017-0242653 referenced above.

[0051] Further aspects regarding the various components of the exemplary MPS 100 and how the various components may interact to provide a media experience to a user may be found in the following sections. Although the discussion herein may generally refer to the exemplary MPS 100, the techniques described herein are not limited to application within the home environment, among others, as previously described. For example, the techniques described herein may be useful in other home environment configurations that include more or fewer of any of the playback devices 110, the networked microphone devices 120, and / or the control devices 130. For example, the techniques herein may be utilized within an environment having a single playback device 110 and / or a single NMD 120. In some examples of such cases, the local network 160 (FIG. 1B) may be eliminated, and the single playback device 110 and / or the single NMD 120 may communicate directly with the remote computing devices 106a-c. In some embodiments, a telecommunications network (e.g., an LTE network, a 5G network, etc.) may communicate with the various playback devices 110, the networked microphone devices 120, and / or the control devices 130 independent of the local network 160.

[0052] b. Suitable playback device FIG. 1C is a block diagram of a playback device 110a including an input / output 111. The input / output 111 can include an analog I / O 111a (e.g., one or more wires, cables, and / or other suitable communication links configured to transmit analog signals) and / or a digital I / O 111b (e.g., one or more wires, cables, or other suitable communication links configured to transmit digital signals). In some embodiments, the analog I / O 111a is an audio line-in input connection, for example constituting an auto-detecting 3.5mm audio line-in connection. In some embodiments, the digital I / O 111b includes a Sony / Philips Digital Interface Format (S / PDIF) communication interface and / or cable, and / or a Toshiba Link (TOSLINK) cable. In some embodiments, the digital I / O 111b includes a High-Definition Multimedia Interface (HDMI®) interface and / or cable. In some embodiments, digital I / O 111b includes one or more wireless communication links, e.g., comprising radio frequency (RF), infrared, Wi-Fi, Bluetooth, or other suitable communication protocols. In certain embodiments, analog I / O 111a and digital I / O 111b include interfaces (e.g., ports, plugs, jacks) that do not necessarily include cables but are configured to receive connectors of cables carrying analog and digital signals, respectively.

[0053] The playback device 110a may receive media content (e.g., audio content consisting of music and / or other sounds) from a local audio source 150, for example, via an input / output 111 (e.g., a cable, a wire, a PAN, a Bluetooth® connection, an ad-hoc wired or wireless communication network, and / or another suitable communication link). The local audio source 105 may comprise, for example, a mobile device (e.g., a smartphone, a tablet, a laptop computer) or another suitable audio component (e.g., a television, a desktop computer, an amplifier, a phonograph, a Blu-ray player, a memory that stores digital media files). In some aspects, the local audio source 150 comprises a local music library on a smartphone, a computer, a network-attached storage (NAS), and / or another suitable device configured to store media files. In certain embodiments, one or more of the playback device 110, the NMD 120, and / or the control device 130 comprise a local audio source 150. However, in other embodiments, the media playback system omits the local audio source 150 entirely. In some embodiments, the playback device 110 a does not include an input / output 111 and receives all audio content over the local network 160 .

[0054] The playback device 110a further comprises electronics 112, a user interface 113 (e.g., one or more buttons, knobs, dials, touch-sensitive surfaces, displays, touch screens), and one or more transducers 114, hereinafter referred to as “transducers 114” (e.g., drivers). The electronics 112 is configured to receive audio from an audio source (e.g., local audio source 150) via input / output 111, one or more computing devices 106a-106c (FIG. 1B) via a local network 160, amplify the received audio, and output the amplified audio for playback via the one or more transducers 114. In some embodiments, the playback device 110a optionally includes one or more microphones 115 (e.g., a single microphone, multiple microphones, a microphone array) (hereinafter referred to as “microphones 115”). In certain embodiments, for example, a playback device 110a having an optional one or more microphones 115 can operate as an NMD configured to receive audio input from a user and perform one or more corresponding operations based on the received audio input.

[0055] In the illustrated embodiment of FIG. 1C, the electronic device 112 includes one or more processors 112a (hereinafter referred to as “processor 112a”), memory 112b, software components 112c, a network interface 112d, one or more audio processing components 112g, one or more audio amplifiers 112h (hereinafter referred to as “amplifiers 112h”), and power components 112i (e.g., one or more power supplies, power cables, power outlets, batteries, induction coils, Power-over Ethernet (POE) interfaces, and / or other suitable power sources).

[0056] In some embodiments, the electronics 112 optionally includes one or more other components 112j (e.g., one or more sensors, a video display, a touch screen, a battery charging base). In some embodiments, the playback device 110a and the electronics 112 may further include one or more audio processing components operably connected to one or more microphones, and other components described below with reference to Figures 1F and 1G.

[0057] The processor 112a may comprise a clocked computing component configured to process data, and the memory 112b may include a computer-readable storage medium (e.g., a tangible, non-transitory computer-readable medium, data storage loaded with one or more of the software components 112c) configured to store instructions for performing various operations and / or functions. The processor 112a is configured to execute the instructions stored in the memory 112b to perform one or more operations. The operations may include, for example, causing the playback device 110a to obtain audio data from an audio source (e.g., one or more of the computing devices 106a-106c (FIG. 1B)) and / or another one of the playback devices 110 and / or to obtain audio data of another one of the playback devices 110. In some embodiments, the operations may further include causing the playback device 110a to transmit the audio data to another one of the playback devices 110a and / or to another device (e.g., one of the NMDs 120). In certain embodiments, the playback device 110a further includes an operation of pairing the playback device 110a with one or more other playback devices 110 to enable a multi-channel audio environment (e.g., stereo pair, combined zones).

[0058] The processor 112a may further be configured to perform operations for the playback device 110a to synchronize playback of the audio content with another of the one or more playback devices 110. As one skilled in the art would appreciate, during synchronized playback of audio content on multiple playback devices, a listener would preferably be unable to perceive a time delay difference between the playback of the audio content by the playback device 110a and the playback of the audio content by one or more other playback devices 110. Additional details regarding audio playback synchronization between playback devices are described, for example, in U.S. Patent No. 8,234,395, incorporated by reference above.

[0059] In some embodiments, the memory 112b is further configured to store data associated with the playback device 110a, such as one or more zones and / or zone groups of which the playback device 110a is a member, audio sources accessible to the playback device 110a, and / or playback queues with which the playback device 110a (and / or another of the one or more playback devices) is associated. The stored data may include one or more state variables that are periodically updated and used to describe the state of the playback device 110a. The memory 112b may also include data associated with the state of one or more other devices of the MPS 100 (e.g., the playback device 110, the NMD 120, the control device 130). In some aspects, for example, the state data is shared among at least some of the devices of the MPS 100 at predetermined time intervals (e.g., every 5 seconds, every 10 seconds, every 60 seconds) such that the one or more devices have up-to-date data associated with the MPS 100.

[0060] The network interface 112d is configured to facilitate data transmission between the playback device 110a and one or more other devices on a data network. The network interface 112d is configured to transmit and receive data corresponding to media content (e.g., audio content, video content, text, photos) and other signals (e.g., non-transient signals) including digital packet data having an Internet Protocol (IP)-based source address and / or an IP-based destination address. The network interface 112d can parse the digital packet data so that the electronic device 112 appropriately receives and processes the data intended for the playback device 110a.

[0061] In the illustrated embodiment of FIG. 1C, the network interface 112d includes one or more wireless interfaces 112e (hereinafter referred to as "wireless interface 112e"). The wireless interface 112e (e.g., a suitable interface including one or more antennas) may be configured to wirelessly communicate with one or more other devices (e.g., one or more of the other playback devices 110, the NMD 120, and / or the control device 130) communicatively connected to the local network 160 (FIG. 1B) according to a suitable wireless communication protocol (e.g., Wi-Fi, Bluetooth, LTE). In some embodiments, the network interface 112d optionally includes a wired interface 112f (e.g., an interface or receptacle configured to receive a network cable such as an Ethernet, USB-A, USB-C, and / or Thunderbolt cable) configured to communicate in a wired connection with the other devices according to a suitable wired communication protocol. In certain embodiments, the network interface 112d includes the wired interface 112f and excludes the wireless interface 112e. In some embodiments, the electronic device 112 omits the network interface 112d entirely and transmits and receives media content and / or other data via another communication path (eg, input / output 111).

[0062] The audio processing component 112g is configured to process and / or filter data including media content received by the electronic device 112 (e.g., via the input / output 111 and / or the network interface 112d) to generate an output audio signal. In some embodiments, the audio processing component 112g includes, for example, one or more digital-to-analog converters (DACs), audio pre-processing components, audio enhancement components, digital signal processors (DSPs), and / or other suitable audio processing components, modules, circuits, etc. In certain embodiments, one or more of the audio processing components 112g may include one or more subcomponents of the processor 112a. In some embodiments, the electronic device 112 omits the audio processing component 112g. In some aspects, for example, the processor 112a executes instructions stored in the memory 112b to perform audio processing operations to generate the output audio signal.

[0063] The amplifier 112h is configured to receive and amplify the audio output signal generated by the audio processing component 112g and / or the processor 112a. The amplifier 112h may include electronic devices and / or components configured to amplify the audio signal to a level sufficient to drive one or more transducers 114. In some embodiments, for example, the amplifier 112h includes one or more switching or class D power amplifiers. However, in other embodiments, the amplifier includes one or more other types of power amplifiers (e.g., a linear gain power amplifier, a class A amplifier, a class B amplifier, a class AB amplifier, a class C amplifier, a class D amplifier, a class E amplifier, a class F amplifier, a class G amplifier, and / or a class H amplifier, and / or another suitable type of power amplifier). In certain embodiments, the amplifier 112h includes a suitable combination of two or more of the aforementioned types of power amplifiers. Furthermore, in some embodiments, an individual amplifier 112h corresponds to an individual transducer 114. However, in other embodiments, the electronics 112 includes a single amplifier 112h configured to output the amplified audio signal to multiple transducers 114. In some other embodiments, the electronics 112 omits the amplifier 112h.

[0064] In some implementations, the power component 112i of the playback device 110a may further include an internal power source (e.g., one or more batteries) configured to power the playback device 110a without a physical connection to an external power source. When equipped with an internal power source, the playback device 110a may operate independently from an external power source. In some such implementations, the external power interface may be configured to facilitate charging of the internal power source. As previously mentioned, a playback device equipped with an internal power source may be referred to herein as a "portable playback device." On the other hand, a playback device that operates using an external power source may be referred to herein as a "stationary playback device," although such a device may in fact be moved around a home or other environment.

[0065] User interface 113 can facilitate user interaction independent of or in conjunction with user interaction facilitated by one or more of control devices 130 (FIG. 1A). In various embodiments, user interface 113 includes, among other things, a touch-sensitive screen and / or one or more physical buttons provided on a surface for a user to directly provide input, and / or supports a graphical interface. User interface 113 can further include one or more of lights (e.g., LEDs) and speakers to provide visual and / or audio feedback to the user.

[0066] The transducer 114 (e.g., one or more speakers and / or speaker drivers) receives the amplified audio signal from the amplifier 112h and renders or outputs the amplified audio signal as sound (e.g., audible sound waves having a frequency between about 20 Hertz (Hz) and about 20 Kilohertz (kHz)). In some embodiments, the transducer 114 may comprise a single transducer. However, in other embodiments, the transducer 114 comprises multiple audio transducers. In some embodiments, the transducer 114 comprises two or more types of transducers. For example, the transducer 114 may include one or more low-frequency transducers (e.g., subwoofer, woofer), a mid-frequency transducer (e.g., mid-range transducer, mid-woofer), and one or more high-frequency transducers (e.g., one or more tweeters). As used herein, "low frequency" can generally refer to audio frequencies below about 500 Hz, "mid frequency" can generally refer to audio frequencies between about 500 Hz and about 2 kHz, and "high frequency" can generally refer to audio frequencies above about 2 kHz. However, in certain embodiments, one or more of the transducers 114 comprise transducers that do not conform to the aforementioned frequency ranges. For example, one of the transducers 114 may comprise a mid-woofer transducer configured to output sound at frequencies between about 200 Hz and about 5 kHz.

[0067] In some embodiments, the playback device 110a may include a speaker interface for connecting the playback device to external speakers. In other embodiments, the playback device 110a may include an audio interface for connecting the playback device to an external audio amplifier or audiovisual receiver.

[0068] By way of example, SONOS, Inc. currently offers (or has offered) for sale certain playback devices, including, for example, "SONOS ONE", "SONOS ONE SL", "SONOS FIVE", "PLAY:1", "PLAY:3", "PLAY:5", "PLAYBAR", "PLAYBASE", "BEAM", "ARC", "CONNECT:AMP", "CONNECT", "AMP", "PORT", "MOVE", and "SUB", as well as network devices, including, for example, "BOOST" and "BRIDGE". Additionally or alternatively, other suitable playback devices may be used to implement the playback devices of the exemplary embodiments disclosed herein. Moreover, as will be appreciated by those skilled in the art, playback devices are not limited to the examples or SONOS product offerings described herein. In some embodiments, for example, one or more of the playback devices 110 comprise wired or wireless headphones (e.g., above-the-ear headphones, supra-aural headphones, in-the-ear earphones). In other embodiments, one or more of the playback devices 110 comprise a docking station and / or an interface configured to interact with a docking station for a personal mobile media playback device. In certain embodiments, the playback device may be integrated with another device or component, such as a television, a lighting fixture, or some other device for indoor or outdoor use. In some embodiments, the playback device omits a user interface and / or one or more transducers. For example, FIG. 1D is a block diagram of a playback device 110p with input / output 111 and electronics 112 without user interface 113 or transducer 114.

[0069] FIG. 1E is a block diagram of a combined playback device 110q comprising a playback device 110q (FIG. 1C) including a playback device 110a (FIG. 1C) acoustically coupled with a playback device 110i (e.g., a subwoofer) (FIG. 1A). In the illustrated embodiment, the playback devices 110a and 110i are separate playback devices 110 housed in separate enclosures. However, in some embodiments, the combined playback device 110q comprises a single enclosure that houses both playback devices 110a and 110i. The combined playback device 110q can be configured to process and play sounds differently than the non-combined playback devices (e.g., playback device 110a of FIG. 1C) and / or the paired or combined playback devices (e.g., playback devices 110l and 110m of FIG. 1B). In some embodiments, for example, playback device 110a is a full-range playback device configured to render low-, mid-, and high-frequency audio content, and playback device 110i is a subwoofer configured to render low-frequency audio content. In some aspects, playback device 110a is configured to render only mid- and high-frequency components of a particular audio content when combined with a first playback device, and playback device 110i is configured to render low-frequency components of the particular audio content. In some embodiments, combined playback device 110q includes additional playback devices and / or another combined playback device.

[0070] In some embodiments, one or more of the playback devices 110 may take the form of wired and / or wireless headphones (e.g., an over-ear headset, an on-ear headset, or an in-ear headset). For example, FIG. 4 illustrates an exemplary headset assembly 400 ("headset 400") for such an implementation of one of the playback devices 110. As illustrated, the headset 400 includes a headband 402 coupling a first earcup 404a to a second earcup 404b. Each of the earcups 404a and 404b may house any portion of the electronic components within the playback device 110, such as one or more speakers. Additionally, one or more of the earcups 404a and 404b may include a user interface for controlling audio playback, volume levels, and other functions. The user interface may include any of a variety of control elements, such as physical buttons 408, sliders, knobs, and / or touch-control surfaces. 4, the headset 400 may further include ear cushions 406a and 406b coupled to the ear cups 404a and 404b, respectively. The ear cushions 406a and 406b may provide a soft barrier between the user's head and the ear cups 404a and 404b, respectively, to improve user comfort and / or provide acoustic isolation from the surroundings (e.g., passive noise reduction (PNR)).

[0071] As described in more detail below, the electronic components of the playback device may include one or more network interface components (not shown in FIG. 4 ) for facilitating wireless communication over one or more communication links. For example, the playback device may communicate with one of the control devices 130 via a first communication link 401a (e.g., a Bluetooth link) and / or with one or more other computing devices 410 (e.g., a network router and / or a remote server) via a second communication link 401b (e.g., a Wi-Fi or cellular link). As another possibility, the playback device may communicate over multiple communication links, such as a first communication link 401a with the control device 130a and a third communication link 401c (e.g., a Wi-Fi or cellular link) between the control device 130a and one or more other computing devices 410. Thus, in some embodiments, the control device 130a may act as an intermediary between the playback device and one or more other computing devices 410.

[0072] In some cases, the headphone device may take the form of a hearable device. The hearable device may include a headphone device (including an ear-level device) configured to provide hearing enhancement functionality while also supporting playback of media content (e.g., streaming media content from a user device over a PAN, streaming media content from a streaming music service provider over a WLAN and / or cellular network connection, etc.). In some cases, the hearable device may be implemented as an in-ear headphone device configured to play an amplified version of at least some sounds detected from the external environment (e.g., all sounds, selected sounds such as human voices, etc.).

[0073] It should be understood that one or more of the playback devices 110 may take the form of other wearable devices separate and distinct from headphones. A wearable device may include a device configured to be worn around a portion of a subject (e.g., head, neck, torso, arm, wrist, finger, leg, ankle, etc.). For example, the playback device 110 may take the form of a pair of glasses including a frame front (e.g., configured to hold one or more lenses), a first temple rotatably coupled to the frame front, and a second temple rotatably coupled to the frame front. In this example, the glasses may include one or more transducers integrated into at least one of the first temple and the second temple and configured to project sound toward the ear of the subject.

[0074] c. A suitable Network Microphone Device (NMD) FIG. 1F is a block diagram of NMD 120a (FIGS. 1A and 1B). NMD 120a includes one or more audio processing components 124 and a number of components described with respect to playback device 110a (FIG. 1C), including processor 112a, memory 112b, and microphone 115. NMD 120a optionally includes other components also included in playback device 110a (FIG. 1C), such as user interface 113 and / or transducer 114. In some embodiments, NMD 120a is configured as a media playback device (e.g., one or more of playback devices 110), and further includes, for example, audio processing component 112g (FIG. 1C), transducer 114, and / or one or more of other playback device components. In certain embodiments, NMD 120a comprises an Internet of Things (IoT) device, such as, for example, a thermostat, an alarm panel, a fire detector, and / or a smoke detector. In some embodiments, NMD 120a includes only microphone 115, audio processing component 124, and some of the components of electronics 112 described above with respect to FIG. 1C. In some aspects, for example, NMD 120a includes processor 112a and memory 112b (FIG. 1C), while omitting one or more other components of electronics 112. In some embodiments, NMD 120a includes additional components (e.g., one or more sensors, a camera, a thermometer, a barometer, a hygrometer).

[0075] In some embodiments, the NMD can be integrated into the playback device. FIG. 1G is a block diagram of a playback device 110r that includes an NMD 120d. The playback device 110r can include any or all of the components of the playback device 110a and can further include a microphone 115 and an audio processing component 124 (FIG. 1F). The microphones 115 are configured to detect sounds (i.e., sound waves) in the environment of the playback device 110r and are provided to the audio processing component 124. More specifically, each microphone 115 is configured to detect audio and convert the audio into a digital or analog signal representative of the detected audio, which can cause the audio processing component to perform various functions based on the detected audio, as described in more detail below. In some implementations, the microphones 115 can be arranged as an array of microphones (e.g., an array of six microphones). In some implementations, the playback device 110r can include less than six microphones or more than six microphones. The playback device 110r can have an integrated control device 130c. Control device 130c may, for example, include a user interface configured to receive user input (e.g., touch input, voice input) without a separate control device, however, in other embodiments, playback device 110r receives commands from another control device (e.g., control device 130a of FIG. 1B).

[0076] In operation, the audio processing component 124 is generally configured to detect and process audio received via the microphone 115, identify potential audio inputs in the detected audio, and extract the detected audio data to enable a VAS, such as the VAS 190 (FIG. 1B), to process the identified audio inputs in the detected audio data. The audio processing component 124 may include one or more analog-to-digital converters, an acoustic echo canceller ("AEC"), a spatial processor (e.g., one or more multi-channel Wiener filters, one or more other filters, and / or one or more beamformer components), one or more buffers (e.g., one or more circular buffers), one or more hot word engines, one or more voice extractors, and / or one or more audio processing components (e.g., components configured to recognize the voice of a particular user or a particular set of users associated with a home), among other exemplary audio processing components. In an exemplary implementation, the audio processing component 124 may include or otherwise take the form of one or more DSPs or one or more modules of a DSP. In this regard, a particular audio processing component 124 may be configured with particular parameters (e.g., gain and / or spectral parameters) that may be modified or adjusted to achieve a particular function. In some implementations, one or more of the audio processing components 124 may be subcomponents of the processor 112a.

[0077] In some implementations, the voice processing component 124 can detect and store a user's voice profile, which may be associated with a user account of the MPS 100. For example, the voice profile may be stored as and / or compared to variables stored in a set of command information or data tables. The voice profile may include frequency tonal aspects of the user's voice and / or other unique aspects of the user's voice, such as those described in the above-referenced U.S. Patent Application Publication No. 2017-0242653.

[0078] Referring again to FIG. 1F, the microphone 115 is configured to acquire, capture, and / or receive sounds from the environment (e.g., environment 101 of FIG. 1A) and / or the room in which the NMD 120a is located. The received sounds may include, for example, vocalizations, audio playback by the NMD 120a and / or another playback device, background sounds, environmental sounds, etc. The microphone 115 converts the received sounds into electrical signals to generate microphone data. The audio processing component 124 receives and analyzes the microphone data to determine whether audio input is present in the microphone data. The audio input may include, for example, an activation word followed by an utterance including a user request. As can be appreciated by those skilled in the art, an activation word is a word or other audio cue that signifies a user's voice input. For example, when querying the AMAZON® VAS, a user may speak the activation word "Alexa." Other examples include "OK, Google" to invoke the GOOGLE VAS and "Hey, Siri" to invoke the APPLE VAS.

[0079] After detecting the wake word, the voice processing component 124 monitors the microphone data for a user request accompanying the voice input. The user request may include, for example, a command to control a third party device such as a thermostat (e.g., a NEST® thermostat), a lighting device (e.g., a PHILIPS HUE® lighting device), or a media playback device (e.g., a Sonos® playback device). For example, a user may speak the wake word "Alexa" followed by "set the thermostat to 68 degrees" to set the temperature in a home (e.g., environment 101 of FIG. 1A). A user may speak the same wake word followed by "turn on the living room" to turn on lighting devices in the living room area of ​​the home. A user may similarly speak a wake word followed by a request to play a particular song, album, or playlist of music on a playback device in the home.

[0080] d. Suitable Control Device FIG. 1H is a partial schematic diagram of an example of control device 130a (FIGS. 1A and 1B). As used herein, the term "control device" may be used interchangeably with "controller," "control device," or "control system." Among other features, control device 130a is configured to receive user input associated with MPS 100 and, in response, cause one or more devices within MPS 100 to perform an action or operation corresponding to the user input. In the illustrated embodiment, control device 130a comprises a smartphone (e.g., iPhone®, Android phone) having media playback system controller application software installed. In some embodiments, control device 130a comprises, for example, a tablet (e.g., iPad®), a computer (e.g., laptop computer, desktop computer), and / or other suitable device (e.g., television, automobile audio head unit, IoT device). In certain embodiments, control device 130a comprises a dedicated controller for MPS 100. In other embodiments, as described above with respect to FIG. 1G, the control device 130a is integrated into another device within the MPS 100 (e.g., one or more of the playback device 110, the NMD 120, and / or other suitable devices configured to communicate over a network).

[0081] The control device 130a includes electronics 132, a user interface 133, one or more speakers 134, and one or more microphones 135. The electronics 132 includes one or more processors 132a (hereinafter referred to as "processor 132a"), a memory 132b, software components 132c, and a network interface 132d. The processor 132a can be configured to perform functions related to facilitating access, control, and configuration of the MPS 100 by a user. The memory 132b can include data storage into which one or more software components executable by the processor 132a can be loaded to perform those functions. The software components 132c can include applications and / or other executable software configured to facilitate control of the media playback system 100. The memory 132b can be configured to store, for example, the software components 132c, media playback system controller application software, and / or other data related to the MPS 100 and the user.

[0082] The network interface 132d is configured to facilitate network communications between the control device 130a and one or more other devices in the MPS 100 and / or one or more remote devices. In some embodiments, the network interface 132d is configured to operate according to one or more appropriate communications industry standards (e.g., infrared, wireless, wired standards including IEEE 802.3, wireless standards including IEEE 802.11a, 802.11b, 802.11g, 802.12, 802.11ac, 802.15, 4G, LTE). The network interface 132d can be configured to transmit and / or receive data, for example, to the playback device 110, the NMD 120, others of the control device 130, one of the computing devices 106 of FIG. 1B, one or more other devices comprising the media playback system, etc. The transmitted and / or received data can include, for example, control commands, state variables, playback zone and / or zone group configurations of the playback device. For example, based on user input received at user interface 133, network interface 132d can send playback device control commands (e.g., volume control, audio playback control, audio content selection) from control device 130a to one or more of the playback devices 110. Network interface 132d can also send and / or receive configuration changes, such as, for example, adding / removing one or more playback devices 110 to a zone, adding / removing one or more zones to a zone group, forming a combined or unified player, separating one or more playback devices from a combined or unified player, etc. More details on zones and groups are shown in Figures 1J-2.

[0083] The user interface 133 is configured to receive user input and can facilitate control of the MPS 100. The user interface 133 includes media content art 133a (e.g., album art, lyrics, video), playback status indicators 133b (e.g., elapsed and / or remaining time indicators), media content information area 133c, playback control area 133d, and zone indicators 133e. The media content information area 133c can include a display of relevant information (e.g., title, artist, album, genre, year of release) regarding the currently playing media content and / or media content in a queue or playlist. The playback control area 133d can include selectable (e.g., via touch input and / or via a cursor or another suitable selector) icons to cause one or more playback devices in a selected playback zone or zone group to perform playback actions, such as, for example, play or pause, fast forward, rewind, skip next, skip previous, enter / exit shuffle mode, enter / exit repeat mode, enter / exit crossfade mode, etc. The playback control area 133d may also include selectable icons for changing equalization settings, playback volume, and / or other suitable playback behavior. In the illustrated embodiment, the user interface 133 comprises a display presented on a touch screen interface of a smartphone (e.g., iPhone, Android phone). However, in some embodiments, user interfaces of various formats, styles, and interactive sequences may alternatively be implemented on one or more network devices to provide equal control access to the media playback system. FIG. 1I shows two additional user interface displays 133ff and 133g of the user interface 133.

[0084] One or more speakers 134 (e.g., one or more transducers) may be configured to output sounds to a user of the control device 130a. In some embodiments, the one or more speakers comprise individual transducers configured to correspondingly output low, mid, and / or high frequencies. In some aspects, for example, the control device 130a is configured as a playback device (e.g., one of the playback devices 110). Similarly, in some embodiments, the control device 130a is configured as an NMD (e.g., one of the NMDs 120) that receives voice commands and other sounds via one or more microphones 135.

[0085] The one or more microphones 135 may include, for example, one or more condenser microphones, electret condenser microphones, dynamic microphones, and / or other suitable types of microphones or transducers. In some embodiments, the two or more microphones 135 are positioned to capture location information of an audio source (e.g., voice, audible sound) and / or are configured to facilitate filtering of background noise. Furthermore, in certain embodiments, the control device 130a is configured to operate as a playback device and an NMD. However, in other embodiments, the control device 130a omits one or more speakers 134 and / or one or more microphones 135. For example, the control device 130a may comprise a device (e.g., a thermostat, an IoT device, a network device) that includes a portion of the electronics 132 and a user interface 133 (e.g., a touch screen) while omitting a speaker or microphone.

[0086] e. Proper playback device configuration 1J-2 show exemplary configurations of playback devices in zones and zone groups. Referring first to FIG. 2, in one example, a single playback device can belong to a zone. For example, playback device 110g in second bedroom 101c (FIG. 1A) may belong to zone C. In some implementations described below, multiple playback devices can be "combined" to form a "combined pair," which together form a single zone. For example, playback device 110l (e.g., left playback device) can be combined with playback device 110m (e.g., right playback device) to form zone B. The combined playback devices may have different playback responsibilities (e.g., channel responsibilities). In another implementation described below, multiple playback devices can be merged to form a single zone. For example, playback device 110h (e.g., front playback device) can be merged with playback device 110i (e.g., subwoofer) and playback devices 110j and 110k (e.g., left and right surround speakers, respectively) to form a single zone D. In another example, playback zones 110g and 110h may be merged to form merged group or zone group 108b. Merged playback zones 110g and 110h may not be specifically assigned different playback responsibilities. That is, merged playback zones 110h and 110i, apart from playing audio content synchronously, may each play audio content as if they were not merged.

[0087] Each zone within the MPS 100 may be provided for control as a single user interface (UI) entity. For example, Zone A may be provided as a single entity called the Master Bathroom. Zone B may be provided as a single entity called the Master Bedroom. Zone C may be provided as a single entity called the Second Bedroom.

[0088] The combined playback devices may have different playback responsibilities, such as responsibility for a particular audio channel. For example, as shown in FIG. 1J, playback devices 110l and 110m may be combined to generate or enhance a stereo effect for audio content. In this example, playback device 110l may be configured to play a left channel audio component, while playback device 110k may be configured to play a right channel audio component. In some implementations, such a stereo combination may be referred to as "pairing."

[0089] Further, the combined playback devices may have additional and / or different respective speaker drivers. As shown in FIG. 1K, a playback device 110h named Front may be combined with a playback device 110i named Sub. The Front device 110h may be configured to render a range of mid-to-high frequencies, and the Sub device 110i may be configured to render low frequencies. However, when not combined, the Front device 110h may be configured to render a full range of frequencies. As another example, FIG. 1L shows the Front device 110h and the Sub device 110i further combined with the Left playback device 110j and the Right playback device 110k, respectively. In some implementations, the Right device 110j and the Left device 110k may be configured to form a surround or "satellite" channel of a home theater system. The combined playback devices 110h, 110i, 110j, and 110k may form a single Zone D (FIG. 2).

[0090] Merged playback devices may not have assigned playback responsibilities and each may be capable of rendering the full range of audio content that the respective playback device is capable of. Nevertheless, merged devices may be represented as a single UI entity (i.e., a zone, as described above). For example, playback devices 110a and 110n in the master bathroom have a single UI entity for Zone A. In one embodiment, playback devices 110a and 110n are each capable of outputting the full range of audio content that each playback device 110a and 110n is capable of synchronously.

[0091] In some embodiments, an NMD is combined or merged with another device to form a zone. For example, NMD 120b may be combined with playback device 110e, which together form a zone F called the Living Room. In other embodiments, a standalone networked microphone device may itself be in a zone. However, in other embodiments, a standalone networked microphone device may not be associated with a zone. Further details regarding associating networked microphone devices and playback devices as designated or default devices can be found, for example, in the above-referenced U.S. Patent Application Publication No. 15 / 438,749.

[0092] The zones of the individual, combined, and / or merged devices may be grouped to form zone groups. For example, with reference to FIG. 2, zone A may be grouped with zone B to form zone group 108a including the two zones. Similarly, zone G may be grouped with zone H to form zone group 108b. As another example, zone A may be grouped with one or more other zones C-I. Zones A-I may be grouped and ungrouped in numerous ways. For example, three, four, five, or more (e.g., all) of zones A-I may be grouped. Once grouped, the zones of the individual and / or combined playback devices may play audio in sync with one another, as described in the previously referenced U.S. Pat. No. 8,234,395. Playback devices may be dynamically grouped and ungrouped to form new or different groups that play audio content in sync.

[0093] In various implementations, the zones in the environment may be a combination of the default names of the zones in the group or the names of the zones in the zone group. For example, zone group 108b may be assigned a name such as "dining+kitchen" as shown in Figure 2. In some embodiments, zone groups may be given unique names selected by the user.

[0094] Certain data may be stored in the memory of the playback device (e.g., memory 112b of FIG. 1C) as one or more state variables that are periodically updated and used to describe the state of the playback zone, playback device, and / or its associated zone group. The memory may also contain data that is associated with the state of other devices in the media system and that is shared from time to time between the devices so that one or more of the devices have the most up-to-date data associated with the system.

[0095] In some embodiments, the memory may store instances of various variable types associated with states. The variable instances may be stored with an identifier (e.g., a tag) corresponding to the type. For example, a particular identifier may be a first type "a1" to identify a playback device of a zone, a second type "b1" to identify a playback device that may be combined within the zone, and a third type "c1" to identify a zone group to which the zone may belong. As a related example, an identifier associated with the second bedroom 101c may indicate that playback device 110g is the only playback device of zone C and not within a zone group. An identifier associated with the den may indicate that the den is not grouped with other zones but includes combined playback devices 110h-110k. An identifier associated with the dining room may indicate that the dining room is part of the dining+kitchen zone group 108b and that devices 110b and 110d are grouped together (FIG. 1M). An identifier associated with the kitchen may indicate the same or similar information by the kitchen being part of the dining+kitchen zone group 108b. Other exemplary zone variables and identifiers are described below.

[0096] In yet another example, the MPS 100 may include variables or identifiers representing other associations of zones and zone groups, such as identifiers associated with areas, as shown in FIG. 2. Areas may include clusters of zone groups and / or zones not within a zone group. For example, FIG. 2 shows an upper area 109a including zones A-D and a lower area 109b including zones E-I. In one aspect, an area may be used to call out a cluster of zone groups, and / or a zone that shares one or more zones and / or a zone group of another cluster. In another aspect, this is distinct from a zone group that does not share a zone with another zone group. Further examples of techniques for implementing areas can be found, for example, in U.S. Patent Application Publication No. 15 / 682,506, filed August 21, 2017, entitled "Room Association Based on Name," and U.S. Patent No. 8,483,853, filed September 11, 2007, entitled "Controlling and manipulating groupings in a multi-zone media system." Each of these applications is incorporated herein by reference in its entirety. In some embodiments, MPS 100 may not implement areas, in which case the system may not store variables associated with areas.

[0097] 3 illustrates an exemplary housing 330 of a playback device 110 that includes a user interface in the form of a control area 332 on a top 334 of the housing 330. The control area 332 includes buttons 336a, 336b, and 336c for controlling audio playback, volume levels, and other functions. The control area 332 also includes a button 336d for switching the microphone 115 to either an on or off state. The control area 332 is at least partially surrounded by an opening formed in the top 334 of the housing 330 through which the microphone 115 (not visible in FIG. 3 ) receives sounds in the playback device 110's environment. The microphone 115 may be positioned at various locations along and / or within the top 334 or other areas of the housing 330 to detect sounds from one or more directions relative to the playback device 110.

[0098] In some embodiments, the playback device 110 may take the form of wired and / or wireless headphones (e.g., an over-ear headset, an on-ear headset, or an in-ear headset). For example, FIG. 4 illustrates an exemplary headset assembly 400 ("headset 400") for such an implementation of the playback device 110. As illustrated, the headset 400 includes a headband 402 coupling a first earcup 404a to a second earcup 404b. Each of the earcups 404a and 404b may house any portion of the electronic components within the playback device 110, such as one or more speakers. Additionally, one or more of the earcups 404a and 404b may include a user interface for controlling audio playback, volume levels, and other functions. The user interface may include any of a variety of control elements, such as physical buttons 408, sliders, knobs, and / or touch-control surfaces. 4, the headset 400 may further include ear cushions 406a and 406b coupled to the ear cups 404a and 404b, respectively. The ear cushions 406a and 406b may provide a soft barrier between the user's head and the ear cups 404a and 404b, respectively, to improve user comfort and / or provide acoustic isolation from the surroundings (e.g., passive noise reduction (PNR)).

[0099] III. Exemplary Techniques for Intelligent Setup of Playback Devices 5 illustrates a flowchart 500 that provides a high-level overview of steps that may be involved in setting up a new playback device, such as any of the exemplary playback devices 110 described above. As previously described, each of these steps may differ (e.g., include one or more different sub-steps) based on, among other things, the capabilities of the playback device being set up, the computing device being used to perform the set-up procedure, the user's home network environment, and / or the presence of other playback devices already connected to the user's media playback system. As illustrated in FIG. 5, the steps generally include (i) detecting playback devices available for set-up, (ii) establishing a direct connection to the playback device, (iii) authenticating the direct connection with the playback device, (iv) passing network configuration credentials to the playback device used to connect to the user's network and media playback system, (v) assigning the playback device to a location within the media playback system, (vi) updating the playback device as necessary, (vii) securely registering the playback device with the media playback system, and (viii) optionally presenting the user with one or more options for setting up additional features associated with the playback device.

[0100] The following paragraphs will step through the high-level steps shown in Figure 5, including several specific implementations and examples of each. The following examples are generally presented with reference to a control device, such as control device 130 (e.g., a smartphone), operating on a user's home Wi-Fi network, setting up a new playback device as part of a media playback system, such as MPS 100, although it should be understood that many other types of network-connected devices and other types of networking environments are also contemplated herein.

[0101] a. Detect available playback devices for setup In block 501, the control device 130 may first detect, via one or more communication paths, that the playback device 110 is available for setup. In practice, this step of playback device detection may include various actions performed by the playback device 110 and the control device 130 as a precursor to establishing a direct connection between the playback device and the control device 130. For example, the playback device 110 may be configured to automatically transmit one or more beacons announcing that the playback device 110 is available for setup when powered on in an unconfigured state. In this regard, a playback device may be considered unconfigured if it is not currently registered with the media playback system. This may include, for example, a brand new playback device or a playback device that has been manually reset to its factory settings, thereby erasing previous registration information.

[0102] As another possibility, the playback device 110 may be configured to enter the setup mode based on manual input from a user, such as a button press on the playback device 110. This may be desirable in some situations, such as when a user changes the network configuration information (e.g., SSID and / or password) of a home WiFi network. In this case, a previously connected playback device 110 may still be registered as a member of the user's MPS 100, but may no longer be able to connect to the user's home WiFi network. Thus, manual initiation of the setup mode on the playback device 110 may be required to re-establish its connection to the network.

[0103] The beacon transmitted by the playback device 110 to announce its availability for setup can take various forms depending on the hardware and networking capabilities of the playback device 110. A beacon as discussed herein can refer to a message transmitted periodically as a continuous advertisement of the availability of the playback device for setup over a given communication path. As one possibility, if the playback device 110 includes a wired Ethernet port and the user connects the playback device 110 to a home local area network (LAN) via a wired connection, the playback device 110 can transmit a beacon to the LAN via the wired connection. As another possibility, the playback device 110 may include one or more wireless network interfaces that allow it to communicate via one or more different wireless protocols, such as Bluetooth (e.g., Bluetooth Low Energy (BLE)) and / or WiFi. For example, the playback device 110 may transmit a BLE beacon to inform the playback device 110 of the availability of a BLE connection. Additionally or alternatively, the playback device 110 may transmit a beacon over WiFi to act as an open access point (AP) that is discoverable to other devices with WiFi connection capabilities. As another possibility, if the playback device 110 includes an APPLE® Wireless Accessory Configuration (WAC) chip used to connect accessories to iOS devices, the playback device 110 may transmit a WAC beacon that may be detectable by, for example, an iPhone® or iPad®. In some cases, the playback device 110 may transmit a beacon advertising availability for configuration over multiple available communication paths. Many other types of beacons and communication paths are possible.

[0104] A control device 130 used to facilitate the setup of the playback device 110 typically has software installed to assist the user in establishing a direct connection to the playback device, setting up the playback device 110, and then ultimately controlling the playback device 110. In some cases, the software may be natively included within the operating system of the control device 130. In other examples, the user may install a dedicated media playback system controller application on the control device 130. For a newly created media playback system, the controller application may initially guide the user through the creation of a user account (e.g., an account with a media playback system provider such as a Sonos user account) and a media playback system identifier (e.g., a home user identifier or "HHID"), which may be used later in the setup process as the basis for uniquely registering the playback device 110 as belonging to the user and with the user's media playback system. In addition, the media playback system controller application may prompt the user to grant certain permissions to the application, such as Bluetooth access and location services, which may be required to perform a scan for available WiFi networks.

[0105] The control device 130 may further include one or more wireless network interfaces that may be used to scan for beacons from any advertisement playback devices. For example, the media playback system controller application may cause the control device 130 to passively (e.g., periodically) scan for available devices via each communication path (e.g., BLE, WiFi, and / or WAC) that the control device 130 may use whenever it is running. Advantageously, this may allow discovery of the playback device 110 for configuration with little or no input by the user. As another possibility, the user may manually select an option within the media playback system controller application, such as an "Add Product" command, thereby causing the control device 130 to perform an active scan that polls for available devices more frequently than a passive scan.

[0106] As a result of the scan, the control device 130 may detect one or more beacons from the playback device 110, possibly via multiple connections. For example, the control device 130 may detect beacons transmitted by the playback device 110 via a WiFi connection to the user's LAN, via a wired Ethernet connection, as well as BLE beacons via a BLE connection. Furthermore, the beacons themselves may contain specific identification information about the playback device 110, such as a serial number and / or model number, that the control device 130 can use to determine the networking capabilities of the playback device. In this way, the control device 130 may detect a WiFi beacon on the playback device's open AP indicating that the playback device 110 is a model that supports BLE, even if the control device 130 has not yet detected a BLE beacon.

[0107] Based on the foregoing description, it can be understood that the control device 130 may be configured to support many possibilities for establishing a direct connection to the playback device 110 and select a preferred connection type from a set of possible connections when multiple connections are detected. For example, if the playback device 110 is detected via multiple connections, the control device 130 may prioritize a LAN connection over a BLE connection and a BLE connection over a WAC or open AP connection. A preferred connection type may also be established with higher granularity. For example, a WAC connection may be preferred over an open AP connection only for the first playback device of a new media playback system. An open AP connection may be preferred over a WAC for the second playback device and all subsequent playback devices. Other examples are also possible.

[0108] In some implementations, if the control device 130 determines from the detected beacons that the playback device 110 supports a more preferred connection, it can delay the selection of the direct connection type even if a beacon on that connection has not yet been received. For example, the control device 130 can discover the playback device 110 only via WiFi, while the identification information in the beacon can indicate that the playback device 110 is a model that supports both wired LAN and BLE connections. Thus, the control device 130 can delay the presentation of the setup prompt to the user for a short period of time (e.g., 15 seconds, 30 seconds, 1 minute, etc.). This allows the playback device 110 to be discovered over a wired LAN, for example, if the user did not connect an Ethernet cable to the playback device until after power-up. As another possibility, a short delay can allow the user to move the control device 130, which may be in another room, e.g., closer to the playback device 110, and is within BLE range. If a more preferable connection is nevertheless not detected after the delay, the control device 130 may display a pop-up window or similar notification that the playback device 110 is available for setup and prompt the user to continue.

[0109] As yet another possibility, during the short delay to detect the playback device 110 via the more preferred connection type, the control device 130 may retrieve additional information related to the playback device 110. For example, the control device 130 may communicate with a cloud-based computing system to retrieve authentication information for the playback device 110 based on the identification information (e.g., serial number) that the control device 130 detects in the beacon. The authentication information may be, for example, a copy of the manufacturing certificate of the playback device 110 that may be used to authenticate communications with the playback device 110 later in the setup process. In this regard, the control device 130 may temporarily delay the presentation of a notification to the user even if the most preferred connection type is available to allow the control device 130 to retrieve the authentication information. Many other possibilities exist, including retrieving the authentication information in parallel with presenting the notification to the user.

[0110] Additionally or alternatively, the control device 130 may implement a short delay between detecting the playback device 110 and displaying a user setup prompt to increase the likelihood that the control device 130 detects all playback devices available for setup. In some embodiments, the control device 130 may detect that multiple playback devices are available for setup, which may occur if the user is setting up multiple devices. In these situations, the multiple detected devices may be presented as a pop-up window or similar carousel of menu items and may be initially ordered to facilitate the overall setup experience. For example, the control device 130 may prioritize setup prompts for playback devices that are relatively likely to serve as coordinating devices for a home theater configuration or other binding group configuration, such as a sound bar. This may facilitate subsequent setup of other playback devices that may be coupled to the sound bar as surround speakers during the initial setup process. Conversely, the control device 130 may deprioritize setup prompts for playback devices, such as subwoofers, that are typically only added to a media playback system by coupling to other playback devices. This may allow other playback devices that may be potential binding partners for the subwoofer to be set up first, facilitating subsequent setup of the subwoofer.

[0111] The control device 130 may determine the presentation order among multiple available playback devices based on other factors such as, alone or in combination with the above, the connection type detected for each available device (e.g., prioritizing playback devices capable of a more preferred connection type), the wireless signal strength associated with each beacon of each playback device (e.g., prioritizing playback devices whose beacons have relatively strong detected signal strengths and / or deprioritizing playback devices whose beacons have relatively weaker signal strengths), and / or the types and number of playback devices already connected to the user's media playback system (e.g., prioritizing playback devices that are compatible as members of a synchronization group combined with playback devices already in the system), among many other possibilities.

[0112] Furthermore, regardless of any preferred presentation order that the control device 130 may determine among multiple playback devices available for setup, the control device 130 may nevertheless allow the user to scroll through the available devices (e.g., by rotating a carousel of pop-up cards) to select a particular playback device for setup. As another possibility, the control device 130 may allow the user to dismiss the prompt to set up a given playback device. For example, the user may want to set up their device at a later time. As another example, the control device 130 may be within range of another media playback system, such as a neighbor's system, and may detect one of the neighbor's playback devices available for setup. Thus, the user may dismiss the prompt to set up the neighbor's playback device. Additional safeguards that help reduce the possibility of a user setting up an unintended playback device are described below.

[0113] b. Establish a direct line of communication In block 502, a direct communication path between the control device 130 and the playback device 110 may be established in a variety of ways. As a first step, after the control device 130 detects that the playback device 110 is available for setup, the control device 130 may present a notification (e.g., a pop-up window) informing the user that the playback device 110 has been detected and prompting the user to confirm whether or not they wish to continue with the setup process. An example of such a notification can be seen in FIG. 6. As shown in this example, the notification can use the identification information included in the beacon to reference the playback device 110 by model number (e.g., Sonos One model playback device) and can further present a description of the playback device 110 (e.g., size, shape, color, etc.). In some cases, the notification can further include the serial number of the playback device 110, which can help the user verify that they are setting up the intended device. For example, the user can match the displayed serial number with one printed on the playback device 110.

[0114] The control device 130 may then detect an input to proceed with the setup of the playback device 110. The input can cause the control device 130 to send a message to the playback device 110 over the communication path that corresponds to the detected beacon.

[0115] In the case of any of the wireless communication modes previously described (e.g., BLE, WAC, open AP), this message can serve to establish a direct communication path with the playback device 110. Once the direct communication path is established, the control device 130 can provide an indication that setup is progressing. Additionally, the message sent by the control device 130 can include a command for the playback device 110 to initiate a setup routine, as described further below.

[0116] In some cases, the playback device 110 being set up may be a portable playback device (e.g., headphone device 110o shown in FIG. 1B) that supports the ability to connect to the user's WiFi network as well as the ability to connect to the control device 130 via Bluetooth pairing. In these situations, if portable playback device 110 is not already paired with control device 130, the user may be prompted with the option to pair portable playback device 110 with control device 130 via Bluetooth when first detected. After Bluetooth pairing is successfully completed, control device 130 may provide the user with the option to continue configuring portable playback device 110 to operate over the user's Wi-Fi network as well.

[0117] The initial messages described above may be exchanged between the control device 130 and the playback device 110 over a direct communication path using the Datagram Transport Layer Security (DTLS) protocol, regardless of what type of communication path is established. In this regard, it may be appreciated that if the initial direct communication path is established between the control device 130 and the playback device 110 over a BLE communication link, the direct communication path may not include BLE pairing or associated encryption. Rather, DTLS data crumbs may be transmitted over the BLE communication link in conjunction with a transport layer that provides segmentation and reassembly of data crumbs, perhaps due to possible bandwidth constraints of BLE communication associated with WAC or WiFi communication.

[0118] In some implementations, a packet acknowledgement retransmission layer may be implemented in one or both devices to increase the reliability of the DTLS communication. For example, the control device 130 or the playback device 100 may send an acknowledgement message to the other device for each received data packet received from the other device. Furthermore, since the devices are generally involved in the exchange of initial setup messages, the control device 130 and / or the playback device 100 may postpone the transmission of one or more acknowledgement messages if they determine that they will send a scheduled message as part of the initial setup process. Thus, one or more postponed acknowledgement messages may be packaged together with the scheduled message to reduce the number of messages sent over the direct communication path. Numerous other implementations and variations are possible.

[0119] c. Authenticate the connection to the playback device In block 503, one or both of the control device 130 and the playback device 110 can undertake an authentication process for communication between these two devices. Because the control device 130 will ultimately pass sensitive network configuration parameters (e.g., SSID, password, etc.) to the playback device 110 for connecting to the user's home network, it may be desirable to establish a secure and trusted connection between the control device 130 and the playback device 110 via a direct communication path before such information is exchanged. In particular, providing two-way authentication, in which the control device 130 validates the playback device 110 and the playback device 110 validates the control device 130, can help prevent a variety of different types of setup problems that may occur, including both harmless errors as well as malicious attempts to gain access to or otherwise affect the user's network. For example, two-way authentication can prevent a user from accidentally using his or her control device 130 to set up an unintended playback device (e.g., a neighbor's playback device, or a malicious spoofed playback device). Similarly, it can prevent the user's playback device 110 from being set up by an unintended control device.

[0120] Secure authentication between the control device 130 and the playback device 110 can take a variety of forms. As one possibility, the playback device 110 can pass the PIN code to the control device 130 outside of the direct communication path in a manner that requires the control device 130 to be placed in close proximity to the playback device 110. The two devices can then verify with each other that they both know the shared PIN code via the direct communication path. For example, the PIN code can be passed using near field communication (NFC) if both devices support such communication. As another example, the playback device 110 may use audio modulation to transmit the PIN code via one or more high frequency tones that are inaudible to the human ear but detectable by the microphone of the control device 130. Further details regarding the transmission of information via audio modulation can be found in U.S. Pat. No. 8,930,005, incorporated above by reference.

[0121] As yet another example, the playback device 110 can include a PIN code printed on the device (e.g., on the bottom of the device with a serial number) that the user can read and then manually enter into the control device 130. Note that the PIN code may also be passed from the playback device 110 to the control device 130 in other manners, outside of the directional communication path.

[0122] The type of authentication used by the two devices during the setup process may again depend on the hardware and software capabilities of one or both of the control device 130 and the playback device 110. In some cases, secure authentication using the PIN code exchange described above may not be available at all. For example, many existing playback devices may not support NFC or may have been manufactured before secure authentication PIN codes began to be printed on each playback device. Furthermore, some devices in the MPS 100 may not have audio transducers (e.g., network devices, amplifier-only playback devices) such that audio modulation is not an option. Similarly, some playback devices may have one or more transducers that are not capable of audio output in a frequency range that may be used for audio modulation (e.g., subwoofers). Furthermore, many other playback devices described herein may include one or more speakers such that the playback device can physically support secure authentication via audio modulation, but these playback devices may not have been updated to be configured to do so from a software perspective.

[0123] For example, secure authentication via audio modulation may require that the playback device 110 includes software (e.g., firmware) such that the playback device 110 is configured, among other things, to generate a PIN code (or store an existing PIN code), transmit the PIN code via one or more radio frequency tones, and then perform a bidirectional exchange and verification of the PIN code with the control device 130. Thus, playback devices that include firmware prior to the introduction of the secure authentication techniques described herein may not support audio modulation. Similarly, some playback devices may support NFC or include a printed PIN code applied to the playback device during the manufacturing process in anticipation of secure authentication, but the playback device may not yet include firmware to support the aforementioned PIN code exchange and verification. Furthermore, even if a firmware update to support these types of secure authentication were pushed to all existing playback devices, only playback devices that are powered on and already connected would receive the update.

[0124] Thus, the control device 130 can support many different types of connections to a given playback device as well as many different authentication methods. In addition, unlike the playback device 110, the control device 130 is typically already connected to the Internet (e.g., via the user's WiFi network) when the setup process begins, and therefore the control device 130 may generally be assumed to be running the latest version of the media playback system controller application. If this is not the case, the user may be prompted to update the application before setup begins (e.g., when the application is opened or when the playback device 110 is first detected) to provide the best setup experience.

[0125] As mentioned above, the control device 130 can send a message to the playback device 110 to start the setup routine in response to a user input to start the setup process. In some implementations, this message can cause the playback device 110 to provide feedback in the form of an audible tone, which can increase the audible engagement of the user experience and give the user confidence that the setup is proceeding correctly. As another possibility, one or more LED lights on the playback device 110 can also start flashing in a predetermined pattern. In some cases, playback devices that do not include an integrated speaker (e.g., an amplifier-only playback device) can be limited to an LED flashing pattern. As yet another possibility, a playback device (e.g., a television) connected to a display device during setup can cause the display device to present one or more visual indications to the user. Other implementations, including any combination of the above examples, may also be possible.

[0126] The message sent to the playback device 110 to initiate the setup routine may be based in part on identification information that the control device 130 received in the playback device's beacon. In particular, the identification information may convey the playback device's hardware and network capabilities, as described above, as well as the firmware version number and firmware version number of the playback device 110. instructions Based on this information, the control device 130 may determine what types of authentication are possible and may select a preferred authentication method.

[0127] In one implementation, which may be a preferred implementation, the control device 130 may support NFC and may determine from the beacon that the playback device 110 also supports NFC and is running a firmware version that supports secure NFC authentication. Thus, a message from the control device 130 to initiate a setup routine may cause the playback device 110 to generate a PIN code and write it to its NFC tag. Furthermore, after sending the message, the control device 130 may present a display instructing the user to tap the control device 130 at a specific location on the playback device 110 that corresponds to the location of the NFC tag. Examples of such instructions are shown in Figures 7A and 7B.

[0128] As previously mentioned, the message to initiate the setup routine may cause the playback device 110 to provide one or more types of feedback to the user, such as an audible tone. This feedback may continue during the authentication process and may be referenced in instructions provided to the user (e.g., an audible tone, a flashing light, etc.). As previously mentioned, this may provide confirmation to the user that they are setting up the intended device and may generally increase the level of audible engagement in the setup process.

[0129] When the user taps the control device 130 to the playback device 110, the PIN code can be passed to the control device 130 via NFC. The control device 130 and the playback device 110 can then exchange messages over a direct communication path that mutually verifies that the other device knows the same PIN code. In some cases, the playback device 110 can also send a copy of its certificate of manufacture during the exchange, which the control device 130 can verify based on the known serial number of the playback device. The PIN code can then be used as a pre-shared key that provides relatively strong mutual authentication for DTLS communication between the control device 130 and the playback device 110 over the direct communication path. For example, the control device 130 can provide network configuration information for connecting to the user's WiFi network, as described below.

[0130] In some circumstances, if the sequencing of messages and message acknowledgements exchanged between the control device 130 and the playback device 110 leading up to the NFC scan is too rigid, the devices may become out of sync such that the NFC scan does not complete successfully. For example, the control device 130 may first instruct the playback device 110 to start the NFC scan process in a SETUP_BEGIN message, which causes both devices to start a timeout window. However, if the control device 130 starts its window when it sends a message and the playback device 110 starts its window when it receives a message, the playback device's window may be delayed, especially if the message requires one or more retransmissions to reach the playback device 110. Alternatively, if the control device 130 waits until it receives an acknowledgement that the playback device 110 has received the SETUP_BEGIN message, especially if the acknowledgement requires one or more retransmissions to reach the playback device 110, the control device's window may be delayed.

[0131] Because the timeout windows for NFC scans between the two devices are misaligned in this way, it is possible, among other potential problems, for one of the two devices to register a successful scan when the other device reaches the end of its timeout window, and therefore the other device does not register the scan. If the control device 130 times out in this way, it can attempt to send a SETUP_CANCEL message or a new SETUP_BEGIN message, either of which can be ignored (e.g., send / retransmit and wait for an acknowledgement) by the playback device 110, which attempts to send a SETUP_CONTINUE message to report successful registration of the scan. This SETUP_CONTINUE message from the playback device 110 may be ignored by the control device 130. Conversely, if the playback device 110 times out, it can wait to receive another SETUP_BEGIN message, while the control device 130, having registered the successful scan, can wait for the SETUP_CONTINUE message from the playback device 110 to come. In either scenario, it may take several minutes for both devices to recover so that they can resume operation, which can result in an undesirable user experience.

[0132] To address these potential issues, the communication between the playback device 110 and the control device 130 can be made more flexible so that both can accept and acknowledge messages when these messages are not normally expected (e.g., when the receiving device is about to send a different message). For example, the control device 130 may be configured to always accept and acknowledge a SETUP_CONTINUE message from the playback device 110, even if the control device 130 has timed out and is about to send a message back to the playback device 110. Acknowledging the playback device's message can cause the playback device 110 to stop trying to send a SETUP_CONTINUE message and start listening again, which can cause the playback device 110 to register a SETUP_CANCEL message and return to the beginning of the process, waiting for a new SETUP_BEGIN message to start the timeout window again. Similarly, the playback device 110 can be configured to send a SETUP_TIMED_OUT message whenever it reaches the end of its timeout window. This can inform the control device 130 that it will not receive a SETUP_CONTINUE message, even if it registered a successful scan.

[0133] Other types of messages to facilitate successful NFC scanning are possible. Additionally, the advantages described above may also be applied to other operations that require the control device 130 and the playback device 110 to exchange a series of messages and message acknowledgments.

[0134] In another embodiment, the control device 130 may determine that either it or the playback device 110 does not support NFC (e.g., the user declined to grant the control application NFC access permission), or the NFC scan operation failed, but the playback device 110 is running firmware that supports secure authentication via audio modulation. Alternatively, if the NFC authentication described above is initiated but fails for some reason (e.g., one or more failed NFC exchanges, a timeout period expires, or the user manually backs out of the NFC authentication), the control device 130 may default to audio modulation as the next preferred authentication and may resend the message to initiate setup. In either case, the message to initiate setup may cause the playback device 110 to generate a PIN code and then transmit the PIN code via one or more high frequency tones. Meanwhile, the control device 130 may present a display instructing the user to hold the control device 130 close to the playback device that is playing the audible tones. An example of this type of instruction is shown in FIG. 8. In these circumstances, the PIN code is transmitted over a high frequency range that may not be audible to the human ear, but the playback device 110 may nevertheless present visual and / or audible feedback as described above with respect to NFC authentication. In some cases, an exchange of a PIN code is not necessary, but the playback device 110 may play a different, more distinctive tone during authentication via audio modulation to simulate the transmission of a PIN code occurring over a higher frequency.

[0135] Once the control device 130 receives the PIN code via one or more microphones, authentication can proceed as described above, whereby the control device 130 and the playback device 110 exchange messages via a direct communication path that mutually verify that the other device knows the same PIN code.

[0136] In yet another implementation, the control device 130 may determine that NFC authentication is not supported and that the playback device 110 is not capable of audio modulation (e.g., an amplifier-only playback device) and / or that both of these authentication options have failed. Nevertheless, the playback device 110 may include a PIN code printed on the device and may execute firmware that supports secure authentication via the mutual PIN code exchange described above. Thus, the control device 130 may present a display instructing the user to manually enter the PIN code from the playback device 110 into the control application, thereby providing the PIN code to the control device 130. An example of this type of instruction is shown in FIG. 9.

[0137] Alternatively, this type of manual PIN code entry may be used as a fallback for secure authentication in situations where one or both of the NFC and audio modulation authentication methods, as described above, fail. In this regard, a printed PIN code provided on the device may be used only for this type of manual PIN entry, while the NFC and audio modulation authentication methods described above may use a PIN code randomly generated by the playback device 110 upon receipt of a message to initiate setup.

[0138] In yet another embodiment, the control device 130 may determine that the playback device 110 does not run firmware that supports the type of secure authentication via mutual PIN code exchange described above, even if the playback device 110 possesses the necessary hardware. Thus, the control device 130 may fall back to an authentication method supported by the playback device's firmware. For example, a message to initiate setup may cause the playback device 110 to present audible and / or visual feedback, while the control device 130 may present an indication instructing the user to manually press a button on the playback device that is currently playing a tone and / or presenting a flashing LED light, thereby causing the playback device 110 to send a response message to the control device 130 via a direct communication path. In some circumstances, the playback device's firmware may not support providing audible or visual feedback during authentication, and thus the control device 130 may provide an instruction to the user to manually press a button on the playback device 110 without such feedback. Examples of these types of instructions are shown in FIGS. 10A and 10B.

[0139] These authentication methods may be somewhat less secure than the two-way mutual authentication described above, but can still provide some confirmation that the correct playback device is selected for setup. Furthermore, supporting these types of "legacy" authentication can extend the usable life of many older playback devices, which may only need to be set up once using legacy authentication after a firmware update supporting secure authentication becomes available. In fact, once a playback device establishes a connection to the user's WiFi network, its firmware may be updated as a subsequent step in the setup process, as described below. The updated playback device can then perform any secure authentication methods that its hardware can support (e.g., audio modulation).

[0140] d. Connect the playback device to the network Once the direct communication path is established and the connection between the control device 130 and the playback device 110 is authenticated (e.g., mutually authenticated), the control device 130 can pass network configuration information to the playback device 110 over the direct communication path that the playback device 110 can use to establish a connection to the user's WiFi network in block 504. The network configuration information can take a variety of forms, including one or both of identification information (e.g., SSID) and security information (e.g., password). Additionally or alternatively, the playback device 110 may be able to communicate with other playback devices of the user's media playback system using a proprietary mesh networking protocol, and thus the network configuration information may include information for communicating over the mesh network, such as encryption keys and designated channels for such communications. As another example, the control device 130 can provide the playback device 110 with an identifier corresponding to the user's media playback system, sometimes referred to as a home home identifier (HHID). Various other types of network configuration information are possible.

[0141] Some of the network configuration information described above may be information stored by the control device 130 or may be provided directly to the playback device 110. However, other types of network configuration information may not be easily passed from the control device 130 to the playback device 110. For example, some smartphone operating systems (e.g., Android) may not provide a way for a media playback system controller application running on the control device 130 to access the SSID and password information of the user's home WiFi network, although such information may be stored on the control device 130. Furthermore, the media playback system controller application may not separately store such information. Thus, the control device 130 may prompt the user to select their SSID and enter their WiFi password the first time the user sets up a new playback device on their home WiFi network. If the user subsequently sets up one or more additional playback devices, the control device 130 may query the playback device 110 or another playback device already connected to the user's WiFi network to obtain the SSID and password information, which may then be passed to the additional playback devices.

[0142] As another example, some other smartphone operating systems (e.g., iOS) may temporarily terminate the setup routine being performed by the media playback system controller application, provide the SSID and password information to the playback device 110 directly from the operating system's memory, and then return to the media playback system controller application to provide the remaining network configuration information (e.g., HHID). This functionality may be limited to cases where a direct communication path between the control device 130 and the playback device 110 has been established using a WAC connection, as described above. If available, this type of exchange may only apply to the first playback device set up on the user's home WiFi network, with the control device 130 obtaining network configuration information from the previously set up device for each subsequent playback device set up.

[0143] When the playback device 110 successfully receives the network configuration information from the control device 130, the playback device 110 can send an acknowledgement message to the control device 130. This acknowledgement message can interrupt the direct communication path between the control device 130 and the playback device 110, and the devices can transition to communicating with each other via the user's WiFi network. In some cases, such as a situation where the playback device 110 is the first playback device of a new media playback system, the playback device 110 can first check that the network configuration information is correct before sending the acknowledgement message. For example, the playback device 110 can attempt to connect to the user's WiFi network using the provided password to ensure that the user entered it correctly. If the connection fails, the playback device 110 can notify the control device 130 via the direct communication path, and the control device 130 can present a prompt to the user to re-enter the password. When the playback device 110 determines that the password is correct, it can send an acknowledgement message and transition to communicating with the control device 130 via the WiFi network.

[0144] e. Assign the playback device to a position in the media playback system After the playback device 110 is connected to the user's WiFi network, the control device 130 may proceed to a setup operation that may configure the playback device 110 to operate as a member of the user's media playback system. Thus, in block 505, the playback device 110 may be assigned a room name that corresponds to its location in the user's media playback system. For example, the control device 130 may present a display prompting the user to select a room name for the playback device 110, as shown in the example of FIG. 11. In some implementations, the control device 130 may present the user with a list of commonly selected room names, such as "Kitchen," "Bedroom," etc. Additionally, the control device 130 may present the user with an option to enter a custom room name, allowing the user to personalize the media playback system. Thereafter, whenever a new playback device is added to the user's media playback system, the user's custom created room name may be presented along with a list of more common room names.

[0145] In some media playback system configurations, playback device 110 may be assigned a speaker name (e.g., "kitchen counter") and a room name (e.g., "kitchen") such that multiple uncombined speakers (e.g., "kitchen counter" and "fridge top") may have the same room name (e.g., "kitchen"). In such configurations, control device 130 may present the user during the setup process with a list of commonly selected speaker names and an option to enter a custom speaker name, as well as a list of commonly selected room names and an option to enter a custom speaker name. The designation of speaker names may occur before, after, or simultaneously with the designation of room names during the setup process.

[0146] The name of the room selected by the user on the control device 130 may be transmitted to the playback device 110 and stored in memory as a flag or similar state variable. This room name may be used in many ways by the media playback system. In particular, the room name may provide context information that may serve as a basis for presenting additional configurability to the user. However, such additional setup possibilities may not be relevant in all cases. Or, they may be relevant but not immediately important to the user. Thus, as will be explained in more detail below, the presentation of additional configurability based on the playback device's selected room name may be reserved until the initial setup process is completed.

[0147] Furthermore, if the playback device 110 is a portable playback device (e.g., a headphone device), it may be unlikely to be associated with a single room in the user's media playback system. Thus, the control device 130 may skip the prompt that requests the user to assign a location to the device. Alternative options for assigning a "name" to the portable playback device may substitute a location-based identifier, such as an identifier that associates the portable playback device with a particular user of the media playback system. Other possibilities exist.

[0148] f. Update your playback devices At block 506, after the playback device 110 has been assigned a position in the media playback system, the playback device 110 may perform a check to determine whether its software (e.g., its firmware) is up to date. If not, the playback device 110 may download the latest software version and perform an update. In some cases, certain updates to the playback device 110, such as firmware updates, may remain in place even if the playback device 110 is later reset to its initial "factory" settings. For example, a factory reset is often used to erase all user-specific information from the playback device 110, such as network authentication information, media account information, and other media playback system details, before the playback device is given to a subsequent user. The updated firmware may persist nonetheless. This may enable the playback device 110 to utilize certain types of secure authentication (e.g., audio modulation) during configuration that it was not able to support prior to the update, among other benefits and improvements to its functionality.

[0149] g. Register your playback device After the available updates are executed in block 507, the playback device 110 can be registered with the user's media playback system provider as a final step in the initial setup process. Registration of the playback device 110 can take a variety of forms, including linking the playback device's serial number to the user's account with the media playback system provider. Additionally, as part of the registration process, a cloud-based computing system associated with the media playback system provider can send the playback device 110 a secure registration certificate that identifies the user's account ID and the associated media playback system ID (e.g., the system's HHID). The playback device 110 can store the secure registration certificate in memory, which can provide a basis for verifying subsequent communications with the playback device 110. For example, the playback device's communications with other playback devices in the user's media playback system, such as commands that the playback device 110 can issue to the other playback devices, can be verified using the playback device's secure registration certificate. The same can be true for any number of local or cloud-based computing devices that can be linked in some way with the user's media playback system, including one or more control devices, media content service providers, and voice assistant service providers, among other possibilities.

[0150] If registration is successful, the playback device 110 can send a message to the control device 130, which can then present a message to the user indicating that the playback device 110 has been successfully added to the user's media playback system and that its configuration is complete.

[0151] V. Additional playback device function setup The steps for configuring playback device 110 described above may represent the shortest path for (i) connecting playback device 110 to the user's WiFi network and (ii) adding playback device 110 as a member of the user's media playback system such that the user can begin playing audio content played by playback device 110. Terminating the setup process after these steps are completed may advantageously increase the likelihood that a user will successfully complete the initial setup of a given playback device, improving the user experience and increasing the user's confidence in the operation of the overall media playback system.

[0152] However, playback device 110 may support further configuration processes that enable additional playback device functionality, possibly depending on the presence and capabilities of other playback devices in the user's system or the user's other connected accounts (e.g., connected voice assistant provider accounts). These additional features may include, for example, binding with one or more other playback devices for synchronized playback of multi-channel audio content (e.g., left and right stereo content, 5.1 surround sound content, etc.), audio calibration to adjust the audio output of the playback device according to its playback environment, incorporation of one or more voice assistant services if playback device 110 includes a microphone that supports voice input, and / or linking one or more of the user's media service provider accounts to the user's media playback system.

[0153] Thus, the control device 130 may present a prompt to initiate such an additional setup process when it detects that additional feature(s) may be relevant to the user's system. In some cases, this contextual information regarding the relevance of the additional features for setup may be detected at the end of the initial setup process described above. Thus, after the user ignores the indication that the setup of the playback device 110 is complete, the control device 130 may present the user with an option to continue setting up the additional functionality. If the user ignores the option, the control device 130 may present the user with information instructing the user where to navigate if they wish to continue setting up the additional functionality at a later time. For example, the control device 130 may instruct the user to navigate to a settings menu.

[0154] As an example of an additional setup process that may be presented to a user, the control device 130 and / or the playback device 110 may determine that two or more playback devices are assigned to the same location (e.g., the same room) in the user's media playback system and that the two or more playback devices are compatible as members of a combined synchronization group. Thus, the control device 130 may provide a selectable display to the user to initiate a setup process for joining the two playback devices as members of a combined group. For example, compatible playback devices may include two playback devices of the same model that may be combined to play audio content as a stereo pair. As another example, compatible playback devices may include a sound bar or similar playback device that may form part of a home theater system, along with one or more additional playback devices that may be configured as surround speakers or subwoofers in a home theater setup. Some exemplary displays that may be presented by the control device 130 are shown in FIG. 12A-12B.

[0155] In some cases, the media playback system may include additional playback devices that are candidates to join the combined group, regardless of whether they are assigned to the same room location. For example, playback device 110 and / or one or more other playback devices of the media playback system may emit tones (e.g., high frequency tones inaudible to the user) that can be detected by microphones of the different playback devices (e.g., microphone 135 mentioned above). Based on the detected tones (e.g., volume, signal-to-noise ratio), the playback devices may be determined to be in close proximity to each other, possibly in the same physical room. In these situations, control device 130 may present the user with an option to select additional playback devices from the media playback system to join the combined group, as shown in the examples of Figures 12C-12D. Additionally, control device 130 may further prompt the user to confirm that the additional playback devices should be updated to reflect their new location in the media playback system. An example of this type of display is shown in Figure 12E.

[0156] Because synchronous playback of multi-channel audio content may include spatial components (e.g., left and right channels) and playback devices in a group may not be able to determine their positions relative to each other, the control device 130 may prompt the user to specify the relative positions of the playback devices in the group. For example, the control device 130 may present instructions for the user to move to a given position relative to the playback devices in the group. In an exemplary home theater configuration, the user may be instructed to face his or her television. In a stereo pair setup, the user may be instructed to face the front of the playback device. One of the playback devices in the group (which may be selected randomly) may play an audible tone, and the control device 130 may instruct the user to indicate which playback device is playing the audible tone via a selectable representation of the playback device provided on the control device 130. Thus, the user may select a playback device in the representation provided on the control device 130, thereby establishing the relative positions of the playback devices in the group. Some examples of these instructions are shown in Figures 13A-13B.

[0157] Alternatively, one or more of the playback devices in the group may be able to determine the relative location of the devices. For example, one or more of the playback devices may emit a tone (e.g., a high frequency tone inaudible to the user) that can be detected by one or more microphones (e.g., microphone 135 mentioned above) of the other playback devices. In this manner, relative location information of the playback devices can be determined and the user may not need to be prompted to provide an indication of such information.

[0158] In some implementations, one or more of the playback devices selected to add to the combined group may support a voice assistant service. In these situations, depending on the requirements of the particular voice assistant service, the control device 130 may guide the user by deactivating the voice assistant service on one or more member devices so that only one device in the group has an active voice assistant service. For example, in a home theater group, the voice assistant service on the surround playback device may be turned off so that the home theater playback device (e.g., sound bar) is the only voice-enabled device. If the primary home theater playback device does not support voice capabilities or if the group is only a combined stereo pair, the control device 130 may inform the user that only one of the voice-enabled playback devices (e.g., the left playback device) will include an active voice assistant service and the voice assistant service will be turned off on the other playback device. Some examples of these types of notifications can be seen in Figures 14A-14B. Other examples are also possible.

[0159] The control device 130 can also present a notification to the user if it detects a problem with one or more playback devices in the combined group, and can present the user with options to correct the problem. An example of this type of notification is shown in FIG. 15. Additionally, the control device 130 can guide the user through removing one or more devices from the combined group if the user selects a command to do so from a settings menu. Some examples of these types of instructions can be seen in FIGS. 16A-C.

[0160] Various other sub-processes related to combining playback devices within a synchronization group are also possible (e.g., subwoofer pairing, multiple subwoofers) and may be presented to the user via the control device 130 when they are determined to be relevant.

[0161] Another example of an additional configuration process that may be presented to a user based on the context is a calibration process. For example, the control device 130 and / or the playback device 110 may determine that one or more devices in the user's media playback system are NMDs (e.g., the aforementioned NMD 120) that support the capture of audio content for the purpose of calibrating the playback device to take into account the spectral characteristics of its playback environment. In some embodiments, the control device 130 may be such an NMD. However, playback device calibration may represent an example of a level of setup and customization that may not be of interest to some users.

[0162] Thus, when such capabilities are detected, a prompt for the user to calibrate the playback device using the control device 130 may not be immediately presented. Rather, the control device 130 may instead determine when a notification regarding the calibration capabilities may be relevant to the user. For example, if the user activates audio enhancement on the home theater's primary device or navigates to a manual calibration menu to adjust the EQ of the playback device (e.g., to increase bass response), the control device 130 may determine that calibration capabilities may be important to the user and present a notification (e.g., a pop-up window) informing the user of such capabilities. If the user chooses to continue, the control device 130 may guide the user through the calibration process and may also prompt the user to calibrate other speakers with similar capabilities. On the other hand, if the user ignores the calibration prompt, the control device 130 may not prompt the user again. Thus, the user must navigate to a calibration option in the settings menu of the controller application to perform the calibration process. Additionally or alternatively, the control device 130 may present a persistent but passive notification (e.g., nested within a settings menu) indicating that some additional setup functionality may be available.

[0163] Another example of an additional setup process that may be presented to the user includes enabling one or more voice assistant services on a given playback device, as described in some of the examples above. However, similar to calibration, a voice assistant service may be a feature that some users are not interested in utilizing, and therefore the control device 130 may not present it as a setup possibility whenever a voice-enabled device is added to the user's system. Rather, as described above, the control device 130 may determine when a notification regarding voice capabilities may be relevant to the user.

[0164] For example, if the user frequently uses the control device 130 or user interface on the playback device 110 to issue commands most commonly executed by a voice assistant service (e.g., volume control commands, transport control commands), the control device 130 may determine that a voice function may be relevant to the user. Thus, the control device 130 may present a notification informing the user that the playback device 110 supports a voice assistant function that may be used to execute the command the user just issued. The notification may further prompt the user whether they would like to set up a voice assistant service now, whether they would like to learn more about the voice assistant service, or whether they indicate that they are not interested in the voice assistant service. If the user chooses to proceed, the control device 130 may guide the user through the steps of enabling one or more voice assistant services on the playback device 110, as well as any other playback devices in the user's media playback system that are voice-enabled. Additionally, as with the calibration function, an indication of the voice capabilities of the playback device may otherwise be presented as a passive notification within a settings menu. Various other possibilities exist.

[0165] Yet another example of an additional setup process that may be presented to the user includes linking one or more of the user's media service provider accounts to the user's media playback system. Often, the media playback system controller application and the playback devices of the user's media playback system can play audio content from various media sources at the end of an initial setup, such as one or more media services provided by the media playback system provider (e.g., Sonos Radio). Nevertheless, linking a media service provider account to the user's media playback system may represent a more widely utilized setup process than playback device calibration or a voice assistant service. Thus, a notification for the user to initiate linking of a media service provider account may not be presented as part of the initial playback device setup so as not to burden the user during this process, but the control device 130 may present a more proactive notification to the user informing them of this setup option. For example, the home screen of the media playback system controller application may present a persistent notification dot or similar identifier to draw the user's attention. Similarly, when a user views media items from free or default services, or stored on the control device 130 or a local NAS device, the control device 130 may present a notification (e.g., a pop-up window) prompting the user to link one or more of their media service provider accounts.

[0166] Numerous other playback device and media playback system functions are also possible, having various contextual cues that the control device 130 and / or playback device 110 can use to determine when a notification to set such a function may be relevant to the user.

[0167] Some of the figures described herein include one or more operations, functions, or actions as illustrated by one or more operational blocks. Although the blocks are shown in a given order, some of the blocks may also be performed in parallel and / or in orders different from those described herein. Also, various blocks may be combined into fewer blocks, divided into additional blocks, and / or removed based on the desired implementation.

[0168] In addition, with respect to the flowcharts depicted in the figures, as well as other processes and methods disclosed herein, the figures illustrate the functionality and operation of one possible implementation of the present embodiments, and in this regard, each block may represent a module, segment, or portion of program code that includes one or more instructions executable by one or more processors to implement a logical function or block in the process.

[0169] The program code may be stored in any type of computer readable medium, such as a storage device including, for example, a disk or a hard drive. The computer readable medium may include non-transitory computer readable media, such as, for example, a register memory, a processor cache, and a computer readable medium that stores short-term data, such as a random access memory (RAM). The computer readable medium may also include non-transitory media, such as, for example, a secondary or permanent long-term storage device, such as a read-only memory (ROM), an optical or magnetic disk, a compact disk read-only memory (CD-ROM). The computer readable medium may also be any other volatile or non-volatile storage system. The computer readable medium may be considered, for example, as a computer readable storage medium or a tangible storage device. Furthermore, in the processes and methods disclosed herein, each block may correspond to a circuit and / or a machine that is wired or arranged to perform a particular function in the process.

[0170] V. Conclusion The above descriptions of playback devices, control devices, playback zone configurations, and media content sources are merely examples of some of the operating environments in which the functions and methods described below may be implemented. Other operating environments and configurations of media playback systems, playback devices, and network devices not explicitly described herein may also be applicable and suitable for implementing the functions and methods.

[0171] The above description discloses various exemplary systems, methods, apparatus, and articles of manufacture that include, among other components, firmware and / or software executing on hardware. It is understood that such examples are merely illustrative and should not be considered limiting. For example, it is contemplated that any or all of the firmware, hardware, and / or software aspects or components may be embodied exclusively in hardware, exclusively in software, exclusively in firmware, or in any combination of hardware, software, and / or firmware. Thus, the examples provided are not the only ways to implement such systems, methods, apparatus, and / or articles of manufacture.

[0172] Furthermore, reference to an "embodiment" herein means that a particular function, structure, or feature described in connection with an embodiment may be included in at least one exemplary embodiment of the present invention. The appearances of the term in various places in this specification do not necessarily all refer to the same embodiment, nor are separate or alternative embodiments mutually exclusive with other embodiments. As such, the embodiments described herein can be combined with other embodiments, as would be understood, either explicitly or implicitly, by one skilled in the art.

[0173] The present specification has been presented broadly in terms of example environments, systems, procedures, steps, logic blocks, processes, and other symbolic representations that directly or indirectly resemble the operation of network-connected data processing devices. These process descriptions and representations are typically used by those skilled in the art to most effectively convey the substance of their work to others skilled in the art. Many specific details have been described to provide a thorough understanding of the present disclosure. However, those skilled in the art will understand that certain embodiments of the present disclosure may be practiced without certain specific details. In other instances, well-known methods, procedures, components, and circuits have not been described in detail to avoid unnecessarily obscuring aspects of the embodiments. Thus, the scope of the present disclosure is defined by the appended claims, rather than by the description of the embodiments set forth above.

[0174] If any of the appended claims are read to cover purely software and / or firmware implementations, then at least one of the elements in at least one example is expressly defined herein to include a tangible, non-transitory medium, such as memory, DVD, CD, Blu-ray, etc., that stores the software and / or firmware.

Claims

1. On the playback device, At least one processor; at least one wireless network interface; A non-transitory computer readable storage medium; program instructions stored on the non-transitory computer-readable storage medium executable by the at least one processor; Equipped with The program instructions include: transmitting, via the at least one wireless network interface, a set of one or more messages that collectively indicate: (i) that the playback device is available for setup; and (ii) a network connectivity capability of the playback device; providing authentication information to a computing device configured to operate on a secure wireless network outside of a direct communication path between the computing device and the playback device; after providing the authentication information to the computing device outside of the direct communications path, (i) sending the authentication information to the computing device via the direct communications path, and (ii) receiving the authentication information from the computing device via the direct communications path; receiving, from the computing device via the direct communications path after (i) transmitting and (ii) receiving the authentication information via the direct communications path, (i) network configuration parameters and (ii) configuration information for participating in a media playback system operating on the secure wireless network; connecting to a secure wireless network and transitioning from communicating with the computing device over the direct communication path to communicating with the computing device over the secure wireless network based on the received network configuration parameters; joining the media playback system operating on the secure wireless network based on the received configuration information; The playback device is configured so as to

2. the at least one wireless network interface comprises at least two wireless network interfaces, and program instructions executable by the at least one processor to configure the playback device to transmit a set of one or more messages include program instructions executable by the at least one processor to configure the playback device to transmit the set of one or more messages via each of the at least two wireless network interfaces. The playback device according to claim 1 .

3. the at least two wireless network interfaces include (i) a WiFi interface and (ii) a Bluetooth interface; The playback device according to claim 2.

4. the network connectivity capabilities of the playback device include an indication of each wireless network interface through which the set of one or more messages is transmitted; A playback device according to claim 2 or 3.

5. The authentication information includes a PIN code, the playback device further includes program instructions stored on the non-transitory computer-readable storage medium executable by the at least one processor, the program instructions configuring the playback device to generate the PIN code based on establishing the direct communication path with the computing device. A playback device according to any one of claims 1 to 4.

6. the program instructions executable by the at least one processor to configure the playback device to provide the PIN code to the computing device outside of the direct communication path include program instructions executable by the at least one processor to configure the playback device to transmit the PIN code to the computing device via Near Field Communication (NFC). A playback device according to claim 5.

7. the program instructions executable by the at least one processor to configure the playback device to provide the PIN code to the computing device outside of the direct communication path include program instructions executable by the at least one processor to configure the playback device to transmit the PIN code via ultrasonic audio modulation; A playback device according to claim 5.

8. the playback device is a first playback device; At least one microphone; program instructions stored on the non-transitory computer-readable storage medium executable by the at least one processor; Further comprising: The program instructions include: detecting an ultrasonic audio tone transmitted by a second playback device of the media playback system via the one or more microphones after joining the media playback system; determining, based on the detected audio tones, that the second playback device is located proximate to the first playback device; sending an indication to a control device that the second playback device is located near the first playback device; receiving a command from the control device after sending the instruction to join the second playback device as a member of a combined playback device group; configuring the first playback device so that A playback device according to any one of claims 1 to 7.

9. A non-transitory computer-readable storage medium having program instructions provided thereon for execution by at least one processor; The program instructions may be configured to cause a playback device to: transmitting, via at least one wireless network interface, a set of one or more messages that collectively indicate (i) that the playback device is available for setup and (ii) a network connectivity capability of the playback device; having a computing device configured to operate on a secure wireless network provide authentication information outside of a direct communication path between the computing device and the playback device; providing the authentication information to the computing device outside of the direct communications path, thereafter (i) causing the authentication information to be transmitted to the computing device via the direct communications path, and (ii) causing the authentication information to be received from the computing device via the direct communications path; (i) transmitting the authentication information over the direct communications path and (ii) receiving, from the computing device over the direct communications path, (i) network configuration parameters and (ii) configuration information for participating in a media playback system operating over the secure wireless network; connecting to a secure wireless network and transitioning from communicating with the computing device over the direct communication path to communicating with the computing device over the secure wireless network based on the received network configuration parameters; participating in the media playback system operating on the secure wireless network based on the received configuration information; A non-transitory computer-readable storage medium.

10. the at least one wireless network interface comprises at least two wireless network interfaces, and the program instructions, executed by the at least one processor, that cause the set of one or more messages to be transmitted to the playback device include program instructions, executed by the at least one processor, that cause the set of one or more messages to be transmitted to the playback device via each of the at least two wireless network interfaces.

10. The non-transitory computer readable storage medium of claim 9.

11. the at least two wireless network interfaces include (i) a WiFi interface and (ii) a Bluetooth interface; The non-transitory computer-readable storage medium of claim 10.

12. the network connectivity capabilities of the playback device include an indication of each wireless network interface through which the set of one or more messages is transmitted; 12. A non-transitory computer readable storage medium according to claim 10 or 11.

13. the authentication information includes a PIN code, and the non-transitory computer-readable storage medium is also provided with program instructions that, when executed by the at least one processor, cause the playback device to generate the PIN code based on establishing the direct communication path with the computing device.

13. A non-transitory computer readable storage medium according to any one of claims 9 to 12.

14. the program instructions, when executed by the at least one processor, that cause the playback device to provide the PIN code to the computing device outside of the direct communication path include program instructions, when executed by the at least one processor, that cause the playback device to transmit the PIN code to the computing device via Near Field Communication (NFC).

14. The non-transitory computer-readable storage medium of claim 13.

15. the program instructions, when executed by the at least one processor, that cause the playback device to provide the PIN code to the computing device outside of the direct communication path include program instructions, when executed by the at least one processor, that cause the playback device to transmit the PIN code via ultrasonic audio modulation.

14. The non-transitory computer-readable storage medium of claim 13.

16. the playback device is a first playback device having at least one microphone, and the non-transitory computer-readable storage medium is also provided with program instructions for execution by the at least one processor; The program instructions cause the first playback device to: detecting, via the one or more microphones, an ultrasonic audio tone transmitted by a second playback device of the media playback system after joining the media playback system; determining, based on the detected audio tones, that the second playback device is located proximate to the first playback device; causing a control device to send an indication that the second playback device is located near the first playback device; receiving, after sending the indication, a command from the control device to join the second playback device as a member of a combined playback device group; 16. A non-transitory computer readable storage medium according to any one of claims 9 to 15.

17. 1. A method performed by a playback device having at least one wireless network interface, comprising: transmitting, via the at least one wireless network interface, a set of one or more messages that collectively indicate: (i) that the playback device is available for setup; and (ii) a network connectivity capability of the playback device; providing authentication information to a computing device configured to operate on a secure wireless network outside of a direct communication path between the computing device and the playback device; after providing the authentication information to the computing device outside of the direct communications path, (i) sending the authentication information to the computing device via the direct communications path, and (ii) receiving the authentication information from the computing device via the direct communications path; receiving, from the computing device via the direct communications path, after (i) transmitting and (ii) receiving the authentication information via the direct communications path, (i) network configuration parameters and (ii) configuration information for participating in a media playback system operating on the secure wireless network; connecting to a secure wireless network and transitioning from communicating with the computing device over the direct communication path to communicating with the computing device over the secure wireless network based on the network configuration parameters; joining the media playback system operating on the secure wireless network based on the configuration information; A method comprising:

18. the at least one wireless network interface comprises at least two wireless network interfaces, and the step of causing the playback device to transmit the set of one or more messages comprises causing the playback device to transmit the set of one or more messages via each of the at least two wireless network interfaces.

20. The method of claim 17.

19. the at least two wireless network interfaces include (i) a WiFi interface and (ii) a Bluetooth interface; 20. The method of claim 18.

20. the network connectivity capabilities of the playback device include an indication of each wireless network interface through which the set of one or more messages is transmitted; 20. The method of claim 18 or 19.

Citation Information

Patent Citations

  • Sensor-based configuration and control of network devices

    JP2015515048A

  • Karaoke system, address lease server, administrative server and karaoke device

    JP2016149689A

  • Automatic configuration of household playback devices

    JP2016514280A

  • Media system access via cellular network

    JP2018136959A

  • Validation of Audio Calibration Using Multidimensional Motion Check

    JP2018533752A