3D Signal Strength Mapping of 2.4GHz WiFi Networks

47
1 3D Signal Strength Mapping of 2.4GHz Wi-Fi Networks Author: Brett Glidden Senior Project ELECTRICAL ENGINEERING DEPARTMENT California Polytechnic State University San Luis Obispo 2018

Transcript of 3D Signal Strength Mapping of 2.4GHz WiFi Networks

Page 1: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

1

3D Signal Strength Mapping of

2.4GHz Wi-Fi Networks

Author: Brett Glidden

Senior Project

ELECTRICAL ENGINEERING DEPARTMENT

California Polytechnic State University

San Luis Obispo

2018

Page 2: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

2

Table of Contents 1.Introduction ................................................................................................................................................ 6

2. Customer Needs, Requirements, and Specifications................................................................................. 6

2.1 Customer Needs Assessment .............................................................................................................. 6

2.2 Requirements and Specifications ........................................................................................................ 6

2.3 Marketing Requirements ..................................................................................................................... 6

3. Functional Decomposition ........................................................................................................................ 8

3.1 Level 0 ................................................................................................................................................ 8

3.2 Level 1 ................................................................................................................................................ 9

4. Project Planning ...................................................................................................................................... 12

4.1 Cost Estimate Reasoning .................................................................................................................. 14

5. Design ..................................................................................................................................................... 15

5.1 Design Concept ................................................................................................................................. 15

5.2 Hardware Design .............................................................................................................................. 15

5.3 PCB Design ....................................................................................................................................... 20

5.4 Firmware Design ............................................................................................................................... 25

6. Data Collection and Visualization .......................................................................................................... 28

6.1 COSMOS Ground Station Software ................................................................................................. 28

6.2 Data Extraction into MATLAB ........................................................................................................ 29

6.3 Google Maps Visualization ............................................................................................................... 31

7. Conclusion .............................................................................................................................................. 32

References ................................................................................................................................................... 33

Appendix – A. Senior Project Analysis ...................................................................................................... 35

Appendix – B. PCB Schematics ................................................................................................................. 40

Appendix – C. Online Code Repositories ................................................................................................... 46

Page 3: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

3

List of Tables Table I ........................................................................................................................................................... 7

Table II .......................................................................................................................................................... 8

Table III ........................................................................................................................................................ 9

Table IV ...................................................................................................................................................... 10

Table V ....................................................................................................................................................... 10

Table VI ...................................................................................................................................................... 11

Table VII ..................................................................................................................................................... 11

Table VIII.................................................................................................................................................... 12

Table IX ...................................................................................................................................................... 14

Table X ....................................................................................................................................................... 23

Table XI ...................................................................................................................................................... 25

Page 4: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

4

List of Figures Figure 1 ......................................................................................................................................................... 8

Figure 2 ......................................................................................................................................................... 9

Figure 3 ....................................................................................................................................................... 13

Figure 4 ....................................................................................................................................................... 15

Figure 5 ....................................................................................................................................................... 17

Figure 6 ....................................................................................................................................................... 18

Figure 7 ....................................................................................................................................................... 19

Figure 8 ....................................................................................................................................................... 20

Figure 9 ....................................................................................................................................................... 21

Figure 10 ..................................................................................................................................................... 22

Figure 11 ..................................................................................................................................................... 23

Figure 12 ..................................................................................................................................................... 24

Figure 13 ..................................................................................................................................................... 25

Figure 14 ..................................................................................................................................................... 25

Figure 15 ..................................................................................................................................................... 26

Figure 16 ..................................................................................................................................................... 27

Figure 17 ..................................................................................................................................................... 28

Figure 18 ..................................................................................................................................................... 28

Figure 19 ..................................................................................................................................................... 29

Figure 20 ..................................................................................................................................................... 30

Figure 21 ..................................................................................................................................................... 31

Figure 22 ..................................................................................................................................................... 32

Page 5: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

5

Abstract

Many commercial businesses operate out of multi-story office buildings. These companies often use many Wi-Fi access points to set up their own wireless network. IT personnel determine proper Wi-Fi access point placement using Wi-Fi strength maps. Conventional Wi-Fi strength maps only provide a two-dimensional view representing the wireless access point's effective range. The signal quality and strength measurements do not include changing vertical elevation. Efficient network layout in a multi-story building requires a system calculating signal quality metrics in three dimensions.

This project involves designing and prototyping a system to achieve 2.4GHz Wi-Fi signal quality measurements in a three-dimensional reference plane. The instrument continuously monitors its location and the 2.4GHz Wi-Fi network’s received signal strength. The user generates a 3D model of the 2.4GHz Wi-Fi network coverage using the collected signal metrics.

Page 6: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

6

1. Introduction Since the inception of 802.11 Wi-Fi in 1997, the wireless network standard has gained tremendous popularity. Wi-Fi promotes wireless intercommunication between many electronic devices including laptops, phones, and tablets. The Wi-Fi alliance estimates that over 71% of all mobile communications flow through Wi-Fi [3]. Users connect to a Wi-Fi access point, granting them permission to private, local, or public networks. Strategic positioning of these Wi-Fi access points ensures seamless Wi-Fi connectivity.

Traditionally determining proper Wi-Fi access point placement requires using two-dimensional Wi-Fi signal strength maps. These maps display the gradient of an access point’s signal strength at increasing distances [4]. While suitable for single story buildings, the two-dimensional maps fail to account for any change in vertical elevation. This causes increased complexity in efficient network layouts in multi-story buildings. Efficient network layout in a multi-story building requires a system calculating signal strength metrics in three dimensions.

This project involves designing and prototyping a system to achieve 2.4GHz Wi-Fi strength signal quality measurements. The measurements reference a three-dimensional reference plane. The instrument continuously monitors its location and the 2.4GHz Wi-Fi network’s received signal strength (RSSI). The metric and positional data are transmitted to a computer for further processing. The computer generates a 3D map from the data.

2. Customer Needs, Requirements, and Specifications 2.1 Customer Needs Assessment Students, educators, hobbyists, and IT personnel form this project’s major customer bases. California Polytechnic State University San Luis Obispo provides direct communication to both students and educators. These two bases advocated for low costs and portability. Many electronic hobbyists frequent online EDA forums and IRC chatrooms, for example EDAboard.com and EEVblog. The hobbyists desire open source hardware and software that they could build and understand. I contacted two IT personnel using my previous employment connections. Their needs prioritized minimal training and low costs.

2.2 Requirements and Specifications Engineering specifications must exhibit the following characteristics: unambiguous, verifiable, and trackable. Promoting traceable features, this project’s engineering specifications expand upon the base marketing requirements. A fixed $85 upper bound for manufacturing costs establishes the price ceiling based on current Wi-Fi adapter pricing. Two-hour operating limits and a 25-foot line-of-sight communications link specification detail the portability requirement. Device usability requirements are met with specified limits on training times. Multiple user testing and averages provide a verifiable evaluation procedure. Specifying open source licensing requirements meets the hobbyist market’s needs. The two specified signal metrics, received signal strength (RSSI) and bit error rate (BER), provide verifiable data collection requirements. The frame error rate (FER) serves as a substitute for the BER when receiving 802.11g/n signals [9]. A limit on receiver sensitivity further defines the required signal quality measurements needs.

2.3 Marketing Requirements 1. Provide signal statistics of a connected Wi-Fi network 2. Portable 3. Low cost that students and hobbyists can afford 4. Minimal learning curve

Page 7: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

7

5. Open source 6. Provide horizontal and vertical location information.

TABLE I

3D 2.4GHZ WI-FI MAPPING REQUIREMENTS AND SPECIFICATIONS Marketing

Requirements Engineering

Specifications Justification

3 The total parts and manufacturing costs per unit must not exceed $85.

Students, educators, and hobbyists have limited budgets. The device should be priced competitively with available wireless adapters.

1 The device should measure the connected Wi-Fi network’s RSSI (dBm) and BER/FER.

Most available Wi-Fi network adapters provide signal strength in dBm. Bit error rate (BER) and frame error rate (FER) provide accurate signal quality statistics in noisy environments [3].

2,3,4 The device must wirelessly transmit signal quality datasets to an external computer.

