1. Abstract

This document describes preliminary spectrum occupancy measurements performed at Arclabs, Carriganore, Waterford, Ireland. The measurements took place from May through September 12, 2011. Measurements were taken at frequencies from 30MHz to 1000MHz. The measurements were split up into well known bands [COMREG0890R2] [SSC2007]. Each band was measured for one week. This study PDFattempts to determine what frequency bands have low utilisation (i.e. White Spaces) and potentially points towards further investigations that may reveal candidate frequency bands for spectrum sharing.

2. Introduction

The production of wireless devices is increasing rapidly. People are switching to wireless mice, keyboards, headsets, and many more. Wireless Internet connections are becoming increasingly popular. Devices such as GPS navigators and smart phones are getting cheaper and more plentiful. Not only are the amount of these devices increasing rapidly, but the amount of data being transferred by them is increasing. The result of all this is that the Radio Frequency (RF) spectrum is getting more crowded and at an ever increasing rate. At the moment the allocation standards for RF spectrum is highly inefficient. Devices are only assigned specific frequencies, but the time domain is not taken into account, this means that some bands of spectrum are unoccupied for most of the time. It would be highly beneficial for the future if the allocation process of RF spectrum took other factors into account, not just the frequency domain [CAVE2011]. The current trend cannot continue indefinitely.

This report details some spectrum occupancy measurements conducted at the ArcLabs Research & Innovation Building, West Campus, Waterford Institute of Technology, Carriganore, County Waterford from May through to September 2011.

Fig 1 shows views from the measurement site. With the N25 just visible above the roof line in the first picture.

View from Measurement Site View from Measurement Site

2.1. Measurement Goals

The main goal was to compile a weeks worth of spectrum data for each RF band analyzed, in the 30MHz to 1000MHz range. This preliminary work has provided a starting point for future surveys to be conducted.

The following information being determined:

  • Background noise level.

  • Utilization levels of the RF bands.

  • Spectrum gap widths.

  • Spectrum gap durations.

And, potentially, an insight into how fully the spectrum is being used.

3. Measurement Equipment

3.1. Equipment Description

The equipment used for measurement in this study consisted of a Tektronix SA2600 Spectrum Analyzer [SA2600], a Discone antenna (Diamond D-130J), a virtual machine and a desktop computer. The Discone antenna was used to measure signals between 25MHz and 1Ghz. LMR-400 COAX cable was used to connect the Discone to the Spectrum Analyzer. The virtual machine and desktop computer were used to post-process the data.

Test data was collected for a period of time to identify strong signals that could overload the Spectrum analyzer. Potential sources included an Amateur Radio UHF Voice Repeater, on 433.275Mhz, and Amateur Radio VHF Digital Repeater on 144.800Mhz, both at Carraigpherish, approximately 2.5 kilometers away. Also, a pager system operating at Gracedieu, approximately 4 kilometers away.

3.2. Measurement Location

The measurements are being taken at the point marked TSSG on the map. The Amateur Voice Repeater and Digital Repeater are at the location marked Carrickpherish Mast. The pager system is the third location marked Gracedieu Mast. It is clear that the measurements were taken in a suburban area approximately 5km from the centre of Waterford City.

MAP

3.3. Data Collection

Data was collected from 30MHz to 1000MHz. The data was divided into 15 bands, similarly to [SSC2007]. One week of data was collected for each band. Long duration measurements began on April 25, 2011 and finished September 12, 2011. One week of data was collected for each band. We deemed this a reasonable length of time to get a more detailed picture of the activity in a band.

In March 2011, whilst we were preparing for the tests. Tektronix [TEK] (through the equipment supplier [IMEX]) provided us with a beta firmware which allowed us to analyze a chunk of spectrum wider than 20Mhz. This greatly simplified our work. Scripts were written which instructed the spectrum analyzer to record max-hold data for one minute for the desired RF band, and, when the minute was up, the script instructed the max hold data to be placed in a Comma-Separated Value (CSV) [RFC4180] file and saved to a specific location on the computer. The script looped 10080 times (60 x 24 x 7), to give a full weeks worth of data.

