Amateur radio license map info

Welcome to my little spare time project. I've been working on this on and off for about a year as time and motivation allows.

This is more of an excuse to have some fun with Maps and Geocoding than anything else but it hopefully provides something interesting to play with. "Geocoding" means to convert physical addresses into longitude and latitude coordinates. Behind the scenes, this site has been slowly geocoding all active amateur radio addresses in the FCC license data. The FCC data includes all licenses which have a status of "active".

I've found it an interesting project with lots of little challenges. Some of this is because of the wide variation of population and therefore "ham density" throughout the country. I've had to balance that with performance issues both at the database query level and practical limitations of Google Maps. The data is also kind of messy with multiple licensees at one address and multiple addresses at the same location. This last issue is mostly due to spelling variations. In general, one marker appears on the map for each unique latitude / longitude point.

The performance / data quantity compromise I've come up with is that it searches within a 20 mile radius of the map center and has a limit of 200 location markers. The results are sorted by distance which means that the circle is complete until it hits the 200 markers. I haven't found a gridsquare that has more than 200 so if you center on a gridsquare, I think we always get all in that square.

The initial geocoding was done in bulk using Nominatim / OpenStreetMap. This succeeded in finding about half of all addresses. Then over a long period of time the rest were processed using Geocodio.

Geocoding continues using Geocodio at a rate of 125 per hour or a total of 2500 per day which keeps it within the free limit.  Every hour it selects 125 addresses from the database to geocode. These are chosen with the following priority.

  1. New addresses that have not be geocoded before.
  2. Those that previously succeeded on OpenStreetMap. Reprocessing these with Geocodio seems to be improving the results.
  3. Those that previously failed. Some now succeed because of better data.

A weekly import from the FCC usually happens early Wednesday morning eastern time. Only those stations with a status of "active" are retained. About 1000 addresses are added and deleted each week. Geocoding the new addresses is usually completed by late Wednesday.

Of course some addresses are PO Boxes and other mailing services. Addresses starting with "PO Box" are simply excluded. Also, many licensees are not active in the hobby. Be that as it may, it can be fun to play with the Street View feature of the maps to look for antennas.

Although I've only considered data from the USA, it's written in a generalized way so it can handle data from other countries but I'm not aware of any other countries who make their data publicly available.

It's built with Drupal 8. The code is all on Github here, here and here.

Anyway… I think it's pretty much "done" in terms of new features unless someone comes up with a good idea. I've probably spent way too much spare time on this already and it's time to get my antenna up again and do some QRP construction. Feedback is welcome. The easiest way is by email to tetranz (at) gmail.com

73
Ross  KT1F

Geocode report

StateNewSuccessfulNot FoundPO Box
AK 0 2285 103 1027
AL 0 12114 160 609
AP 0 8 125 5
AR 0 7824 74 693
AS 0 0 4 15
AZ 0 20890 92 1930
CA 0 93950 404 8552
CO 0 18912 127 1409
CT 0 7351 35 318
DC 0 531 0 27
DE 0 1838 3 71
FL 0 44051 135 1783
GA 0 18903 148 939
GU 0 4 126 102
HI 0 2860 64 833
IA 0 6543 29 299
ID 0 9632 182 1143
IL 0 19642 271 731
IN 0 15828 79 550
KS 0 7236 45 370
KY 0 9725 101 504
LA 0 5967 108 356
MA 0 13354 20 802
MD 0 11181 46 401
ME 0 4238 11 542
MI 0 21175 397 747
MN 0 11597 68 439
MO 0 14462 871 757
MP 0 1 48 155
MS 0 4704 319 324
MT 0 3716 25 783
NC 0 22403 102 1372
ND 0 1456 50 123
NE 0 3746 18 182
NH 0 5459 23 532
NJ 0 13248 61 523
NM 0 5806 80 855
NV 0 8030 64 750
NY 0 26389 104 1591
OH 0 28170 104 818
OK 0 8651 1120 810
OR 0 19163 75 2192
PA 0 24642 128 899
PR 0 1634 2511 1312
RI 0 1946 2 85
SC 0 10215 125 478
SD 0 2053 37 140
TN 0 19907 56 935
TX 0 53141 372 3495
UT 0 17779 199 943
VA 0 20594 84 1160
VI 0 11 107 148
VT 0 1959 11 281
WA 0 31629 119 3474
WI 0 11541 47 396
WV 0 5572 130 708
WY 0 1931 15 420
Totals 0 737597 9964 51838