Systems, methods, and devices for grouping client devices based on sensor data in an assisted wireless communication system are provided. Sensor data may include device mobility, device type, and device application data usage, among other characteristics. An assisted wireless communication system may include client devices sending data to an access point. The clients may send conventional protocol data over a channel and, concurrently, send sensor data over an alternative channel. In some cases, client devices may exchange their protocol data, modify their own protocol data based on the exchanged data, and send the modified protocol data to the access point. This may allow the clients to adjust their grouping.

BACKGROUND

The present disclosure relates generally to techniques for facilitating communication between multi-user (MU) multiple-input multiple-output (MIMO) devices in a wireless communication system and, more particularly, to techniques for improving multi-user multiple-input multiple-output (MU-MIMO) performance by managing MU groups.

Wireless devices in a wireless communication system transmit and receive signals for a variety of reasons. For example, a number of wireless devices in a home or business location may use wireless signals to stream movies and music, send emails and text messages, and communicate website data—often at roughly the same time. The wireless devices may use wireless signals to communicate with a wireless access point that is connected to the Internet or other network. The wireless signals may occupy certain portions of an electromagnetic frequency spectrum, but the available electromagnetic frequency spectrum may be limited. Moreover, as the demand for wireless communication systems continues to expand, there are increasing challenges to improve spectrum usage efficiency. For example, wireless networks that employ the Wi-Fi standards (i.e., networks that complies with one or more of the IEEE 802.11 standards) may use standard available channels (e.g., 2.4 GHz or 5.8 GHz), which may limit the available bandwidth and/or the number of devices that can connect to the network.

MU-MIMO, an enhanced wireless communication technology, increases the efficiency of a traditional wireless communication system by using an additional degree of freedom in a space domain via multiple antennas. For example, in a Wi-Fi network, an access point managing the MU-MIMO network may use multiple transmitters and receivers to transfer more data to multiple clients at the same time, employing beamforming to spatially direct the wireless data transmission. To that end, the protocol for MU-MIMO networks may include a method to determine radio frequency (RF) characteristics of the clients (i.e., the RF characteristics of the channel established between the access point and the clients), and to form groups of clients based on similarities in the RF characteristics of the receivers. The clients within a group may benefit from exchanging data with the access point through a dedicated beamformed data link (e.g., channel) based on the RF characteristics of each client.

SUMMARY

Embodiments described herein are related to wireless communication systems with an access point configured to concurrently receive protocol packets containing protocol data and/or complementary packets containing complementary data from client devices of the wireless communication system. By way of example, the wireless communication system may allow the client devices to communicate data over one or more channels of a wireless network and may include an access point that receives protocol data over a channel (e.g., a Wi-Fi channel) and complementary data over an alternative channel (e.g., a wireless direct link). The protocol data may provide the radiofrequency (RF) characteristics to the access point. The complementary data communicated over the second channel may indicate client mobility (e.g., static versus dynamic), client device types, and/or application data usage (e.g., high, medium, or low bandwidth usage).

In an embodiment, the access point may group like clients (e.g., clients that share client mobility characteristics, client device type, application data usage characteristics) together based on the complementary data in addition to protocol data and adjust bandwidth usage to the group. In an embodiment, the clients may exchange protocol data with each other over an alternative channel. After a client acquires another client's protocol data with its RF characteristics, it may modify its own protocol data before replying to the access point. This may allow a client to assist in the formation of groups by the access point by allowing the client to override or adjust its membership to a beamforming group. In yet another embodiment, the access point may create a RF map indicating channel usage and RF characteristics of clients or groups, receive the RF map data on an alternative channel, and then regroup or reevaluate grouping based on the RF map data received.

DETAILED DESCRIPTION OF SPECIFIC EMBODIMENTS

As discussed above, grouping of clients may allow for effective data transmission in wireless networks. For example, conventional MU-MIMO architecture allows for an access point to communicate with multiple clients simultaneously, by employing targeted data transmission using beamforming. To that end, conventional MU-MIMO systems may comply with protocols that include methods for client devices to provide the RF characteristics of the client device to the access point or wireless router. The RF characteristics may include information about the wireless channel established between the access point and the client device, and may be used by the access point to transmit wireless data in a targeted manner, using beamforming. The RF characteristics of a client may be related, for example, to the relative location of the client with respect to the access point, the presence of RF obstacles (e.g., walls, structures, bodies of water, atmospheric perturbation). Using the received RF characteristics, the access point may form groups of clients that may have similar RF characteristics, and may communicate with clients in a group using a targeted beamformed data link.

The RF characteristics-based grouping described above may, however, lead to certain inefficiencies. Clients that have similar RF characteristics and, thus, are grouped together in the conventional MU-MIMO architecture, may have large discrepancies in their data usage, latency specification, bandwidth consumption, etc. As a result of these discrepancies, data distribution may be inefficient. Moreover, certain devices may be mobile, and may, thus change their physical location frequently. Such devices may generate additional challenges for conventional MU-MIMO grouping mechanisms, as their presence may lead to frequent regrouping. To address these challenges, and improve the efficiency of MU-MIMO architectures, systems may use complementary information to improve grouping efficiency.

Complementary information may include sensor data, obtained from sensors in a device. Sensor data may include, for example, information associated to application data usage, relative bandwidth usage among clients, mobility of device, and/or device type. The complementary information may, in addition to RF channel characteristics provided by the conventional protocol data, allow an access point to group together clients that share, for example, mobility or data usage characteristics. Complementary data may also include shared protocol data among clients that can be used for coordination of the grouping process. Such coordination may be used, for example, in situations in which the access point is not configured to process sensor data. The information provided by the complementary data may allow the access point or the client devices to intelligently form groups of client devices to maximize the use of antennas and bandwidth.

