new bands.pl and Spot deduping
[spider.git] / data / bands.pl
index c394f390a544479ef2afa4d7d98bd2095dae4002..dfaef05359a452eda59bff6d6250aace416837e8 100644 (file)
 # these pairs attach themselves to the labels you provide, they are
 # independant of any other pair, they can overlap, cross etc. 
 #
-# There MUST be at last a 'band' entry
+# There MUST be at least a 'band' entry
 #
 # It is up to YOU to make sure that it makes sense!
+#
+# ALL the labels MUST BE in lower case.
 # 
+# Band names change (or I got them wrong in the first place), DO NOT CHANGE THE BAND NAMES
+# THAT I USED. If you do then expect to get complaints. Instead just alias them to what 
+# you think they should be in the section below %bands.
+#
+# WARNING: if aliasing, the band alias must be declared AFTER the original.
+#
+# See '550khz' and '630m' as an exemplar.
+# 
+
 
 %bands = (
-  '160m' => bless( { band => [ 1800, 2000 ], 
-                     cw => [ 1800, 1830 ], 
-                     rtty => [ 1838, 1841 ], 
-                     ssb => [ 1831, 2000] 
-                   }, 'Bands'),
-
-  '80m' => bless( { band => [ 3500, 4000 ], 
-                    cw => [ 3500, 3600 ], 
-                    data => [ 3590, 3600 ], 
-                    sstv => [ 3730, 3740 ], 
-                    ssb => [ 3601, 4000 ]  
-                  }, 'Bands'),
-
-  '40m' => bless( { band => [ 7000, 7400 ], 
-                    cw => [ 7000, 7050 ], 
-                    cw => [ 7000, 7050 ], 
-                    ssb => [ 7051, 7400 ] 
-                  }, 'Bands'),
-
-  '30m' => bless( { band => [ 10100, 10150 ], 
-                    cw => [ 10000, 10140 ], 
-                    data => [ 10141, 10150 ] 
-                  }, 'Bands'),
-
-  '20m' => bless( { band => [ 14000, 14350 ], 
-                    cw => [ 14000, 14100 ], 
-                    ssb => [ 14101, 14350 ], 
-                    beacon => [ 14099, 14100 ],
-                    sstv => [ 14225, 14235 ],
-                    data => [ 14070, 14098, 14101, 14111 ],
-                  }, 'Bands'),
-
-  '18m' => bless( { band => [ 18068, 18168 ], 
-                    cw => [ 18068, 18100 ], 
-                    ssb => [ 18111, 18168 ], 
-                    data => [ 18101, 18108], 
-                    beacon => [ 18109, 18110] 
-                  }, 'Bands'),
-
-  '15m' => bless( { band => [ 21000, 21450 ], 
-                    cw => [ 21000, 21150 ], 
-                    data => [ 21100, 21120 ], 
-                    ssb => [ 21151, 21450] 
-                  }, 'Bands'),
-
-  '12m' => bless( { band => [ 21000, 21450 ], 
-                    cw => [ 21000, 21150 ], 
-                    data => [ 21100, 21120 ], 
-                    ssb => [ 21151, 21450] 
-                  }, 'Bands'),
-
-
-  '10m' => bless( { band => [ 28000, 29700 ], 
-                    cw => [ 28000, 28198 ], 
-                    data => [ 28120, 28150, 29200, 29300 ], 
-                    space => [ 29200, 29300 ],
-                    ssb => [ 28201, 29299, 29550, 29700] 
-                  }, 'Bands'),
-
-   '6m' => bless( { band => [50000, 52000],
-                    cw => [50000, 50100],
-                    ssb => [50100, 50500],
-                  }, 'Bands'),
-
-   '4m' => bless( { band => [70000, 70500],
-                    cw => [70030, 70250],
-                    ssb => [70030, 70250],
-                  }, 'Bands'),
-
-   '2m' => bless( { band => [144000, 148000],
-                    cw => [144000, 144150],
-                    ssb => [144150, 144500]
-                  }, 'Bands'),
-
-   '220' => bless( { band => [220000, 222000],
-                  }, 'Bands'),
-
-   '70cm' => bless( { band => [430000, 450000],
-                      cw => [432000, 432150],
-                      ssb => [432150, 432500],
-                    }, 'Bands'),
-
-   '23cm' => bless( { band => [ 1240000, 1325000],
-                      cw => [1296000, 1296150],
-                      ssb => [1296150, 1296800],
-                    }, 'Bands'),
-
-   '13cm' => bless( { band => [2310000, 2450000],
-                      cw => [2320100, 2320150],
-                      ssb => [2320150, 2320800],
-                    }, 'Bands'),
-
-   '9cm' => bless( { band => [3400000, 3475000],
-                     cw => [3400000, 3402000],
-                     ssb => [3400000, 3402000],
-                    }, 'Bands'),
-
-   '6cm' => bless( { band => [5650000, 5850000],
-                     cw => [5668000, 5670000, 5760000, 5762000],
-                     ssb => [5668000, 5670000, 5760000, 5762000],
-                   }, 'Bands'),
-
-   '3cm' => bless( { band => [10000000, 10500000],
-                     cw => [10368000,10370000, 10450000, 10452000],
-                     ssb => [10368000,10370000, 10450000, 10452000],
-                   }, 'Bands'),
-
-   '12mm' => bless( { band => [24000000, 24250000],
-                      cw => [24048000, 24050000],
-                      ssb => [24048000, 24050000],
-                    }, 'Bands'),
+                 '73khz' => bless ( { band => [71, 75],
+                                                        }, 'Bands'),
+                     
+                 '136khz' => bless ( { band => [135, 138],
+                                                         }, 'Bands'),
+
+                 '500khz' => bless ( { band => [472, 479],
+                                                         }, 'Bands'),
+
+                 '160m' => bless( { band => [ 1800, 2000 ], 
+                                                        cw => [ 1800, 1840 ], 
+                                                        rtty => [ 1838, 1841 ],
+                                                        data => [ 1838, 1843],
+                                                        ssb => [ 1831, 2000] 
+                                                  }, 'Bands'),
+
+                 '80m' => bless( { band => [ 3500, 4000 ], 
+                                                       cw => [ 3500, 3600 ], 
+                                                       data => [ 3570, 3619 ], 
+                                                       rtty => [ 3580, 3619 ], 
+                                                       sstv => [ 3730, 3740 ], 
+                                                       ssb => [ 3601, 4000 ]  
+                                                 }, 'Bands'),
+
+                 '60m' => bless( { band => [ 5100, 5410],
+                                                       ssb => [5300, 5410],
+                               }, 'Bands' ),
+
+                 '40m' => bless( { band => [ 7000, 7300 ], 
+                                                       cw => [ 7000, 7040 ],
+                                                       data => [ 7040, 7100],
+                                                       rtty => [ 7040, 7060],
+                                                       ssb => [ 7050, 7300 ]
+                                                 }, 'Bands'),
+
+                 '30m' => bless( { band => [ 10100, 10150 ], 
+                                                       cw => [ 10000, 10140 ], 
+                                                       data => [ 10141, 10149 ] ,
+                                                       rtty => [ 10141, 10149 ] 
+                                                 }, 'Bands'),
+                 
+                 '20m' => bless( { band => [ 14000, 14350 ], 
+                                                       cw => [ 14000, 14100 ], 
+                                                       ssb => [ 14101, 14350 ], 
+                                                       beacon => [ 14099, 14100 ],
+                                                       sstv => [ 14225, 14235 ],
+                                                       data => [ 14070, 14098, 14101, 14111 ],
+                                                       rtty => [ 14070, 14098, 14101, 14111 ],
+                                                 }, 'Bands'),
+
+                 '17m' => bless( { band => [ 18068, 18168 ], 
+                                                       cw => [ 18068, 18100 ], 
+                                                       ssb => [ 18111, 18168 ], 
+                                                       data => [ 18101, 18108], 
+                                                       rtty => [ 18101, 18108], 
+                                                       beacon => [ 18109, 18110] 
+                                                 }, 'Bands'),
+
+                 '15m' => bless( { band => [ 21000, 21450 ], 
+                                                       cw => [ 21000, 21150 ], 
+                                                       data => [ 21070, 21119 ], 
+                                                       rtty => [ 21070, 21119 ], 
+                                                       ssb => [ 21151, 21450] 
+                                                 }, 'Bands'),
+
+                 '12m' => bless( { band => [ 24890, 24990 ], 
+                                                       cw => [ 24890, 24930 ], 
+                                                       ssb => [ 24931, 24990], 
+                                                       rtty => [ 24920, 24929], 
+                                                       data => [ 24920, 24929], 
+                                                 }, 'Bands'),
+
+
+                 '10m' => bless( { band => [ 28000, 29700 ], 
+                                                       cw => [ 28000, 28198 ], 
+                                                       data => [ 28050, 28149, 29200, 29299 ], 
+                                                       rtty => [ 28050, 28149 ], 
+                                                       space => [ 29200, 29300 ],
+                                                       ssb => [ 28201, 29299, 29550, 29700] 
+                                                 }, 'Bands'),
+
+                 '8m' => bless( { band => [40000, 42000],
+                                                }, 'Bands'),
+
+                  '6m' => bless( { band => [50000, 54000],
+                                                  cw => [50000, 50100],
+                                                  ssb => [50100, 50400],
+                                                  data => [50300, 50500],
+                                                }, 'Bands'),
+
+                  '5m' => bless( { band => [60000, 62000],
+                                                }, 'Bands'),
+# 5m band General allocation in Ireland only, with Denmark and UK with beacons
+
+                 '4m' => bless( { band => [69887, 71500],
+                                                  cw => [70000, 70250],
+                                                  ssb => [70100, 70250],
+                                                }, 'Bands'),
+# Denmark down to 69.8875. UK NoV operation up to 71.500
+
+                 '2m' => bless( { band => [144000, 148000],
+                                                  cw => [144000, 144150],
+                                                  ssb => [144150, 144400]
+                                                }, 'Bands'),
+
+#Little real CW and SSB differentiation above 2m so remove CW and SSB filters
+
+                 '220' => bless( { band => [220000, 224000],
+                                                 }, 'Bands'),
+
+                 '70cm' => bless( { band => [420000, 450000],
+                                                  }, 'Bands'),
+
+#70cm starts at 420 MHz and extends to 450 MHz in Region 2
+
+                  '902' => bless( { band => [902000, 928000],
+                                                  }, 'Bands'),
+
+                 '23cm' => bless( { band => [ 1240000, 1300000],
+                                                  }, 'Bands'),
+
+                 '13cm' => bless( { band => [2300000, 2450000],
+                                                  }, 'Bands'),
+
+                 '9cm' => bless( { band => [3300000, 3500000],
+                                                 }, 'Bands'),
+#9cm extends to 3500 MHz in Region 2 and starts at 3300 MHz in Region 3
+
+                 '6cm' => bless( { band => [5650000, 5925000],
+                                                 }, 'Bands'),
+#6cm extends to 5925 MHz in Region 2 and 3
+
+                 '3cm' => bless( { band => [10000000, 10500000],
+                                                 }, 'Bands'),
+
+#Bands above 10 GHz normally referred to by Frequency so make 24G, 47G, 76G etc
+
+                 '12mm' => bless( { band => [24000000, 24250000],
+                                                  }, 'Bands'),
     
-   '6mm' => bless( { band => [47000000, 47200000],
-                     cw => [47087000, 47089000],
-                     ssb => [47087000, 47089000],
-                  }, 'Bands'),
+                 '6mm' => bless( { band => [47000000, 47200000],
+                                                 }, 'Bands'),
+
+                 '4mm' => bless( { band => [75500000, 81500000], 
+                                                 }, 'Bands'), 
+
+                 '122g' => bless( { band => [122250000, 123000000], 
+                                                 }, 'Bands'), 
+
+                 '134g' => bless( { band => [134000000, 141000000], 
+                                                 }, 'Bands'), 
 
-   'band1' => bless ( { band => [47000, 68000],
-                      }, 'Bands'),
+                 '248g' => bless( { band => [241000000, 250000000], 
+                                                 }, 'Bands'), 
+
+
+
+                 'band1' => bless ( { band => [47000, 49999, 52000, 68000],
+                                                        }, 'Bands'),
                      
-   'band2' => bless ( { band => [87500, 108000],
-                      }, 'Bands'),
+                 'band2' => bless ( { band => [87500, 108000],
+                                                        }, 'Bands'),
                      
-   'band3' => bless ( { band => [176000, 230000],
-                      }, 'Bands'),
+                 'band3' => bless ( { band => [176000, 230000],
+                                                        }, 'Bands'),
                      
-   'band4' => bless ( { band => [471000, 550000],
-                      }, 'Bands'),
+                 'band4' => bless ( { band => [471000, 550000],
+                                                        }, 'Bands'),
                      
-   'band5' => bless ( { band => [550000, 868000],
-                      }, 'Bands'),
+                 'band5' => bless ( { band => [550000, 868000],
+                                                        }, 'Bands'),
 
-   'military' => bless ( { band => [29700, 50000, 230000, 420000],
-                    }, 'Bands'),
+                 'military' => bless ( { band => [29700, 50000, 230000, 420000],
+                                                               }, 'Bands'),
                    
-   'aircraft' => bless ( { band => [108000, 137500],
-                      }, 'Bands'),
+                 'aircraft' => bless ( { band => [108000, 137500],
+                                                               }, 'Bands'),
    
-   'pmrlow' => bless ( { band => [68000, 87500],
-                      }, 'Bands'),
+                 'pmrlow' => bless ( { band => [68000, 87500],
+                                                         }, 'Bands'),
                      
-   'pmrmid' => bless ( { band => [138000, 165000],
-                      }, 'Bands'),
+                 'pmrmid' => bless ( { band => [138000, 165000],
+                                                         }, 'Bands'),
 
-   'pmrhigh' => bless ( { band => [165000, 174000],
-                      }, 'Bands'),
+                 'pmrhigh' => bless ( { band => [165000, 174000],
+                                                          }, 'Bands'),
+
+                 'pmruhf' => bless ( { band => [425000, 430000, 440000, 471000],
+                                                         }, 'Bands'),
+                  hf => bless ( { band => [1800, 29999], }, 'Bands'), 
+                  vhf => bless ( { band => [30000, 299999], }, 'Bands'), 
+                );
+
+#
+# fix up some aliases
+#
+
+$bands{'630m'} = $bands{'500khz'};
+$bands{'24g'} = $bands{'12mm'};
+$bands{'47g'} = $bands{'6mm'};
+$bands{'76g'} = $bands{'4mm'};
 
