Determining transceiver height

An electronic device that determines a height of a transceiver in a structure is described. During operation, the electronic device acquires an image of the structure. Then, the electronic device receives user-input information that specifies lines on the surface of the structure, and receives second user-input information that specifies an approximate vertical location on an exterior of the structure of a transceiver in the structure. Moreover, the electronic device obtains a second image from above the structure from an imaging service, and receives third user-input information that specifies at least one of the lines on the surface in the second image. Next, the electronic device provides information to the imaging service, and in response receives a distance between end points of at least one of the lines. Furthermore, the electronic device provides second information to a computer, and in response receives the determined height of the transceiver.

BACKGROUND

Field

The described embodiments relate to techniques for determining spatial information. In particular, the described embodiments relate to techniques for determining a height of a transceiver in a building or structure.

Related Art

Many electronic devices are capable of wirelessly communicating with other electronic devices. For example, these electronic devices can include a networking subsystem that implements a network interface for: a cellular network (UMTS, LTE, etc.), a wireless local area network (e.g., a wireless network such as described in the Institute of Electrical and Electronics Engineers (IEEE) 802.11 standard or Bluetooth from the Bluetooth Special Interest Group of Kirkland, Wash.), and/or another type of wireless network.

While many electronic devices communicate with each other via large networks owned by a network operator, it is often difficult to communicate via a cellular-telephone network, e.g., in high density or crowded environments. In particular, in crowded environments the network performance (such as the block error rate and the capacity) of the cellular-telephone network can be degraded. Moreover, there are often constraints on the number of cellular-telephone towers. Consequently, it can be difficult for the operator of the cellular-telephone network to improve the quality of their service, e.g., in crowded environments.

One approach for improving the quality of service in a cellular-telephone network is to install and operate local transceivers that operate at lower transmit power than the cellular-telephone towers, and that provide communication in the cellular-telephone network over shorter ranges than the cellular-telephone towers.

However, in order to ensure proper operation, during installation the geographic location of a local transceiver often needs to be specified. In particular, the spatial coordinates of the transceiver may need to be determined and provided to the cellular-telephone network. While the latitude and longitude can usually be determined, in practice, it is often more challenging to determine the height, z. This is especially the case when the transceiver is installed in a multi-story building. The difficulty in determining the height of the transceiver makes the installation process more complicated and time-consuming.

SUMMARY

The described embodiments relate to an electronic device that determines a height of a transceiver in a structure. This electronic device includes: an imaging sensor that acquires one or more images, an interface circuit that communicates with other electronic devices, a display that displays information, a processor that executes a program module, and memory that stores the program module. During operation, the electronic device acquires, using the imaging sensor, an image of a surface of a structure, and displays the image on the display. Then, the electronic device receives user-input information that specifies a first line and a second line on the surface of the structure, where the first line and the second line are vertically offset from each other. Moreover, the electronic device receives second user-input information that specifies an approximate vertical location on an exterior of the structure of a transceiver in the structure.

Next, using the interface circuit, the electronic device provides a query to an imaging service for a second image of the structure, and receives the second image from the imaging service, where the second image includes a view of the structure from a position above the structure. The electronic device displays the second image on the display, and receives third user-input information that specifies at least one of the first line and the second line on the surface in the second image. Furthermore, using the interface circuit, the electronic device provides, based on the third user-input information, information that specifies at least locations of end points of at least one of the first line and the second line to the imaging service, and receives a distance between the end points from the imaging service. Additionally, using the user interface circuit, the electronic device provides, to a computer, the distance, the approximate vertical location and a geometry of the first line and a second line, and receives the determined height of the transceiver from the computer.

In some embodiments, the electronic device transmits the determined height to the transceiver.

Moreover, the first line and the second line may be horizontal lines with slopes of zero. Furthermore, pairs of end points of the first line and the second line may be vertically aligned.

Additionally, the image may include a two-dimensional view of the structure. For example, the view may include an oblique perspective of the structure that includes two surfaces of the structure.

Note that the first line and the second line may at least partially overlap in the second image.

Moreover, the query may include a location of the structure.

Furthermore, the height may have an uncertainty that is less than a predefined value.

