pwn 0.5.510 → 0.5.513
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop.yml +1 -1
- data/Gemfile +8 -8
- data/README.md +3 -3
- data/bin/pwn_gqrx_scanner +69 -89
- data/{build_pwn_gem.sh → build_gem.sh} +1 -1
- data/{git_commit_test_reinit_gem.sh → git_commit.sh} +4 -4
- data/lib/pwn/plugins/sock.rb +11 -1
- data/lib/pwn/sdr/decoder/gsm.rb +24 -35
- data/lib/pwn/sdr/frequency_allocation.rb +243 -262
- data/lib/pwn/sdr/gqrx.rb +613 -244
- data/lib/pwn/version.rb +1 -1
- data/packer/provisioners/pwn.sh +1 -1
- data/third_party/pwn_rdoc.jsonl +5 -3
- data/{update_pwn.sh → upgrade_pwn.sh} +1 -1
- data/upgrade_ruby.sh +2 -2
- data/vagrant/provisioners/pwn.sh +1 -1
- metadata +23 -23
- /data/{reinstall_pwn_gemset.sh → reinstall_gemset.sh} +0 -0
- /data/{find_latest_gem_versions_per_Gemfile.sh → upgrade_Gemfile_gems.sh} +0 -0
|
@@ -11,671 +11,656 @@ module PWN
|
|
|
11
11
|
ads_b978: {
|
|
12
12
|
start_freq: '978.000.000',
|
|
13
13
|
target_freq: '979.000.000',
|
|
14
|
-
demodulator_mode:
|
|
14
|
+
demodulator_mode: :RAW,
|
|
15
|
+
rds: false,
|
|
15
16
|
bandwidth: 100_000,
|
|
16
|
-
precision: 5
|
|
17
|
-
overlap_protection: true
|
|
17
|
+
precision: 5
|
|
18
18
|
},
|
|
19
19
|
ads_b1090: {
|
|
20
20
|
start_freq: '1.090.000.000',
|
|
21
21
|
target_freq: '1.091.000.000',
|
|
22
|
-
demodulator_mode:
|
|
22
|
+
demodulator_mode: :RAW,
|
|
23
|
+
rds: false,
|
|
23
24
|
bandwidth: 100_000,
|
|
24
|
-
precision: 5
|
|
25
|
-
overlap_protection: true
|
|
25
|
+
precision: 5
|
|
26
26
|
},
|
|
27
27
|
aeronautical_lf: {
|
|
28
28
|
start_freq: '200.000',
|
|
29
29
|
target_freq: '415.000',
|
|
30
|
-
demodulator_mode:
|
|
30
|
+
demodulator_mode: :AM,
|
|
31
|
+
rds: false,
|
|
31
32
|
bandwidth: 10_000,
|
|
32
|
-
precision: 3
|
|
33
|
-
overlap_protection: true
|
|
33
|
+
precision: 3
|
|
34
34
|
},
|
|
35
35
|
aeronautical_mf: {
|
|
36
36
|
start_freq: '285.000',
|
|
37
37
|
target_freq: '325.000',
|
|
38
|
-
demodulator_mode:
|
|
38
|
+
demodulator_mode: :AM,
|
|
39
|
+
rds: false,
|
|
39
40
|
bandwidth: 10_000,
|
|
40
|
-
precision: 3
|
|
41
|
-
overlap_protection: true
|
|
41
|
+
precision: 3
|
|
42
42
|
},
|
|
43
43
|
amateur_1_25m: {
|
|
44
44
|
start_freq: '222.000.000',
|
|
45
45
|
target_freq: '225.000.000',
|
|
46
|
-
demodulator_mode:
|
|
46
|
+
demodulator_mode: :FM,
|
|
47
|
+
rds: false,
|
|
47
48
|
bandwidth: 25_000,
|
|
48
|
-
precision: 4
|
|
49
|
-
overlap_protection: true
|
|
49
|
+
precision: 4
|
|
50
50
|
},
|
|
51
51
|
amateur_160m: {
|
|
52
52
|
start_freq: '1.800.000',
|
|
53
53
|
target_freq: '2.000.000',
|
|
54
|
-
demodulator_mode:
|
|
54
|
+
demodulator_mode: :LSB,
|
|
55
|
+
rds: false,
|
|
55
56
|
bandwidth: 2_700,
|
|
56
|
-
precision: 6
|
|
57
|
-
overlap_protection: true
|
|
57
|
+
precision: 6
|
|
58
58
|
},
|
|
59
59
|
amateur_2m: {
|
|
60
60
|
start_freq: '144.000.000',
|
|
61
61
|
target_freq: '148.000.000',
|
|
62
|
-
demodulator_mode:
|
|
62
|
+
demodulator_mode: :FM,
|
|
63
|
+
rds: false,
|
|
63
64
|
bandwidth: 15_000,
|
|
64
|
-
precision: 4
|
|
65
|
-
overlap_protection: true
|
|
65
|
+
precision: 4
|
|
66
66
|
},
|
|
67
67
|
amateur_30m: {
|
|
68
68
|
start_freq: '10.100.000',
|
|
69
69
|
target_freq: '10.150.000',
|
|
70
|
-
demodulator_mode:
|
|
70
|
+
demodulator_mode: :CW,
|
|
71
|
+
rds: false,
|
|
71
72
|
bandwidth: 150,
|
|
72
|
-
precision: 3
|
|
73
|
-
overlap_protection: true
|
|
73
|
+
precision: 3
|
|
74
74
|
},
|
|
75
75
|
amateur_60m: {
|
|
76
76
|
start_freq: '5.351.500',
|
|
77
77
|
target_freq: '5.366.500',
|
|
78
|
-
demodulator_mode:
|
|
78
|
+
demodulator_mode: :USB,
|
|
79
|
+
rds: false,
|
|
79
80
|
bandwidth: 2_700,
|
|
80
|
-
precision: 6
|
|
81
|
-
overlap_protection: true
|
|
81
|
+
precision: 6
|
|
82
82
|
},
|
|
83
83
|
amateur_6m: {
|
|
84
84
|
start_freq: '50.000.000',
|
|
85
85
|
target_freq: '54.000.000',
|
|
86
|
-
demodulator_mode:
|
|
86
|
+
demodulator_mode: :USB,
|
|
87
|
+
rds: false,
|
|
87
88
|
bandwidth: 2_700,
|
|
88
|
-
precision: 6
|
|
89
|
-
overlap_protection: true
|
|
89
|
+
precision: 6
|
|
90
90
|
},
|
|
91
91
|
amateur_70cm: {
|
|
92
92
|
start_freq: '420.000.000',
|
|
93
93
|
target_freq: '450.000.000',
|
|
94
|
-
demodulator_mode:
|
|
94
|
+
demodulator_mode: :FM,
|
|
95
|
+
rds: false,
|
|
95
96
|
bandwidth: 25_000,
|
|
96
|
-
precision: 4
|
|
97
|
-
overlap_protection: true
|
|
97
|
+
precision: 4
|
|
98
98
|
},
|
|
99
99
|
analog_tv_uhf: {
|
|
100
100
|
start_freq: '470.000.000',
|
|
101
101
|
target_freq: '890.000.000',
|
|
102
|
-
demodulator_mode:
|
|
102
|
+
demodulator_mode: :WFM_ST,
|
|
103
|
+
rds: false,
|
|
103
104
|
bandwidth: 600_000,
|
|
104
|
-
precision: 5
|
|
105
|
-
overlap_protection: true
|
|
105
|
+
precision: 5
|
|
106
106
|
},
|
|
107
107
|
analog_tv_vhf: {
|
|
108
108
|
start_freq: '54.000.000',
|
|
109
109
|
target_freq: '216.000.000',
|
|
110
|
-
demodulator_mode:
|
|
110
|
+
demodulator_mode: :WFM_ST,
|
|
111
|
+
rds: false,
|
|
111
112
|
bandwidth: 600_000,
|
|
112
|
-
precision: 5
|
|
113
|
-
overlap_protection: true
|
|
113
|
+
precision: 5
|
|
114
114
|
},
|
|
115
115
|
am_radio: {
|
|
116
116
|
start_freq: '540.000',
|
|
117
117
|
target_freq: '1.700.000',
|
|
118
|
-
demodulator_mode:
|
|
118
|
+
demodulator_mode: :AM,
|
|
119
|
+
rds: false,
|
|
119
120
|
bandwidth: 10_000,
|
|
120
|
-
precision: 4
|
|
121
|
-
overlap_protection: true
|
|
121
|
+
precision: 4
|
|
122
122
|
},
|
|
123
123
|
aviation_nav: {
|
|
124
124
|
start_freq: '108.000.000',
|
|
125
125
|
target_freq: '118.000.000',
|
|
126
|
-
demodulator_mode:
|
|
126
|
+
demodulator_mode: :AM,
|
|
127
|
+
rds: false,
|
|
127
128
|
bandwidth: 25_000,
|
|
128
|
-
precision: 4
|
|
129
|
-
overlap_protection: true
|
|
129
|
+
precision: 4
|
|
130
130
|
},
|
|
131
131
|
aviation_vhf: {
|
|
132
132
|
start_freq: '118.000.000',
|
|
133
133
|
target_freq: '137.000.000',
|
|
134
|
-
demodulator_mode:
|
|
134
|
+
demodulator_mode: :AM,
|
|
135
|
+
rds: false,
|
|
135
136
|
bandwidth: 25_000,
|
|
136
|
-
precision: 4
|
|
137
|
-
overlap_protection: true
|
|
137
|
+
precision: 4
|
|
138
138
|
},
|
|
139
139
|
aws: {
|
|
140
140
|
start_freq: '1.710.000.000',
|
|
141
141
|
target_freq: '1.755.000.000',
|
|
142
|
-
demodulator_mode:
|
|
142
|
+
demodulator_mode: :RAW,
|
|
143
|
+
rds: false,
|
|
143
144
|
bandwidth: 200_000,
|
|
144
|
-
precision: 6
|
|
145
|
-
overlap_protection: false
|
|
145
|
+
precision: 6
|
|
146
146
|
},
|
|
147
147
|
bluetooth: {
|
|
148
148
|
start_freq: '2.402.000.000',
|
|
149
149
|
target_freq: '2.480.000.000',
|
|
150
|
-
demodulator_mode:
|
|
150
|
+
demodulator_mode: :RAW,
|
|
151
|
+
rds: false,
|
|
151
152
|
bandwidth: 100_000,
|
|
152
|
-
precision: 5
|
|
153
|
-
overlap_protection: true
|
|
153
|
+
precision: 5
|
|
154
154
|
},
|
|
155
155
|
cb: {
|
|
156
156
|
start_freq: '26.965.000',
|
|
157
157
|
target_freq: '27.405.000',
|
|
158
|
-
demodulator_mode:
|
|
158
|
+
demodulator_mode: :AM,
|
|
159
|
+
rds: false,
|
|
159
160
|
bandwidth: 10_000,
|
|
160
|
-
precision: 3
|
|
161
|
-
overlap_protection: true
|
|
161
|
+
precision: 3
|
|
162
162
|
},
|
|
163
163
|
cdma: {
|
|
164
164
|
start_freq: '824.000.000',
|
|
165
165
|
target_freq: '849.000.000',
|
|
166
|
-
demodulator_mode:
|
|
166
|
+
demodulator_mode: :RAW,
|
|
167
|
+
rds: false,
|
|
167
168
|
bandwidth: 125_000,
|
|
168
|
-
precision: 6
|
|
169
|
-
overlap_protection: false
|
|
169
|
+
precision: 6
|
|
170
170
|
},
|
|
171
171
|
cw20: {
|
|
172
172
|
start_freq: '14.000.000',
|
|
173
173
|
target_freq: '14.350.000',
|
|
174
|
-
demodulator_mode:
|
|
174
|
+
demodulator_mode: :CW,
|
|
175
|
+
rds: false,
|
|
175
176
|
bandwidth: 150,
|
|
176
|
-
precision: 3
|
|
177
|
-
overlap_protection: true
|
|
177
|
+
precision: 3
|
|
178
178
|
},
|
|
179
179
|
cw40: {
|
|
180
180
|
start_freq: '7.000.000',
|
|
181
181
|
target_freq: '7.300.000',
|
|
182
|
-
demodulator_mode:
|
|
182
|
+
demodulator_mode: :CW,
|
|
183
|
+
rds: false,
|
|
183
184
|
bandwidth: 150,
|
|
184
|
-
precision: 3
|
|
185
|
-
overlap_protection: true
|
|
185
|
+
precision: 3
|
|
186
186
|
},
|
|
187
187
|
cw80: {
|
|
188
188
|
start_freq: '3.500.000',
|
|
189
189
|
target_freq: '3.800.000',
|
|
190
|
-
demodulator_mode:
|
|
190
|
+
demodulator_mode: :CW,
|
|
191
|
+
rds: false,
|
|
191
192
|
bandwidth: 150,
|
|
192
|
-
precision: 3
|
|
193
|
-
overlap_protection: true
|
|
193
|
+
precision: 3
|
|
194
194
|
},
|
|
195
195
|
dect: {
|
|
196
196
|
start_freq: '1.880.000.000',
|
|
197
197
|
target_freq: '1.900.000.000',
|
|
198
|
-
demodulator_mode:
|
|
198
|
+
demodulator_mode: :RAW,
|
|
199
|
+
rds: false,
|
|
199
200
|
bandwidth: 100_000,
|
|
200
|
-
precision: 5
|
|
201
|
-
overlap_protection: true
|
|
201
|
+
precision: 5
|
|
202
202
|
},
|
|
203
203
|
fm_radio: {
|
|
204
204
|
start_freq: '87.900.000',
|
|
205
205
|
target_freq: '108.000.000',
|
|
206
|
-
demodulator_mode:
|
|
206
|
+
demodulator_mode: :WFM_ST,
|
|
207
|
+
rds: true,
|
|
207
208
|
bandwidth: 200_000,
|
|
208
|
-
precision: 6
|
|
209
|
-
overlap_protection: true
|
|
209
|
+
precision: 6
|
|
210
210
|
},
|
|
211
211
|
frs: {
|
|
212
212
|
start_freq: '462.562.500',
|
|
213
213
|
target_freq: '467.725.000',
|
|
214
|
-
demodulator_mode:
|
|
214
|
+
demodulator_mode: :FM,
|
|
215
|
+
rds: false,
|
|
215
216
|
bandwidth: 200_000,
|
|
216
|
-
precision: 3
|
|
217
|
-
overlap_protection: true
|
|
217
|
+
precision: 3
|
|
218
218
|
},
|
|
219
219
|
gmrs: {
|
|
220
220
|
start_freq: '462.550.000',
|
|
221
221
|
target_freq: '467.725.000',
|
|
222
|
-
demodulator_mode:
|
|
222
|
+
demodulator_mode: :FM,
|
|
223
|
+
rds: false,
|
|
223
224
|
bandwidth: 200_000,
|
|
224
|
-
precision: 3
|
|
225
|
-
overlap_protection: true
|
|
225
|
+
precision: 3
|
|
226
226
|
},
|
|
227
227
|
gprs: {
|
|
228
228
|
start_freq: '880.000.000',
|
|
229
229
|
target_freq: '915.000.000',
|
|
230
|
-
demodulator_mode:
|
|
230
|
+
demodulator_mode: :RAW,
|
|
231
|
+
rds: false,
|
|
231
232
|
bandwidth: 200_000,
|
|
232
|
-
precision: 4
|
|
233
|
-
overlap_protection: false
|
|
233
|
+
precision: 4
|
|
234
234
|
},
|
|
235
235
|
gps_l1: {
|
|
236
236
|
start_freq: '1.574.420.000',
|
|
237
237
|
target_freq: '1.576.420.000',
|
|
238
|
-
demodulator_mode:
|
|
238
|
+
demodulator_mode: :RAW,
|
|
239
|
+
rds: false,
|
|
239
240
|
bandwidth: 200_000,
|
|
240
|
-
precision: 6
|
|
241
|
-
overlap_protection: false
|
|
241
|
+
precision: 6
|
|
242
242
|
},
|
|
243
243
|
gps_l2: {
|
|
244
244
|
start_freq: '1.226.600.000',
|
|
245
245
|
target_freq: '1.228.600.000',
|
|
246
|
-
demodulator_mode:
|
|
246
|
+
demodulator_mode: :RAW,
|
|
247
|
+
rds: false,
|
|
247
248
|
bandwidth: 200_000,
|
|
248
|
-
precision: 6
|
|
249
|
-
overlap_protection: false
|
|
249
|
+
precision: 6
|
|
250
250
|
},
|
|
251
251
|
gsm: {
|
|
252
252
|
start_freq: '824.000.000',
|
|
253
253
|
target_freq: '894.000.000',
|
|
254
|
-
demodulator_mode:
|
|
254
|
+
demodulator_mode: :RAW,
|
|
255
|
+
rds: false,
|
|
255
256
|
bandwidth: 200_000,
|
|
256
|
-
precision: 4
|
|
257
|
-
overlap_protection: false
|
|
257
|
+
precision: 4
|
|
258
258
|
},
|
|
259
259
|
high_rfid: {
|
|
260
260
|
start_freq: '13.560.000',
|
|
261
261
|
target_freq: '13.570.000',
|
|
262
|
-
demodulator_mode:
|
|
262
|
+
demodulator_mode: :RAW,
|
|
263
|
+
rds: false,
|
|
263
264
|
bandwidth: 200_000,
|
|
264
|
-
precision: 3
|
|
265
|
-
overlap_protection: true
|
|
265
|
+
precision: 3
|
|
266
266
|
},
|
|
267
267
|
iridium: {
|
|
268
268
|
start_freq: '1.616.000.000',
|
|
269
269
|
target_freq: '1.626.500.000',
|
|
270
|
-
demodulator_mode:
|
|
270
|
+
demodulator_mode: :RAW,
|
|
271
|
+
rds: false,
|
|
271
272
|
bandwidth: 200_000,
|
|
272
|
-
precision: 6
|
|
273
|
-
overlap_protection: false
|
|
273
|
+
precision: 6
|
|
274
274
|
},
|
|
275
275
|
ism_5g: {
|
|
276
276
|
start_freq: '5.725.000.000',
|
|
277
277
|
target_freq: '5.875.000.000',
|
|
278
|
-
demodulator_mode:
|
|
278
|
+
demodulator_mode: :RAW,
|
|
279
|
+
rds: false,
|
|
279
280
|
bandwidth: 200_000,
|
|
280
|
-
precision: 7
|
|
281
|
-
overlap_protection: true
|
|
281
|
+
precision: 7
|
|
282
282
|
},
|
|
283
283
|
ism_902: {
|
|
284
284
|
start_freq: '902.000.000',
|
|
285
285
|
target_freq: '928.000.000',
|
|
286
|
-
demodulator_mode:
|
|
286
|
+
demodulator_mode: :RAW,
|
|
287
|
+
rds: false,
|
|
287
288
|
bandwidth: 50_000,
|
|
288
|
-
precision: 3
|
|
289
|
-
overlap_protection: true
|
|
289
|
+
precision: 3
|
|
290
290
|
},
|
|
291
291
|
keyfob300: {
|
|
292
292
|
start_freq: '300.000.000',
|
|
293
293
|
target_freq: '300.100.000',
|
|
294
|
-
demodulator_mode:
|
|
294
|
+
demodulator_mode: :RAW,
|
|
295
|
+
rds: false,
|
|
295
296
|
bandwidth: 50_000,
|
|
296
|
-
precision: 4
|
|
297
|
-
overlap_protection: true
|
|
297
|
+
precision: 4
|
|
298
298
|
},
|
|
299
299
|
keyfob310: {
|
|
300
300
|
start_freq: '310.000.000',
|
|
301
301
|
target_freq: '310.100.000',
|
|
302
|
-
demodulator_mode:
|
|
302
|
+
demodulator_mode: :RAW,
|
|
303
|
+
rds: false,
|
|
303
304
|
bandwidth: 50_000,
|
|
304
|
-
precision: 4
|
|
305
|
-
overlap_protection: true
|
|
305
|
+
precision: 4
|
|
306
306
|
},
|
|
307
307
|
keyfob315: {
|
|
308
308
|
start_freq: '315.000.000',
|
|
309
309
|
target_freq: '315.100.000',
|
|
310
|
-
demodulator_mode:
|
|
310
|
+
demodulator_mode: :RAW,
|
|
311
|
+
rds: false,
|
|
311
312
|
bandwidth: 50_000,
|
|
312
|
-
precision: 4
|
|
313
|
-
overlap_protection: true
|
|
313
|
+
precision: 4
|
|
314
314
|
},
|
|
315
315
|
keyfob390: {
|
|
316
316
|
start_freq: '390.000.000',
|
|
317
317
|
target_freq: '390.100.000',
|
|
318
|
-
demodulator_mode:
|
|
318
|
+
demodulator_mode: :RAW,
|
|
319
|
+
rds: false,
|
|
319
320
|
bandwidth: 50_000,
|
|
320
|
-
precision: 4
|
|
321
|
-
overlap_protection: true
|
|
321
|
+
precision: 4
|
|
322
322
|
},
|
|
323
323
|
keyfob433: {
|
|
324
324
|
start_freq: '433.000.000',
|
|
325
325
|
target_freq: '434.000.000',
|
|
326
|
-
demodulator_mode:
|
|
326
|
+
demodulator_mode: :RAW,
|
|
327
|
+
rds: false,
|
|
327
328
|
bandwidth: 50_000,
|
|
328
|
-
precision: 4
|
|
329
|
-
overlap_protection: true
|
|
329
|
+
precision: 4
|
|
330
330
|
},
|
|
331
331
|
keyfob868: {
|
|
332
332
|
start_freq: '868.000.000',
|
|
333
333
|
target_freq: '869.000.000',
|
|
334
|
-
demodulator_mode:
|
|
334
|
+
demodulator_mode: :RAW,
|
|
335
|
+
rds: false,
|
|
335
336
|
bandwidth: 50_000,
|
|
336
|
-
precision: 4
|
|
337
|
-
overlap_protection: true
|
|
337
|
+
precision: 4
|
|
338
338
|
},
|
|
339
339
|
land_mobile_uhf: {
|
|
340
340
|
start_freq: '450.000.000',
|
|
341
341
|
target_freq: '470.000.000',
|
|
342
|
-
demodulator_mode:
|
|
342
|
+
demodulator_mode: :FM,
|
|
343
|
+
rds: false,
|
|
343
344
|
bandwidth: 25_000,
|
|
344
|
-
precision: 4
|
|
345
|
-
overlap_protection: true
|
|
345
|
+
precision: 4
|
|
346
346
|
},
|
|
347
347
|
land_mobile_vhf: {
|
|
348
348
|
start_freq: '150.000.000',
|
|
349
349
|
target_freq: '174.000.000',
|
|
350
|
-
demodulator_mode:
|
|
350
|
+
demodulator_mode: :FM,
|
|
351
|
+
rds: false,
|
|
351
352
|
bandwidth: 25_000,
|
|
352
|
-
precision: 4
|
|
353
|
-
overlap_protection: true
|
|
353
|
+
precision: 4
|
|
354
354
|
},
|
|
355
355
|
longwave_broadcast: {
|
|
356
356
|
start_freq: '148.500',
|
|
357
357
|
target_freq: '283.500',
|
|
358
|
-
demodulator_mode:
|
|
358
|
+
demodulator_mode: :AM,
|
|
359
|
+
rds: false,
|
|
359
360
|
bandwidth: 10_000,
|
|
360
|
-
precision: 3
|
|
361
|
-
overlap_protection: true
|
|
361
|
+
precision: 3
|
|
362
362
|
},
|
|
363
363
|
lora433: {
|
|
364
364
|
start_freq: '432.000.000',
|
|
365
365
|
target_freq: '434.000.000',
|
|
366
|
-
demodulator_mode:
|
|
366
|
+
demodulator_mode: :RAW,
|
|
367
|
+
rds: false,
|
|
367
368
|
bandwidth: 50_000,
|
|
368
|
-
precision: 3
|
|
369
|
-
overlap_protection: true
|
|
369
|
+
precision: 3
|
|
370
370
|
},
|
|
371
371
|
lora915: {
|
|
372
372
|
start_freq: '902.000.000',
|
|
373
373
|
target_freq: '928.000.000',
|
|
374
|
-
demodulator_mode:
|
|
374
|
+
demodulator_mode: :RAW,
|
|
375
|
+
rds: false,
|
|
375
376
|
bandwidth: 50_000,
|
|
376
|
-
precision: 3
|
|
377
|
-
overlap_protection: true
|
|
377
|
+
precision: 3
|
|
378
378
|
},
|
|
379
379
|
low_rfid: {
|
|
380
380
|
start_freq: '125.000',
|
|
381
381
|
target_freq: '134.000',
|
|
382
|
-
demodulator_mode:
|
|
382
|
+
demodulator_mode: :RAW,
|
|
383
|
+
rds: false,
|
|
383
384
|
bandwidth: 200_000,
|
|
384
|
-
precision: 1
|
|
385
|
-
overlap_protection: true
|
|
385
|
+
precision: 1
|
|
386
386
|
},
|
|
387
387
|
marine_vhf: {
|
|
388
388
|
start_freq: '156.000.000',
|
|
389
389
|
target_freq: '162.000.000',
|
|
390
|
-
demodulator_mode:
|
|
390
|
+
demodulator_mode: :FM,
|
|
391
|
+
rds: false,
|
|
391
392
|
bandwidth: 25_000,
|
|
392
|
-
precision: 4
|
|
393
|
-
overlap_protection: true
|
|
393
|
+
precision: 4
|
|
394
394
|
},
|
|
395
395
|
maritime_mf: {
|
|
396
396
|
start_freq: '415.000',
|
|
397
397
|
target_freq: '535.000',
|
|
398
|
-
demodulator_mode:
|
|
398
|
+
demodulator_mode: :USB,
|
|
399
|
+
rds: false,
|
|
399
400
|
bandwidth: 2_700,
|
|
400
|
-
precision: 6
|
|
401
|
-
overlap_protection: true
|
|
401
|
+
precision: 6
|
|
402
402
|
},
|
|
403
403
|
noaa_weather: {
|
|
404
404
|
start_freq: '162.400.000',
|
|
405
405
|
target_freq: '162.550.000',
|
|
406
|
-
demodulator_mode:
|
|
406
|
+
demodulator_mode: :FM,
|
|
407
|
+
rds: false,
|
|
407
408
|
bandwidth: 16_000,
|
|
408
|
-
precision: 4
|
|
409
|
-
overlap_protection: true
|
|
409
|
+
precision: 4
|
|
410
410
|
},
|
|
411
411
|
pager: {
|
|
412
412
|
start_freq: '929.000.000',
|
|
413
413
|
target_freq: '932.000.000',
|
|
414
|
-
demodulator_mode:
|
|
414
|
+
demodulator_mode: :FM,
|
|
415
|
+
rds: false,
|
|
415
416
|
bandwidth: 25_000,
|
|
416
|
-
precision: 4
|
|
417
|
-
overlap_protection: true
|
|
417
|
+
precision: 4
|
|
418
418
|
},
|
|
419
419
|
pcs: {
|
|
420
420
|
start_freq: '1.850.000.000',
|
|
421
421
|
target_freq: '1.990.000.000',
|
|
422
|
-
demodulator_mode:
|
|
422
|
+
demodulator_mode: :RAW,
|
|
423
|
+
rds: false,
|
|
423
424
|
bandwidth: 200_000,
|
|
424
|
-
precision: 6
|
|
425
|
-
overlap_protection: false
|
|
425
|
+
precision: 6
|
|
426
426
|
},
|
|
427
427
|
public_safety_700: {
|
|
428
428
|
start_freq: '698.000.000',
|
|
429
429
|
target_freq: '806.000.000',
|
|
430
|
-
demodulator_mode:
|
|
430
|
+
demodulator_mode: :FM,
|
|
431
|
+
rds: false,
|
|
431
432
|
bandwidth: 25_000,
|
|
432
|
-
precision: 4
|
|
433
|
-
overlap_protection: false
|
|
433
|
+
precision: 4
|
|
434
434
|
},
|
|
435
435
|
rtty20: {
|
|
436
436
|
start_freq: '14.000.000',
|
|
437
437
|
target_freq: '14.350.000',
|
|
438
|
-
demodulator_mode:
|
|
438
|
+
demodulator_mode: :FM,
|
|
439
|
+
rds: false,
|
|
439
440
|
bandwidth: 170,
|
|
440
|
-
precision: 3
|
|
441
|
-
overlap_protection: true
|
|
441
|
+
precision: 3
|
|
442
442
|
},
|
|
443
443
|
rtty40: {
|
|
444
444
|
start_freq: '7.000.000',
|
|
445
445
|
target_freq: '7.300.000',
|
|
446
|
-
demodulator_mode:
|
|
446
|
+
demodulator_mode: :FM,
|
|
447
|
+
rds: false,
|
|
447
448
|
bandwidth: 170,
|
|
448
|
-
precision: 3
|
|
449
|
-
overlap_protection: true
|
|
449
|
+
precision: 3
|
|
450
450
|
},
|
|
451
451
|
rtty80: {
|
|
452
452
|
start_freq: '3.500.000',
|
|
453
453
|
target_freq: '3.800.000',
|
|
454
|
-
demodulator_mode:
|
|
454
|
+
demodulator_mode: :FM,
|
|
455
|
+
rds: false,
|
|
455
456
|
bandwidth: 170,
|
|
456
|
-
precision: 3
|
|
457
|
-
overlap_protection: true
|
|
457
|
+
precision: 3
|
|
458
458
|
},
|
|
459
459
|
shortwave1: {
|
|
460
460
|
start_freq: '5.900.000',
|
|
461
461
|
target_freq: '6.200.000',
|
|
462
|
-
demodulator_mode:
|
|
462
|
+
demodulator_mode: :AM_SYNC,
|
|
463
|
+
rds: false,
|
|
463
464
|
bandwidth: 10_000,
|
|
464
|
-
precision: 4
|
|
465
|
-
overlap_protection: true
|
|
465
|
+
precision: 4
|
|
466
466
|
},
|
|
467
467
|
shortwave2: {
|
|
468
468
|
start_freq: '7.200.000',
|
|
469
469
|
target_freq: '7.450.000',
|
|
470
|
-
demodulator_mode:
|
|
470
|
+
demodulator_mode: :AM_SYNC,
|
|
471
|
+
rds: false,
|
|
471
472
|
bandwidth: 10_000,
|
|
472
|
-
precision: 4
|
|
473
|
-
overlap_protection: true
|
|
473
|
+
precision: 4
|
|
474
474
|
},
|
|
475
475
|
shortwave3: {
|
|
476
476
|
start_freq: '9.400.000',
|
|
477
477
|
target_freq: '9.900.000',
|
|
478
|
-
demodulator_mode:
|
|
478
|
+
demodulator_mode: :AM_SYNC,
|
|
479
|
+
rds: false,
|
|
479
480
|
bandwidth: 10_000,
|
|
480
|
-
precision: 4
|
|
481
|
-
overlap_protection: true
|
|
481
|
+
precision: 4
|
|
482
482
|
},
|
|
483
483
|
shortwave4: {
|
|
484
484
|
start_freq: '11.600.000',
|
|
485
485
|
target_freq: '12.100.000',
|
|
486
|
-
demodulator_mode:
|
|
486
|
+
demodulator_mode: :AM_SYNC,
|
|
487
|
+
rds: false,
|
|
487
488
|
bandwidth: 10_000,
|
|
488
|
-
precision: 4
|
|
489
|
-
overlap_protection: true
|
|
489
|
+
precision: 4
|
|
490
490
|
},
|
|
491
491
|
shortwave5: {
|
|
492
492
|
start_freq: '13.570.000',
|
|
493
493
|
target_freq: '13.870.000',
|
|
494
|
-
demodulator_mode:
|
|
494
|
+
demodulator_mode: :AM_SYNC,
|
|
495
|
+
rds: false,
|
|
495
496
|
bandwidth: 10_000,
|
|
496
|
-
precision: 4
|
|
497
|
-
overlap_protection: true
|
|
497
|
+
precision: 4
|
|
498
498
|
},
|
|
499
499
|
shortwave6: {
|
|
500
500
|
start_freq: '15.100.000',
|
|
501
501
|
target_freq: '15.800.000',
|
|
502
|
-
demodulator_mode:
|
|
502
|
+
demodulator_mode: :AM_SYNC,
|
|
503
|
+
rds: false,
|
|
503
504
|
bandwidth: 10_000,
|
|
504
|
-
precision: 4
|
|
505
|
-
overlap_protection: true
|
|
505
|
+
precision: 4
|
|
506
506
|
},
|
|
507
507
|
ssb10: {
|
|
508
508
|
start_freq: '28.000.000',
|
|
509
509
|
target_freq: '29.700.000',
|
|
510
|
-
demodulator_mode:
|
|
510
|
+
demodulator_mode: :USB,
|
|
511
|
+
rds: false,
|
|
511
512
|
bandwidth: 2_700,
|
|
512
|
-
precision: 6
|
|
513
|
-
overlap_protection: true
|
|
513
|
+
precision: 6
|
|
514
514
|
},
|
|
515
515
|
ssb12: {
|
|
516
516
|
start_freq: '24.890.000',
|
|
517
517
|
target_freq: '24.990.000',
|
|
518
|
-
demodulator_mode:
|
|
518
|
+
demodulator_mode: :USB,
|
|
519
|
+
rds: false,
|
|
519
520
|
bandwidth: 2_700,
|
|
520
|
-
precision: 6
|
|
521
|
-
overlap_protection: true
|
|
521
|
+
precision: 6
|
|
522
522
|
},
|
|
523
523
|
ssb15: {
|
|
524
524
|
start_freq: '21.000.000',
|
|
525
525
|
target_freq: '21.450.000',
|
|
526
|
-
demodulator_mode:
|
|
526
|
+
demodulator_mode: :USB,
|
|
527
|
+
rds: false,
|
|
527
528
|
bandwidth: 2_700,
|
|
528
|
-
precision: 6
|
|
529
|
-
overlap_protection: true
|
|
529
|
+
precision: 6
|
|
530
530
|
},
|
|
531
531
|
ssb17: {
|
|
532
532
|
start_freq: '18.068.000',
|
|
533
533
|
target_freq: '18.168.000',
|
|
534
|
-
demodulator_mode:
|
|
534
|
+
demodulator_mode: :USB,
|
|
535
|
+
rds: false,
|
|
535
536
|
bandwidth: 2_700,
|
|
536
|
-
precision: 6
|
|
537
|
-
overlap_protection: true
|
|
537
|
+
precision: 6
|
|
538
538
|
},
|
|
539
539
|
ssb20: {
|
|
540
540
|
start_freq: '14.000.000',
|
|
541
541
|
target_freq: '14.350.000',
|
|
542
|
-
demodulator_mode:
|
|
542
|
+
demodulator_mode: :USB,
|
|
543
|
+
rds: false,
|
|
543
544
|
bandwidth: 2_700,
|
|
544
|
-
precision: 6
|
|
545
|
-
overlap_protection: true
|
|
545
|
+
precision: 6
|
|
546
546
|
},
|
|
547
547
|
ssb40: {
|
|
548
548
|
start_freq: '7.000.000',
|
|
549
549
|
target_freq: '7.300.000',
|
|
550
|
-
demodulator_mode:
|
|
550
|
+
demodulator_mode: :LSB,
|
|
551
|
+
rds: false,
|
|
551
552
|
bandwidth: 2_700,
|
|
552
|
-
precision: 6
|
|
553
|
-
overlap_protection: true
|
|
553
|
+
precision: 6
|
|
554
554
|
},
|
|
555
555
|
ssb80: {
|
|
556
556
|
start_freq: '3.500.000',
|
|
557
557
|
target_freq: '3.800.000',
|
|
558
|
-
demodulator_mode:
|
|
558
|
+
demodulator_mode: :LSB,
|
|
559
|
+
rds: false,
|
|
559
560
|
bandwidth: 2_700,
|
|
560
|
-
precision: 6
|
|
561
|
-
overlap_protection: true
|
|
561
|
+
precision: 6
|
|
562
562
|
},
|
|
563
563
|
ssb160: {
|
|
564
564
|
start_freq: '1.800.000',
|
|
565
565
|
target_freq: '2.000.000',
|
|
566
|
-
demodulator_mode:
|
|
566
|
+
demodulator_mode: :LSB,
|
|
567
|
+
rds: false,
|
|
567
568
|
bandwidth: 2_700,
|
|
568
|
-
precision: 6
|
|
569
|
-
overlap_protection: true
|
|
569
|
+
precision: 6
|
|
570
570
|
},
|
|
571
571
|
tempest: {
|
|
572
572
|
start_freq: '400.000.000',
|
|
573
573
|
target_freq: '430.000.000',
|
|
574
|
-
demodulator_mode:
|
|
574
|
+
demodulator_mode: :WFM,
|
|
575
|
+
rds: false,
|
|
575
576
|
bandwidth: 200_000,
|
|
576
|
-
precision: 4
|
|
577
|
-
overlap_protection: false
|
|
577
|
+
precision: 4
|
|
578
578
|
},
|
|
579
579
|
tv_high_vhf: {
|
|
580
580
|
start_freq: '174.000.000',
|
|
581
581
|
target_freq: '216.000.000',
|
|
582
|
-
demodulator_mode:
|
|
582
|
+
demodulator_mode: :WFM_ST,
|
|
583
|
+
rds: false,
|
|
583
584
|
bandwidth: 600_000,
|
|
584
|
-
precision: 5
|
|
585
|
-
overlap_protection: true
|
|
585
|
+
precision: 5
|
|
586
586
|
},
|
|
587
587
|
tv_low_vhf: {
|
|
588
588
|
start_freq: '54.000.000',
|
|
589
589
|
target_freq: '88.000.000',
|
|
590
|
-
demodulator_mode:
|
|
590
|
+
demodulator_mode: :WFM_ST,
|
|
591
|
+
rds: false,
|
|
591
592
|
bandwidth: 600_000,
|
|
592
|
-
precision: 5
|
|
593
|
-
overlap_protection: true
|
|
593
|
+
precision: 5
|
|
594
594
|
},
|
|
595
595
|
tv_uhf: {
|
|
596
596
|
start_freq: '470.000.000',
|
|
597
597
|
target_freq: '698.000.000',
|
|
598
|
-
demodulator_mode:
|
|
598
|
+
demodulator_mode: :WFM_ST,
|
|
599
|
+
rds: false,
|
|
599
600
|
bandwidth: 600_000,
|
|
600
|
-
precision: 5
|
|
601
|
-
overlap_protection: true
|
|
601
|
+
precision: 5
|
|
602
602
|
},
|
|
603
603
|
uhf_rfid: {
|
|
604
604
|
start_freq: '860.000.000',
|
|
605
605
|
target_freq: '960.000.000',
|
|
606
|
-
demodulator_mode:
|
|
606
|
+
demodulator_mode: :RAW,
|
|
607
|
+
rds: false,
|
|
607
608
|
bandwidth: 100_000,
|
|
608
|
-
precision: 5
|
|
609
|
-
overlap_protection: true
|
|
609
|
+
precision: 5
|
|
610
610
|
},
|
|
611
611
|
umts: {
|
|
612
612
|
start_freq: '1.920.000.000',
|
|
613
613
|
target_freq: '2.170.000.000',
|
|
614
|
-
demodulator_mode:
|
|
614
|
+
demodulator_mode: :RAW,
|
|
615
|
+
rds: false,
|
|
615
616
|
bandwidth: 200_000,
|
|
616
|
-
precision: 6
|
|
617
|
-
overlap_protection: false
|
|
617
|
+
precision: 6
|
|
618
618
|
},
|
|
619
619
|
weather_sat: {
|
|
620
620
|
start_freq: '137.000.000',
|
|
621
621
|
target_freq: '138.000.000',
|
|
622
|
-
demodulator_mode:
|
|
622
|
+
demodulator_mode: :FM,
|
|
623
|
+
rds: false,
|
|
623
624
|
bandwidth: 40_000,
|
|
624
|
-
precision: 5
|
|
625
|
-
overlap_protection: true
|
|
625
|
+
precision: 5
|
|
626
626
|
},
|
|
627
627
|
wifi24: {
|
|
628
628
|
start_freq: '2.400.000.000',
|
|
629
629
|
target_freq: '2.500.000.000',
|
|
630
|
-
demodulator_mode:
|
|
630
|
+
demodulator_mode: :RAW,
|
|
631
|
+
rds: false,
|
|
631
632
|
bandwidth: 200_000,
|
|
632
|
-
precision: 7
|
|
633
|
-
overlap_protection: true
|
|
633
|
+
precision: 7
|
|
634
634
|
},
|
|
635
635
|
wifi5: {
|
|
636
636
|
start_freq: '5.150.000.000',
|
|
637
637
|
target_freq: '5.850.000.000',
|
|
638
|
-
demodulator_mode:
|
|
638
|
+
demodulator_mode: :RAW,
|
|
639
|
+
rds: false,
|
|
639
640
|
bandwidth: 200_000,
|
|
640
|
-
precision: 7
|
|
641
|
-
overlap_protection: true
|
|
641
|
+
precision: 7
|
|
642
642
|
},
|
|
643
643
|
wifi6: {
|
|
644
644
|
start_freq: '5.925.000.000',
|
|
645
645
|
target_freq: '7.125.000.000',
|
|
646
|
-
demodulator_mode:
|
|
646
|
+
demodulator_mode: :RAW,
|
|
647
|
+
rds: false,
|
|
647
648
|
bandwidth: 200_000,
|
|
648
|
-
precision: 7
|
|
649
|
-
overlap_protection: true
|
|
649
|
+
precision: 7
|
|
650
650
|
},
|
|
651
651
|
zigbee: {
|
|
652
652
|
start_freq: '2.405.000.000',
|
|
653
653
|
target_freq: '2.485.000.000',
|
|
654
|
-
demodulator_mode:
|
|
654
|
+
demodulator_mode: :RAW,
|
|
655
|
+
rds: false,
|
|
655
656
|
bandwidth: 200_000,
|
|
656
|
-
precision: 7
|
|
657
|
-
overlap_protection: true
|
|
657
|
+
precision: 7
|
|
658
658
|
}
|
|
659
659
|
}
|
|
660
660
|
rescue StandardError => e
|
|
661
661
|
raise e
|
|
662
662
|
end
|
|
663
663
|
|
|
664
|
-
# Supported Method Parameters::
|
|
665
|
-
# opts = PWN::SDR::FrequencyAllocation.load(
|
|
666
|
-
# profile: 'required - valid FrequencyAllocation profile name returned from #profiles method'
|
|
667
|
-
# )
|
|
668
|
-
public_class_method def self.load(opts = {})
|
|
669
|
-
profile = opts[:profile]&.to_sym
|
|
670
|
-
|
|
671
|
-
profiles_available = profiles
|
|
672
|
-
raise "ERROR: Invalid profile: #{profile}" unless profiles_available.key?(profile)
|
|
673
|
-
|
|
674
|
-
profiles_available[profile]
|
|
675
|
-
rescue StandardError => e
|
|
676
|
-
raise e
|
|
677
|
-
end
|
|
678
|
-
|
|
679
664
|
# Author(s):: 0day Inc. <support@0dayinc.com>
|
|
680
665
|
|
|
681
666
|
public_class_method def self.authors
|
|
@@ -690,10 +675,6 @@ module PWN
|
|
|
690
675
|
puts "USAGE:
|
|
691
676
|
profiles = #{self}.profiles
|
|
692
677
|
|
|
693
|
-
opts = #{self}.load(
|
|
694
|
-
profile: 'required - valid frequency allocation profile name returned from #profiles method'
|
|
695
|
-
)
|
|
696
|
-
|
|
697
678
|
#{self}.authors
|
|
698
679
|
"
|
|
699
680
|
end
|