-   'pmruhf' => bless ( { band => [425000, 430000, 440000, 471000],
-                      }, 'Bands'),
-);
 
 #
 # the list of regions
 #
 
 %regions = (
-  hf => [ '160m', '80m', '40m', '30m', '20m', '17m', '15m', '12m', '10m' ],
-  vhf => [ '6m', '4m', '2m', '220' ],
-  vhfradio => [ 'band1', 'band2' ],
-  vhftv => [ 'band1', 'band3' ],
-  uhf => [ '70cm', '23cm' ],
-  uhftv => [ 'band4', 'band5' ],
-  shf => [ '23cm', '13cm', '9cm', '6cm', '3cm' ],
-  pmr => [ 'pmrlow', 'pmrmid', 'pmrhigh', 'pmruhf' ],
-);  
+                       vlf => [qw( 73khz 136khz 630m )],
+                       hf => [qw( 160m 80m 60m 40m 30m 20m 17m 15m 12m 10m )],
+                       contesthf => [qw( 160m 80m 40m 20m 15m 10m )],
+                       vhf => [qw( 6m 4m 2m 220 )],
+                       vhfradio => [qw( band1 band2 )],
+                       vhftv => [qw( band1 band3 )],
+                       uhf => [qw( 70cm 902 23cm )],
+                       uhftv => [qw( band4 band5 )],
+                       shf => [qw( 23cm 13cm 9cm 6cm 3cm 24g 47g 76g 121g 134g 248g )],
+                       pmr => [qw( pmrlow pmrmid pmrhigh pmruhf )],
+                       spe => [qw( 10m 8m 6m 5m 4m 2m )],
+                       warc => [qw( 60m 30m 17m 12m )],
+                       all => [qw( 73khz 136khz 630m 160m 80m 60m 40m 30m 20m 17m 15m 12m 10m 8m 6m 5m 4m 2m 220 70cm 902 23cm 9cm 6cm 3cm 24g 47g 76g 121g 134g 248g)],
+                  );  
+