An external computer reduces the measurement device’s baseline computational requirements. Reduced computation requirement decreases system complexity and cost.

3,5 Device components are purchasable through two or more of the ten largest electronics distributors.

Hobbyists suggested they learn more when building a device. Ensuring parts availability allows customers to build their own device in single quantities.

2 The device’s standalone operating time exceeds two hours before requiring a recharge.

Civil engineering IT personnel suggested it would take roughly two hours to hand map their 10,000-square foot office building.

1 At a data rate of 54Mbps and FER < 10%, the device should receive 2.4GHz Wi-Fi signals greater in power than -65dBm.

Receiver sensitivity minimum requirements for the IEEE 802.11g standard [9]. Incompetent receivers do not meet this requirement.

5 All software, firmware, and hardware schematics must use some open source license.

Fully open source projects require publicly available hardware schematics and source code. License type determines distribution and modification rights.

4 Exported signal quality datasets must use a file format supported by existing mapping technologies.

IT personnel value time. Integrating the solution with their existing workflow (Google Earth, ESRI) decreases overall training time.

2 Device enclosure dimensions do not exceed 4" x 4" x 4".

Device mounting on 125mm x125mm quad rotors requires base size to not exceed 4”.

2 Device enclosure must support removable batteries.

Removable batteries provide ease of maintenance and increase portability.

6 Device must attribute a latitude, longitude, and elevation to each signal quality dataset. Horizontal location accuracy is within 10m.

Latitude, longitude, and elevation designate the point in three dimensions. GPS standard defines commercial accuracy at 10m [11].

Page 8: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

8

3. Functional Decomposition 3.1 Level 0 The Level 0 block diagram identifies the system’s overall functionality. Figure 1 displays this system’s Level 0 block diagram. Table II describes the system’s primary inputs and outputs.

The device requires four primary inputs: user control parameters, GPS, the Wi-Fi signal, and a 3.3V power source. After satisfying inputs, the device outputs the Wi-Fi signal’s received signal strength, BER or FER, and the measurement location attributes. The 3.3V power source supplies power to the entire system. The user supplies network configuration information over the control parameters. Using the network configuration, the device connects to the Wi-Fi network. The GPS continuously supplies the horizontal and vertical location.

Figure 1: 3D 2.4GHz Wi-Fi Mapping Level 0 block diagram.

TABLE II

3D 2.4GHZ WI-FI MAPPING LEVEL 0 FUNCTIONAL REQUIREMENTS

Module 3D 2.4GHZ Wi-Fi Mapping Device

Inputs

- User Control Parameters: User supplied network configuration information. - GPS: Location information (latitude, longitude, elevation). - 2.4GHz Wi-Fi Signal: Incoming signal from the connected Wi-Fi network. - Power: 3.3V DC, 500mA

Outputs

- Received Signal Strength (RSSI): 16-bit integer received signal input power. - Bit Error Rate (BER): 16-bit integer specifying bit error rate per unit time. - Latitude, Longitude, Elevation: Decimal degrees output of location information.

Functionality

Connect to a user specified 2.4GHz Wi-Fi network. Analyze the incoming Wi-Fi signal to determine the signals current RSSI and BER. Attribute a location to each RSSI and BER measurement using GPS fix. Output the measurement statistics to the user.

Page 9: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

9

3.2 Level 1 The Level 1 block diagram indicates the system’s internal architecture including major subsystems. Figure 2 displays the system’s Level 1 block diagram. The major subsystems include: GPS unit, power regulation, 2.4GHz transceiver, microcontroller, and the telemetry/configuration transceiver. Tables III, IV, V, VI, VII describe each subsystem’s functional requirements.

Figure 2: 3D 2.4GHz Wi-Fi Mapping Level 1 block diagram.

The GPS unit receives the L1 or L2 GPS signal from satellites in orbit. Analysis of the received signals identifies if a GPS fix has been found. A GPS fix indicates the validity of the calculated latitude and longitude. The GPS unit outputs data to the microcontroller according to the National Marine Electronics Association specification [11].

TABLE III GPS UNIT FUNCTIONAL REQUIREMENTS

Module GPS Unit

Inputs - GPS: L1 or L2 signal data for GPS location.

Outputs - NMEA String: latitude, longitude, and elevation

Functionality Receive the L1 or L2 band GPS signals. Determine latitude, longitude, and elevation data from the GPS signal. Output the data to the microcontroller using the NMEA GPS string specification.

Page 10: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

10

The telemetry and configuration transceiver interfaces with the host computer. The subsystem takes user control parameters including network configuration information. The data passes directly through the unit. The transceiver decodes the signal telemetry packets from the microcontroller before transmitting the information to the host computer.

TABLE IV TELEMETRY AND CONFIGURATION TRANSCEIVER FUNCTIONAL REQUIREMENTS

Module Telemetry and Configuration Transceiver

Inputs - User Control Parameter: User supplied network configuration information. - Signal Telemetry: Packetized RSSI and BER/FER and GPS measurements

Outputs

- User Control: User supplied network configuration information. - BER: the connected Wi-Fi network’s bit error rate or frame error rate - RSSI: the connected Wi-Fi network’s received signal strength in dBm. - Lat, Lon, Elev.: the latitude, longitude, and elevation of the dataset.

Functionality Convert the supplied power (2.7V or 7.4V battery) to a 3.3V rail. The 3.3V rail supplies all other subsystems.

The 2.4GHz Wi-Fi Transceiver subsystem performs all interactions with the Wi-Fi network under test. This unit encompasses the entire 2.4GHz Wi-Fi RF front end including transmission and reception circuits. The unit uses supplied credentials and configuration details to initialize communications with the Wi-Fi network. After initialization, the unit demodulates all received data, transferring the data to the microcontroller.

TABLE V 2.4 GHZ WI-FI TRANSCEIVER FUNCTIONAL REQUIREMENTS

Module 2.4GHz Wi-Fi Transceiver

Inputs - 2.4GHz Wi-Fi Signal: The connected network’s Wi-Fi signal. - Wi-Fi TX: Host data to be sent over the connected Wi-Fi network

Outputs - Wi-Fi RX: demodulated data received from the Wi-Fi network.

Functionality Subsystem initializes communication with a Wi-Fi network using host supplied credentials and parameters. All data received is demodulated and output to the device’s microcontroller for further processing.

Page 11: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

11

The microcontroller subsystem performs data aggregation and analysis. It combines the GPS readings and Wi-Fi signal measurements to estimate current signal strength at a location. The microcontroller packetizes the readings for transmission through the telemetry and configuration transceiver.

TABLE VI MICROCONTROLLER FUNCTIONAL REQUIREMENTS

Module Microcontroller

Inputs - NMEA string: GPS latitude, longitude, and elevation information. -Wi-Fi RX: Demodulated packets from the connected Wi-Fi network. - User Control: User supplied network configuration information.

Outputs - Wi-Fi TX: Host data sent over the connected Wi-Fi network - Signal Telemetry: packetized BER, RSSI, and GPS information.

Functionality

Analyzes the demodulated packets from the connected Wi-Fi network. Obtains each packet’s RSSI and BER/FER measurements. Averages RSSI and BER measurements over many packets. Receives GPS location information to attribute to the averaged RSSI and BER measurements. Outputs the measurements to the telemetry and configuration transceiver.

The power regulation subsystem provides the required DC voltage (3.3V) for all other subsystems. The regulator converts the input source into a 3.3V rail.

TABLE VII POWER REGULATION FUNCTIONAL REQUIREMENTS

Module Power Regulation

Inputs - Power: A battery power source. Either a 2.7V or 7.4V LiPo battery.

Outputs - 3.3V Power: regulated 3.3V power to supply all other units.

Functionality Convert the supplied power (2.7V or 7.4V battery) to a 3.3V rail. The 3.3V rail supplies all other subsystems.

Page 12: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

12

4. Project Planning This project requires proper planning in the forms of time management, scheduling, and cost estimation. The Gantt chart and cost estimation appear in Figure 3 and Table IX. The Gantt chart describes the project’s individual tasks and milestones throughout EE 460, 461, and 462. Each task has an associated time allotment listed in weeks. This is the “Duration” column on the Gantt chart. The tasks include research, development, reports, demos, and testing. Table VIII lists the primary deliverables and associated due dates for quick reference. The duration in weeks is computed using the project evaluation review technique (PERT) [12]. The technique provides a formula for time estimation:

𝑡𝑡𝑒𝑒 =𝑡𝑡𝑎𝑎 + 4𝑡𝑡𝑚𝑚 + 𝑡𝑡𝑏𝑏

6

𝑡𝑡𝑒𝑒: estimate time 𝑡𝑡𝑎𝑎: most optimistic time 𝑡𝑡𝑚𝑚: most realistic time 𝑡𝑡𝑏𝑏: most pessimistic time

TABLE VIII 3D 2.4GHZ WI-FI MAPPING MAJOR DELIVERABLES

Delivery Date Deliverable Description 03/03/2018 EE 460 Preliminary Report 06/08/2018 2nd Generation Prototype Completion 06/15/2018 EE 461 demo 06/15/2018 EE 461 report 10/12/2018 EE 462 Design Review 12/07/2018 EE 462 demo 12/07/2018 ABET Sr. Project Analysis 11/30/2018 Sr. Project Expo Poster 12/07/2018 EE 462 Report

Page 13: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

13

Figure 3: EE 460, 461, and 462 Gantt Chart.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27

1 EE 460 Begins 02/08/2018Cost Estimates 1 2 1HW 2 Sensitivity Analysis 1 2 1ABET Sr. Project Analysis 1 3 2Requirements/Specs V2 3 4 1HW 3 Reverse Engineering 3 5 2Report V1 1 4 3Report V2 4 6 2

2 EE 461 Begins 04/02/2018Prototype 1 Part Selection 6 9 3Protoype 1 PCB Design and Review 6 9 3Prototype 1 Assembly and Test 9 11 2Prototype 2 Part Selection 9 11 2Prototype 2 PCB Design and Review 10 12 2Prototype 2 Assembly and Test 12 15 3EE 461 Report 8 16 8EE 461 Demo 14 16 2

3 EE 462 Begins 04/02/2018Coding user interface 17 20 3Enclosure design and manufacture 18 21 3Generation of graphics from testing 18 22 4Sr. Project Expo Poster 19 23 4EE 462 Demo 19 25 6EE 462 Report 16 27 11

GANTT CHART

DATE 2/12/18

COMPANY NAME Cal Poly EE Senior Project3D Mapping of Wi-Fi NetworksPROJECT TITLE

DURATIONEND WEEKTASK OWNER START WEEK

Brett GliddenPROJECT MANAGER

TASK TITLEWBS NUMBER

EE 460 EE 461 EE 462

Page 14: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

14

Table IX breaks down the project cost into specific parts, components, and labor. The estimated cost does not include tax costs or miscellaneous fees associated with out-of-state purchases. The PERT technique computes the labor and parts cost:

𝑐𝑐𝑒𝑒 =𝑐𝑐𝑎𝑎 + 4𝑐𝑐𝑚𝑚 + 𝑐𝑐𝑏𝑏

6

TABLE IX

3D 2.4GHZ WI-FI MAPPING COST ESTIMATION Item Units/Hours Cost/Unit/Hours Sub

Total Prototype 1 PCB Design 12 $28.00 $336.00 Prototype 1 PCB Mfg. 3 $22.00 $66.00 Prototype 1 Components 2 $80.00 $160.00 Prototype 1 Assembly 4 $28.00 $112.00 Prototype 2 PCB Design 10 $28.00 $280.00 Prototype 2 PCB Mfg. 3 $22.00 $66.00 Prototype 2 Components 2 $80.00 $160.00 Prototype 2 Assembly 4 $28.00 $112.00

Enclosure Design 5 $28.00 $140.00 Enclosure Mfg. 2 $15.00 $30.00

User Interface Coding 10 $28.00 $280.00 Device Firmware Coding 12 $28.00 $336.00 Porting Data to Map Viewer 6 $28.00 $168.00 Linking Firmware and UI 8 $28.00 $224.00

Documentation/Report Writing

45 $28.00 $1,260.00

Research 25 $28.00 $700.00 Total $4,430.00

4.1 Cost Estimate Reasoning The first section denotes PCB design, manufacturing, and assembly. Italic line items represent labor costs. Non-italic line items represent physical components. The $28.00/hr labor cost was determined using my current billable rate as an IT support technician after overhead expenses. PCB manufacturing is $22.00 a board using OSHpark 2-layer PCB pricing estimates. Component costs total $80 per board using the supplier Digi-key. This includes discrete ICs, capacitors, inductors, and connectors. Enclosure manufacturing totals $15 per unit. Simplify3D, a 3D printing tool, generated estimate prices based on material (PLA) and total enclosure area. The project’s coding aspect totals 36 hours of labor. Prebuilt ground station software reduces the overall UI coding time. Manufacturer’s C libraries provide easy setup functions for the Wi-Fi chip [7]. Map viewers use open standards, reducing data porting to simple string rearrangement [13]. The largest items include documentation and research. Proper research decreases implementation time and documentation is required for all facets of the design.

Page 15: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

15

5. Design 5.1 Design Concept The entire system is comprised of two main units. The first and primary unit is the measurement device which is responsible for signal strength, packet error rate, and location data. The secondary unit is a transceiver device connected to a personal computer which enables communication to the primary unit.

The primary unit is comprised of five main components: a Wi-Fi module, a GPS, an inertial measurement unit, a pressure sensor, and a general ISM transceiver. The Wi-Fi module is used to query and connect to designated Wi-Fi networks operating on the 802.11b/g/n standard. The GPS provides reference location data for the device. The inertial measurement unit provides orientation, velocity, and acceleration data to be used in positioning. The barometer is used to perform altitude measurement. Lastly the general ISM transceiver communicates the data obtained onboard to the client’s remote computer.

The system’s major hardware components are then integrated onto a printed circuit board. The circuit board provides direct connections between components. This facilitates communication between all modules, creating a cohesive unit.

The underlying software spans to three different components of the entire system. The first is the software used to drive the Wi-Fi module. The Wi-Fi module is optimized for receive statistics and therefore can operate in an active or passive fashion. The main microcontroller then implements a state machine. This state machine routinely collects data from the sensors, GPS, and Wi-Fi module to form data packets containing receive measurements and locations. The data is then transmitted to a personal computer, where another software layer decodes and displays the data.

5.2 Hardware Design 5.2.1 Wi-Fi Module: The Wi-Fi module is the core of this project. It must provide the connection to and measurements from the Wi-Fi network under test. Texas Instruments CC3220S Wi-Fi microcontroller implements the desired features in a small package with many added features. The basic hardware block diagram for the device is shown below in Figure 4 courtesy of Texas Instruments [7].

Figure 4: Texas Instruments CC3220S hardware block diagram

Page 16: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

16

The CC3220S supplies networking capabilities for all 802.11b/g/n networks. These include networks protected by security schemes such as WEP, WPA2, and some enterprise security standards. Built in functions allow the module to scan for all active networks within range. This includes the networks SSID, BSSID, security type, and received signal strength. It accomplishes this by looking for Wi-Fi beacon frames across the entire 2.4GHz Wi-Fi band. For ease of use the module incorporates and entire 802.11 network processor which handles all baseband, and transport processing. This allows for simple setup and connection to most Wi-Fi networks.

The primary advantage of the CC3220S over other similar Wi-Fi modules stems from the module’s support for direct control over the RF transceiver. This project’s main application is measuring receive statistics including signal strength and packet error rate. This is handled on a frame by frame basis. Direct control over the transceiver allows for stateful packet filtering to be implemented. These filters provide hardware level pass/drop decisions based on IP Address, MAC, SSID, frame type, and many other pattern-based sequences. With this packet filtering receive statistics can be measured only on the desired packets. These can be setup when connected or when not connected to a network.

The CC3220S implements several communications buses over which to provide data to another host processor. These include I2C, SPI, and UART communication buses. The I2C implementation has support for both standard 100kHz and fast 400kHz modes. In this operation the CC3220S acts as a slave device with a pre-programmed address. The SPI bus supports serial communication at data rates exceeding 1Mbps. This ensures high speed data throughput, yet still requires the CC3220S to act a slave device. The UART supports baudrates exceeding 115200 baud and is well supported in the TI example code and subsequent documentation. The UART is used as the primary communication interface in this project due to its simplicity, ease of use, and readily available support.