To improve grouping, as discussed above, embodiments presented herein describe client devices and access points that may be used in an assisted MU-MIMO wireless communication system. In the assisted MU-MIMO wireless communication systems described herein, the devices may send complementary data (e.g., complementary packets), such as device mobility, device type, and/or device data usage data, to the access point, in addition to RF characteristics used in the conventional MU-MIMO protocols, in a manner that preserves backward compatibility. For example, in certain embodiments, the client may send protocol data (e.g., protocol packets) to the access point on a network channel, and concurrently, another client may send the complementary data to the access point using an alternative channel. In certain embodiments, two clients may share complementary data between them over the alternative channel while they communicate with the access point over the network channel. The use of the alternative channel for the exchange of complementary data, along with the use of the network channel for exchange of protocol data, may allow electronic devices that comply with conventional MU-MIMO to join the assisted MU-MIMO wireless communication system.

As discussed above, certain embodiments may employ an assisted MU-MIMO wireless communication system that includes a network channel to exchange conventional data and an alternative channel to exchange additional data. For example, an assisted MU-MIMO wireless communication system may comply with a Wi-Fi protocol (e.g., an IEEE 802.11 compliant protocol) as the network channel and may employ, for example, a wireless direct link, such as Apple Wireless Direct Link (AWDL), AirDrop, or Bluetooth, as the alternative channel. In some embodiments, the alternative channel may be an encrypted communication link transmitted over the network channel (e.g., an encrypted wireless network over a Wi-Fi protocol).

Furthermore, due to the backward compatibility of certain embodiments described herein, the assisted MU-MIMO wireless communication systems may include some electronic devices that are configured to access both the network channel and the alternative channel, and other electronic devices that are configured to access the network channel but are not configured to access the alternative channel. In the descriptions used herein, first party devices refer to devices (e.g., access points, clients) that are configured to access both the network channel and the alternative channel, while third-party devices refer to devices (e.g., access points, clients) that are not configured to access the alternative channel. The configuration to access the alternative channel may be related to encryption (e.g., secure network), authenticated access (e.g., encrypted network), or proprietary information associated with the electronic device (e.g., a proprietary wireless protocol).

Further enhancements in the assisted MU-MIMO wireless communication system include the ability of first party clients to share protocol data to each other, via the alternative channel. The sharing of protocol data may allow first party clients to coordinate and generate modified protocol data to be returned to an access point. As a result, first-party clients may effectively manage groupings, and ensure that they are in a single group or ensure that they are not in a single group. The first party clients may share their protocol data with each other on an alternative channel (e.g., wireless direct link) concurrently with another first party or third-party client sending its protocol data to the access point using another channel (e.g., Wi-Fi channel).

As discussed in greater detail below, some of the techniques for client devices communicating their sensor data to the access point and their protocol data to other first party clients occur simultaneously. Since conventional MU-MIMO wireless communication system allows for multiple clients to communicate protocol data to the access point (e.g., RF characteristics of device) on a channel, first party clients may simultaneously transmit sensor data on an alternative channel, such as a wireless direct link between the clients and the access point, preserving backwards compatibility and not adding any additional latency to the grouping process.

With the foregoing in mind, a general description of suitable electronic devices that may communicate in an assisted MU-MIMO wireless communication system will be provided below. Turning first toFIG. 1, an electronic device10according to an embodiment of the present disclosure may include, among other things, one or more processor(s)12, memory14, nonvolatile storage16, a display18, input structures22, an input/output (I/O) interface24, a network interface26, and a power source28. The various functional blocks shown inFIG. 1may include hardware elements (including circuitry), software elements (including computer code stored on a computer-readable medium) or a combination of both hardware and software elements. It should be noted thatFIG. 1is merely one example of a particular implementation and is intended to illustrate the types of components that may be present in electronic device10.

By way of example, the electronic device10may represent a block diagram of the notebook computer depicted inFIG. 2, the handheld device depicted inFIG. 3, the handheld device depicted inFIG. 4, the desktop computer depicted inFIG. 5, the wearable electronic device depicted inFIG. 6, the media center device inFIG. 7, the electronic access point inFIG. 8, the intelligent home assistant inFIG. 9, or similar devices. It should be noted that the processor(s)12and other related items inFIG. 1may be generally referred to herein as “data processing circuitry.” Such data processing circuitry may be embodied wholly or in part as software, firmware, hardware, or any combination thereof. Furthermore, the data processing circuitry may be a single contained processing module or may be incorporated wholly or partially within any of the other elements within the electronic device10.

In the electronic device10ofFIG. 1, the processor(s)12may be operably coupled with the memory14and the nonvolatile storage16to perform various algorithms. Such programs or instructions executed by the processor(s)12may be stored in any suitable article of manufacture that includes one or more tangible, computer-readable media at least collectively storing the instructions or routines, such as the memory14and the nonvolatile storage16. The memory14and the nonvolatile storage16may include any suitable articles of manufacture for storing data and executable instructions, such as random-access memory, read-only memory, rewritable flash memory, hard drives, and optical discs. In addition, programs (e.g., an operating system) encoded on such a computer program product may also include instructions that may be executed by the processor(s)12to enable the electronic device10to provide various functionalities.

The input structures22of the electronic device10may enable a user to interact with the electronic device10(e.g., pressing a button to increase or decrease a volume level). The I/O interface24may enable electronic device10to interface with various other electronic devices, as may the network interface26.