Another embodiment provides a computer-readable storage medium with a program module for use with the electronic device. When executed by the electronic device, this program module causes the electronic device to perform at least some of the aforementioned operations.

Another embodiment provides a method, which may be performed by the electronic device. This method includes at least some of the aforementioned operations.

DETAILED DESCRIPTION

An electronic device that determines a height of a transceiver in a structure (such as a building) is described. During operation, the electronic device acquires an image of the structure. Then, the electronic device receives user-input information that specifies lines on the surface of the structure, and receives second user-input information that specifies an approximate vertical location on an exterior of the structure of a transceiver in the structure. Moreover, the electronic device obtains a second image from above the structure from an imaging service, and receives third user-input information that specifies at least one of the lines on the surface in the second image. Next, the electronic device provides information to the imaging service, and in response receives a distance between end points of at least one of the lines. Furthermore, the electronic device provides second information to a computer, and in response receives the determined height of the transceiver.

By determining the height of the transceiver, this measurement technique may simplify installation of the transceiver in the structure. In the process, the measurement technique may reduce the time and the cost needed to install the transceiver. Consequently, the measurement technique may facilitate improved communication in a network (such as a cellular-telephone network), and thus may improve the user experience when installing the transceiver and/or when communicating information via the network.

In the discussion that follows, the electronic device communicates frames or packets in accordance with a wireless communication protocol, such as an Institute of Electrical and Electronics Engineers (IEEE) 802.11 standard (which is sometimes referred to as ‘Wi-Fi,’ from the Wi-Fi Alliance of Austin, Tex.), Bluetooth (from the Bluetooth Special Interest Group of Kirkland, Wash.), and/or another type of wireless interface. In the discussion that follows, a packet or frame-based communication protocol is used as an illustrative example. However, a wide variety of communication protocols may be used, such as Long Term Evolution or LTE (from the 3rd Generation Partnership Project of Sophia Antipolis, Valbonne, France) another cellular-telephone communication protocol, etc. Thus, in some embodiments the transceivers include eNode-Bs or eNBs.

Moreover, an access point may communicate with other access points and/or computers in a network using a wireless communication protocol (such as Wi-Fi), or a wired communication protocol, such as an IEEE 802.3 standard (which is sometimes referred to as ‘Ethernet’) and/or another type of wired interface. In the discussion that follows, Wi-Fi and Ethernet are used as illustrative examples.

FIG. 1presents a block diagram illustrating an example of a system100with communication among transceiver110, electronic device112(such as a cellular telephone), imaging service114, computer116, optional access point118and optional base station120in cellular-telephone network122in accordance with some embodiments. In particular, electronic device112may communicate with transceiver110, optional access point118and/or optional base station120using wireless communication, and optional access point118may communicate with transceiver110, imaging service114, computer116and/or optional base station120using wireless and/or wired communication. Moreover, note that optional access point118may include a physical access point and/or a virtual access point that is implemented in software in an environment of an electronic device or a computer.

The wired communication among transceiver110, imaging service114, computer116, optional access point and/or optional base station120may occur via network124(such as an intra-net, a mesh network, point-to-point connections and/or the Internet) and may use a network communication protocol, such as Ethernet. (WhileFIG. 1illustrates system100including network124, in other embodiments network124is external to system100.) Moreover, the wireless communication using Wi-Fi may involve: transmitting advertising frames or packets on wireless channels, detecting one another by scanning wireless channels, establishing connections (for example, by transmitting association or attach requests), and/or transmitting and receiving frames or packets (which may include the association requests and/or additional information as payloads). In some embodiments, the wireless communication among transceiver110, electronic device112, optional access point118and/or optional base station120also involves the use of dedicated connections, such as via a peer-to-peer (P2P) communication technique.