5.2.2 Inertial Measurement Unit (IMU): The inertial measurement unit consists of an accelerometer, gyroscope, and magnetometer. These allow measurements on a 9-axis referential plane which provides orientation, velocity, and acceleration. The measurements can be combined in a Kalman filter to produce modified positional data when GPS location cannot be acquired.

The IMU used in this project is the STMicroelectronics LSM9DS1. The LSM9DS1 is a 9-Axis accelerometer, gyroscope, and magnetometer [18]. The sensor is a part of the iNEMO series from STMicroelectronics. It can record acceleration up to 16g, magnetic fields to 16 gauss, and angular rates near 2000 dps. The integrated circuit comes in a small LGA footprint which allows easy addition to the printed circuit board.

The sensor provides both I2C and SPI communication interfaces. These interfaces are used to transfer 16-bit data for the acceleration, angular rate, and magnetic field channels of the device. The LSM9DS1 is configured to operate in I2C mode in this project. The acceleration sensor is limited to a maximum of 4g. This increases accuracy over the range by providing more bits of precision. Likewise, the magnetic sensor and angular rate sensor are limited to 500 dps, and 12 gauss respectively. These values were chosen based off standard measurements taken in a typical office environment.

Page 17: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

17

5.2.3 GPS Module: The GPS module supplies absolute positioning data to the device. This includes latitude, longitude, elevation, and timing information. The uBlox MAX-M8Q GNSS 72 channel receiver is used in this project. This GNSS receiver is based on the highly reliable M8 series from uBlox. It provides GNSS results from the four major solutions: GPS, GLONASS, Galileo, and BeiDou [15]. The system supports three concurrent GNSS, providing much higher accuracies. The RF front end includes an integrated SAW and LNA. These are optimized for the GPS frequency and allow the use of passive GPS antennas. A block diagram of the MAX-M8Q is shown in Figure 5.

The MAX-M8Q boasts very accurate horizontal position accuracy. Compared to most GNSS receivers limited to 10-meter accuracy, the MAX-M8Q can provide horizontal position accuracy to 2.5 meters. Additionally, an update rate of 10Hz is achievable with a first fix time of 26 seconds from a cold start. The MAX-M8Q can receive signals down to -167dBm which make it ideal for use in indoor venues where building materials can significantly attenuate GPS signals.

The MAX-M8Q provides several communication interfaces including I2C, SPI, and UART. Immediately, SPI is the least supported and does not allow writing configuration parameters after initial setup. The UART is used in this project to provide simple means of debugging using the uBlox u-center software. The software u-center provides a graphical interface to configure the ZOE-M8Q for baud rate, power settings, and GPS messages. These include specific GPS message standards such as NMEA or the uBlox proprietary standard UBX. The NMEA messages are used with most major GPS modules and provide device agnostic specific location strings. The UBX messages provide location data in addition to health status messages from the MAX-M8Q.

Figure 5: uBlox MAX-M8Q hardware block diagram

Page 18: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

18

5.2.4 Pressure Sensor: A pressure sensor is used to collect measurements of the barometric pressure for use in altitude, velocity, and position calculations. The measurements aid in the enhancement of GPS navigation by providing a reference between GPS update frames. Barometric pressure sensors also aid in indoor navigation through measuring pressure changes corresponding to floors, walls, and ceilings. This project uses the Bosch BMP280 barometric pressure sensor.

The Bosch BMP280 is optimized for mobile devices. It has a very small form factor, measuring only 2 x 2.5 mm [16]. The power consumption with an update rate of 1Hz is limited to 2.7uA. This readily appeals to battery operated devices. The sensors accuracy is limited to 0.12 hPa which translates to roughly ± 1 meter in altitude resolution. This number can be shrunk even further using successive measurements. The sensor allows for additional configuration parameters to tune the device to a particular environment after calibration. This process is automated by the main microcontroller unit.

The Bosch BMP280 provides both I2C and SPI communication interfaces. SPI supports both 3 wire and 4 wire protocols and two different operating modes. This allows flexibility with other SPI enabled devices. However, I2C is used in this project as the required update rate from the barometer should not exceed 10 Hz. This falls under the sensor’s 157Hz maximum update rate. Pressure measurements are performed in a two-step sequence. First the device temperature is read and then the device pressure is read. The temperature reading is used to combat against any bias within the device as temperature is directly related to pressure. Additional filtering is employed in the device to prevent against short term fluctuations in pressure. Short term fluctuations could lead to erroneous altitude measurements. The block diagram of the Bosch BMP280 is shown below in Figure 6.

Figure 6: Bosch BMP280 hardware block diagram

Page 19: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

19

5.2.5 Telemetry Transceiver: The transceiver module provides a 915MHz downlink for data transmission to a host computer. The system must be portable, so a medium range RF link is required between the system and receiver attached to the remote system. The frequency 915MHz is selected since it does not interfere with the 2.4GHz ISM band and provides good propagation characteristics in outdoor and indoor environments. Additionally, the data rates obtained in 915MHz transceivers are generally greater than their 433MHz counterparts. The Digi Xbee 900HP RF transceiver is used in this project on both the measurement device and the client’s computer.

The Digi Xbee 900HP is a complete RF platform [17]. It integrates an Analog Devices ADF7021 transceiver, low noise amplifier block, power amplifier block, and SMA output on a single PCB. The PCB can be connected to any system using two 1x10 2mm pitch pin headers. This allows additional circuitry to be placed underneath the Xbee module on the main PCB. The Xbee module allows interfacing over UART. No commands are needed to setup the Xbee. Simply send data normally over the UART and it will be received by another Xbee posing as the base station. This significantly decreases programming time as no additional firmware drivers are needed. Lastly, the Xbee modules are FCC certified for use in the United States.

Figure 7: Digi Xbee 900HP RF Transceiver

5.2.6 Onboard Voltage Regulator: This system is meant to be mounted on quadcopters, telescopic rods, etc. Therefore, a wide input voltage regulator is required to facilitate power conversion from many different potential power sources. Standard single cell LiPo’s are often standardized at 3.7VDC but can have voltages as low as 2.4VDC whereas some four cell LiPo’s powering quadcopters may output at 7.4VDC. It’s apparent that a buck boost converter is needed to regulate the connected battery input voltage to 3.3VDC for the main PCB. The Texas Instruments TPS63070 buck-boost converter accepts a 2.0 - 16.0VDC input voltage and will regulate to a 3.3VDC output voltage [20]. The regulator can potentially source 2A of current and maintains conversion efficiencies near 95%. The expected current from this project is below 1A continuous with radio’s set to transmit with their maximum output power.

Page 20: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

20

5.3 PCB Design Each of the components in the preceding section are combined onto a single main PCB. The PCB was designed using KiCAD software to generate the schematics, PCB layout, manufacturing files, and 3D models. The main PCB consists of five major sections. These are the Wi-Fi radio, Xbee 900HP downlink radio, GPS, sensors, and power distribution. The schematics and descriptions for these major sections are outline below.

5.3.1 CC3220MOD Wi-Fi Radio Schematic: The schematic for the Wi-Fi radio is shown in Figure 8 and included in the appendix. The IC requires several bypass capacitors as shown in the upper left. The CC3220MOD is prone to large current spikes when it switches from RX to TX mode in addition to it’s startup RF calibration routine. The bypass capacitors are placed as close as possible to the power pins of the IC to reduce voltage drop when the input current spikes. The CC3220MOD supports system debugging through JTAG connection pins. These are routed out of the main board to a debug header. This way the device can be programmed using a JTAG adapter and Texas Instruments Code Composer Studio.

Figure 8: CC3220 Wi-Fi Radio Interconnect Diagram