The network interface26may include, for example, one or more interfaces for a personal area network (PAN), such as a Bluetooth network, for a local area network (LAN) or wireless local area network (WLAN), such as an 802.11x Wi-Fi network, and/or for a wide area network (WAN), such as a 3rd generation (3G) cellular network, 4th generation (4G) cellular network, long term evolution (LTE) cellular network, long term evolution license assisted access (LTE-LAA) cellular network, or wireless direct link, such as Apple Wireless Direct Link (AWDL) or AirDrop. The network interface26may also include one or more interfaces for, for example, broadband fixed wireless access networks (WiMAX), mobile broadband Wireless networks (mobile WiMAX), asynchronous digital subscriber lines (e.g., ADSL, VDSL), digital video broadcasting-terrestrial (DVB-T) and its extension DVB Handheld (DVB-H), ultra-Wideband (UWB), alternating current (AC) power lines, and so forth. Network interface26, such as the one described above, may allow access to the MU-MIMO wireless communication systems described herein. As further illustrated, the electronic device10may include a power source28. The power source28may include any suitable source of power, such as a rechargeable lithium polymer (Li-poly) battery and/or an alternating current (AC) power converter.

In certain embodiments, the electronic device10may take the form of a computer, a portable electronic device, a wearable electronic device, or other type of electronic device. Such computers may include computers that are generally portable (such as laptop, notebook, and tablet computers) as well as computers that are generally used in one place (such as conventional desktop computers, workstations, and/or servers). In certain embodiments, the electronic device10in the form of a computer may be a model of a MacBook®, MacBook® Pro, MacBook Air®, iMac®, Mac® mini, or Mac Pro® available from Apple Inc. By way of example, the electronic device10, taking the form of a notebook computer10A, is illustrated inFIG. 2. The depicted computer10A may include a housing or enclosure36, a display18, input structures22, and ports of an I/O interface24. In one embodiment, the input structures22(such as a keyboard and/or touchpad) may be used to interact with the computer10A, such as to start, control, or operate a GUI or applications running on computer10A. For example, a keyboard and/or touchpad may allow a user to navigate a user interface or application interface displayed on display18.

FIG. 3depicts a front view of a handheld device10B, which represents one embodiment of the electronic device10. The handheld device10B may represent, for example, a portable phone, a media player, a personal data organizer, a handheld game platform, or any combination of such devices. By way of example, the handheld device10B may be a model of an iPod® or iPhone® available from Apple Inc. of Cupertino, Calif. The handheld device10B may include an enclosure36to protect interior components from physical damage and to shield them from electromagnetic interference. The enclosure36may surround the display18. The I/O interfaces24may open through the enclosure36and may include, for example, an I/O port for a hardwired connection for charging and/or content manipulation using a standard connector and protocol, such as the Lightning connector provided by Apple Inc., a universal service bus (USB), or other similar connector and protocol.

User input structures22, in combination with the display18, may allow a user to control the handheld device10B. For example, the input structures22may activate or deactivate the handheld device10B, navigate user interface to a home screen, a user-configurable application screen, and/or activate a voice-recognition feature of the handheld device10B. Other input structures22may provide volume control or may toggle between vibrate and ring modes. The input structures22may also include a microphone may obtain a user's voice for various voice-related features, and a speaker may enable audio playback and/or certain phone capabilities. The input structures22may also include a headphone input may provide a connection to external speakers and/or headphones. The I/O interfaces24of the handheld device10B may include a physical interface to charge the handheld device10B or communicate data to or from the handheld device10B.

FIG. 4depicts a front view of another handheld device10C, which represents another embodiment of the electronic device10. The handheld device10C may represent, for example, a tablet computer, or one of various portable computing devices. By way of example, the handheld device10C may be a tablet-sized embodiment of the electronic device10, which may be, for example, a model of an iPad® available from Apple Inc. of Cupertino, Calif. The handheld device10C may also include an enclosure36that holds the electronic display18. Input structures22may include, for example, a hardware or virtual home button. The I/O interfaces24of the handheld device10C may include a physical interface to charge the handheld device10C or communicate data to or from the handheld device10C.

Turning toFIG. 5, a computer10D may represent another embodiment of the electronic device10ofFIG. 1. The computer10D may be any computer, such as a desktop computer, a server, or a notebook computer, but may also be a standalone media player or video gaming machine. By way of example, the computer10D may be an iMac®, a MacBook®, or other similar device by Apple Inc. It should be noted that the computer10D may also represent a personal computer (PC) by another manufacturer. A similar enclosure36may be provided to protect and enclose internal components of the computer10D such as the display18. In certain embodiments, a user of the computer10D may interact with the computer10D using various peripheral input devices, such as the keyboard22A or mouse22B (e.g., input structures22), which may connect to the computer10D.

Similarly,FIG. 6depicts a wearable electronic device10E representing another embodiment of the electronic device10ofFIG. 1that may be configured to operate using the techniques described herein. By way of example, the wearable electronic device10E, which may include a wristband43, may be an Apple Watch® by Apple, Inc. More generally, the wearable electronic device10E may be any wearable electronic device such as, for example, a wearable exercise monitoring device (e.g., pedometer, accelerometer, heart rate monitor), or other device by another manufacturer. The display18of the wearable electronic device10E may include a touch screen display18(e.g., LCD, OLED display, active-matrix organic light emitting diode (AMOLED) display, and so forth), as well as input structures22, which may allow users to interact with a user interface of the wearable electronic device10E.