As described further below with reference toFIG. 7, transceiver110, electronic device112, imaging service114, computer116, optional access point118and/or optional base station120may include subsystems, such as a networking subsystem, a memory subsystem and a processor subsystem. In addition, transceiver110, electronic device112, optional access point118and/or optional base station120may include radios126in the networking subsystems. More generally, transceiver110, electronic device112and/or optional access point118can include (or can be included within) any electronic devices with the networking subsystems that enable transceiver110, electronic device112and/or optional access point118to communicate with each other or other components in system100using wireless and/or wired communication. This wireless communication can comprise transmitting advertisements on wireless channels to enable transceiver110, electronic device112and/or optional access point118to make initial contact or detect each other, followed by exchanging subsequent data/management frames (such as association requests and responses) to establish a connection, configure security options (e.g., Internet Protocol Security), transmit and receive packets or frames via the connection, etc. Note that while instances of radios126are shown in transceiver110, electronic device112, optional access point118and optional base station120inFIG. 1, one or more of these instances may be different from the other instances of radios126.

As can be seen inFIG. 1, wireless signals128(represented by a jagged line) are transmitted from radio126-2in electronic device112. These wireless signals may be received by radio126-3in optional access point118. In particular, electronic device112may transmit frames or packets. In turn, these frames or packets may be received by optional access point118. Moreover, optional access point118may allow electronic device112to communicate with other electronic devices, computers and/or servers via network124.

Note that the communication among transceiver110, electronic device112, optional access point118and/or optional base station120may be characterized by a variety of performance metrics, such as: a received signal strength (RSSI), a data rate, a data rate for successful communication (which is sometimes referred to as a ‘throughput’), an error rate (such as a retry or resend rate), a mean-square error of equalized signals relative to an equalization target, intersymbol interference, multipath interference, a signal-to-noise ratio, a width of an eye pattern, a ratio of number of bytes successfully communicated during a time interval (such as 1-10 s) to an estimated maximum number of bytes that can be communicated in the time interval (the latter of which is sometimes referred to as the ‘capacity’ of a communication channel or link), and/or a ratio of an actual data rate to an estimated data rate (which is sometimes referred to as ‘utilization’).

In the described embodiments processing a packet or frame in transceiver110, electronic device112, optional access point118and/or optional base station120includes: receiving wireless signals128with the packet or frame; decoding/extracting the packet or frame from received wireless signals128to acquire the packet or frame; and processing the packet or frame to determine information contained in the packet or frame.

Although we describe the network environment shown inFIG. 1as an example, in alternative embodiments, different numbers or types of electronic devices may be present. For example, some embodiments comprise more or fewer electronic devices. As another example, in another embodiment, different electronic devices are transmitting and/or receiving packets or frames.

A cellular-telephone network (such as cellular-telephone network122) may include base stations (such as optional base station120) and associated cell towers that implement so-called ‘macrocells.’ These macrocells may facilitate communication with hundreds of users (such as hundreds of cellular telephones) over distances of kilometers. In general, the positioning of the cell towers (and the antennas) is carefully designed and optimized to maximize the performance of the cellular-telephone network (such as the throughput, the capacity, the block error rate, etc.) and to reduce crosstalk or interference between the signals transmitted by different cell towers and/or different macrocells. Small cells are generally radio access nodes (which, in the discussion that follows, are sometimes referred to as ‘transceivers’ or ‘radio nodes’) providing lower power than macrocells and therefore providing smaller coverage areas than macrocells. It is common to subcategorize ‘small cells’ even further by ascribing relative general ranges. For example, a ‘microcell’ might have a range of less than 2 kilometers, a “picocell” less than 200 meters, and a ‘femtocell’ on the order of 10 meters. These descriptions are for general relative comparison purposes and should not be limiting on the scope of the embodiments.

However, there are often gaps in the coverage offered by macrocells. Consequently, some users operate local transceivers that provide short-range communication in the cellular-telephone network. These so-called ‘femto cells’ provide short-range communication (e.g., up to 10 m) for a few individuals.

In addition, larger organizations (such as those with 50-60 users) may operate local transceivers that provide communication in the cellular-telephone network over a range of 100 m. This intermediate-range coverage in the cellular-telephone network can be typically referred to as a ‘small cell’ as well.

One challenge for operators of cellular-telephone networks is maintaining network performance and quality. For example, it may be difficult to maintain the network performance and the quality of service in high density or crowded environments. While the use of femto cells and/or small cells can mitigate this challenge, as discussed previously it can be time-consuming and expensive to correctly install the transceivers in the femto cells and/or small cells. In particular, it can be difficult to determine the spatial coordinates of a transceiver, such as the height z in a structure or building.