The RF output of the CC3220MOD on pin 31 is connected directly to a TDK multi-layer band pass filter (DEA202450BT). The band pass filter has a 50 Ω characteristic impedance, 1.02dB insertion loss, and typical return loss of 22dB in the 2.4GHz Wi-Fi band. This filter ensures that the 915MHz transmissions from the PCB are heavily attenuated before reaching the receive chain of the CC3220MOD. LineCalc from Keysight Technologies was used to determine the appropriate trace width and spacing for a 50 Ω coplanar waveguide trace on the PCB. This minimizes reflections between the band pass filter, antenna, and CC3220MOD by providing accurate impedance matching between components.

Page 21: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

21

The CC3220MOD contains an internal flash IC for storing the device firmware. These pins along with the sense on power (SOP) lines are broken out to an external debug header. Using these pins, the user can program the internal flash memory and set the CC3220MOD into various bootloader modes. These modes provide additional debug options over JTAG and Serial Wire Debug (SWD). The user can disable or enable external debugging by grounding or pulling high the appropriate SOP pin. Lastly, several of the CC3220MOD’s peripherals are routed out from the IC to connect to other devices. These include several general-purpose input-output pins (GPIOs), two UARTs, one I2C bus, and two ADC channels. For proof of life, the CC3220MOD can toggle GPIO 0 to control a status LED.

5.3.2 Inertial and Barometric Pressure Sensors Schematic: The schematic of the LSM9DS1 inertial sensor and BMP280 barometer is shown below in Figure 9. The two devices are connected to the CC3220MOD Wi-Fi Radio using an I2C bus. Bypass capacitors have been placed on all necessary power input pins for both devices. All capacitor values where chosen according to the datasheet specifications for each device. Additionally, resistive pullups are used on the chip select lines of both devices to force communication over I2C instead of SPI.

Figure 9: LSM9DS1 and BMP280 Interconnect Diagram

Page 22: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

22

5.3.3 Digi Xbee 900HP Downlink Radio Schematic: The circuit schematic for the downlink radio section of the main PCB is shown below in Figure 10. The Xbee is module is on the left in Figure 8, titled XBP9B-DPST-001 which is the full Xbee radio’s part number. The Xbee radio requires routing of the ready to send (RTS), clear to send (DTS), and data terminal ready (DTR) pins to facilitate programming from a host computer. These pins are in addition to the standard TX and RX associated with the Xbee’s UART. As noted in previous sections, bypass capacitors have been placed near the Xbee’s power input pin per the datasheet recommendations.

Figure 10: Xbee 900HP Interconnect Diagram

Power is controlled to the Xbee via the TPS22918 load switch. This is a load switch from Texas Instruments which supplies 3.3V to the Xbee whenever GPIO 7 from the CC3220MOD is driven high. This way, the user can switch the radio on or off programmatically to save power. Since the Xbee can be unpowered while the CC3220MOD Wi-Fi radio is powered, the inputs to the Xbee need to be protected. The TXB0102DCU shown in the lower right of the schematic provides input isolation for the Xbee’s UART pins. This way if the Xbee is not powered, any incoming TX and RX signals are blocked by the isolator. The same load switch and isolator topologies are employed in the GPS circuit as well.

5.3.4 Buck Boost Power Converter Schematic: The power distribution schematic is shown below in Figure 11. There are two potential source inputs, VBUS and VBAT. The first source, VBUS, is an external power input used during debugging or when a battery is not available. The second source, VBAT, is a direct connection to a LiPo or other form of battery. Power source selection is done through a simple OR configuration. The diodes in the OR configuration are low voltage drop Schottky diodes. After source selection a 0.05 Ω resistor is used to perform current sensing. The voltage on both sides of the sense resistor are routed to simple non-inverting OPA2340 op-amps. The resistor divider network before each op-amp input is sized to limit the maximum op-amp output voltage to 3.3V. The op-amp outputs are then sampled using the CC3220MOD Wi-Fi radio’s ADC’s. This way the voltage drop across the resistor is used to calculate the total power dissipation of the PCB at any given time.

Page 23: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

23

Figure 11: Power Distribution Schematic Diagram After current sensing, the unregulated source voltage is either bucked down or boosted up to 3.3VDC using the TPS63070 buck-boost converter. Input and output capacitors were chosen according to datasheet recommendations for a 3.3VDC output voltage. Power on is indicated using a simple status LED. Power measurements were taken on the main PCB operating in several modes. These are outlined below:

TABLE X MAIN PCB POWER CONSUMPTION IN DIFFERENT OPERATING MODES

Peripherals Enabled Measured Power Consumption (W)

Idle 0.211 Barometer 0.443 Barometer, IMU 0.505 Barometer, IMU, GPS 0.632 Barometer, IMU, GPS, WiFi 0.822

5.3.5 Debug and Programming Connections: A major factor in PCB usability is the creating proper connections for debugging and programming the system while it is in use. Figure 12 showcases an interconnect diagram for the main 36 pin debug header as well as multiplexers for the Xbee radio and GPS UARTs. The multiplexers are implemented using the On Semiconductor FSUSB42MUX IC’s which contains an internal double pole double throw (DPDT) switch. This allows the UARTs of the Xbee and GPS to be routed directly to the CC3220MOD Wi-Fi radio when debugging is disabled. If debugging is enabled, the UARTs are routed directly to the debug header for testing. As the GPS and Xbee are standalone systems on the main PCB having the ability to interface with them directly from an external simplifies the process of validating proper operation.

Page 24: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

24

Figure 12: UART Mux and Debug Connections Diagram

The pinout of the 36-pin debug header is shown in J1 of Figure 12. The debug header allows external power to be provided using the four VBUS connections. The PCB’s 3.3V and GND connections are made available at the bottom of the connector. All JTAG debug connections to the CC3220MOD are available in addition to the sense on power (SOP) inputs and the flash control lines. The GPS and Xbee UARTs are included on the header along with each device’s reset line.

5.3.6 The PCB: The main PCB is designed using a four-layer FR4 process. The top and bottom layers are used to route signals between the components. The second layer is a continuous ground plane and the third layer is a continuous power plane. An image of the PCB with the major sections outlined is shown in Figure 13. Manufacturing was done using solder stencils and a reflow oven using a lead-free temperature profile.

Figure 13: Main PCB fully assembled

Page 25: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

25

5.4 Firmware Design This section describes the overall structure and flow of the firmware used on the CC3220MOD Wi-Fi radio. The current firmware allows the CC3220MOD to collect data from the inertial and barometer sensors, parse GPS strings, sample WiFi signal strength, and transmit those datasets to a base station. Figure 14 below shows a block diagram of the overall program flow.

Figure 14: High level view of the firmware function.

In Figure 14 the frequencies next to the major components denote the sampling frequency of each component. All transmissions to the base station are done using the Xbee operating at 900MHz with a data rate of 115.2 kbps. The firmware consists of four total tasks. These tasks are outlined below and detailed in the following subsections:

TABLE XI MAJOR FIRMWARE TASK OVERVIEW

Task Description

WiFi RSSI Sampling Task Receive packets from WiFi access points and average the RSSI from each packet.

IMU & Barometer Sampling Task Read accelerometer, gyroscopic, magnetometer, and pressure data from the inertial barometric and sensors.

GPS Task Read navigation solution information from the onboard GPS module.

Downlink Task Transmit packetized data to the base station when it’s available.

5.4.1 WiFi RSSI Sampling Task: The WiFi RSSI sampling task is arguably the most important task in the firmware. It’s the key property necessary to measure for the project. Figure 15 shows a flow chart for the task by identifying starting points in green, decisions in blue, and processes in grey.

Page 26: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

26

Figure 15: WiFi RSSI sampling task flowchart.

The task waits for the user to issue a command to start collecting the WiFi statistics. This command requires the user to submit the WiFi channel to listen on and the media access control (MAC) address of the desired access point. The firmware then begins receiving all packets which match the desired MAC address. The RSSI of each packet is added to a running average. The number of packets and average RSSI are every 500ms. This data is packetized and sent to the downlink task for transmission to the base station.

5.4.2 IMU & Barometer Sampling Task: For brevity the IMU and barometer tasks are grouped under one heading. Figure 16 below shows the IMU sampling task which is nearly identical to the barometer sampling task. To begin, the IMU is initialized using scaling factors for the accelerometer, gyroscope, and magnetometer. These factors determine the maximum range the IMU will be able to measure with 16 bits of resolution. For example, if the accelerometer scale factor is set to 4, the maximum acceleration the sensor will accurately measure is 4 G’s. While the user has not stopped the task execution, the firmware will collect accelerometer, gyroscope, and magnetometer data from the IMU. Each sample is packetized and sent to the downlink task for transmission to the base station. The sampling frequency of the IMU is set using a sleep function which suspends the task for a given amount of time. This suspend function frees up the CC3220MOD processor to work on the other tasks.