FIG. 7depicts a front view and a side view of a media center device10F, which represents one embodiment of the electronic device10. By way of example, the media center device10F may be a model of an Apple TV 4K available from Apple Inc. of Cupertino, Calif., or any other media center device with wireless capabilities. The media center device10F may include an enclosure36to protect interior components from physical damage and to shield them from electromagnetic interference. A similar enclosure36may be provided to protect and enclose internal components of the media center device10F. The network interface26of the media center device10F may allow the device to connect to a network via one or more interfaces (e.g., 802.11x Wi-Fi network, Bluetooth, and/or wireless direct link to first party devices). The I/O interfaces24may open through the enclosure36and may include, for example, an I/O port for a hardwired connection to a network, an HDMI port, audio port, or other similar audio and video connector and protocol.

User input structures22may allow a user to control the media center device10F. For example, the input structures22may activate or deactivate the media center device10F, navigate user interface to a home screen, a user-configurable application screen, navigate between network or streaming channels, navigate between viewing modes (e.g., 4K Standard Dynamic Range (SDR), 4K High Dynamic Range, (HDR), etc.), provide volume control, and/or activate a voice-recognition feature of the media center device10F.

Turning toFIG. 8, an electronic access point10G may represent another embodiment of the electronic device10ofFIG. 1. The access point10G may be any access point that allows a wireless device to connect to a wired network. The access point10G may be connected to a router (via a wired network) as a standalone device, or it may also be an integral component of the router itself. The access point10G may transmit at both the 2.4 GHz and 5 GHz frequency at the same time, allowing for best available frequency band for connecting with a device or multiple devices. The access point10G may have a beamforming antenna array, allowing for the access point10G to determine RF characteristics of a device and target signal to the device located. By way of example, the access point10G may be an AirPort Extreme device by Apple Inc. of Cupertino, Calif.

A network interface26in the access point10G may allow network client devices to connect to the access point10G via one or more interfaces (e.g., 802.11x Wi-Fi network, Bluetooth, and/or wireless direct link to first party devices). An enclosure36may be provided to protect and enclose internal components of the access point10G. The access point10G may include an enclosure36to protect interior components from physical damage and to shield them from electromagnetic interference. The I/O interfaces24may open through the enclosure36and may include, for example, an I/O port for a hardwired connection to a network. Additionally, user input structures22may allow a user to control the access point10G. For example, the input structures22may activate or deactivate the access point10G, configure frequency bands, channels, or band availabilities, connect to a network, and/or connect devices to the network. The nonvolatile storage16may include storing configurations (e.g., network name and passwords, activated or deactivated frequency band capabilities, etc.).

FIG. 9depicts a front view of an intelligent home assistant10H, which represents one embodiment of the electronic device10. The intelligent home assistant10H may represent, for example, a speaker device with home assistant and wireless capabilities. The intelligent home assistant10H may also include soundwave beamforming capabilities as detailed below. The soundwave beamforming may allow for the microphone of the intelligent home assistant10H to detect an audio source and target audio capture, allowing the microphone to be heard over simultaneous audio transmitted from the intelligent home assistant10H. The soundwave beamforming may further allow the intelligent home assistant10H to direct sound beamed into the middle of the room while ambient sound is diffused into right and left channels and bounce off the wall. The home assistance integrated in the intelligent home assistant10H may allow a user ask the assistant to play music, answer questions, set reminders, make hands off phone calls, control smart home accessories, etc. By way of example, the intelligent home assistant10H may be a model of an Apple HomePod with integrated home assistance model of Apple Siri software available from Apple Inc. of Cupertino, Calif.

The network interface26of the intelligent home assistant10H may allow the device to connect to a network via one or more interfaces (e.g., 802.11x Wi-Fi network, Bluetooth, and/or wireless direct link to first party devices). The intelligent home assistant10H may include an enclosure36to protect internal components from physical damage and to shield them from electromagnetic interference. The I/O interfaces24may open through the intelligent home assistant10H and may include, for example, an I/O port for a hardwired connection to a network. Additionally, user input structures22may allow a user to control the intelligent home assistant10H. For example, the input structures22may include a microphone that may obtain a user's voice for various voice-related features, and a speaker may enable audio playback and/or certain intelligent home assistant10H capabilities.

Electronic devices10A,10B,10C,10D,10E,10F,10G and10H described above may all be employed in an assisted MU-MIMO wireless communication system. As mentioned above, it may be desirable for clients that are located in the same area, share mobility, share device type, and/or use similar application data usage (e.g., bandwidth), to be grouped together within the MU-MIMO wireless communication system. Indeed, in a wireless communication scenario with varying device mobility, device type, and device application data usage that would benefit from a directed communication with like clients, grouping clients based on complementary data beyond currently provided protocol data (e.g., RF characteristics) may be a useful.

While a first party or third party client may communicate protocol data to the access point on a channel, a first party client may transmit sensor data to the first party access point and/or share protocol data with a first party client on an alternative channel. The channel used to communicate protocol data may be a Wi-Fi channel. The alternative channel used by the first party clients to communicate sensor data to the access point or protocol data to first party clients, may be a wireless direct link. The wireless direct link may use a client's Bluetooth for discovery of other first party clients and then create Wi-Fi connection for transmitting and receiving data between the first party clients. Additionally or alternatively, the same data that is described below as being sent via the alternative channel may be sent via the Wi-Fi channel, but may be inaccessible (e.g., encrypted or otherwise unintelligible) to third-party devices.