The table below shows the SA2600 settings as reported in the data files. Estimated COAX loss has also been included in this table. The data presented is as measured by the spectrum analyzer, and not corrected for COAX loss.

Start Freq. (MHz)

Stop Freq. (MHz)

RBW (kHz)

Attenuation (dB)

Ref Level (dBm)

Estimated Coax Loss

30

54

0.711

30

0

1.5 (54MHz)

54

88

0.711

30

0

1.9 (88MHz)

108

138

0.711

30

0

2.4 (138MHz)

138

174

0.711

30

0

2.8 (174MHz)

174

216

0.711

30

0

3.1 (216MHz)

216

225

0.711

30

0

3.1 (225MHz)

225

406

0.711

30

0

4.3 (406MHz)

406

470

0.711

30

0

4.6 (470MHz)

470

512

0.711

30

0

4.8 (512MHz)

512

608

0.711

30

0

5.3 (608MHz)

608

698

0.711

30

0

5.7 (698MHz)

698

806

0.711

30

0

6.1 (806MHz)

806

902

0.711

30

0

6.5 (902MHz)

902

928

0.711

30

0

6.6 (928MHz)

928

1000

0.711

30

0

6.9 (1000MHz)

The Coaxial cable used was LMR-400 with a length from the Antenna to the SA2600 spectrum analyzer of 50.6m (166feet).

4. Data Processing

4.1. Introduction

This section describes the steps taken to produce the spectrum occupancy graphs and values.

The open source, cross-platform numerical computational package Scilab [SCILAB] was used for all processing after completing Step 1.

4.2. Step 1 - Generate Raw CSV files

The SA2600 Command Macro Tool Software interface was used to send instructions to the SA2600. A script was written which instructed the spectrum analyzer to record from a specified lower frequency to a specified upper frequency (frequency band), and the duration of this this analysis was a full week. For each minute in the week, the script instructed the SA2600 to save the max hold values of the frequency band in a CSV file. Once the values were saved, the max hold values were reset so that the next minute of max hold values could be obtained.

The end result of running this script for a week is 10080 (60 x 24 x 7) new CSV files, each containing one minutes worth of data.

4.3. Step 2 - Clean up CSV files

As the CSV files produced by the spectrum analyzer had more data than just the max hold values, including spectrum analyzer settings and other information, they had to be stripped of this extra information for efficient processing.

This was a simple step as all of the CSV files had exactly the same structure, and they all contained 501 values which corresponded to a max hold value in dBm from the lowest to highest frequency in the band of interest. The script was basically a loop, which picked out these 501 values and saved them to a new CSV file. This was done for all 10080 files for each band analyzed.

At this point the newly generated CSV files contained no extraneous data except the values of interest, which simplified the process and shortened further processing times.

4.4. Step 3 - Generate Matrix of data

A script was written which does the following:

  • A matrix of zeros, of dimensions 10080 x 501 is created.

  • A loop that goes from 1 to the number of samples (10080) is used to pick out the data from each CSV file.

  • This data is then placed in the appropriate row in the matrix.

Each row in the matrix now contained one minutes worth of max hold data from the saved CSV files.

All the data for the week of analysis was now conveniently stored in a matrix rather than thousands of files.

4.5. Step 4 - Calculate average noise floor

The signal to noise ratio in a receiver is the signal power divided by the average noise power in the receiver. In order for a receiver to detect a signal the signal must exceed a threshold. In this work we first initially looked for an average for the entire matrix of values. We extracted the minimum and maximum signal levels, and began a successive approximation in the search for the noise floor. 3dbm was added to this value and used this was used as the threshold for signal detection. This method appears to have given a reasonable estimate for the noise floor.

4.6. Step 5 - Data compression

