new improved versions of bands.pl
[spider.git] / data / bands.pl
1 #
2 # this is the file which defines all the bands that are allowed in the system
3 #
4 # each entry can contain an arbitrary no of entries.
5 #
6 # an entry can have an arbitrary no of PAIRS of frequencies,
7 # these pairs attach themselves to the labels you provide, they are
8 # independant of any other pair, they can overlap, cross etc.
9 #
10 # There MUST be at least a 'band' entry
11 #
12 # It is up to YOU to make sure that it makes sense!
13 #
14 # ALL the labels MUST BE in lower case.
15 #
16 # Band names change (or I got them wrong in the first place), DO NOT CHANGE THE BAND NAMES
17 # THAT I USED. If you do then expect to get complaints. Instead just alias them to what
18 # you think they should be in the section below %bands.
19 #
20 # WARNING: if aliasing, the band alias must be declared AFTER the original.
21 #
22 # See '550khz' and '630m' as an exemplar.
23 #
24
25
26 %bands = (
27                   '73khz' => bless ( { band => [71, 75],
28                                                          }, 'Bands'),
29
30                   '136khz' => bless ( { band => [135, 138],
31                                                           }, 'Bands'),
32
33                   '500khz' => bless ( { band => [472, 479],
34                                                           }, 'Bands'),
35
36                   '160m' => bless( { band => [ 1800, 2000 ],
37                                                          cw => [ 1800, 1840 ],
38                                                          rtty => [ 1838, 1841 ],
39                                                          data => [ 1838, 1843],
40                                                          ssb => [ 1831, 2000]
41                                                    }, 'Bands'),
42
43                   '80m' => bless( { band => [ 3500, 4000 ],
44                                                         cw => [ 3500, 3600 ],
45                                                         data => [ 3570, 3619 ],
46                                                         rtty => [ 3580, 3619 ],
47                                                         sstv => [ 3730, 3740 ],
48                                                         ssb => [ 3601, 4000 ]
49                                                   }, 'Bands'),
50
51                   '60m' => bless( { band => [ 5195, 5450],
52 # No 5 MHz general allocations below 5250 - but include German beacon on 5195. Some have access up to 5450
53 # Extend 5 MHz SSB to include UK allocations below 5300 and CW below 5300
54
55                                                         ssb => [5276, 5410],
56 # Add cw and data
57                                                                                                                 cw => [5258, 5264, 5351, 5366],
58                                                                                                                 data => [5366, 5467]
59                                                                                                 }, 'Bands' ),
60
61                   '40m' => bless( { band => [ 7000, 7300 ],
62                                                         cw => [ 7000, 7040 ],
63                                                         data => [ 7040, 7100],
64                                                         rtty => [ 7040, 7060],
65                                                         ssb => [ 7050, 7300 ]
66                                                   }, 'Bands'),
67
68                   '30m' => bless( { band => [ 10100, 10150 ],
69                                                         cw => [ 10000, 10140 ],
70                                                         data => [ 10141, 10149 ] ,
71                                                         rtty => [ 10141, 10149 ]
72                                                   }, 'Bands'),
73
74                   '20m' => bless( { band => [ 14000, 14350 ],
75                                                         cw => [ 14000, 14100 ],
76                                                         ssb => [ 14101, 14350 ],
77 # Modify range
78                                                         beacon => [ 14099, 14101 ],
79                                                         sstv => [ 14225, 14235 ],
80                                                         data => [ 14070, 14098, 14101, 14111 ],
81                                                         rtty => [ 14070, 14098, 14101, 14111 ]
82                                                   }, 'Bands'),
83
84                   '17m' => bless( { band => [ 18068, 18168 ],
85                                                         cw => [ 18068, 18100 ],
86                                                         ssb => [ 18111, 18168 ],
87                                                         data => [ 18101, 18108],
88                                                         rtty => [ 18101, 18108],
89 # Modify range
90                                                         beacon => [ 18109, 18111]
91                                                   }, 'Bands'),
92
93                   '15m' => bless( { band => [ 21000, 21450 ],
94                                                         cw => [ 21000, 21150 ],
95                                                         data => [ 21070, 21119 ],
96                                                         rtty => [ 21070, 21119 ],
97                                                         ssb => [ 21151, 21450],
98 # Add Beacon
99                                                                                                                 beacon => [ 21149, 21151]
100                                                   }, 'Bands'),
101
102                   '12m' => bless( { band => [ 24890, 24990 ],
103                                                         cw => [ 24890, 24930 ],
104                                                         ssb => [ 24931, 24990],
105                                                         rtty => [ 24920, 24929],
106                                                         data => [ 24920, 24929],
107 # Add Beacon
108                                                                                                                 beacon => [ 24929, 24931 ]
109                                                   }, 'Bands'),
110
111                   '10m' => bless( { band => [ 28000, 29700 ],
112                                                         cw => [ 28000, 28198 ],
113                                                         data => [ 28050, 28149, 29200, 29299 ],
114                                                         rtty => [ 28050, 28149 ],
115                                                         space => [ 29200, 29300 ],
116                                                         ssb => [ 28201, 29299, 29550, 29700],
117 # Add Beacon
118                                                                                                                 beacon => [ 28190, 28225, 28225, 28300 ]
119                                                   }, 'Bands'),
120
121                   '8m' => bless( { band => [40000, 42000],
122                                                  }, 'Bands'),
123
124                   '6m' => bless( { band => [50000, 54000],
125                                                    cw => [50000, 50100],
126                                                    ssb => [50100, 50400],
127                                                    data => [50300, 50500],
128 # Add Beacon
129                                                                                                    beacon => [ 50000, 50100, 50400, 50500 ]
130                                                  }, 'Bands'),
131
132                   '5m' => bless( { band => [60000, 62000],
133                                                  }, 'Bands'),
134 # 5m band General allocation in Ireland only, with Denmark and UK with beacons
135
136                   '4m' => bless( { band => [69887, 71500],
137                                                    cw => [70000, 70250],
138                                                    ssb => [70100, 70250],
139 # Add Beacon
140                                                                                                    beacon => [ 70000, 70100 ]
141                                                  }, 'Bands'),
142 # Denmark down to 69.8875. UK NoV operation up to 71.500
143
144                   '2m' => bless( { band => [144000, 148000],
145                                                    cw => [144000, 144150],
146                                                    ssb => [144150, 144400],
147 # Add Beacon
148                                                                                                    beacon => [ 144400, 144490 ]
149                                                  }, 'Bands'),
150
151 #Little real CW and SSB differentiation above 2m so remove CW and SSB filters
152
153                   '220' => bless( { band => [220000, 224000],
154                                                   }, 'Bands'),
155
156                   '70cm' => bless( { band => [420000, 450000],
157                                                    }, 'Bands'),
158
159 #70cm starts at 420 MHz and extends to 450 MHz in Region 2
160
161                   '902' => bless( { band => [902000, 928000],
162                                                    }, 'Bands'),
163
164                   '23cm' => bless( { band => [ 1240000, 1300000],
165                                                    }, 'Bands'),
166                                                                                                    
167                   '13cm' => bless( { band => [2300000, 2450000],
168                                                    }, 'Bands'),
169
170                   '9cm' => bless( { band => [3300000, 3500000],
171 # Add beacon and sattelite
172                                                                                                                 beacon => [ 3400800, 3400995 ],
173                                                                                                                 sat => [ 3402000, 3410000 ]
174                                                   }, 'Bands'),
175 #9cm extends to 3500 MHz in Region 2 and starts at 3300 MHz in Region 3
176
177                   '6cm' => bless( { band => [5650000, 5925000],
178 # Add data, beacon and sat
179                                                         data => [ 5670000, 5700000 ],
180                                                                                                                 beacon => [ 57608000, 57609900 ],
181                                                                                                                 sat => [ 5668000, 5670000, 5790000, 5850000 ]
182                                                   }, 'Bands'),
183 #6cm extends to 5925 MHz in Region 2 and 3
184
185                   '3cm' => bless( { band => [10000000, 10500000],
186                                                   }, 'Bands'),
187
188 #Bands above 10 GHz normally referred to by Frequency so make new entries by g and add aliases below for older ones
189
190                   '12mm' => bless( { band => [24000000, 24250000],
191                                                    }, 'Bands'),
192
193                   '6mm' => bless( { band => [47000000, 47200000],
194 # Add beacon
195                                                                                                                 beacon => [ 47088000, 47090000 ]
196                                                   }, 'Bands'),
197
198                   '4mm' => bless( { band => [75500000, 81500000],
199 # Add beacon
200                                                                                                                 beacon => [ 75500000, 76000000, 77500000, 77501000 ]
201                                                   }, 'Bands'),
202
203                   '122g' => bless( { band => [122250000, 123000000],
204                                                   }, 'Bands'),
205
206                   '134g' => bless( { band => [134000000, 141000000],
207 # Add beacon
208                                                                                                                 beacon => [ 134000000, 134928000 ]
209                                                   }, 'Bands'),
210
211 # Modify 248g to 241g
212
213                   '241g' => bless( { band => [241000000, 250000000],
214 # Add beacon
215                                                                                                                 beacon => [ 248000000, 248001000 ]
216                                                   }, 'Bands'),
217
218
219
220                   'band1' => bless ( { band => [47000, 49999, 52000, 68000],
221                                                          }, 'Bands'),
222
223                   'band2' => bless ( { band => [87500, 108000],
224                                                          }, 'Bands'),
225
226                   'band3' => bless ( { band => [176000, 230000],
227                                                          }, 'Bands'),
228
229                   'band4' => bless ( { band => [471000, 550000],
230                                                          }, 'Bands'),
231
232                   'band5' => bless ( { band => [550000, 868000],
233                                                          }, 'Bands'),
234
235                   'military' => bless ( { band => [29700, 50000, 230000, 420000],
236                                                                 }, 'Bands'),
237
238                   'aircraft' => bless ( { band => [108000, 137500],
239                                                                 }, 'Bands'),
240
241                   'pmrlow' => bless ( { band => [68000, 87500],
242                                                           }, 'Bands'),
243
244                   'pmrmid' => bless ( { band => [138000, 165000],
245                                                           }, 'Bands'),
246
247                   'pmrhigh' => bless ( { band => [165000, 174000],
248                                                            }, 'Bands'),
249
250                   'pmruhf' => bless ( { band => [425000, 430000, 440000, 471000],
251                                                           }, 'Bands'),
252                    hf => bless ( { band => [1800, 29999], }, 'Bands'),
253                    vhf => bless ( { band => [30000, 299999], }, 'Bands'),
254                                    
255 # Bands according to IEEE standard:
256
257                   'lband' => bless ( { band => [1000000, 2000000],
258                                                           }, 'Bands'),                             
259
260                   'sband' => bless ( { band => [2000000, 4000000],
261                                                           }, 'Bands'),                             
262                                  
263                       'cband' => bless ( { band => [4000000, 8000000],
264                                                           }, 'Bands'),                             
265
266                   'xband' => bless ( { band => [8000000, 12000000],
267                                                           }, 'Bands'),                             
268
269                   'kuband' => bless ( { band => [12000000, 18000000],
270                                                           }, 'Bands'),                             
271
272                   'kband' => bless ( { band => [18000000, 27000000],
273                                                           }, 'Bands'),                             
274
275                   'kaband' => bless ( { band => [27000000, 40000000],
276                                                           }, 'Bands'),                             
277
278                   'vband' => bless ( { band => [40000000, 75000000],
279                                                           }, 'Bands'),                             
280
281                   'wband' => bless ( { band => [75000000, 110000000],
282                                                           }, 'Bands'),                             
283
284                   'gband' => bless ( { band => [110000000, 3000000000],
285                                                           }, 'Bands'),                             
286                  );
287
288 #
289 # fix up some aliases
290 #
291
292 $bands{'630m'} = $bands{'500khz'};
293 $bands{'24g'} = $bands{'12mm'};
294 $bands{'47g'} = $bands{'6mm'};
295 $bands{'76g'} = $bands{'4mm'};
296
297
298 #
299 # the list of regions
300 #
301 # this list is so that users can say 'vhf/ssb' instead of '6m/ssb, 4m/sbb, 2m/ssb'
302 # just shortcuts really
303 #
304 # DO make sure that the label exists in %bands!
305 #
306
307 %regions = (
308                         vlf => [qw( 73khz 136khz 630m )],
309                         hf => [qw( 160m 80m 60m 40m 30m 20m 17m 15m 12m 10m )],
310                         contesthf => [qw( 160m 80m 40m 20m 15m 10m )],
311
312 # Add 8m and 5m Band
313                         vhf => [qw( 8m 6m 5m 4m 2m 220 )],
314                         vhfradio => [qw( band1 band2 )],
315                         vhftv => [qw( band1 band3 )],
316
317 # Add 13cm Band                         
318                         uhf => [qw( 70cm 902 23cm 13cm )],
319                         uhftv => [qw( band4 band5 )],
320
321 # Modify. Error 23cm 13cm 47g 76g 121g 134g 248g not SHF
322                         shf => [qw( 9cm 6cm 3cm 24g )],
323
324 # Add EHF
325                         ehf => [qw( 47g 76g 121g 134g 241g )],
326                         pmr => [qw( pmrlow pmrmid pmrhigh pmruhf )],
327                         spe => [qw( 10m 8m 6m 5m 4m 2m )],
328                         warc => [qw( 60m 30m 17m 12m )],
329
330 # DSN
331                                                 dsn => [qw( 23cm 9cm 6cm 3cm 24g 47g 76g 121g 134g 241g )],
332                         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 241g )],
333                    );
334