Diagram100inFIG. 10illustrates a wireless communication system with clients (e.g., client A152, client B154, client C156, client D158, client E160, and client F162) that may benefit from grouping. In this example, there are multiple clients, client A152, client B154, client C156, client D158, client E160, and client F162, on different floors of a building. In the example, client A152, client B154, and client C156are disposed of in the first floor164(floor 1), client D158is disposed of in the second floor166(floor 2), client E160and client F162are disposed of in the third floor168(floor 3), and they are all connected to an access point150(e.g., electronic access point10G ofFIG. 8) on the first floor164(floor 1). Thus, clients152,154,156,158,160, or162may each be in different relative locations or distances from the access point150. Additionally, clients152,154,156,158,160, or162may have different mobility type (e.g., dynamic versus static), device type, and/or application data usage, resulting in different sensor data.

As illustrated, client A152, client D158and client F162are all portable phones, such as the hand-held device ofFIG. 3. These clients152,158,162are of the same device type and they are each dynamic (e.g., not stationary). Client B154is a notebook computer, such as the notebook computer ofFIG. 2, and it is also dynamic since a user may walk around or move the notebook without great effort. Client C156is a television that may be coupled to a media device, such as the media center ofFIG. 7, and Client E160is a desktop computer, such as the desktop computer ofFIG. 5. Although client C156and client E160are different devices, they may be both stationary. Thus, in an assisted MU-MIMO wireless communication system, similar clients may be grouped based on their sensor data in addition to conventional protocol data that indicates beamforming instructions based on RF characteristics of a client.

To illustrate, diagram200ofFIG. 11depicts the clients ofFIG. 10grouped based on the sensor data provided to the access point in an assisted MU-MIMO wireless communication system. As shown, multiple clients are in the same wireless network and communicating with the access point150, which may be hardwired to a router. Client A152, client D158, and client F162are grouped together in a first group202. The grouping feature of the assisted MU-MIMO wireless communication system may allow the access point150to group together client A152, client D158, and client F162since they are all portable phones, and thus, have the same device type and same mobility. The access point150may group client C156, a media center device, and client E160, a desktop computer, together in a third group206, since both clients remain stationary, and thus, share similar sensor data (e.g., mobility). As shown, the access point may choose to group client B154, a notebook computer, in its own individual group, a second group204since it does not share device type with the other clients152,156-162in the wireless communication system. However, as previously mentioned, a client may be grouped with like clients based on various similar sensor data that may include mobility, device type, and/or application data usage, in addition to conventional protocol data that indicates RF characteristics of a client. Thus, since client B154is mobile, the access point may group client B154in the first group202with the mobile portable phones, clients A152, client D158, and client F162. Thus, grouping clients (e.g.,152,154,156,158,160,162,164) based on sensor data, rather than limiting to conventional protocol data, allows clients that may be at varying relative distances to be grouped together. As such, grouping based on the sensor data allows for optimized MU-MIMO spectral efficiency between the access point and grouped clients since the access point is no longer trying to communicate with all clients regardless of their sensor data. Although some of the following descriptions describe sensor data related to mobility, device type, and/or application data usage which represent a particular embodiment, it should be noted that the methods and systems may be performed and implemented using any sensory information.

The grouping decision in an assisted MU-MIMO wireless communication system relies on channel sounding packets (e.g., channel sounding frames), as illustrated in block diagram250ofFIG. 12A. The architecture of the MU-MIMO wireless communication network includes clients sending protocol data (e.g., matrix that helps determine location beamforming instructions for transmission to a client) to the access point150. Considering sensor data may allow the access point150to make a more efficient grouping decision as described above.

As previously mentioned, MU-MIMO uses network beamforming, which is enabled by the support of “sounding.” Sounding denotes the process performed by the transmitter (e.g., access point150) sending out sounding frames, which may be beamformed, and the receiver (e.g., client152) responding with a protocol data packet, which may be a compressed channel matrix of the received sounding frames. The protocol data packet may indicate how well it “heard” the signal from the antenna and may provide the information related to the RF characteristics of the wireless channel between the client receiver and the access point transmitter. Specifically, the access point150may use this matrix to acquire channel state information (CSI) from each of the different clients, indicating the position of the client relative to the access point150. The CSI is effectively a collection of the spatial transfer functions between each antenna and each client terminal, containing a measure of the channel. Since a conventional MU-MIMO communication system utilizes multiple antennas, the access point150may control the phased antenna pattern to control both the areas where signal strength is the strongest and where it is the weakest to form a beamformed wireless data link. Gathering information via the antennas and the relative positions of each associated client allows the access point to create a phased pattern to talk to multiple clients independently and/or simultaneously.

As shown, access point150and three clients (client A152, client B154, and client C156) are communicating in an assisted MU-MIMO wireless communication network. In a conventional MU-MIMO wireless communication network, the access point150may initiate a sounding sequence by transmitting a Null Data Packet Announcement (NDPA), asking clients152,154, and156, for feedback. The clients review the Null Data Packet (NDP) packets (e.g., channel sounding frames), such as the frequency of the announcement, and send a compressed version of the packets (e.g., compressed beamforming (CBF)) back to the access point150. The access point150may then use the feedback as the basis for determining phased antenna pattern of the signal at each antenna and other channel transmission information. In addition to the receiving protocol data over a channel as in the conventional architecture for MU-MIMO, the first party access point150in assisted MU-MIMO wireless communication system may receive sensor data feedback simultaneously from first party clients on an alternative channel, which may allow the access point150to make smarter grouping decisions.

As depicted, the assisted MU-MIMO process250starts off with the access point150sending an NDPA288followed by an NDP packet frame to clients152,154, and156in a first time frame270. The NDPA identifies a queue that orders which client152,154,156will be the first to respond. As depicted, the first client in queue, client A152, will be the first to send258protocol data to the access point150in the second time frame252. In the same time frame and on an alternative channel, client B may send260sensor data, such as mobility, device type, and/or application data usage to the access point150. As shown, both clients152,154are independently communicating with the access point150on different channels. In the third time frame254, the second client in the queue, client B154, sends262protocol data to the access point150on a channel while client C156sends264sensor data to the access point150on an alternative channel. In the fourth time frame256, client C156, last in queue, sends268protocol data to the access point150on a channel while client A152sends266sensor data to the access point150on an alternative channel.