Without this step the waterfall plot would have to assign a colour to every unique value in the matrix. This would have taken quiet some time for no obvious benefit, as there is not enough resolution in the plot area to display all this detail. This script calculates a compression factor which is used to compresses the data such that it retains as much detail as possible with minimum processing time. For example a compression factor of 2 will take every two rows of data in the matrix of data, and get the highest of these two rows and put this into a new matrix (i.e. performing a logical AND of max-hold values), it will do this for row 3 and 4, row 5 and 6, and so on, thus the sizes of the matrix is divided by two. Consequently, the amount of values to be assigned a colour in the waterfall plot is divided by two.

The compression factor that is used for the waterfall plots in this report is 30. The result of this is a waterfall plot displaying max hold data for every 30 minute interval over a week.

4.7. Step 6 - Generate max-hold values

In order to get the max hold data for the entire set of data, a script was written which does the following. The first minute of max hold data is saved in a max hold data array, a for loop then steps through each of the remaining sets of data for each minute, on encountering a value that exceeds the current value, replaces the current value with the new value.

When finished, the max hold array holds the 501 max hold values of the frequencies for the entire weeks worth of data. This data was then used to generate the max hold plot later.

4.8. Step 7 - Generate duty-cycle values

A script was written which does the following. A duty cycle array of 501 zeros is created. A for loop then, steps through each set of data for each minute, where the value in the array exceeds the calculated threshold (noise floor), adds the value 1 to the duty cycle array in the position corresponding to the particular frequency that has exceeded the threshold. The script then divides the duty cycle array by the number of minutes of data (10080 in this case), to obtain the fraction of time that each frequency exceeded the threshold. After this step the duty cycle array holds the 501 duty cycle values of the frequencies for the entire weeks worth of data. This data was used to generate the duty cycle plot later.

4.9. Step 8 - Calculation of percentage occupancy

The script simply gets the average of the duty cycle array (described in the previous section) and divides that by the number of samples of data we have (10080 for the weeks worth of data), then multiplies this value by 100 and this yields the average percentage of spectrum occupancy over time and frequency. Thus an average percentage of spectrum occupancy for the week is obtained.

4.10. Stage 9 - Generation of final plots

In all of the plots the x-axis represents frequency, so an array (x) is created, containing values from the lowest to the highest frequency, the values are linearly spaced, and there is 501 values in x, as this is the number of data values that each minute of data contains. Next an array (y) is created and serves as the y-axis for the waterfall plot. The amount of rows of data in the matrix containing the waterfall plot information determines the values on the y-axis(time). However the compression factor (30) will have altered the amount of rows in the matrix and thus each row now represents 30 minute. The y-axis array is a linear array between zero and the max time, containing 10080/(compress factor) amount of values. Next the colour gradient for the waterfall plot is defined. No colour gradient existed in Scilab that would represent the spectrum to our satisfaction, so one was generated. The legend contains a white section which represents values that fall below the threshold, and a coloured section which is used to visually indicate just how much the signal exceeded the detection threshold. The coloured section of the legend was fully red at the top (strongest signal), and the amount of red dropped off linearly to zero by the mid point. The bottom section of the legend was fully blue, and the amount of blue dropped off linearly to zero by the mid point of the coloured section of the legend. The very centre of the coloured section of the colour bar was fully green, the amount of green in the legend dropped of linearly to zero in both directions from the centre, and reached zero at the midpoint between the centre and each end of the legend. The script then plots the legend in the appropriate position.

The waterfall plot is then generated including its titles and axis labels, these are then set to the preferred font size and style. Next the duty cycle plot is produced, which is simply a line plot of the duty cycle array (discussed in Step 7 above). The max hold plot is produced, which is just a line plot of the max hold array(discussed in Step 6 above).

Finally a graphic with the three desired plots for the study are saved as an image in a selected folder.

5. Spectrum Occupancy Measurements

This section contains the plots of our spectrum occupancy measurements

5.1. Plot description

5.1.1. Max Hold Plot

This plot represents the maximum power value measured for each frequency (i.e. max hold) during the measurement period. The red dashed line running across the Max Hold plot indicates the detection threshold for this particular band of frequencies. The method for obtaining the threshold is described in the Step 4 - Calculate average noise floor.