Page 27: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

27

Start IMU Task

Exit Task

Verify IMU is operational

Initialize IMU:Accel = 4 G’s

Gyro = 500 dpsMag = 4 Gauss

Add timestamp to IMU packet

Create packet with IMU data

Task Exit Received?

YES

Sleep Task for 6 milliseconds

Poll IMU for accel, gyro, mag, and

temperature data

Send IMU data to downlink

NO

Figure 16: IMU sampling task flowchart.

5.4.3 GPS Task: The MAX-M8Q GPS module supports standard NMEA strings in addition to uBlox’s proprietary UBX packets. These packets save space since all data is represented in binary instead of ASCII characters. One UBX packet, NAV-PVT, provides all relevant GPS information. The contents of this message are shown in the appendix. This includes latitude, longitude, altitude, position accuracies, number of satellites, and velocities. Using this one UBX packet is advantageous since the same information would require multiple NMEA strings to be combined. This task works by initially configuring the GPS to only output the NAV-PVT message. An internal process is setup to parse the incoming NAV-PVT packets and forward them to the downlink task for transmission to the base station.

Start GPS Task

Exit Task

Disable all default GPS NMEA strings

Enable the UBX NAV-PVT message

UART data available?

Matches NAV-PVT Header?

Parse incoming UART data into

NAV-PVT packet

Checksum Valid?

Add timestamp to NAV-PVT packet

Send NAV-PVT packet to downlink

Task Exit Received?

YES

YES

YES

YES

NO

NO

NO

Figure 17: GPS task flowchart.

5.4.4 Downlink Task: The downlink task is arguably the simplest task in firmware. All other tasks generate data packets which are added to the downlink queue. The downlink task waits until a packet is available in the queue. When

Page 28: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

28

this happens, the packet is copied out of the queue and its type is determined. The appropriate 16-bit identifier is added to the packet. This identifier signifies whether the packet is from the IMU, GPS, WiFi radio, etc. The combined header and packet are sent over a UART to the Xbee radio. The Xbee takes this data and transmits it to the base station radio. The task then waits until another packet enters the downlink queue.

Start Downlink TaskPacket in Downlink Queue?

Add packet headers for COSMOS Base Station

Send packet to 900MHz XBEE over

UART

YES

NO

Figure 18: Downlink task flowchart.

6. Data Collection and Visualization Data aggregated by the firmware described in the previous section is sent directly to a base station. This base station consists of an Xbee radio and a USB interface. This allows the exact data stream sent from the main PCB to be received directly on a computer. The data stream is processed and visualized using a ground support software known as COSMOS.

6.1 COSMOS Ground Station Software COSMOS is an open source ground station solution developed by Ball Aerospace [19]. The software connects to an input data source, in this case a serial data stream, and provides tools to decode and present the data. Simple configuration files are used to describe the packet structure. Each packet contains a header denoting the name of the packet. Subsequent fields denote the internal packet components including a timestamp, packet count, etc. In the case of the IMU these internal fields are the nine 32-bit floating point numbers representing the accelerometer, gyroscope, and magnetometer data. The configuration files used in this project will be included in the appendix. Along with packet decoding, COSMOS provides features to implement a basic graphical user interface (GUI). The user generates configuration files which describe the placement of components on the screen and their contents. These contents can be the data fields for the GPS, IMU, barometer, and Wi-Fi RSSI. The data is refreshed on the GUI at roughly 2Hz. This allows the user to track changes in the RSSI, GPS location, altitude, and inertial sensors in real time. Figure 19 showcases the GUI operating on the Windows operating system. The window on the left is used to preview the desired data. The upper right window shows how many packets have been received and if any packet errors have occurred. The bottom right window is used to send commands to the main device. These commands include starting and stopping data logging for the GPS, IMU, barometer, and WiFi radio statistics. When collecting data it’s best to move with the main PCB in a grid like pattern across the area of interest.

Page 29: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

29

Figure 19: COSMOS base station GUI layout.

6.2 Data Extraction into MATLAB The data collected using the COSMOS ground station software still needs to be adjusted before it can be the Wi-Fi RSSI maps can be visualized. Data extraction from the COSMOS software is performed by requesting all packets from the log files. The generated output files consist of each packet type (IMU, GPS, etc.), the number of packets, and each packet’s internal contents. The output file can be read directly into the MATLAB software. Often there are several packets which were not properly received at the base station. This corruption causes data outliers which must be accounted for in software. For altitude measurements a hard limiter is in place to limit altitude between a minimum and maximum known value. Any data points that are outside of the limits are adjusted to be in between the previous and next data points. Since the sampling rates of each peripheral differ, several of the datasets must be interpolated. For instance, the barometer samples at a rate of 80Hz whereas the GPS positioning is sampled at 1Hz. Given that the main PCB performing RSSI reception moves very slowly, the positioning data is interpolated with respect to the barometric data. This provides a quantity that is simple to plot and showcases more linear progression of the main PCB’s change in position relative to time.

Page 30: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

30

With the datasets properly interpolated with respect to each other and adjusted for outliers, the data is ready to be visualized in plots. The plotted data consists of:

• Latitude • Longitude • Altitude • Wi-Fi Signal Strength

MATLAB can accurately plot 3D quantities but adding Wi-Fi signal strength as the fourth quantity adds a challenge. Luckily, since this is effectively a Wi-Fi heatmap, the fourth quantity can be visualized as color on the surface of the 3D plots. To accomplish this, a grid mesh is defined in MATLAB which covers the latitude and longitude points. The altitude and Wi-Fi signal strength are then computed according to the latitude and longitude points in the grid mesh. The “surf(x,y,z)” command is evoked which is used to generate a 3D surface using the latitude, longitude, and altitude meshes. The surface is then assigned a color map using the Wi-Fi signal strength grid mesh as an input. Finally, the output plot contains a surface plot showing the gridded data colored according to the Wi-Fi signal strength. Figure 20 provides an example plot taken from a testing dataset.

Figure 20: MATLAB 3D surface plots of Wi-Fi signal strength.

Page 31: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

31

6.3 Google Maps Visualization The final step in converting data from the main PCB involves putting the Wi-Fi heatmaps into Google Earth. Google Earth is a free geographical visualization tool. Users can request satellite and aerial imagery, as well as other geographic mapping tools to visualize the world.

Additional user defined elements can be added to Google Earth in the form of keyhole markup language (KML) files. These files express geographic annotation and visualization information to Google Earth which is rendered on the user’s screen. The goal is to use the surface plots generated in MATLAB and publish them as KML files which Google Earth will be able to read. Fortunately, MATLAB contains support for converting surface plots to KML files via the KML Toolbox. The geospatial data and Wi-Fi signal strength are specified as inputs for a “ge_surf” function. This function creates the same plot as the “surf(x,y,z)” command, but with outputs in KML format. The generated KML is then loaded into Google Earth. Figure 21 showcases a Wi-Fi heatmap generated by moving the main PCB in a grid pattern across a backyard.

Figure 21: MATLAB 3D surface plots of Wi-Fi signal strength.

In newer versions of Google Earth Pro, there is an option to view the map at the ground level. This allows the user to perform similar functions as they would in google street view, but in areas that do not necessarily have road access. Examples include backyards or large fields. With the ground level feature the user can see and travel through the 3D Wi-Fi heatmap as shown in Figure 22.

Page 32: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

32

Figure 22: Google Earth ground level surface plots of Wi-Fi signal strength.

