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 2257 118 1145
AL 0 11587 306 631
AP 0 2 120 7
AR 0 7500 147 700
AS 0 0 4 17
AZ 0 19836 368 1949
CA 0 96429 1037 9377
CO 0 17954 271 1394
CT 0 7351 62 315
DC 0 507 1 27
DE 0 1771 9 71
FL 0 42419 308 1839
GA 0 18034 647 961
GU 0 3 134 121
HI 0 2886 127 938
IA 0 6286 122 275
ID 0 8467 344 1108
IL 0 19536 359 752
IN 0 15156 355 555
KS 0 7063 92 376
KY 0 8900 475 529
LA 0 5898 131 388
MA 0 13173 42 801
MD 0 11083 69 423
ME 0 4123 39 543
MI 0 20704 485 726
MN 0 11438 99 412
MO 0 14093 930 782
MP 0 1 58 189
MS 0 4694 375 361
MT 0 3392 62 754
NC 0 21029 190 1382
ND 0 1436 49 135
NE 0 3609 98 181
NH 0 5189 61 513
NJ 0 13282 144 537
NM 0 5753 151 904
NV 0 7653 140 826
NY 0 26415 178 1655
OH 0 27508 365 819
OK 0 8324 1109 832
OR 0 18432 243 2279
PA 0 23652 451 870
PR 0 1138 2546 1268
RI 0 1939 6 91
SC 0 9557 252 490
SD 0 1850 49 143
TN 0 18226 422 899
TX 0 50991 904 3560
UT 0 17065 263 937
VA 0 19930 136 1191
VI 0 3 121 144
VT 0 1872 30 279
WA 0 30846 372 3515
WI 0 11021 179 405
WV 0 5197 397 775
WY 0 1705 48 398
Totals 0 716165 16600 53494