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 2303 108 1009
AL 0 12092 174 608
AP 0 4 120 5
AR 0 7791 67 685
AS 0 0 4 15
AZ 0 20874 98 1921
CA 0 93048 390 8425
CO 0 18914 115 1399
CT 0 7326 21 310
DC 0 531 0 29
DE 0 1851 3 69
FL 0 44065 148 1772
GA 0 18927 162 921
GU 0 4 126 97
HI 0 2836 66 824
IA 0 6531 30 300
ID 0 9731 193 1140
IL 0 19607 257 718
IN 0 15818 76 554
KS 0 7257 35 366
KY 0 9746 101 502
LA 0 5976 104 352
MA 0 13299 22 805
MD 0 11134 33 395
ME 0 4214 11 539
MI 0 21130 393 754
MN 0 11567 62 439
MO 0 14357 882 749
MP 0 1 48 154
MS 0 4692 304 313
MT 0 3725 25 787
NC 0 22459 98 1365
ND 0 1468 32 122
NE 0 3730 19 186
NH 0 5471 25 529
NJ 0 13140 59 531
NM 0 5793 76 844
NV 0 8030 60 732
NY 0 26289 107 1575
OH 0 28044 117 819
OK 0 8610 1133 813
OR 0 19133 75 2179
PA 0 24624 121 906
PR 0 1710 2473 1303
RI 0 1956 2 86
SC 0 10296 125 480
SD 0 2062 36 138
TN 0 20015 62 935
TX 0 53076 378 3489
UT 0 17813 197 936
VA 0 20585 83 1157
VI 0 11 106 145
VT 0 1953 9 278
WA 0 31543 119 3439
WI 0 11512 48 399
WV 0 5575 122 702
WY 0 1933 13 418
Totals 0 736182 9873 51462