7. Conclusion This project was one of the most ambitious projects I have undertaken. The concepts spanned hardware design, firmware design, and software design. The project is not completely finished as bit error rate (BER) measurements have yet to be performed, but the other features are successful. The device is able to measure RSSI statistics from a user designated access point and provide enough information to generate 3D plots that can be visualized in Google Earth and MATLAB. There is significant potential for the tool to be useful in visualizing WiFi signal propagation in outdoor environments. Additionally, the device has applications in wireless tracking of individuals and devices. Future work would consist of refining the hardware and firmware platforms for additional features and size reductions. The main PCB was designed with the idea of debugging in mind. As such, the large debug connector makes the board significantly larger than it needs to be. Instead using pads on the PCB as test points would greatly reduce the required space. Next, the firmware should be expanded to implement bit error rate and packet error rate measurements. This can be as simple as configuring the WiFi access point to send UDP packets to the device with an incrementing counter. The firmware can also be augmented to include additional power saving features. These would include putting the transmitter and GPS into sleep modes for energy conservation. Additionally, the downlink transmitter’s output power level should be adjustable since maximum range is not always required. As a proof of concept, I am very happy with this device after a year’s worth of work. I believe this project demonstrates the culmination of EE and CS knowledge gained over my years at Cal Poly.

Page 33: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

33

References [1] Tinnirello and G. Bianchi, "Interference Estimation in IEEE 802.11 Networks," in IEEE Control

Systems, vol. 30, no. 2, pp. 30-43, April 2010.

[2] Y. Zhuang, Y. Li, H. Lan, Z. Syed and N. El-Sheimy, "Wireless Access Point Localization Using Nonlinear Least Squares and Multi-Level Quality Control," in IEEE Wireless Communications Letters, vol. 4, no. 6, pp. 693-696, Dec. 2015.

[3] Keysight Technologies, "IEEE 802.11 Wireless LAN PHY Layer (RF) Operation and Measurement," Appl. Note 5988-5411EN, Jul. 2014.

[4] Keysight Technologies, "RF Testing of WLAN Products", Appl. Note 5988-3762EN, Jul. 2014.

[5] Maxim Integrated, "General Layout Guidelines for RF and Mixed-Signal PCBs", Appl. Note 5100, Sep. 2011.

[6] K.K. Chintalapudi, V.N. Padmanabhan, and A.P. Iyer, "Simultaneous Localization and RF Modeling", US Patent 8,077,090, Dec. 13, 2011.

[7] Texas Instruments, "CC3220MOD SimpleLink Wi-Fi CERTIFIED Network Processor Internet-of-Things Module Solution for MCU Applications" CC3220MOD datasheet, Mar. 2017 [Revised June 2017].

[8] Texas Instruments, "WL18xxMOD WiLink 8 Single-Band Combo Module - Wi-Fi, Bluetooth, and Bluetooth Low Energy (LE)", WL1805 datasheet, Jul. 2013 [Revised Oct. 2017].

[9] IEEE Standard for Information technology--Telecommunications and information exchange between systems Local and metropolitan area networks--Specific requirements - Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications," in IEEE Std 802.11-2016 (Revision of IEEE Std 802.11-2012) , vol., no., pp.1-3534, Dec. 14 2016

[10] B.P Lathi and Z. Ding, Modern Digital and Analog Communication Systems. Oxford University Press, 2009

[11] U. S. G. Survey, “USGS Global Positioning Application and Practice,” U.S. Geological Survey - Global Positioning Application and Practice. [Online]. Available: https://water.usgs.gov/osw/gps/. [Accessed: 01-Feb-2018].

[12] R. Ford and C. Coulston, Design for Electrical and Computer Engineers, McGraw-Hill, 2007

[13] N.W.S, “Standards Description Document SHP-Shapefiles”, National Weather Service. [Online]. Available: https://www.weather.gov/media/cio/shapefiles.pdf. [Accessed: 1-Mar-2018].

[14] Electricity Local, “San Luis Obispo Electricity Rates”, Electricity Local. [Online] Available: https://www.electricitylocal.com/states/california/san-luis-obispo/. [Accessed: 1-Mar-2018].

[15] Ublox Technologies, “Max M8, u-blox M8 Concurrent GNSS Modules”, MAX M8Q datasheet, Aug. 2016

Page 34: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

34

[16] Bosch Sensortec, “BMP280 Digital Pressure Sensor, BST-BMP280-DS001-19”, BMP280 datasheet, Jan. 2018

[17] Digi Internation, “Xbee Pro 900HP/XSC RF Modules User Guide”, Xbee 900HP datasheet, Dec. 2014 [Revised: Jul. 2018]

[18] ST Microelectronics, “LSM9DS1 iNEMO inertial module: 3D accelerometer, 3D gyroscope, 3D magnetometer” LSM9DS1 datasheet, Mar. 2015

[19] Ball Aerospace, “COSMOS Documentation Guide”, Ball Aerospace, [Online]. Available: https://cosmosrb.com/assets/COSMOS_Docs_10_24_2018.pdf

[20] Texas Instruments, " TPS63070 2-V to 16-V Buck-Boost Converter With 3.6-A Switch Current", TPS63070 datasheet, Jun. 2016 [Revised Aug. 2016].

Page 35: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

35

Appendix – A. Senior Project Analysis

Project Title: 3D Mapping of 2.4GHz Wi-Fi Networks

Brett Glidden:

Dr. Saghri:

1. Summary of Functional Requirements This system provides 2.4GHz Wi-Fi signal strength measurements in a three-dimensional reference plane. The instrument continuously monitors its latitude, longitude, elevation, and the 2.4GHz Wi-Fi network’s received signal strength and bit error rate. The system attributes a location to each signal strength data set. Data sets transmit wirelessly to the user’s computer. The user generates a 3D model of the 2.4GHz Wi-Fi network coverage from the collected signal metrics.

2. Primary Design Constraints The size and portability of the device limit the system implementation. The device must be handheld, lightweight, and provide over two hours of battery operation. Handheld operation limits the total area the PCB can occupy. A limited PCB size increases 2-layer board complexity significantly, advocating a 4-layer PCB approach. However, additional manufacturing steps increase the price of a 4-layer PCB compared to 2-layer PCBs. Portability and low weight place design constraints on IC power consumption and battery size. IC power consumption becomes critical, limiting the scope of usable high-power Wi-Fi IC’s. Additional power saving features increase hardware and firmware complexity. Sleep modes and hardware power down circuits add increased costs.

Open source hardware and firmware limits the number of usable Wi-Fi IC’s. Realtek, a major Wi-Fi IC manufacturer, uses closed source drivers to control their devices. A closed source driver directly conflicts with open source design, removing the company’s product line from consideration. Wireless data transmission to the user’s computer places two RF circuits near each other. These include the Wi-Fi front end and the data transmission front end. The data transmission front end must avoid interference using a separate Industry/Science/Medical (ISM) frequency band. This removes all 2.4GHz transceiver modules. Only 433MHz and 915MHz devices remain in consideration. Limited financial aid and time investments hinder the device implementation. The time constraint provides a limited number of design and iteration cycles. Budget limitations reduce the number of cycles even further.

Page 36: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

36

3. Economic The design, production, and maintenance of the device produce positive and negative economic impacts. Regarding human capital, the device introduces educational opportunities for students and professionals alike. Clients can develop a basic understanding of Wi-Fi signal propagation from a multitude of wireless access points. The client can understand the differences between received signal strength and bit error rate to diagnose Wi-Fi network strength. Open source hardware and firmware provides beginning engineers with product implementation details. The individuals can fundamentally understand how the product works, furthering their own skillsets for future employers. The initial research, design, and prototyping costs constitute the most of required financial capital. Preliminary estimates suggest 25 hours dedicated to research. A $28/hr pay rate equates to $700.00 in total research costs. Design estimates, not including debug time, require at least 58 hours, accruing a minimum $1624.00 in labor costs. Estimated manufacturing and parts costs across two design iterations total $706.00. The developer covers these initial costs in their entirety. The university provides testing and measurement tools, with costs totaling several thousand dollars. Component purchases and PCB manufacturing produces the project’s manufacturing capital. Money spent on PCB manufacturing provides direct financial support to the fabrication house. The fabrication house can use the funds to reinvest in its tooling. Supporting the PCB fabrication house incurs natural resource consumption. PCBs require copper, epoxy, water, and other etching chemicals during production. Besides depleting natural resources, many chemicals cannot be recycled and directly contribute byproduct waste affecting the environment. Additional natural resources are depleted supporting the IC manufacturers. IC manufacturing uses silicon, carbon, and doping materials during production. The high energy consumption and waste product generation directly affects the environmental habitats near dumping grounds. Project benefits accrue after successful design testing. Estimated unit production costs total $45.00 per unit. Using a retail pricing of $85.00 per unit, the gross profit becomes $40.00 per unit sold. True developer profit only accrues after coverage of initial development costs. The developer also profits from market exposure, serving to build reputation. After the project ends, the maintenance begins. Unforeseen bugs and hardware issues incur additional costs and profits. Open source schematics and firmware provide the user the ability to fix bugs individually. This reduces the total burden of device maintainability.