Providing the first party access point150with protocol data and sensor data concurrently in the manner described above, allows the access point150to make quick and efficient grouping decisions without adding delays and/or increasing latency. Thus, if a client152,154,156is determined to be grouped separately based on the sensor data provided to the access point150, then the access point150may choose to exclude the client in its grouped network receiving a specific bandwidth.

Block diagram300ofFIG. 12Billustrates first party clients152,154,156in an assisted MU-MIMO wireless communication system that may communicate protocol data to first party clients and send a co-first party client's protocol data to the access point150(e.g., first party or third-party) as its own protocol data. Please note, the description of this embodiment may occur in conjunction to a first party access point150and first party clients152,154,156sharing sensor data over an alternative channel as described above inFIG. 12A.

As shown, in a first time frame301, access point150may send an NDPA288followed by an NDP packet frame to clients152,154, and156. The NDPA288identifies a queue that orders which client152,154,156will be the first to respond. As depicted, the first client in queue, client A152, will be the first to send308protocol data to the access point150in the second time frame302. In the second time frame but on an alternative channel, first party client B154(e.g., Apple iPad) may send310co-first party client C156(e.g., Apple iPhone) its additional protocol data, and client C156may also send312its additional protocol data to first party clients (e.g., client B154).

Since the client B154and the client C156are both first party clients and have communicated their protocol data to each other via an alternative channel, client B154and client C156may choose to be grouped together. In the third time frame304, client B154is next in queue to share protocol data to the access point150. However, since client B154has exchanged protocol data with client C156, client B152may modify the protocol data sent to the access point using the protocol data from client C protocol data as basis. In some embodiments, client B may send the protocol data from client C as its modified protocol data to the access point150. At the same time frame, client A and client B may both be first party clients, and may exchange protocol data.

Similarly, in a fourth time frame306, client C156may send modified protocol data324that is based on the information previously received by client A152and client B154. In the same time frame, first party client A152and client B154may exchange protocol data. Thus, when first party clients152,154,156communicate their protocol data to each other, any one of the first party clients152,154,156may use the learned protocol data to send as modified protocol data to the access point150. Effectively, this allows first party clients152,154,156that may want to be grouped together to prevent the access point150from either not grouping the first party clients152,154,156or grouping them differently than if the grouping decision was limited to sensor data or the client's actual protocol data.

To summarize the processes of grouping based on sensor data, flow diagramFIG. 13A illustrates the process350of an assisted MU-MIMO wireless communication system with a first party access point150receiving sensor data from first party clients. The access point150requests (block352) protocol data feedback from clients. As previously mentioned, the access point150broadcasts an NDPA followed by NDP packets to have all clients set in a queue, and ready to send protocol data feedback. The clients respond (block354) with the requested protocol feedback. The requested feedback provides the access point150with the clients' RF characteristics based on signal strength between the compressed NDP packets transmitted from the clients back to the access point150. The clients may also send (block356) sensor data feedback, such as mobility type (e.g., dynamic versus static), device type, and/or application data usage (e.g., high RSSI versus medium RSSI versus low RSSI). Based on the protocol data and/or sensor data received, the access point150creates (block358) groups of clients. As discussed above, blocks354and356may be performed concurrently.

For grouping based on additional protocol data knowledge, flow diagramFIG. 13Billustrates the process400of an assisted MU-MIMO wireless communication system with first party clients sharing each other's protocol data to coordinate protocol data sent to the first party or third-party access point150. As illustrated, the access point150requests (block402) client protocol data. As mentioned above, the access point150sends out an NDPA followed by NDP packets to have all clients set in a queue, ready to send protocol data feedback. While a client may transmit its protocol data on a channel to the access point150, the first party clients may communicate (block404) their protocol data with each other on an alternative channel (e.g., Apple Wireless Direct Link). In this manner, a first party client may obtain the protocol data of its first party clients. All the first party clients may coordinate their grouping rather than allowing the access point150to use its algorithms to determine grouping. Thus, when the next first party client sends (block406) its protocol data to the access point150, the protocol data may be modified to coordinate the grouping. In this manner, first party clients in a network may independently choose to be grouped together by giving the access point150the same protocol data. Additionally, by sharing their co-first party client's protocol data to the access point150, first party clients may make themselves unavailable for grouping with others that the access point150may have grouped them with based on sensor data or protocol data. Such a scenario may arise when there is a privacy concern. For example, clients may not want to send their information to an unknown access point150(e.g., an access point that the client has not communicated with in the past) when the access point150may send its information to a cloud instance. Thus, the first party clients may take themselves out of the grouping feature of the assisted MU-MIMO wireless communication system by the described process400.

Flow diagramFIG. 14illustrates the process450of clients (e.g.,152,154,156) communicating with an access point150that may be a first party or a third-party device before grouping. As shown, an access point150may send (block454) an NDPA, broadcasting a channel-sounding frame. The first party clients152,154,156in the network may check (decision block456) if the sounding frame was broadcasted from a first party access point150. If the first party clients152,154,156determine that the sounding frame came from a third-party access point150, then clients152,154, and156may continue (block458) to function in a conventional MU-MIMO operation by sending conventional protocol data.