In order to address this challenge, the measurement technique may assist a user in determining the height of transceiver110in a structure108. In particular, as described below with reference toFIGS. 2-6, electronic device112may acquire an image of structure108(such as building) in which transceiver110is installed. For example, a user may use electronic device112to acquire a two-dimensional (2D) view of an exterior of structure108, and electronic device112may display the image on a display. As described further below with reference toFIG. 4, this view may include an oblique perspective of structure108that includes two surfaces of structure108. Then, the user may provide user-input information that specifies a first line and a second line on a surface of structure108, where the first line and the second line are vertically offset from each other. For example, the first line and the second line may be horizontal lines with slopes of zero, and/or pairs of end points of the first line and the second line may be vertically aligned. (However, lines with other slopes and/or that may not be vertically aligned may be used.)

Moreover, the user may provide second user-input information that specifies an approximate vertical location on an exterior of structure108of transceiver110in structure108. In some embodiments, the user denotes or marks the first line, the second line and/or the approximate vertical location on the image. For example, the display may include a touch-sensitive display that allows the user to ‘draw’ the first line, the second line and/or the approximate vertical location on the image.

Next, electronic device112may provide a query, via network124, to imaging service114for a second image of structure108. This query may include a location of structure108, such as a street address and/or GPS coordinates. In response, imaging service114may provide, via network124, the second image, where the second image includes a view of structure108from a position above structure108. For example, the second image may include a satellite image of structure108.

Electronic device112may display the second image on the display, and the user may provide third user-input information that specifies at least one of the first line and the second line on the surface in the second image. As described further below with reference toFIG. 5, the user may denote or marks the first line and/or the second line on the surface in the second image. Note that the first line and the second line may at least partially overlap in the second image. In embodiments where the second image includes a satellite image of structure108, the first line and the second line may completely overlap in the second image.

Furthermore, electronic device112may provide, via network124and based on the third user-input information, information that specifies at least locations of end points of at least one of the first line and the second line to imaging service114. Using this information, imaging service114may calculate a distance between the end points, and may provide, via network124, information that specifies the distance to electronic device112.

Additionally, electronic device112may provide, via network124, the distance, the approximate vertical location and a geometry of the first line and a second line to computer116. Using this information, computer116may perform a geometric calculation (such as a 2D geometric calculation) to determine the height of transceiver110in structure108, and may provide, via network124, information that specifies the determined height to electronic device112. In some embodiments, electronic device112transmits the determined height to transceiver110. Note the height may have an uncertainty that is less than a predefined value, such as 5-30 cm.

In these ways, the measurement technique may allow the user of electronic device112to determine the height of transceiver110. Then, the user may manually or in automated manner provide the determined height to transceiver110and/or cellular-telephone network122. This spatial coordinate may allow the user to simply and efficiently complete installation of transceiver110, thereby improving performance of cellular-telephone network122.

We now describe embodiments of the method.FIG. 2presents a flow diagram illustrating an example of a method200for determining a height of a transceiver in a structure, which may be performed by an electronic device, such as electronic device112inFIG. 1. During operation, the electronic device may acquire, using an imaging sensor, an image (operation210) of a surface of a structure, and may display the image (operation212) on a display. For example, the first line and the second line may be horizontal lines with slopes of zero, and/or pairs of end points of the first line and the second line may be vertically aligned. Moreover, the image may include a 2D view of the structure. For example, the view may include an oblique perspective of the structure that includes two surfaces of the structure.

Then, the electronic device may receive user-input information (operation214) that specifies a first line and a second line on the surface of the structure, where the first line and the second line are vertically offset from each other. Moreover, the electronic device may receive second user-input information (operation216) that specifies an approximate vertical location on an exterior of the structure of a transceiver in the structure.

Next, using an interface circuit, the electronic device may provide a query (operation218) to an imaging service for a second image of the structure, and may receive the second image (operation220) from the imaging service, where the second image includes a view of the structure from a position above the structure. Note that the query may include a location of the structure.