5.1.2. Waterfall Plots

This plot shows the variation in spectrum occupancy over frequency and time. A frequency is considered occupied when the power measured for that frequency exceeds a specified threshold. The threshold for detection has to be sufficiently high such that there is a low probability that noise will be detected as a signal, it also has to be sufficiently low such that there is a high probability that all signals will be detected.

In order to have a high probability of detecting signals and a low probability of detecting noise as a signal, 3 dBm was added to the average value of the noise and this was set as the detection threshold for each band analyzed. This is used for all the measurements. From visually inspecting the max hold graphs, it is apparent that the threshold value is very close to the peak noise values, very small signals are noticed (This is apparent when observing the 54MHz to 88MHz plots), the probability of detecting noise as a signal is very low (less than 1% in most cases), which can be seen from looking at the duty cycle graphs.

5.1.3. Duty Cycle Plots

The Duty Cycle plots show the fraction of time that the particular frequency is above the specified threshold, i.e. the fraction of time that each frequency is considered occupied. If the fraction of time is 1, then the signal was on for the entire period of measurement.

5.2. 30MHz to 54MHz

  • Data collected from 25th April 2011 11:48 to 2nd May 2011 12:00.

  • Spectrum Occupancy = 0.19%

  • Threshold = -82.52 dBm

30MHz to 54MHz

5.3. 54MHz to 88MHz

  • Data collected from Monday 18th April 2011 10:13 to Monday 25th April 2011 10:26

  • Spectrum Occupancy = 0.84%

  • Threshold = -83.15 dBm

54MHz to 88MHz

5.4. 108MHz to 138MHz

  • Data collected from Wednesday 17th July August 2011 12:13 to Tuesday 24th August 2011 12:24

  • Spectrum Occupancy = 0.58%

  • Threshold = -82.57

108MHz to 138MHz

5.5. 138MHz to 174MHz

  • Data collected from Tuesday 22th July 2011 12:27 to Tuesday 29th July 2011 12:39

  • Spectrum Occupancy = 1.10%

  • Threshold = -82.43

138MHz to 174MHz

5.6. 174MHz to 216MHz

  • Data collected from Tuesday 3rd May 2011 10:57 to Tuesday 10th May 2011 11:10

  • Spectrum Occupancy = 3.87%

  • Threshold = -82.48

174MHz to 216MHz

5.7. 216MHz to 225MHz

  • Data collected from Monday 5th September 2011 19:49 to Monday 12th September 2011 19:57

  • Spectrum Occupancy = 1.03%

  • Threshold = -81.20

216MHz to 225MHz

5.8. 225MHz to 406MHz

  • Data collected from Tuesday 10th May 2011 11:44 to Tuesday 17th May 2011 11:57

  • Spectrum Occupancy = 0.93%

  • Threshold = -81.27 dBm

225MHz to 406MHz

5.9. 406MHz to 470MHz

  • Data collected from Friday 29th July 2011 18:17 to Friday 5th August 2011 18:58

  • Spectrum Occupancy = 0.26%

  • Threshold = -79.80 dBm

406MHz to 470MHz

5.10. 470MHz to 512MHz

  • Data collected from Friday 11th July 2011 09:40 to Friday 18th July 2011 09:48

  • Spectrum Occupancy = 0.39%

  • Threshold = -79.37 dBm

470MHz to 512MHz

5.11. 512MHz to 608MHz

  • Data collected from Tuesday 24th May 2011 14:14 to Tuesday 31th August 2011 14:32

  • Spectrum Occupancy = 0.02%

  • Threshold = -78.88 dBm

512MHz to 608MHz

5.12. 608MHz to 698MHz

  • Data collected from Monday 27th June 2011 10:16 to Monday 4th July 2011 10:26

  • Spectrum Occupancy = 0.17%

  • Threshold = -78.47 dBm

698MHz to 806MHz