However, if the first party clients152,154,156determine that the access point150is also a first party device, then clients152,154, and156may process (block460) the NDP packets. Processing the packets may determine the number of stations in the Multi-User (MU) channel sounding and the order of clients152,154,156for sending sensor data by the alternative channel. Since clients152,154, and156and access point150are first party devices, the access point150may receive sensor data from a first party client (e.g.,152) while simultaneously receiving protocol data from another client (e.g.,154), and additional protocol data may be communicated between the available first party clients (e.g.,156), as previously described inFIG. 13AandFIG. 13B.

The access point150may send (block462) an NDP signal to the first client in queue, as determined by the access point150when the NDPA was sent. This signal communicates to the client152to be ready to send compressed packets feedback, relaying channel state information by the spatial transfer functions between the access point150antenna and client152terminal, indicating RF characteristics of client152to the access point150. Once the first client152receives the NDP signal, the first client152may calculate (block464) the compressed packets based on the NDP packets received and sends it to the access point150.

Based on the compressed packets received by its antennas, the access point150may determine the RF characteristics of the client152based on signal strength when the packet is received. Since the devices in this embodiment are first party devices, while the first client may send protocol data on a channel, a second first party client154simultaneously may send (block466) sensor data to the first party access point150on an alternative channel.

After receiving the protocol data from the first client152and sensor data from a second first party client154in the same time frame, the access point150may send (block504) a beamformer report poll (BF Poll) frame to signal to the second client154, next in queue to send protocol data, to be ready to send compressed packets feedback. After receiving the BF Poll frame, the second client154in queue may calculate (block506) the compressed packets based on the NDP packets received, and send it to the access point150. Based on the compressed packets received by its antennas, the access point150may determine the RF characteristics of the second client154based on signal strength when the packet is received. While the second client154may send protocol data on a channel, a third first party client156may simultaneously send (block508) sensor data to the access point150on an alternative channel.

The access point150may continue sending BF Poll signals to the next client156in queue to receive protocol data on a channel, while another first party client152may send sensor data simultaneously on an alternative channel. Accordingly, if the third client156is the last client, the access point150may send (block510) the last BF Poll signal to the last client to be ready to send compressed packets feedback. After receiving the BF Poll frame, the last client156in queue may calculate (block554) the compressed packets based on the NDP packets received, and send it to the access point150. Based on the compressed packets received by its antennas, the access point150may determine the RF characteristics of the third client156based on signal strength when the packets are received.

While the third client156may send protocol data on a channel, the first client152simultaneously may send (block556) sensor data to the access point150on an alternative channel. The first client152may have been notified558that it is next in queue to send sensor data based on the last BF Poll signal. After receiving protocol data and sensor data from the multiple clients152,154,156within the assisted MU-MIMO wireless communicate system, the first party access point150may intelligently form (block560) MU-groups and sets interval channel sounding.

The data received from clients152,154,156simultaneously over multiple channels may include the compressed packets feedback562from clients152,154, and156, sensor data feedback such as, device type data564, application data usage566(e.g., high RSSI versus medium RSSI versus low RSSI, indicating priority of device information), and mobility data568(e.g., dynamic versus static). The access point150may also reevaluate grouping (decision block570) after an interval channel sounding based. The reevaluation may take place based on changes in the data received that may be associated with a less-than-optimal MU gain. The data change may indicate changes in the RF characteristics of clients contained in the compressed packets feedback562, RF characteristics of a device type564, application data usage566of clients, and/or mobility568of clients. The access point150may calculate optimized gain and thus, the access point150may keep current grouping (block572). On the other hand, if the access point150calculates less-than-optimal MU gain utilized, then the access point150may reevaluate grouping and start the evaluation process over again.

Flow diagramFIG. 15illustrates the process500of first party access point150grouping first party clients (e.g.,152,154,156) and creating a radio frequency (RF) map based on the grouping. The RF map may indicate clients152,154,156in the network, grouping, and frequency usage. This information from the RF map may allow for better planning and allocation of channel usage and grouping. As shown, an access point150may send (block622) an NDPA, broadcasting a channel-sounding frame. The first party clients152,154,156in the network may check (decision block624) if the sounding frame was broadcasted from a first party access point150. If the first party clients152,154,156determine that the sounding frame came from a third-party access point150, then clients152,154, and156may continue (block626) to function in a conventional MU-MIMO operation by sending protocol data.

However, if the first party clients152,154,156determine that the access point150is also a first party device, then clients152,154, and156may process (block628) some or all of the NDP packets. Processing the packets may determine the number of stations in the Multi-User (MU) channel sounding and the order of clients152,154,156sending sensor data by the alternative channel. Since clients152,154, and156, and access point150may be first party devices, the access point150may receive sensor data from a first party client154while simultaneously receiving protocol data from another client152, and additional data may be communicated between the first party clients156, as previously described inFIG. 13B.

The access point150may send (block630) an NDP signal to the first client152in queue, as determined by the access point150when the NDPA was sent. This signal may communicate to the client152to be ready to send compressed packets feedback, relaying channel state information (CSI) by the spatial transfer functions between the access point150antenna and client152terminal, indicating RF characteristics of client152to the access point150. Once the first client152receives the NDP signal, the first client152may calculate (process block632) the compressed packets based on the NDP packets received, and send it to the access point150. Based on the compressed packets received by its antennas, the access point150may determine the RF characteristics of the client152based on signal strength when the packet is received. Since the devices in this embodiment are first party devices, while the first client152may send protocol data on a channel, a second first party client154may simultaneously send (block634) sensor data and RF map data to the first party access point150on an alternative channel.

