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 2275 117 1153
AL 0 11550 288 636
AP 0 2 127 7
AR 0 7451 140 708
AS 0 0 4 18
AZ 0 19596 354 1937
CA 0 96996 1028 9474
CO 0 17658 252 1363
CT 0 7354 58 318
DC 0 506 1 29
DE 0 1755 9 70
FL 0 42266 289 1860
GA 0 17955 628 977
GU 0 3 138 125
HI 0 2904 128 951
IA 0 6228 119 276
ID 0 8221 312 1096
IL 0 19430 350 745
IN 0 15093 335 545
KS 0 7033 91 368
KY 0 8851 453 531
LA 0 5862 125 388
MA 0 13151 39 795
MD 0 11025 63 424
ME 0 4100 40 545
MI 0 20585 472 718
MN 0 11390 96 408
MO 0 14059 895 776
MP 0 2 59 170
MS 0 4734 363 364
MT 0 3321 59 731
NC 0 20745 180 1372
ND 0 1432 48 136
NE 0 3606 99 184
NH 0 5156 59 508
NJ 0 13302 138 539
NM 0 5733 147 907
NV 0 7507 136 829
NY 0 26352 169 1654
OH 0 27427 351 820
OK 0 8295 1078 830
OR 0 18277 234 2286
PA 0 23527 447 860
PR 0 1119 2497 1251
RI 0 1953 6 89
SC 0 9502 240 493
SD 0 1821 48 142
TN 0 17985 393 902
TX 0 50853 830 3529
UT 0 16840 259 933
VA 0 19838 134 1180
VI 0 3 121 141
VT 0 1866 27 278
WA 0 30827 362 3500
WI 0 10999 166 407
WV 0 5203 417 803
WY 0 1680 47 396
Totals 0 713204 16065 53475