The present application claims priority from U.S. provisional patent application No. 63/145,337, filed 2/3 at 2021, which is incorporated herein by reference in its entirety.
Detailed Description
Before starting the description of the drawings that illustrate certain embodiments in detail, it is to be understood that this disclosure is not limited to the details or methodology set forth in the specification or illustrated in the drawings. It is also to be understood that the terminology used herein is for the purpose of description only and is not intended to be limiting.
The present disclosure relates to systems, methods, and devices for coexistence of wireless communications over different protocols. In one aspect, two devices may communicate with each other over a wireless link. The two devices may communicate delay sensitive data (e.g., artificial reality data) over one or more frequency bands according to a first wireless communication protocol. Meanwhile, another device in the vicinity (e.g., within 25 feet) may communicate or attempt to communicate over a portion of one or more frequency bands in accordance with a second wireless communication protocol. The first wireless communication protocol may be a Wi-Fi communication protocol, wherein the second wireless communication protocol may be a Narrowband (NB) communication protocol, such as a bluetooth communication protocol or the like. In one aspect, high power transmissions by the other device in accordance with (or using) the second communication protocol may interfere with communications between the two devices in accordance with (or using) the first communication protocol.
In one aspect, various methods are implemented to reduce interference caused by devices communicating over a second communication protocol (e.g., NB communication protocol). In one approach, devices communicating via a second communication protocol (e.g., NB communication protocol) may perform frequency hopping within a subset of a set of frequency bands. The set of frequency bands may be in a range between 5925MHz to 6425 MHz. The subset of the set of frequency bands may be predetermined or may be adaptively determined according to channel conditions. In one approach, the number of Channel Occupancy Time (COT) attempts by a device may be set or limited to one time within the residence time. The COT may be a period of time that the wireless device evaluates a channel for frequency hopping, and the dwell time may be a period of time that the wireless device may stay on the same channel for frequency hopping. In one approach, a Transmit (TX) power allowed for the device to communicate via a second communication protocol (e.g., NB communication protocol) may be set or determined. The allowable TX power may be predetermined or may be dynamically adjusted. For example, the allowable Transmit (TX) power or allowable power spectral density (power spectral density, PSD) of the device may not exceed 10dBm/MHz. The allowable TX power may vary depending on the bandwidth of the communication over the second communication protocol (e.g., NB communication protocol). In one approach, a duty cycle at which devices communicate via a second communication protocol (e.g., NB communication protocol) may be set or determined. The duty cycle may be set to a predetermined value and/or may be set according to the TX power. In one approach, a device may send and/or receive a signal informing of a frequency hopping pattern and/or an expected bandwidth, wherein the signal may be compatible with communication via a first communication protocol such that the frequency hopping pattern, the expected bandwidth, and/or other information may be exchanged and negotiated with other devices operating according to the first communication protocol (e.g., wi-Fi communication protocol).
Advantageously, through the different methods disclosed herein, interference from another device communicating over a second communication protocol (e.g., NB communication protocol) may be reduced/avoided/prevented to protect the transmission of delay-sensitive data over a first communication protocol (e.g., wi-Fi communication protocol). Although some examples and descriptions herein relate to providing or protecting remote rendering of artificial reality (e.g., virtual reality, augmented reality, or mixed reality), the general principles disclosed herein may be applied to providing or protecting any time-delay sensitive communication.
Fig. 1 is a block diagram of an example artificial reality system environment 100. In some embodiments, augmented reality system environment 100 includes a HWD 150 worn by a user, and a console 110 that provides augmented reality content to HWD 150. HWD 150 may be referred to as, include, or be part of: a head mounted display (head mounted display, HMD), a head mounted device (head mounted device, HMD), a head wearable device (head wearabledevice, HWD), a head wearable display (head worn display, HWD), or a Head Wearable Device (HWD). HWD 150 may detect the position and/or orientation of HWD 150, as well as the shape, position, and/or orientation of the user's body/hand/face, and provide the detected position and/or orientation of HWD 150, and/or tracking information indicative of the shape, position, and/or orientation of the body/hand/face, to console 110. Console 110 may generate image data indicative of an image of an artificial reality based on the detected position and/or orientation of HWD 150, the detected shape of the body/hand/face of the user, the position and/or orientation, and/or user input of the artificial reality, and send the image data to HWD 150 for presentation. In some embodiments, the artificial reality system environment 100 includes more or fewer components than shown in FIG. 1, or includes different components than shown in FIG. 1. In some embodiments, the functionality of one or more components in the artificial reality system environment 100 may be distributed among the components in a different manner than described herein. For example, some of the functions of console 110 may be performed by HWD 150. For example, some of the functions of HWD 150 may be performed by console 110. In some embodiments, console 110 is integrated as part of HWD 150.
In some embodiments, HWD 150 is an electronic component that may be worn by a user and may present or provide an artificial reality experience to the user. HWD 150 may render one or more images, video, audio, or some combination thereof to provide an artificial reality experience to the user. In some embodiments, audio is presented by an external device (e.g., speaker and/or headphones) that receives audio information from HWD 150, console 110, or both, and presents audio based on the audio information. In some embodiments, HWD 150 includes a plurality of sensors 155, a communication interface 165, an image renderer 170, an electronic display 175, a lens 180, and a compensator 185. These components may cooperate to detect the location of HWD 150 and the gaze direction of the user wearing HWD 150, and render images of the field of view within the artificial reality corresponding to the detected location and/or orientation of HWD 150. In other embodiments, HWD 150 may include more or less components than those shown in fig. 1, or may include different components than those shown in fig. 1.
In some embodiments, sensor 155 includes electronic components, or a combination of electronic and software components, that detect the position and orientation of HWD 150. Examples of the respective sensors 155 may include: one or more imaging sensors, one or more accelerometers, one or more gyroscopes, one or more magnetometers, or another suitable type of sensor that detects motion and/or position. For example, one or more accelerometers may measure translational motion (e.g., forward/backward motion, up/down motion, left/right motion), and one or more gyroscopes may measure rotational motion (e.g., pitch, yaw, roll). In some embodiments, sensor 155 detects translational and rotational motion and determines the position and location of HWD 150. In one aspect, sensor 155 may detect translational and rotational movement relative to a previous position and location of HWD 150 and determine a new position and/or location of HWD 150 by accumulating or integrating the detected translational and/or rotational movement. For example, assuming HWD 150 is oriented 25 degrees from the reference direction, sensor 155 may determine that HWD 150 is now facing or oriented 45 degrees from the reference direction in response to detecting that HWD 150 has rotated 20 degrees. For another example, assuming HWD 150 is located two feet from the reference point in the first direction, sensor 155 may determine that HWD 150 is now located at the vector product of two feet in the first direction and three feet in the second direction in response to detecting that HWD 150 has moved three feet in the second direction.
In some embodiments, the sensor 155 comprises an eye tracker. Eye tracker may include electronic components, or a combination of electronic and software components, that determine the gaze direction of a user of HWD 150. In some embodiments, HWD 150, console 110, or a combination thereof may combine the gaze direction of the user of HWD 150 to generate artificial reality image data. In some embodiments, each eye tracker includes two eye trackers, wherein each eye tracker captures an image of a corresponding eye and determines a gaze direction of the eye. In one example, an eye tracker determines an angular rotation of the eye, a translation of the eye, a torsion (torsion) change of the eye, and/or a shape change of the eye from the acquired image of the eye, and determines a relative gaze direction with respect to HWD 150 from the determined angular rotation of the eye, translation of the eye, and torsion change of the eye. In one approach, an eye tracker may illuminate or project a predetermined reference pattern or structural pattern onto a portion of an eye and acquire an image of the eye to analyze the pattern projected onto the portion of the eye to determine the relative gaze direction of the eye with respect to HWD 150. In some embodiments, eye tracker combines the orientation of HWD 150, and the relative gaze direction with respect to HWD 150, to determine the gaze direction of the user. For example, assuming that HWD 150 is oriented 30 degrees from the reference direction and that HWD 150 is oriented-10 degrees (or 350 degrees) relative to computing device 150 with respect to the gaze direction, the eye tracker may determine that the user's gaze direction is oriented 20 degrees from the reference direction. In some embodiments, a user of HWD 150 may configure HWD 150 (e.g., via user settings) to enable or disable the eye tracker. In some embodiments, a user of HWD 150 is prompted to enable or disable the eye tracker.
In some embodiments, the communication interface 165 includes an electronic component, or a combination of electronic and software components, that communicates with the console 110. The communication interface 165 may communicate with the communication interface 115 of the console 110 via a communication link. The communication link may be a wireless link. Examples of the wireless link may include a cellular communication link, a near field communication link, wi-Fi, bluetooth, 60GHz wireless link, or any communication wireless communication link. Through this communication link, the communication interface 165 may send the following data to the console 110: this data indicates the determined location and/or position of HWD 150, and/or the determined gaze direction of the user. Further, through the communication link, the communication interface 165 may receive an indication from the console 110 or image data corresponding to an image to be rendered, as well as additional data associated with the image.
In some embodiments, image renderer 170 includes electronic components, or a combination of electronic and software components, that generate one or more images for display (e.g., according to a change in field of view in an artificial reality space). In some embodiments, the image renderer 170 is implemented as a processor (or graphics processing unit (graphical processing unit, GPU)) that executes a plurality of instructions to perform the various functions described herein. The image renderer 170 may receive image data describing an artificial reality image to be rendered, and additional data associated with the image, through the communication interface 165, and may render the image through the electronic display 175. In some embodiments, image data from console 110 may be encoded, and image renderer 170 may decode the image data to render an image. In some embodiments, image renderer 170 receives object information in additional data from console 110 that indicates a virtual object in artificial reality space and depth information that indicates the depth (or distance from HWD 150) of the virtual object. In one aspect, image renderer 170 may perform shading, reprojection, and/or blending (blending) based on the artificial reality image from console 110, object information, depth information, and/or updated sensor measurements from sensor 155 to update the artificial reality image to correspond to the updated position and/or orientation of HWD 150. Assuming the user rotates his head after the initial sensor measurement, the image renderer 170 may generate a small portion (e.g., 10%) of the image corresponding to the updated field of view within the artificial reality from the updated sensor measurement and append the portion to the image in the image data from the console 110 by re-projection instead of reconstructing the entire image in response to the updated sensor measurement. The image renderer 170 may perform shading and/or blending on the additional edges. Thus, the image renderer 170 can generate an image of the artificial reality without reconstructing the image of the artificial reality from the updated sensor measurements.
In some embodiments, electronic display 175 is an electronic component that displays images. The electronic display 175 may be, for example, a liquid crystal display or an organic light emitting diode display. The electronic display 175 may be a transparent display that allows for a user's perspective. In some embodiments, electronic display 175 is located near both eyes of the user (e.g., less than 3 inches) when HWD 150 is worn by the user. In one aspect, the electronic display 175 emits light or projects light toward both eyes of a user according to an image generated by the image renderer 170.
In some embodiments, the lens 180 is a mechanical component that alters the light received from the electronic display 175. The lens 180 may amplify light from the electronic display 175 and correct for optical errors associated with the light. Lens 180 may be a fresnel lens, a convex lens, a concave lens, a filter, or any suitable optical component that alters light from electronic display 175. Even if the electronic display 175 is very close to both eyes, light from the electronic display 175 may reach the pupil (pupil) through the lens 180 so that the user may see the image displayed by the electronic display 175.
In some embodiments, compensator 185 includes electronic components, or a combination of electronic and software components, that perform compensation to compensate for any distortion or aberrations. In one aspect, the lens 180 introduces optical aberrations (e.g., chromatic aberration), pincushion distortion, barrel distortion, and the like. The compensator 185 may determine a compensation (e.g., predistortion) to be applied to the image to be rendered from the image renderer 170 to compensate for distortion caused by the lens 180, and apply the determined compensation to the image from the image renderer 170. Compensator 185 may provide a predistorted image to electronic display 175.
In some embodiments, console 110 is an electronic component, or a combination of electronic and software components, that provides content to be rendered to HWD 150. In one aspect, the console 110 includes a communication interface 115 and a content provider 130. These components may cooperate to determine a field of view (e.g., field of view (FOV)) of the artificial reality corresponding to the location of HWD 150 and the gaze direction of the user of HWD 150, and may generate image data indicative of an image of the artificial reality corresponding to the determined field of view. Further, these components may cooperate to generate additional data associated with the image. The additional data may be information associated with rendering or rendering the artificial reality other than the artificial reality image. Examples of additional data include hand model data, mapping information (or on-the-fly positioning and mapping (simultaneous localization and mapping, SLAM) data) for converting the position and orientation of HWD 150 in physical space into virtual space, eye-tracking data, motion vector information, depth information, edge information, object information, and the like. Console 110 may provide image data and additional data to HWD 150 for use in presenting an artificial reality. In other embodiments, console 110 includes more, fewer, or different components than those shown in FIG. 1. In some embodiments, console 110 is integrated as part of HWD 150.
In some embodiments, communication interface 115 is an electronic component, or a combination of electronic and software components, that communicates with HWD 150. The communication interface 115 may be a corresponding component of the communication interface 165, which communication interface 165 communicates with the communication interface 115 of the console 110 via a communication link (e.g., a wireless link). Through this communication link, communication interface 115 may receive the following data from HWD 150: this data indicates the determined location and position of HWD 150, and/or the determined gaze direction of the user. Further, communication interface 115 may send HWD 150 the following data over this communication link: the data describes image data of an image to be rendered, and additional data associated with the image of the artificial reality.
Content provider 130 may include or correspond to a component that generates content to be rendered based on the location and/or position of HWD 150. In some embodiments, content provider 130 may incorporate the gaze direction of the user of HWD 150. In one aspect, content provider 130 determines the field of view of the artificial reality based on the location and/or position of HWD 150. For example, content provider 130 maps the position of HWD 150 in physical space to a position within the artificial reality space and determines the field of view of the artificial reality space from the mapped position in the artificial reality space in a direction corresponding to the mapped azimuth. Content provider 130 may generate image data describing an image of the determined field of view of the artificial reality space and send the image data to HWD 150 via communication interface 115. In some embodiments, content provider 130 may generate additional data associated with the image (including motion vector information, depth information, edge information, object information, hand model data, etc.) and send the additional data along with the image data to HWD 150 via communication interface 115. Content provider 130 may encode image data describing the image and may transmit the encoded data to HWD 150. In some embodiments, content provider 130 generates and provides image data to HWD 150 periodically (e.g., every 11 ms).
Fig. 2 is a schematic diagram of HWD 150, according to an example embodiment. In some embodiments, HWD 150 includes a front rigid body 205 and a strap 210. The front rigid body 205 includes an electronic display 175 (not shown in fig. 2), a lens 180 (not shown in fig. 2), a plurality of sensors 155, a communication interface 165, and an image renderer 170. In the embodiment shown in fig. 2, the communication interface 165, the image renderer 170, and the plurality of sensors 155 are located within the front rigid body 205 and may not be externally visible. In other embodiments, HWD 150 has a different configuration than that shown in fig. 2. For example, the communication interface 165, the image renderer 170 and/or the plurality of sensors 155 may be located in a different location than that shown in FIG. 2.
Fig. 3 is a schematic diagram of a system environment including a plurality of wireless devices communicating via various protocols, according to an example embodiment of the present disclosure. In one aspect, console 110 and HWD 150 may communicate with each other over communication link 325, as described above with respect to fig. 1. The communication link 325 may be a wireless communication link conforming to a first wireless communication protocol (e.g., wi-Fi protocol). In one aspect, NB device 350A may not communicate with (but may interfere with) HWD 150 and/or console 110. In some embodiments, NB device 350A can communicate with HWD 150 over communication link 315, with console 110 over communication link 335, and/or with NB device 350B over communication link 345. Each of the communication links 315, 335, 345 may be a wireless communication link conforming to a second wireless communication protocol (e.g., NB communication protocol or bluetooth communication protocol). In one aspect, the devices shown in fig. 3 operate in a manner in which communications performed according to different protocols can coexist, even if the devices are in close proximity (e.g., within 25 feet). In some embodiments, the console 110 may operate as a soft access point.
In some embodiments, NB device 350 is a wireless device. For example, NB device 350 can be a laptop, a smart phone, a tablet Personal Computer (PC), a wireless mouse, a wireless keyboard, a wireless speaker, a wireless headset, a wireless earbud, a wireless headset, a wireless microphone, or any device that communicates over a narrowband communication link (e.g., a bluetooth communication link). NB device 350 can include communication interface 362, processor 364, and memory 368. In other embodiments, NB device 350 includes more, fewer, or different components than those shown in fig. 3. For example, NB device 350 can include a display device for presenting visual feedback to a user.
In some embodiments, communication interface 362 includes an electronic component, or a combination of electronic and software components, that communicates with another device according to an NB communication protocol (or bluetooth communication protocol). In some embodiments, communication interface 362 includes a transmitter and a receiver, wherein the configuration of the transmitter and the receiver can be set or adjusted according to configuration information. The configuration information may be such data: the data indicates the allowed TX power, the channel bandwidth of the transmission, one or more frequency bands in which communication is allowed, frequency hopping pattern, duty cycle, etc. The configuration information may be stored by the memory 368. The configuration information may be preset or may be adjusted. In some embodiments, communication interface 362 may configure transmitters and/or receivers that communicate via NB communication protocols according to the configuration information.
In some embodiments, the processor 364 includes electronic components, or a combination of electronic and software components, that execute programs or instructions. The processor 364 may be implemented as hardware, or a combination of hardware and software. The processor 364 may be an application specific integrated circuit (application specific integrated circuit, ASIC), a field programmable gate array (field programmable gate array, FPGA), or any logic computing device. In some embodiments, memory 368 is any storage device that may store various instructions. Memory 368 may be a non-transitory storage medium. In one aspect, the processor 364 may store instructions to: the instructions, when executed by processor 364, cause processor 364 or communication interface 362 to perform the various functions of NB device 350 disclosed herein. In some embodiments, processor 364 may retrieve configuration information for communication interface 362 from memory 368 and configure communication interface 362 or cause communication interface 362 to operate in accordance with the configuration information to communicate via the NB communication protocol. In some embodiments, processor 364 may receive target or input configuration information from another device, for example, through a user interface presented by NB device 350A, or through communication interface 362. In some embodiments, processor 364 may negotiate with another device, e.g., allowable TX power, channel bandwidth of a transmission, frequency band(s) of permitted communications, and/or duty cycle, over communication interface 362 and may determine configuration information based on the negotiations. The processor 364 may store the target configuration information or updated configuration information using the memory 368.
In one approach, processor 364 may cause communication interface 362 to perform frequency hopping within a subset of a set of frequency bands to communicate in accordance with an NB communication protocol. For example, the set of frequency bands may be in a range between 5925MHz and 6425 MHz. For example, a subset of the set of frequency bands may be predetermined or may be dynamically adjusted based on channel conditions. The subset of the set of frequency bands may include an upper contiguous portion (or a lower contiguous portion, or other contiguous portion) of the set of frequency bands, or gaps between communication frequency channels conforming to Wi-Fi communication protocols. In one aspect, the processor 364 may select or determine the number of frequency bands in the band set based on the number of available channels communicating via the Wi-Fi communication protocol. The processor 364 may monitor the frequency band to determine the number of available communication channels for communication via the Wi-Fi communication protocol. Alternatively or additionally, processor 364 may receive information from another device (e.g., console 110, HWD 150, or Access Point (AP)) indicating a number of available communication channels communicating via a Wi-Fi communication protocol. In one aspect, the number of frequency bands communicating via the NB communication protocol may correspond to the number of available channels communicating via the Wi-Fi communication protocol, or may be proportional to the number of available channels communicating via the Wi-Fi communication protocol. For example, as the number of available channels communicating via Wi-Fi communication protocols increases, the number of frequency bands communicating via NB communication protocols may also increase. Examples of subsets of frequency bands (e.g., portions labeled "x") that communicate via NB communication protocols are provided below with respect to fig. 4.
In one approach, the processor 364 may set a duty cycle for communication over a second communication protocol (e.g., NB communication protocol). The duty cycle may be a relative duration that the transmitter is enabled for a period of time (e.g., relative to a duration that the transmitter is disabled or not transmitting). Processor 364 may determine or adjust a duty cycle of the communication based on the TX power of communication interface 362. The duty cycle may be set to a predetermined value or may be set according to TX power. In one approach, the processor 364 may reduce the duty cycle if the TX power and/or PSD of the communication interface 362 exceeds a predetermined threshold (e.g., 10 dBm/MHz).
In one aspect, the following duty cycle assignments may be assigned a duty cycle that does not exceed a (predetermined) duty cycle or duty cycle threshold (e.g., a duty cycle that does not exceed 6.67%): duty cycle of Very Low Power (VLP) NB transmissions on or through an allocated channel (e.g., the lower 16 channels of a continuous 20MHz channel). In some embodiments, the duty cycle of VLP NB transmissions on any given 20MHz channel may be selected to be no more than 0.417%. VLP NB transmissions may be selected such that NB transmissions are not made on more than one NB channel at a time or simultaneously. These NB channels may be selected to be non-overlapping. The duty cycle may be changed and selected based at least in part on the channel bandwidth. Thus, the impact of NB transmissions on the channel of the Wi-Fi communication protocol can be significantly reduced, as shown in table 1 below:
| Wi-Fi Bandwidth (MHz)
|
Effects of example embodiments
|
| 20
|
0.417% affected (worst case)
|
| 40
|
0.83% affected (worst case)
|
| 80
|
1.67% affected (worst case)
|
| 160
|
3.3% affected (worst case)
|
| 320
|
6.67% affected (worst case) |
TABLE 1 influence on Wi-Fi communication
In some embodiments, the duty cycle may be controlled and/or monitored based in part on whether the device is using adaptive or non-adaptive spectrum sharing. For example, since the adaptive NB has no duty cycle limitation, adaptive NB spectrum sharing or techniques may be limited or prevented. The maximum duty cycle that non-adaptive NB spectrum sharing may be allowed over the first 320MHz continuous channel bandwidth is, for example, but not limited to, 6.67%. In some embodiments, the same 6.67% limit may apply to the additional 320MHz continuous channel bandwidth when an additional 320MHz continuous channel is available. In some embodiments, 10dBm/MHz may be permitted or allowed for a particular type of signal, such as, but not limited to, a short control signaling (short control signaling, SCS) signal (e.g., discovery reference signal (discovery reference signals, DRS) in 3 GPP), while the remaining transmissions or all other transmissions may use 1dBm/MHz.
In one approach, processor 364 may set an allowable PSD and/or TX power for communication over a second communication protocol (e.g., an NB communication protocol). Processor 364 may determine or adjust the allowable PSD or TX power based on the number of hops of communications over a second communication protocol (e.g., NB communication protocol). For example, the allowable PSD or TX power may increase as the number of hops increases until a threshold number of hops is reached. Examples of changing the PSD or TX power according to the number of hops are provided below with respect to FIG. 5.
In one approach, processor 364 may set or limit allowable Transmit (TX) power for NB device 350 to communicate over a second communication protocol (e.g., NB communication protocol). The allowable TX power may be predetermined or may be set according to a bandwidth of communication over a second communication protocol (e.g., NB communication protocol). For example, the allowable TX power or allowable PSD of NB device 350 may not exceed 10dBm/MHz. The allowed TX power may be increased until the bandwidth of the communication over the second communication protocol (e.g., NB communication protocol) reaches a threshold. After the bandwidth of the communication over the second communication protocol (e.g., NB communication protocol) reaches the threshold, the allowable TX power may be set to a predetermined value (e.g., 14 dBm). An example of varying the allowable TX power according to the bandwidth of communications over the NB communication protocol is provided below with respect to fig. 6.
In one approach, the processor 364 may set or limit the number of COTs. In some embodiments, very Low Power (VLP) NB transmissions may include transmissions by VLP devices at an average effective radiated power (e.i.r.p.) density above 1dBm/MHz in a channel bandwidth of less than 20 MHz. COT may be selected or limited to one VLP NB transmission. In some embodiments, the number of COT attempts by NB device 350 may be set or limited to 1 attempt within a (predetermined) residence time. In some embodiments, the maximum number of COTs for the NB device may be reduced or set to a particular number/duration (e.g., 625 microseconds). Thus, NB device 350 can either not occupy the channel or not attempt to access the channel for an extended period of time so that communications over Wi-Fi communication protocols can coexist, or be protected/supported.
In one approach, processor 364 generates a signal that informs of information (e.g., configuration information) and configures or causes communication interface 362 to transmit the signal. In one aspect, the signal may be understood or decoded by other devices (e.g., console 110 or HWD 150) communicating via Wi-Fi communication protocol. For example, the signal may be a (NB) beacon signal with a preamble for indicating a frequency hopping pattern and/or an expected Bandwidth (BW), wherein the preamble may have a similar/identical structure as implemented for Wi-Fi communication protocols. Other devices may use information from the NB beacon signal to make informed decisions about how to limit or allocate the frequency hopping pattern of NB device 350 to a particular channel or channel gap. In some embodiments, NB device 350 can be instructed, commanded, or requested to provide or transmit a signal (e.g., NB beacon signal with Wi-Fi preamble) to indicate or inform of the frequency hopping pattern, frequency hopping pattern attributes, and/or bandwidth expected to be occupied. The preamble may include: the 802.11, 802.11ax or 802.11be preamble may be used or transmitted prior to NB signaling.
Referring to fig. 4, a schematic diagram 400 of an example frequency band allocated for narrowband communications is shown, according to an example embodiment of the present disclosure. In one aspect, different devices (e.g., console 110, HWD 150, NB device 350, etc.) may share a portion of frequency range 405 and may communicate via different protocols. The frequency range 405 may be between 5925MHz and 6425 MHz.
NB device 350 can communicate over NB communication protocols over a subset of the set of frequency bands in frequency range 405 without interfering with communications over Wi-Fi communication protocols. In some embodiments, NB device 350 can be assigned or allocated a subset of a set of frequency bands for frequency hopping. The remaining subset may be allocated or designated for Wi-Fi communication. For example, the frequency range 405 may be divided or divided into a set of frequency bands 410. Each frequency band 410 may have a bandwidth corresponding to a channel width of Wi-Fi communications. Some of these bands 410 may be allocated or used as channels for NB communication protocols, while the remaining/remaining bands 410 may be allocated or used as channels for Wi-Fi communication protocols.
In one example, the number of frequency bands 410 allocated for NB communications may vary depending on the bandwidth of the frequency bands 410. For example, each frequency band 410 may have a bandwidth of 20MHz, 40MHz, 80MHz, 160MHz, or 320MHz, as shown in cases 460, 465, 470, 475, 480, respectively.
For example, in case 460, frequency range 405 may be divided into 20MHz bands 410a, and 15 unique bands 410a (e.g., 15 upper contiguous bands 410a within frequency range 405) may be allocated to NB device 350 to perform frequency hopping in accordance with the NB communication protocol. Each of the remaining or lower frequency bands 410a within the frequency range 405 may be allocated or designated as a corresponding channel for Wi-Fi communication.
For example, in case 465, frequency range 405 may be divided into 40MHz bands 410b, and 4 unique 20MHz bands 410b (e.g., 8 higher bands 410b within frequency range 405) may be allocated to NB device 350 to perform frequency hopping in accordance with NB communication protocols. Each of the remaining or lower frequency bands 410b within the frequency range 405 may be allocated or designated as a corresponding channel for Wi-Fi communication. The 4 upper frequency bands 410b may be allocated or designated as 8 unique 20MHz channels, 16 unique 10MHz channels, 32 unique 5MHz channels, 64 unique 2.5MHz channels, 80 unique 2MHz channels, or 160 unique 1MHz channels for NB communications.
For example, in case 470, frequency range 405 may be divided into 80MHz bands 410c, and one unique 80MHz band 410c (e.g., the highest band 410c within frequency range 405) may be allocated to NB device 350 to perform frequency hopping in accordance with the NB communication protocol. Each of the remaining or lower frequency bands 410c within the frequency range 405 may be allocated or designated as a corresponding channel for Wi-Fi communication. The upper frequency band 410c may be allocated or designated as 4 unique 20MHz channels, 8 unique 10MHz channels, or 16 unique 5MHz channels, or 32 unique 2.5MHz channels, or 40 unique 2MHz channels, or 80 unique 1MHz channels for NB communications.
In some embodiments, the frequency hopping pattern of NB devices may be allocated or limited to or within the gaps between the various channels. For example, in some embodiments, the frequency hopping pattern may be assigned to a 1.875MHz gap 425, where the frequency band 410 may be located between the two gaps 425. By assigning or allocating a gap 425 (or portion thereof) to NB devices 350 to communicate over NB communication protocols, communications over Wi-Fi communication protocols may be protected.
In one aspect, NB device 350 can detect channel conditions for Wi-Fi communications and can automatically select or determine a frequency band in which to perform frequency hopping of NB communications. In one aspect, the number of frequency bands assigned or allocated for NB communications depends on the number of channels of the Wi-Fi communication protocol. For example, wi-Fi communication is guaranteed with a threshold number of channels (e.g., 3 or 4). As the number of channels for Wi-Fi communications increases, a greater number of frequency bands may be designated or allocated to NB communications. For example, in case 475, frequency range 405 may be divided into three 160MHz bands 410d for Wi-Fi communication. Similarly, in case 480, for example, the frequency range 405 may be allocated or assigned to one 320MHz band 410e for Wi-Fi communication. In cases 475 and 480, frequency bands 410d, 410e may not be assigned to NB communications because the number of channels used for Wi-Fi communications is less than a threshold number of channels (e.g., 4). As shown in cases 460, 465, and 470, as the number of channels for Wi-Fi communications increases, the number of frequency bands 410 allocated or assigned to NB communications may increase.
Fig. 5 is a schematic diagram 500 of an example allowed TX power or PSD for NB communications for a corresponding number of hops in accordance with an example embodiment of the present disclosure. In one aspect, processor 364 may store a function or table representing curve 510 via memory 368 and may apply a target frequency hopping number of NB communications to the function or table to determine a corresponding TX power or PSD. In one example, as the target number of hops increases, the TX power or PSD of NB communications may increase linearly until the TX power or PSD reaches a threshold (e.g., 10 dBm/MHz). For example, curve 510 may be represented by the following equation:
PSD limit = min (3/22 x (hops) -0.9091,10) dBm/MHz.
In one aspect, the fewer frequency hops the NB communication is, the higher the likelihood of interfering with Wi-Fi communication. Allowing lower TX power or PSD for lower target number of hops for NB communications may help to protect communications over Wi-Fi communication protocols than allowing any number of hops to be transmitted at a threshold power or PSD (e.g., 10 dBm/MHz) as shown by curve 520.
Fig. 6 is a schematic diagram 600 of example allowed output power for NB communications for respective channel bandwidths in accordance with an example embodiment of the present disclosure. In one aspect, processor 364 may store a function or table representing curve 610 via memory 368 and may apply a target bandwidth of NB communications to the function or table to determine a corresponding TX power. In one aspect, curve 610 is set such that PSD (or TX power per bandwidth) is less than 10dBm/MHz and TX power is less than 14dBm. Controlling or limiting the TX power of NB device 350 can help to secure communications over Wi-Fi communication protocols.
Fig. 7 is a schematic diagram showing an example flowchart of a process 700 of performing narrowband communications, according to an example embodiment of the disclosure. In some embodiments, this process 700 is performed by NB device 350. In some embodiments, the process 700 is performed by other devices. In some embodiments, the process 700 includes more, fewer, or different steps than those shown in fig. 7.
In one method, NB device 350 determines 710 a configuration for performing frequency hopping as follows: the frequency hopping is used for communications over NB communication protocols. The NB device 350 can determine a configuration for performing communication through the NB communication protocol by: obtain preset configuration information stored by memory 368, receive instructions or commands from other devices (e.g., HWD 150, console 110, or any Wi-Fi communication device), or monitor channel conditions of Wi-Fi communications.
In one aspect, NB device 350 can determine 712 one or more frequency bands for performing frequency hopping of NB communications. For example, the one or more frequency bands used to perform frequency hopping of NB communications may be one or more upper contiguous frequency bands. For example, the one or more frequency bands used to perform frequency hopping of NB communications may be one or more lower or intermediate contiguous frequency bands. For example, the one or more frequency bands may be one or more gaps between channels of Wi-Fi communication. In one approach, NB device 350 can monitor, determine, or detect the number of channels for Wi-Fi communications and determine one or more frequency bands for performing NB communications based on the number of channels for Wi-Fi communications. For example, as a greater number of channels for Wi-Fi communications are available, a greater number of frequency bands may be assigned or allocated to NB device 350. One or more determined frequency bands may be assigned or allocated to a set of channels for NB communications.
In one aspect, NB device 350 can determine 714 a duty cycle for performing frequency hopping of NB communications. In one example, if the target TX power or target PSD is less than 10dBm/MHz or some other defined threshold, a 100% duty cycle may be allowed for NB communications. When the target TX power or target PSD reaches 10dBm/MHz, the duty cycle may be reduced to 25%, and may be further reduced as the target TX power increases.
In one aspect, NB device 350 can determine 716 a TX power or PSD for frequency hopping used to perform NB communications. For example, as the target number of hops increases, the TX power or PSD of NB communications may increase linearly until the TX power or PSD reaches a threshold (e.g., 10 dBm/MHz). For example, the PSD may be set to less than 10dBm/MHz and the TX power may be less than 14dBm.
In one approach, NB device 350 can perform 750 frequency hopping in accordance with the determined configuration. For example, processor 364 may cause or configure communication interface 362 to perform NB communications in accordance with the determined TX power/PSD, frequency band, duty cycle, etc. Advantageously, by controlling or limiting the TX power, frequency band, and/or duty cycle as disclosed herein, interference due to NB device 350 communicating over the NB communication protocol may be reduced to protect the transmission of delay-sensitive data over the Wi-Fi communication protocol.
Various operations described herein may be implemented on a computer system. FIG. 8 illustrates a block diagram of a representative computing system 814 that can be used to implement the present disclosure. In some embodiments, console 110, HWD 150 in fig. 1, or NB device 350 in fig. 3 are each implemented by computing system 314. Computing system 814 can be implemented as, for example, a consumer device such as a smart phone, other mobile phone, tablet computer, wearable computing device (e.g., smart watch, glasses, head wearable display), desktop computer, laptop computer, or the consumer device can be implemented with a distributed computing device. The computing system 814 may be implemented to provide VR, AR, MR experiences. In some embodiments, computing system 814 may include conventional computer components such as a processor 816, a storage device 818, a network interface 820, a user input device 822, and a user output device 824.
The network interface 820 may provide a connection to a wide area network (e.g., the internet) to which the (wide area network, WAN) interface of the remote server system is also connected. The network interface 820 may include a wired interface (e.g., ethernet) and/or a wireless interface implementing various RF data communication standards (e.g., wi-Fi, bluetooth, or cellular data network standards (e.g., 3G, 4G, 5G, 60GHz, LTE, etc.)).
User input device 822 may include any device (or devices) by which a user may provide signals to computing system 814; the computing system 814 may interpret these signals as indicating a particular user request or information. The user input device 822 may include any or all of the following: a keyboard, touchpad, touch screen, mouse or other pointing device, scroll wheel, click wheel, dial, buttons, switches, keypad, microphone, and a plurality of sensors (e.g., motion sensors, eye-tracking sensors, etc.), and the like.
User output devices 824 may include any device through which computing system 814 may provide information to a user. For example, the user output device 824 may include a display for displaying images generated by or communicated to the computing system 514 by the computing system 814. The display may incorporate various image generation technologies such as a liquid crystal display (liquid crystal display, LCD), a light-emitting diode (LED) including an organic light-emitting diode (OLED), a projection system, a Cathode Ray Tube (CRT), etc., with supporting electronics (e.g., digital-to-analog or analog-to-digital converters, or signal processors, etc.). Devices such as touch screens that function as both input devices and output devices may be used. An output device 824 may be provided in addition to or in place of the display. Examples include indicators, speakers, tactile "display" devices, printers, and the like.
Some implementations include a plurality of electronic components, such as a microprocessor, memory, and storage that store computer program instructions in a computer-readable storage medium (e.g., a non-transitory computer-readable medium). Many of the features described in this specification can be implemented as a process of: the process is designated as a set of program instructions encoded on a computer-readable storage medium. When executed by one or more processors, cause the processors to perform the various operations indicated in the program instructions. Examples of program instructions or computer code include both machine code, such as produced by a compiler, and files containing higher level code that may be executed by the computer, electronic component, or microprocessor using an interpreter. Processor 816 may be suitably programmed to provide various functions for computing system 814, including any of the following: described herein as a function performed by a server or client, or other function associated with a message management service.
It should be understood that the computing system 814 is illustrative and that various changes and modifications may be made. Computer systems used in connection with the present disclosure may have other functions not specifically described herein. Furthermore, while computing system 814 is described with reference to particular blocks (blocks), it should be understood that these blocks are defined for convenience of description and are not intended to imply a particular physical arrangement of the various component parts. For example, different blocks may be located in the same facility, in the same server frame, or on the same motherboard. Moreover, the blocks need not correspond to physically distinct components. The plurality of blocks may be configured to perform various operations, for example by programming the processor or providing suitable control circuitry, and the various blocks may or may not be reconfigurable, depending on how the initial configuration is obtained. Embodiments of the present disclosure may be implemented in a variety of apparatuses including electronic devices implemented using any combination of circuitry and software.
Having now described a few illustrative embodiments, it should be apparent that the foregoing has been presented by way of example and not limitation. In particular, while many of the examples presented herein relate to a number of method acts or a particular combination of system elements, these acts and these elements may be combined in other ways to achieve the same objectives. Acts, elements and features discussed in connection with one embodiment are not intended to be excluded from a similar role in other embodiments or to be excluded from a variety of embodiments.
The hardware and multiple data processing components used to implement the various processes, operations, illustrative logic, logic blocks, modules, and circuits described in connection with the embodiments disclosed herein may be implemented or performed with the following components designed to perform the functions described herein: a general purpose single-chip processor or a general purpose multi-chip processor, a digital signal processor (digital signal processor, DSP), an application specific integrated circuit (application specific integrated circuit, ASIC), a field programmable gate array (field programmable gate array, FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof. A general purpose processor may be a microprocessor, or may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration. In some embodiments, certain processes and methods may be performed by circuitry for a given function. The memory (e.g., memory units, storage devices, etc.) may include one or more devices (e.g., random Access Memory (RAM), read Only Memory (ROM), flash memory, hard disk memory, etc.) for storing data and/or computer code for completing or facilitating the various processes, layers, and modules described in this disclosure. The memory may be or include volatile memory or non-volatile memory and may include database components, object code components, script components, or any other type of information structure for supporting the various activities and information structures described in this disclosure. According to an exemplary embodiment, the memory is communicatively connected to the processor via processing circuitry and includes computer code for performing (e.g., by the processing circuitry and/or the processor) one or more processes described herein.
The present disclosure contemplates methods, systems, and program products on any machine-readable medium for accomplishing various operations. Embodiments of the present disclosure may be implemented using an existing computer processor, or may be implemented by a special purpose computer processor for a suitable system, which is incorporated for this and other purposes, or by a hardwired system. Embodiments within the scope of the present disclosure include program products comprising machine-readable media for carrying or having machine-executable instructions or data structures stored thereon. Such machine-readable media can be any available media that can be accessed by a general purpose or special purpose computer or other machine with a processor. By way of example, such machine-readable media may comprise RAM, ROM, erasable programmable read-only memory (EPROM), electronically erasable read-only memory (EEPROM), or may comprise other optical disk storage, magnetic disk storage, or other magnetic storage devices, or may comprise any other medium including: the other media may be used to carry or store desired program code in the form of machine-executable instructions or data structures and may be accessed by a general purpose or special purpose computer, or other machine with a processor. Combinations of the above are also included within the scope of machine-readable media. Machine-executable instructions comprise, for example, instructions and data which cause a general purpose computer, special purpose computer, or special purpose processing machine to perform a certain function or group of functions.
The phraseology and terminology used herein is for the purpose of description and should not be regarded as limiting. The use of "including," "comprising," "having," "containing," "involving," "characterized by," and variations thereof herein, is meant to encompass the items listed thereafter and equivalents thereof as well as additional items and to include alternative embodiments consisting exclusively of the items listed thereafter. In one embodiment, the systems and methods described herein consist of one of the described elements, acts, or components, of various combinations of more than one of the described elements, acts, or components, or of all of the described elements, acts, or components.
Any reference to an embodiment or element or act of a system and method recited in the singular and proceeded with the word "a" or "an" may also encompass embodiments comprising plural of such elements, and references to any embodiment or element or act herein in plural may also encompass embodiments comprising only a single element. References in the singular or plural are not intended to limit the presently disclosed systems or methods, their parts, acts or elements to either the singular or the plural configuration. References to any action or element based on any information, action, or element may include embodiments in which the action or element is based at least in part on any information, action, or element.
Any embodiment disclosed herein may be combined with any other embodiment or example, and references to "an embodiment," "some embodiments," "one embodiment," etc., are not necessarily mutually exclusive, but are intended to indicate that a particular feature, structure, or characteristic described in connection with the embodiment may be included in at least one embodiment or example. These terms are not necessarily all referring to the same embodiment. Any embodiment may be combined with any other embodiment, either inclusive or exclusive, in any manner consistent with aspects and embodiments disclosed herein.
Where technical features in each drawing, embodiment, or any claim are followed by reference signs, those reference signs have been included to increase the intelligibility of the drawings, embodiment, and claim. The presence or absence of these reference signs does not therefore have any limiting effect on the scope of any claim elements.
The systems and methods described herein may be embodied in other specific forms without departing from the features of the systems and methods described herein. Unless specifically stated otherwise, reference to "about," "generally," or other degree terms includes a variation of +/-10% from a given measurement, unit, or range. The coupled elements may be directly electrically, mechanically, or physically coupled to each other, or may be electrically, mechanically, or physically coupled through intervening elements. The scope of the systems and methods described herein is, therefore, indicated by the appended claims rather than by the foregoing description, and all changes which come within the meaning and range of equivalency of the claims are therefore intended to be embraced therein.
The term "coupled" and variations thereof include both direct and indirect connections. Such a connection may be permanent (e.g., permanent or fixed) or removable (e.g., removable or releasable). This connection may be achieved by: the two members are directly coupled to each other, the two members are coupled to each other using a separate intermediate member and any additional intermediate members coupled to each other, or the two members are coupled to each other using intermediate members integrally formed as a single unitary body with one of the two members. If "coupled" or variations thereof are modified by additional terminology (e.g., directly coupled), the general definition of "coupled" provided above is modified by the plain language meaning of the additional terminology (e.g., "directly coupled" meaning that two members are connected without any separate intermediate member), resulting in a narrower definition than the general definition of "coupled" provided above. Such coupling may be mechanical, electrical or fluid.
Reference to "or" may be construed as inclusive such that any term described using "or" may mean any one of a single term, more than one term, and all of the plurality of terms described. Reference to "at least one of a 'and B' may include only 'a', only 'B', and both 'a' and 'B'. Such references used in connection with "comprising" or other open-ended terms may include additional terms.
Various modifications may be made to the elements and acts described, such as variations in the size, dimensions, structure, shape and proportions of the various elements, values of parameters, mounting arrangements, use of materials, colors, orientations, without materially departing from the teachings and advantages of the subject matter disclosed herein. For example, elements shown as integrally formed may be constructed of multiple parts or elements, the position of multiple elements may be reversed or otherwise varied, and the nature or number of discrete elements or positions may be altered or varied. Other substitutions, modifications, changes and omissions may also be made in the design, operating conditions and arrangement of the elements and operations disclosed without departing from the scope of the present disclosure.
References herein to the location of an element (e.g., "top," "bottom," "above," "below") are merely used to describe the orientation of the various elements in the drawings. According to other example embodiments, the orientations of the various elements may be different, and these variations are intended to be covered by this disclosure.