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 2274 116 1140
AL 0 11599 313 626
AP 0 2 121 7
AR 0 7516 148 701
AS 0 0 4 15
AZ 0 19879 378 1943
CA 0 96415 1044 9333
CO 0 18014 273 1398
CT 0 7355 62 315
DC 0 507 1 27
DE 0 1772 10 70
FL 0 42536 312 1837
GA 0 18024 646 961
GU 0 3 134 122
HI 0 2890 127 938
IA 0 6303 120 275
ID 0 8497 356 1115
IL 0 19560 357 753
IN 0 15192 362 555
KS 0 7063 95 381
KY 0 8904 475 528
LA 0 5897 134 387
MA 0 13198 42 812
MD 0 11104 70 425
ME 0 4125 41 544
MI 0 20733 489 723
MN 0 11446 100 411
MO 0 14088 930 782
MP 0 0 61 190
MS 0 4699 375 359
MT 0 3404 64 757
NC 0 21117 192 1390
ND 0 1439 50 135
NE 0 3611 97 180
NH 0 5205 62 517
NJ 0 13295 149 539
NM 0 5782 152 904
NV 0 7668 138 819
NY 0 26436 177 1659
OH 0 27575 374 815
OK 0 8306 1120 837
OR 0 18486 250 2278
PA 0 23682 452 875
PR 0 1142 2575 1274
RI 0 1938 6 92
SC 0 9592 255 490
SD 0 1866 49 143
TN 0 18267 432 909
TX 0 51086 928 3562
UT 0 17135 267 939
VA 0 19996 136 1189
VI 0 3 121 143
VT 0 1878 30 279
WA 0 30914 375 3525
WI 0 11057 181 409
WV 0 5199 387 769
WY 0 1708 48 399
Totals 0 717382 16763 53500