4. Manufacturing on Commercial Basis The niche market and availability of design files limits total unit sales. An estimated 25-50 devices contribute to yearly sales based on current interest from the customer base. Production costs per unit of $45.00 combined with $85.00 retail costs provide gross profit of $40.00 per unit. Predicting 35 yearly sales produces $1400 of profit, neglecting initial development costs. The device has a 3-hour lifetime using battery operation. San Luis Obispo electricity rates average 15.59₵ kWh [14]. A 2000mAh battery operating at 3.3V consumes 0.0066 kWh indicating a user cost of 0.3₵ per charge. Additional costs including professional user’s hourly rate should add to the 0.3₵ per charge cost.

Page 37: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

37

5. Environmental

The device uses several components which directly deplete earth’s natural resources. PCB manufacturing requires copper, epoxy, and several etching chemicals. Many of the chemicals directly contribute to waste in the local environment. Waste recycling has improved over many years to minimize this impact. IC manufacturers utilize silicon, carbon, and a multitude of other chemicals to produce ICs and the subsequent packaging. Like PCB fabrication, the waste products generated by IC manufacturing negatively affect the local environment. The power consumption associated with these processes uses combinations of renewable and non-renewable energy sources. This contributes to coal consumption and its associated byproducts. Using the device can incur several environmental benefits. Professional IT personnel may layout their wireless access points more effectively in a building. Using less access points equates to less power consumption. Efficient layout also reduces congestion in the 2.4GHz band with increasing distance from the building. This provides efficient spectral use, allowing other devices to operate without interference.

6. Manufacturability The small component packages used may prove difficult for hand soldering. Quad-flat no-leads (QFN) and ball grid array (BGA) packages require a hot air gun or hot plate for soldering. Hot air and plate processes can melt PCBs when performed incorrectly. The packages require using a stencil to apply solder paste. The stencil creates an additional step in manufacturing, generating associated costs. The components used may reach EOL at any time. Bulk purchases are required to build sufficient units satisfying future demand. System packaging requires durable, easy to machine, and low-cost materials. Enclosure structures directly impact manufacturing costs. Increasing internal structures requires more precise machine tooling. Rounded exterior corners provide aesthetically pleasing designs but incur more manufacturing time. Material strength determines the manufacturing process allowed with plastics. 3D printing provides less strength compared to injection molding, but 3D printing costs significantly less than injection molding. Material choice and manufacturing require critical analysis to optimize both cost and durability.

7. Sustainability The device’s maintenance requirements should include battery charging, battery replacement, and firmware updating. The device hardware does not change after manufacturing. Batteries decay over time and have a propensity to decay faster with deep cycle use. The rechargeable batteries need replacement for proper long-term operation. Code bugs and future development additions require device firmware updates. The user or developer can apply these updates. Using reprogrammable hardware and rechargeable batteries reduces landfill material. Old boards do not get thrown out and rechargeable batteries provide longer lifetimes than their non-rechargeable counterparts. Emphasizing small size and portability supports more efficient use of resources. Enclosure manufacturing requires less material and less machining to produce the product. This causes reduction in power consumption and natural resource depletion. Less material usage equates to less potential environmental waste.

Page 38: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

38

Upgrading the device’s RF front end can improve system performance and power consumption. The biggest power consumption expenditure stems from the RF front end. Reducing power consumption promotes better power efficiency and longer battery life. Longer battery life lessens the environmental impact of the product’s continued use.

8. Ethical The IEEE Code of Ethics holds the safety, health, and welfare of the public in high regard [12]. This project follows guidelines posed by regulatory committees including the FCC ensuring public safety. The device does not advertise false claims in its marketing. The specifications promote verification through testing. Quantifiable specifications ensure participants maintain honesty. The code argues to reject bribery in all its forms. Donations, gifts, and all monetary or non-monetary forms of bribery cannot affect the product per quantifiable specifications. The device promotes comprehension of Wi-Fi network propagation and signal strength characteristics with its user base. Remaining open source provides a direct line for public criticism and feedback. The device does not seek to damage reputations of competitors. All features are quantifiable and not embellished. Ethical principlism, known as principlism, follows four moral principles: autonomy, beneficence, nonmaleficence, and justice. Autonomy provides individuals with free will. The device’s market introduction does not produce a monopoly. The client still maintains free will to choose their desired product. The device’s specifications serve as information upon which the client makes their choice. Beneficence is the capability to do good. 3D wireless mapping provides companies a way to increase access point layout efficiency. This saves the companies money and reduces congestion in the 2.4GHz Wi-Fi band. Nonmaleficence proposes to do no harm. The device follows FCC transmit power guidelines ensuring operator safety. Justice is the social distribution of benefits and burdens. It refers to employing fairness in all actions. The device does not seek to slander competitors through marketing tactics nor exaggeration of features. Specifications and features remain quantifiable by end users and competitors.

9. Health and Safety The device uses two separate RF transceivers to communicate with base stations and Wi-Fi networks. The FCC requires RF transmit power compliance to operate in the ISM bands. High RF transmit above limitations exposes humans to unhealthy electromagnetic radiation. The device must operate within FCC specifications ensuring human health and safety. Electronic components used in the devices store electromagnetic energy. Without adequate insulation the energy could transfer through the human body. This transfer produces negative health consequences. Components capable of high currents, including batteries, present dangerous situations if not isolated. Proper shielding techniques and grounding techniques reduce the likelihood of discharge through the end user.

10. Social and Political The system aims to benefit students, educators, and IT professionals using 3D wireless mapping over 2D wireless mapping. Current products focus on 2D mapping to produce wireless strength maps. The proliferation of 3D mapping technologies and Wi-Fi layout complexity continue to increase. The available solutions need to expand functionality to provide accurate results.

Page 39: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

39

Students, educators, and professionals look forward to innovative solutions which reduce work hours. The system provides ease of use and detailed measurements to increase layout efficiency. The system’s direct stakeholders include myself, component manufacturers, and the enclosure manufacturer. Products sold generate profit for each stakeholder. This positively affects their business and allows them to continue operation. Competitors in the market represent stakeholders negatively affected by the device’s marketplace introduction. The device sales remove competitors’ potential profit and reduce their market share.

11. Development This project uses concepts learned from electrical engineering and mechanical engineering topics. The system requires integration of hardware and software solutions. PCB design layout practices and techniques are continually researched. Proper PCB layout at Gigahertz frequencies becomes critical for proper device operation. The project uses third party 3D mapping software. Learning the software’s API and build cycle presents a straightforward device integration path. The iterative design process created avenues for rigorous testing to ensure device quality. Device enclosures require CAD tools and integration with manufacturing processes. Software including SolidWorks and Simplify3D integrate for 3D printing enclosures.

Page 40: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

40

Appendix – B. PCB Schematics

Page 41: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

41

Page 42: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

42

Page 43: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

43

Page 44: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

44

Page 45: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

45

Page 46: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

46

Appendix – C. Online Code Repositories All major firmware, software, and hardware information is provided in a single online software repository. This repository is located at:

https://github.com/likethepaint/WiFiMapper3D

The root directory contains several navigable folders. The first is the firmware folder which contains all relevant code and drivers for the CC3220MOD from Texas Instruments. This code can be loaded into Code Composer Studio for testing. The second folder contains all MATLAB scripts used to process the geospatial and WiFi signal strength data. The third folder contains the files for the COSMOS base station. These are the packet definitions and GUI templates. The last folder contains the KiCAD schematics and gerber files for the PCB.

Page 47: 3D Signal Strength Mapping of 2.4GHz WiFi Networks

47