5.13. 698MHz to 806MHz

  • Data collected from 15:51 Tuesday 10th May 2011 to 16:19 Tuesday 17th May 2011.

  • Spectrum Occupancy = 0.56%

  • Threshold = -78.90 dBm

698MHz to 806MHz

5.14. 806MHz to 902MHz

  • Data collected from Tuesday 17th May 2011 12:34 to Tuesday 24th May 2011 12:47

  • Spectrum Occupancy = 0.40%

  • Threshold = -79.15 dBm

806MHz to 902MHz

5.15. 902MHz to 928MHz

  • Data collected from Tuesday 31st May 2011 14:36 to Tuesday 7th June 14:54 2011.

  • Spectrum Occupancy = 0.19%

  • Threshold = -78.91 dBm

902MHz to 928MHz

5.16. 928MHz to 1000MHz

  • Data collected from Tuesday 7th June 2011 15:20 to Tuesday 14th June 15:37 2011.

  • Spectrum Occupancy = 4.08%

  • Threshold = -78.47 dBm

928MHz to 1000MHz

6. Conclusion

This document describes spectrum occupancy measurements preformed at Arclabs, Carriganore, Waterford, Ireland from April 11th through September 12, 2011. Measurements were made in all bands in the 30 MHz to 1000 MHz range. All data from this experiments are available, please contact the authors at the email address at the top of this document.

6.1. Strong signals or Potential Overload

As mentioned in Section 3.1. There is visible strong signals on 144.800MHz, this is due in part to a Digital Repeater approximately 2.5km away, but also to the transceiver in the vehicle of one of the Authors. There are a few instances where this transceiver may have caused overload on the spectrum analyzer (i.e. as the vehicle passed in the morning or evening -10.9dBm).

6.2. Spectrum Occupancy Upper Bounds

Based on the results of the study, we conclude that the average spectrum usage during the measurement period was 1.05%. Occupancy varied from less than 0.02% to 4.08% in the measurement area as shown in the Table and bar graph below.

6.3. Summary

ArcLabs is situated approximately 5 kilometers from the centre of Waterford City, Irelands 5th Largest City. In the spectrum examined. Overall spectrum occupancy Spectrum occupancy is very low at Arclabs, Carriganore, Waterford, Ireland.

6.4. Percentage Spectrum Occupancy Bar Chart

Summary of Spectrum Band Occupancy Calculations

Start Freq. (MHz)

Stop Freq. (MHz)

Span (MHz)

Spectrum Band Alloc.

Spectrum Fraction Used

Occupied Spectrum (MHZ)

Average % Occupied

30

54

24

Amateur, Others

0.1662

0.03989

0.17

54

88

34

TV, RC

0.883689

0.2856

0.84

108

138

30

Aeronautical

0.0058

0.175

0.58

138

174

36

Aeronautical

0.0110

0.395

1.09

174

216

42

TV

.038695823

1.6254

3.87

216

225

9

Broadcasting

0.0102826

0.093

1.03

225

406

181

Fixed Mobile, Aero, others

.009308367

1.6833

0.93

406

470

64

Amateur, Fixed, Mobile, Radiolocation

.0026158

0.1664

0.26

470

512

42

Broadcasting

.0038776

0.1629

0.388

512

608

96

Broadcasting

.000178413

0.0192

0.02

608

698

90

Broadcasting

.001686508

0.153

0.17

698

806

108

Broadcasting

.005630406

0.6048

0.56

806

902

96

Broadcasting

.004011422

0.384

0.40

902

928

26

GSM, Land Mobile

.001852644

0.0494

0.19

928

1000

72

Broadcasting

.040795195

2.9376

4.08

7. Acknowledgements

The authors would like to thank Patrick Connally of IMEX Systems Limited [IMEX], Li Cui of Tektronix in the USA [TEK], Dr David Malone of NUIM, and Brendan Minish of Westnet Networks, for their invaluable assistance in the preparation of this report. This project was partly funded by the HEA Research Facilities Enhancement Scheme 2008.

Structural Funds HEA Logo DES Logo TSSG Logo WIT Logo

References