After receiving the protocol data from the first client152and sensor data from a second first party client154in the same time frame, the access point150may send (block636) a beamformer report poll (BF Poll) frame to signal to the second client154, next in queue to send protocol data, to be ready to send compressed packets feedback. After receiving the BF Poll frame, the second client in queue may calculate (process block638) the compressed packets based on the NDP packets received, and send it to the access point150. Based on the compressed packets received by its antennas, the access point150may determine the RF characteristics of the second client154based on signal strength when the packets are received. While the second client154may send protocol data on a channel, a third first party client156may simultaneously send (block640) sensor data and RF map data to the access point150on an alternative channel.

The access point150may continue sending BF Poll signals to the next client156in queue to receive protocol data on a channel, while another first party client152may send sensor data simultaneously on an alternative channel. Accordingly, if the third client156is the last client156, the access point150may send (block642) the last BF Poll signal to the last client156to be ready to send compressed packets feedback. After receiving the BF Poll frame, the last client156in queue may calculate (block602) the compressed packets based on the NDP packets received, and send it to the access point150. Based on the compressed packets received by its antennas, the access point150may determine the RF characteristics of the third client156based on signal strength when the packets are received.

While the third client156may send protocol data on a channel, the first client152may simultaneously send (block604) sensor data and RF map data to the access point150on an alternative channel. The RF map may indicate channel usage and RF characteristics, which may assist the access point150when grouping and/or reevaluating grouping. The first client152may have been notified606that it is next in queue to send sensor data based on the last BF Poll signal. After receiving protocol data and sensor data from the multiple clients152,154,156within the assisted MU-MIMO wireless communicate system, the first party access point150may intelligently form (block608) MU-groups and sets interval channel sounding.

The data received from clients152,154,156simultaneously over multiple channels may include the compressed packets feedback610from clients152,154, and156, sensor data feedback such as, device type data611, application data usage612(e.g., high RSSI versus medium RSSI versus low RSSI, indicating priority of device information), mobility data614(e.g., dynamic versus static), and MU-group RF map data616. However, the access point150may choose to reevaluate (decision block618) grouping based, for example, on a data change, such as less-than-optimal MU gain. The data change may indicate a change in compressed packets feedback562from clients, RF characteristics of a device type564, application data usage566of clients, and/or mobility568of clients. The access point150may calculate optimized gain and thus, the access point150may choose to keep current grouping (block620). On the other hand, if the access point150calculates less-than-optimal MU gain utilized, then the access point150may reevaluate grouping and start the evaluation process over again.

The access point150may create and update groups in the process650, as illustrated inFIG. 16. The access point150may form (block700) an MU-group for a set of clients based on various data received, as previously discussed. After forming an MU-group, the access point150may send channel-sounding packets at periodic intervals. The intervals may, in block702, be pre-set or determined via an algorithm of a design software used to configure the access point150. The interval time may vary depending the basis of the grouping, such as if the grouping is based on all the same device type (e.g., 4K TVs) and/or application data usage (e.g., high RSSI), etc.

After the access point150sends out the channel sounding packets, the access point may update (block704) the channel sounding packet interval frequency to an interval frequency greater or smaller than the previous interval. The access point may, in block706, determine a new frequency interval based on various data that is received for all MU-groups at all times. The data used to determine the new interval may relate to a substantial change in at least one client (e.g.,152) in the group708, a substantial change in the RF data710(e.g., RSSI or SNR) of at least one client152of the group, an RF map snapshot712, and the current value for interval time714. The threshold to determine a substantial change in this data may include a pre-determined threshold via an algorithm of design software to configure the access point150. In this manner, when there is a substantial change in one client152or clients of the group, the access point150may update channel sounding packet intervals to the appropriate interval. The access point150may additionally consider this information when reevaluating grouping.

As previously mentioned, first party clients may choose to group or otherwise coordinate themselves with other first party clients. On the other hand, first party clients may also choose to exclude themselves from an unknown wireless access point150in an assisted MU-MIMO wireless communication. The process750of first party clients analyzing the access point150identification (ID) and co-first party client IDs in the network, and choosing to exclude themselves, is illustrated inFIG. 17. The access point150may form (block754) groups of clients based on the various data, such as based on channel sounding packets (e.g., indicating RF characteristics of clients). Once the clients have been grouped, the first party clients in the network may check (decision block756) if the channel sounding frame was broadcasted from a known access point150. The access point150may be a known access point if a client of the group has connected to the access point150in the past. For example, a mobile phone may connect to a network at home using an access point150. The mobile phone may then travel out of channel range for the access point150and lose connection. However, the mobile phone may automatically reconnect with the same access point150upon reentering the channel range. The access point150in the described scenario may be a known access point150since the mobile phone had connected with the same access point150in the past.

If the first party clients determine that the channel sounding frame came from an unknown access point150, then the clients may continue (block758) to function in a conventional MU-MIMO operation by sending protocol data over a channel by sending their own protocol data or modified protocol data, as described inFIG. 12B. However, if the first party clients determine that the access point150is a known access point150, then the first party clients may identify (block760) other grouped clients using the access point's150NDP packets. As previously mentioned, the sounding and feedback protocol starts with the access point150sending an NDPA frame followed by the NDP, which tells the client its position in the queue to send protocol data to the access point150. The clients may use this NDP data to determine grouped clients from the queue. The clients and/or group may receive a unique identification (ID) from the access point150. The group ID (GID) may include, but is not limited to, a unique string of characters, a name, or number (1-100) to identify the group. While identifying the grouped clients, the clients consider any changes in the first party client group ID762or first party clients that may leave the group764, or go out of range. Thus, by actively analyzing which clients share a group ID762or if a client goes out of the group764, the first party clients in the assisted MU-MIMO wireless communication system identify (block766) which other clients, if any, are in the group ID.