The electronic device may display the second image (operation222) on the display, and may receive third user-input information (operation224) that specifies at least one of the first line and the second line on the surface in the second image. Note that the first line and the second line may at least partially overlap in the second image. Furthermore, using the interface circuit, the electronic device may provide, based on the third user-input information, information (operation226) that specifies at least locations of end points of at least one of the first line and the second line to the imaging service, and may receive a distance (operation228) between the end points from the imaging service.

Additionally, using the user interface circuit, the electronic device may provide, to a computer, information (operation230), including the distance, the approximate vertical location and a geometry of the first line and a second line, and may receive the determined height (operation232) of the transceiver from the computer.

In some embodiments, the electronic device optionally performs one or more additional operations. For example, the electronic device may transmit the determined height to the transceiver. The height may have an uncertainty that is less than a predefined value.

In some embodiments of method200, there may be additional or fewer operations. Furthermore, the order of the operations may be changed, and/or two or more operations may be combined into a single operation.

FIG. 3presents a drawing illustrating an example of communication among transceiver110, electronic device112, imaging service114and computer116. InFIG. 3, electronic device112may prompt a user to acquire an image312, using an imaging sensor310(such as a camera, a CMOS imaging sensor, a CCD, etc.) in electronic device112, of a surface of a structure (such as a 2D view of a building, e.g., an oblique perspective of two sides or surfaces of the building). For example, processor314may display an instruction308for the user on display316. In response, the user may use imaging sensor310to acquire image312. Then, processor314in electronic device112may display image312on a display316in electronic device, such as a touch-sensitive display. In addition, processor314may display instructions318for the user of display316. These instructions may ask the user to specify or define a first line and a second line on the surface of the structure (where the first line and the second line are vertically offset from each other), may ask the user to specify or define an approximate vertical location on an exterior of the structure of transceiver110in the structure.

Next, the user may provide user-input information (UII)320that specifies or defines the first line and the second line on the surface of the structure. For example, the user may draw the first line and the second line on display316. Alternatively or additionally, the user may provide user-input information320via a user-interface device322in electronic device112(such as a keyboard, a touchpad, using voice recognition, etc.). Note that the first line and the second line may be horizontal lines with slopes of zero, and/or pairs of end points of the first line and the second line may be vertically aligned in image312.

Moreover, the user may provide user-input information324that specifies or defines the approximate vertical location on the exterior of the structure of transceiver110in the structure. For example, the user may draw a mark indicating the vertical location on display316. Alternatively or additionally, the user may provide user-input information324via user-interface device322.

After receiving user-input information320and324, processor314may instruct interface circuit326in electronic device112to provide a query328to an imaging service114for an image330of the structure. This query may include information that specifies a location of the structure, such as coordinates of the structure (e.g., latitude and longitude, GPS coordinates, etc.). In response, imaging service114may provide image330. Note that image330may include a view of the structure from a position above the structure. For example, image330may include a satellite image from directly above the structure.

Furthermore, processor314may display image330on display316. In addition, processor314may display instructions332for the user of display316. These instructions may ask the user to specify or define at least one of the first line and the second line on the surface of the structure.

In response, the user may provide user-input information334that specifies or defines at least one of the first line and the second line on the surface in image330. For example, the user may draw at least one of the first line and the second line on display316. Alternatively or additionally, the user may provide user-input information336via user-interface device322. Note that the first line and the second line may at least partially overlap in image330. In particular, when image330includes an image from directly above the structure (such as a satellite image), the first line and the second line overlap.

Additionally, processor314may instruct interface circuit326to provide information338that specifies at least locations of end points of at least one of the first line and the second line to imaging service114. In response, imaging service114may provide information that specifies a distance340between the end points.

Next, processor314may instruct interface circuit326to provide, to computer116, information342that specifies distance340, the approximate vertical location and a geometry of the first line and a second line (such as the end points and/or the slopes). Based on this information, computer116may perform a geometric that determines344height346of transceiver110, such as the height from ground level or, more generally, from a reference level). Note that height346may have an uncertainty that is less than a predefined value, such as 5-30 cm. Then, computer116may provide information that specifies height346to electronic device112.

