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 2304 103 1025
AL 0 12082 160 610
AP 0 8 123 5
AR 0 7826 66 694
AS 0 0 4 15
AZ 0 20909 94 1931
CA 0 93729 394 8514
CO 0 18895 127 1407
CT 0 7370 22 315
DC 0 532 0 27
DE 0 1836 3 71
FL 0 44020 137 1779
GA 0 18911 152 933
GU 0 4 126 100
HI 0 2855 65 828
IA 0 6542 28 300
ID 0 9655 185 1144
IL 0 19633 256 728
IN 0 15826 74 551
KS 0 7233 44 369
KY 0 9737 98 501
LA 0 5966 108 361
MA 0 13319 21 798
MD 0 11174 41 401
ME 0 4229 13 540
MI 0 21144 405 749
MN 0 11578 70 439
MO 0 14450 872 759
MP 0 1 48 155
MS 0 4696 318 323
MT 0 3708 26 779
NC 0 22365 101 1369
ND 0 1451 49 124
NE 0 3755 18 182
NH 0 5456 24 531
NJ 0 13228 60 524
NM 0 5793 80 851
NV 0 8021 64 748
NY 0 26350 107 1590
OH 0 28128 110 818
OK 0 8630 1123 806
OR 0 19143 76 2187
PA 0 24601 125 900
PR 0 1647 2509 1309
RI 0 1942 2 85
SC 0 10216 122 477
SD 0 2058 38 140
TN 0 19935 57 932
TX 0 53109 372 3500
UT 0 17784 196 936
VA 0 20581 84 1157
VI 0 11 107 147
VT 0 1957 11 281
WA 0 31590 117 3477
WI 0 11527 46 395
WV 0 5570 129 708
WY 0 1933 14 419
Totals 0 736953 9924 51744