After receiving height346, processor314may provide this information to the user, so that the user can enter it into or provide it to transceiver110. For example, processor may display height346on display116. Alternatively, processor314may instruct interface circuit326to provide or transmit information that specifies height346to transceiver110.

While not shown inFIG. 3, electronic device112may include memory that is used to store data (such as image312) and/or one or more program modules.

We now further describe the measurement technique. Authorities often require the exact position of each small cell. This may include the latitude, longitude, and the height from ground level. Latitude and longitude can be determined using a global positioning system, triangulation or trilateration in a network (such as a cellular-telephone network), etc. However, determining the height can be difficult for a user, such as a technician who is installing a small cell. For example, in order to determine or find the height, a user may need to access the entire building plans (as opposed to just the floor plans). This can be time consuming at best, and often the building plans are unavailable.

Using the measurement technique, there is no need for building plans. Instead, the height can be determined using an application (which is sometimes referred to as a ‘floor-plan calibration tool’) executing on a smartphone. This floor-plan calibration tool is based on a two-operation workflow. In particular, when using the floor-plan calibration tool, a user uploads a building image and calibrates one of its side planes using an imaging service (such as a cloud-based satellite-imaging or a mapping service). Then, the calibrated information is used to determine the heights of one or more small cells in the building.

For example, after installing a small cell on the 4thfloor of the building, the user may need to determine the height (from the ground) of the small cell. Using the floor-plan calibration tool, the user may calibrate a side plane on the building image. In particular, the user may upload a high-resolution photograph of the building showing a side plane or surface. Note that the photograph can be taken from a variety of directions or vantage points, so long as it includes at least one side of the building. This is illustrated inFIG. 4, which presents a drawing illustrating an example of image400of a structure acquired by electronic device112inFIG. 1.

In particular, image400includes two external sides or surfaces410of the building. In image400, two horizontal lines412on side410-1may be indicated by the user. For example, line412-1(with endpoints A1and B1) is at the bottom of the ground floor and line412-2(with endpoints A2and B2) is at a high floor or at the roof line. Moreover, lines412both end on the same edges of the building. Consequently, endpoint A2may be exactly vertically above endpoint A1, and endpoint B2may be exactly vertically above endpoint B1. Note that the user may have drawn lines412, such as by zooming in on image400.

Next, the user may obtain an image of the structure from an imaging service. This is shown inFIG. 5, which presents a drawing illustrating an image500of a structure provided by imaging service114inFIG. 1. For example, image500of the building may be acquired or obtained by electronic device from an imaging service, such as a satellite-imaging or a mapping service. In some embodiments, image500is a satellite image of the building. In image500, side410-1and line510may indicated by the user on the full length of the building. Note that endpoint A of line510in image500matches endpoints A1and A2in image400, and that endpoint B of line510in image500matches endpoints B1and B2in image400. Thus, line510may be the same as at least one of lines412.

After the user saves images400and500with the drawn lines412and510, the satellite-imaging service or the mapping service may provide a distance between endpoints A and B. Based on lines412and the distance, side410-1is calibrated, such as that the position of every point on side410-1is known. Once this calibration is performed for a building, it can be reused to find the height of a small cell in the building. In particular, the measurements during the calculation may define a ration between pixels in image400and the numerical distance at one point in image400(such as a center of line412-1). Because the scale changes linearly in all directions, the location (including the height) of another point on surface410-1can be determined using a 2D geometric calculation.

The determination of the height of a small cell in the building is illustrated inFIG. 6, which presents a drawing of an example of determining of a height610of a transceiver (such as a small call) in a structure. In particular, the user may use an application (which is sometimes referred to as a ‘height-finding tool’) executing on the smartphone.

When using the height-finding tool, the user may image400of the building where only the calibrated plane of side410-1is enabled (not greyed out). When the user moves a mouse or their finger over the enabled area, height610from ground level may be indicated.

If the user is unsure from the outside of the building exactly the small cell is located inside the building, the user may identify a point inside the building (which is sometimes referred to as a ‘mark’) that is also visible from the outside. For example, the mark may be the top line of a window. Using the height-finding tool, the user can determine the height of the marker. Then, the user can measure inside the building the height difference (such as 0.5 ft) between the mark and the small cell. Next, the user can add the height difference to the height of the mark to determine the height of the small cell. Note that, if a building is covered completely with windows, such that, from the inside, the user cannot see the top of the windows, then the user may need to create the mark. For example, the user may put a visible mark (such as a flashlight) against the window before taking the building photograph.

While the preceding examples illustrated the measurement technique with straight, vertically aligned, horizontal lines412, in other embodiments the lines may partially overlap and/or may not be horizontal. Moreover, in some embodiments the lines are curved (such as if a wide-angle lens is used to acquire image400).

We now describe embodiments of an electronic device, which may perform at least some of the operations in the measurement technique.FIG. 7presents a block diagram illustrating an electronic device700in accordance with some embodiments, such as one of: transceiver110, electronic device112, imaging service114, computer116, optional access point118and/or optional base station120. This electronic device includes processing subsystem710, memory subsystem712, networking subsystem714, imaging subsystem730and user-interface subsystem732. Processing subsystem710includes one or more devices configured to perform computational operations. For example, processing subsystem710can include one or more microprocessors, ASICs, microcontrollers, programmable-logic devices, and/or one or more digital signal processors (DSPs).

Memory subsystem712includes one or more devices for storing data and/or instructions for processing subsystem710and networking subsystem714. For example, memory subsystem712can include dynamic random access memory (DRAM), static random access memory (SRAM), and/or other types of memory. In some embodiments, instructions for processing subsystem710in memory subsystem712include: one or more program modules or sets of instructions (such as program module722or operating system724), which may be executed by processing subsystem710. Note that the one or more computer programs or program modules may constitute a computer-program mechanism. Moreover, instructions in the various modules in memory subsystem712may be implemented in: a high-level procedural language, an object-oriented programming language, and/or in an assembly or machine language. Furthermore, the programming language may be compiled or interpreted, e.g., configurable or configured (which may be used interchangeably in this discussion), to be executed by processing subsystem710.

In addition, memory subsystem712can include mechanisms for controlling access to the memory. In some embodiments, memory subsystem712includes a memory hierarchy that comprises one or more caches coupled to a memory in electronic device700. In some of these embodiments, one or more of the caches is located in processing subsystem710.

In some embodiments, memory subsystem712is coupled to one or more high-capacity mass-storage devices (not shown). For example, memory subsystem712can be coupled to a magnetic or optical drive, a solid-state drive, or another type of mass-storage device. In these embodiments, memory subsystem712can be used by electronic device700as fast-access storage for often-used data, while the mass-storage device is used to store less frequently used data.

Networking subsystem714includes one or more devices configured to couple to and communicate on a wired and/or wireless network (i.e., to perform network operations), including: control logic716, an interface circuit718and one or more antennas720(or antenna elements). (WhileFIG. 7includes one or more antennas720, in some embodiments electronic device700includes one or more nodes, such as nodes708, e.g., a pad, which can be coupled to the one or more antennas720. Thus, electronic device700may or may not include the one or more antennas720. Note that the one or more nodes708may include one or more input node(s) to and/or one or more output node(s) from electronic device700.) For example, networking subsystem714can include a Bluetooth™ networking system, a cellular networking system (e.g., a 3G/4G network such as UMTS, LTE, etc.), a universal serial bus (USB) networking system, a networking system based on the standards described in IEEE 802.11 (e.g., a Wi-Fi® networking system), an Ethernet networking system, and/or another networking system.

Note that a transmit or receive antenna pattern (or antenna radiation pattern) of electronic device700may be adapted or changed using pattern shapers (such as reflectors) in one or more antennas720(or antenna elements), which can be independently and selectively electrically coupled to ground to steer the transmit antenna pattern in different directions. Thus, if one or more antennas720include N antenna pattern shapers, the one or more antennas may have 2Ndifferent antenna pattern configurations. More generally, a given antenna pattern may include amplitudes and/or phases of signals that specify a direction of the main or primary lobe of the given antenna pattern, as well as so-called ‘exclusion regions’ or ‘exclusion zones’ (which are sometimes referred to as ‘notches’ or ‘nulls’). Note that an exclusion zone of the given antenna pattern includes a low-intensity region of the given antenna pattern. While the intensity is not necessarily zero in the exclusion zone, it may be below a threshold, such as 3 dB or lower than the peak gain of the given antenna pattern. Thus, the given antenna pattern may include a local maximum (e.g., a primary beam) that directs gain in the direction of electronic device700that is of interest, and one or more local minima that reduce gain in the direction of other electronic devices that are not of interest. In this way, the given antenna pattern may be selected so that communication that is undesirable (such as with the other electronic devices) is avoided to reduce or eliminate adverse effects, such as interference or crosstalk.

Within electronic device700, processing subsystem710, memory subsystem712, and networking subsystem714are coupled together using bus728. Bus728may include an electrical, optical, and/or electro-optical connection that the subsystems can use to communicate commands and data among one another. Although only one bus728is shown for clarity, different embodiments can include a different number or configuration of electrical, optical, and/or electro-optical connections among the subsystems.

In some embodiments, electronic device700includes a display subsystem726for displaying information on a display, which may include a display driver and the display, such as a liquid-crystal display, a multi-touch touchscreen, etc.

Moreover, electronic device700may include imaging subsystem730, which may include an imaging sensor (such as a CMOS or a CCD sensor) for acquiring one or more images. Furthermore, electronic device700may include user-interface subsystem732(such as a keyboard, a mouse, a touchpad, a microphone and a voice-recognition technique, etc.) to allow information to be provided to a user of electronic device (such as via a user interface displayed on the display in or associated with display subsystem726), and to be received from the user (such as user-input information).

Electronic device700can be (or can be included in) any electronic device with at least one network interface. For example, electronic device700can be (or can be included in): a desktop computer, a laptop computer, a subnotebook/netbook, a server, a tablet computer, a smartphone, a cellular telephone, a smartwatch, a consumer-electronic device, a portable computing device, an access point, a transceiver, a router, a switch, communication equipment, an access point, a controller, test equipment, and/or another electronic device.

Although specific components are used to describe electronic device700, in alternative embodiments, different components and/or subsystems may be present in electronic device700. For example, electronic device700may include one or more additional processing subsystems, memory subsystems, networking subsystems, and/or display subsystems. Additionally, one or more of the subsystems may not be present in electronic device700. Moreover, in some embodiments, electronic device700may include one or more additional subsystems that are not shown inFIG. 7. Also, although separate subsystems are shown inFIG. 7, in some embodiments some or all of a given subsystem or component can be integrated into one or more of the other subsystems or component(s) in electronic device700. For example, in some embodiments program module722is included in operating system724and/or control logic716is included in interface circuit718.

An integrated circuit (which is sometimes referred to as a ‘communication circuit’) may implement some or all of the functionality of networking subsystem714. The integrated circuit may include hardware and/or software mechanisms that are used for transmitting wireless signals from electronic device700and receiving signals at electronic device700from other electronic devices. Aside from the mechanisms herein described, radios are generally known in the art and hence are not described in detail. In general, networking subsystem714and/or the integrated circuit can include any number of radios. Note that the radios in multiple-radio embodiments function in a similar way to the described single-radio embodiments.

While the preceding discussion used an Ethernet and a packet-based communication protocol as illustrative examples, in other embodiments a wide variety of communication protocols and, more generally, wireless communication techniques may be used. Thus, the measurement technique may be used in a variety of network interfaces. Furthermore, while some of the operations in the preceding embodiments were implemented in hardware or software, in general the operations in the preceding embodiments can be implemented in a wide variety of configurations and architectures. Therefore, some or all of the operations in the preceding embodiments may be performed in hardware, in software or both. For example, at least some of the operations in the measurement technique may be implemented using program module722, operating system724(such as a driver for interface circuit718) or in firmware in interface circuit718. Alternatively or additionally, at least some of the operations in the measurement technique may be implemented in a physical layer, such as hardware in interface circuit718.

Moreover, while the preceding embodiments illustrated the measurement technique in which electronic device112(FIG. 1) provides or receives a frame or a packet from another electronic device in system100(FIG. 1), in some embodiments electronic device112(FIG. 1) may concurrently receive frames or packets from two or more electronic devices. For example, the communication protocol may use orthogonal frequency division multiple access (OFDMA).