Sourced 198 vendor-published MSI Planet pattern files via the
wireless-planning.com aggregator (data1.mlinkplanner.com). Real
patterns now ship for: Cambium (6), Ubiquiti (154), RF Elements
(27), MARS (5), MTI Wireless (1), Tarana (2), Ruckus (1), RFE (2).
Files dropped into priv/antennas/<vendor>-<part>.msi; the existing
boot loader picks them up and they override the synthesized catalog
entries by slug where the slugs match.
Parser improvements to handle real-world MSI file quirks:
- File-extension filter now accepts .ant/.msi (case-insensitive).
- Slug normalisation: spaces, +, and other non-alnum collapse to
hyphens.
- Header parser splits on whitespace runs (tab or space) — different
vendor tools produce different delimiters.
- New parse_frequency_mhz/1 handles "5500", "5 GHz", "5GHz",
"5.6GHz", "5500 MHz", "5150-5850" (centre frequency), and
"5.45 - 5.85 GHz" formats. Replaces the old integer-only parse.
- 2 MARS files with non-360 angular resolution and 1 with
angle-less pattern lines were excluded; the rest parse cleanly.
Total registry now 305 antennas: 198 real vendor patterns + 107
synthesized catalog entries (used as fallback for SKUs without
public .msi files: Cambium ePMP/PMP variants, Tarana G1/G2,
ALPHA, ITELITE, KP Performance, RADWIN, Mimosa, etc.).
Leaflet auto-load fix:
- The location-picker map wasn't appearing because the form page
didn't have the inline <script> tag the existing site map uses
to load Leaflet. AGENTS.md forbids inline <script> in templates,
so I added an ensureLeaflet() helper in app.ts that lazy-loads
/vendor/leaflet/leaflet.{js,css} on first hook mount and caches
the promise. SitesMap, CoverageMap, and CoverageLocationPicker
all use it now — no inline scripts needed.
732 lines
6.8 KiB
Text
732 lines
6.8 KiB
Text
NAME AG-2G20
|
|
MAKE Ubiquiti
|
|
FREQUENCY 2500
|
|
H_WIDTH 12
|
|
V_WIDTH 15
|
|
FRONT_TO_BACK 25
|
|
GAIN 21 dBi
|
|
TILT 0
|
|
POLARIZATION VERTICAL
|
|
COMMENT AirGrid
|
|
HORIZONTAL 360
|
|
0 0.1
|
|
1 0.3
|
|
2 0.7
|
|
3 1.3
|
|
4 2.1
|
|
5 3
|
|
6 4.2
|
|
7 5.6
|
|
8 7.3
|
|
9 9.3
|
|
10 11.8
|
|
11 15
|
|
12 19.4
|
|
13 25.8
|
|
14 30.7
|
|
15 25.4
|
|
16 22.2
|
|
17 20.6
|
|
18 20
|
|
19 20.1
|
|
20 20.8
|
|
21 22.1
|
|
22 24
|
|
23 26.6
|
|
24 29.5
|
|
25 30.6
|
|
26 29
|
|
27 26.8
|
|
28 25.1
|
|
29 24
|
|
30 23.5
|
|
31 23.3
|
|
32 23.6
|
|
33 24.3
|
|
34 25.4
|
|
35 27
|
|
36 29.3
|
|
37 32.6
|
|
38 38.4
|
|
39 61
|
|
40 40.1
|
|
41 34.2
|
|
42 31
|
|
43 29
|
|
44 27.6
|
|
45 26.7
|
|
46 26.1
|
|
47 25.8
|
|
48 25.6
|
|
49 25.7
|
|
50 25.9
|
|
51 26.2
|
|
52 26.7
|
|
53 27.3
|
|
54 28.1
|
|
55 29.1
|
|
56 30.3
|
|
57 31.6
|
|
58 33.1
|
|
59 34.4
|
|
60 35.1
|
|
61 34.6
|
|
62 33.4
|
|
63 31.8
|
|
64 30.2
|
|
65 28.8
|
|
66 27.6
|
|
67 26.5
|
|
68 25.6
|
|
69 24.9
|
|
70 24.2
|
|
71 23.6
|
|
72 23.1
|
|
73 22.7
|
|
74 22.3
|
|
75 22
|
|
76 21.8
|
|
77 21.6
|
|
78 21.4
|
|
79 21.3
|
|
80 21.2
|
|
81 21.2
|
|
82 21.2
|
|
83 21.2
|
|
84 21.2
|
|
85 21.3
|
|
86 21.4
|
|
87 21.5
|
|
88 21.7
|
|
89 21.8
|
|
90 22
|
|
91 22.2
|
|
92 22.5
|
|
93 22.7
|
|
94 22.9
|
|
95 23.2
|
|
96 23.5
|
|
97 23.8
|
|
98 24
|
|
99 24.3
|
|
100 24.6
|
|
101 24.8
|
|
102 25
|
|
103 25.2
|
|
104 25.4
|
|
105 25.5
|
|
106 25.6
|
|
107 25.6
|
|
108 25.7
|
|
109 25.7
|
|
110 25.8
|
|
111 25.8
|
|
112 25.9
|
|
113 25.9
|
|
114 26.1
|
|
115 26.2
|
|
116 26.4
|
|
117 26.7
|
|
118 27.1
|
|
119 27.5
|
|
120 27.9
|
|
121 28.5
|
|
122 29.1
|
|
123 29.8
|
|
124 30.6
|
|
125 31.4
|
|
126 32.3
|
|
127 33.2
|
|
128 34.1
|
|
129 34.9
|
|
130 35.7
|
|
131 36.3
|
|
132 36.8
|
|
133 37.2
|
|
134 37.6
|
|
135 38
|
|
136 38.6
|
|
137 39.4
|
|
138 40.5
|
|
139 42.2
|
|
140 44.7
|
|
141 48
|
|
142 48.9
|
|
143 44.7
|
|
144 40.5
|
|
145 37.4
|
|
146 35
|
|
147 33.1
|
|
148 31.6
|
|
149 30.4
|
|
150 29.5
|
|
151 28.9
|
|
152 28.5
|
|
153 28.3
|
|
154 28.3
|
|
155 28.5
|
|
156 28.7
|
|
157 28.9
|
|
158 29.1
|
|
159 29
|
|
160 28.7
|
|
161 28.3
|
|
162 27.8
|
|
163 27.5
|
|
164 27.2
|
|
165 27.3
|
|
166 27.6
|
|
167 28.2
|
|
168 29.3
|
|
169 30.7
|
|
170 32.5
|
|
171 34
|
|
172 33.9
|
|
173 32.1
|
|
174 30.1
|
|
175 28.3
|
|
176 26.9
|
|
177 26
|
|
178 25.5
|
|
179 25.3
|
|
180 25.4
|
|
181 26
|
|
182 26.9
|
|
183 28.2
|
|
184 30.1
|
|
185 32.4
|
|
186 34.6
|
|
187 34.9
|
|
188 33.1
|
|
189 31
|
|
190 29.3
|
|
191 28
|
|
192 27.2
|
|
193 26.8
|
|
194 26.6
|
|
195 26.7
|
|
196 26.9
|
|
197 27.3
|
|
198 27.7
|
|
199 28
|
|
200 28.3
|
|
201 28.4
|
|
202 28.4
|
|
203 28.4
|
|
204 28.4
|
|
205 28.5
|
|
206 28.7
|
|
207 29.2
|
|
208 29.8
|
|
209 30.7
|
|
210 31.9
|
|
211 33.4
|
|
212 35.3
|
|
213 37.8
|
|
214 41.2
|
|
215 45.9
|
|
216 51.1
|
|
217 48.5
|
|
218 44.3
|
|
219 41.7
|
|
220 39.9
|
|
221 38.8
|
|
222 38
|
|
223 37.5
|
|
224 37.1
|
|
225 36.8
|
|
226 36.6
|
|
227 36.3
|
|
228 35.8
|
|
229 35.3
|
|
230 34.6
|
|
231 33.7
|
|
232 32.9
|
|
233 32
|
|
234 31.1
|
|
235 30.3
|
|
236 29.5
|
|
237 28.9
|
|
238 28.2
|
|
239 27.7
|
|
240 27.3
|
|
241 26.9
|
|
242 26.6
|
|
243 26.3
|
|
244 26.1
|
|
245 26
|
|
246 25.9
|
|
247 25.8
|
|
248 25.8
|
|
249 25.7
|
|
250 25.7
|
|
251 25.7
|
|
252 25.6
|
|
253 25.5
|
|
254 25.4
|
|
255 25.2
|
|
256 25
|
|
257 24.8
|
|
258 24.5
|
|
259 24.3
|
|
260 24
|
|
261 23.7
|
|
262 23.4
|
|
263 23.1
|
|
264 22.8
|
|
265 22.6
|
|
266 22.3
|
|
267 22.1
|
|
268 21.8
|
|
269 21.6
|
|
270 21.5
|
|
271 21.3
|
|
272 21.2
|
|
273 21.1
|
|
274 21
|
|
275 20.9
|
|
276 20.9
|
|
277 20.9
|
|
278 21
|
|
279 21
|
|
280 21.1
|
|
281 21.3
|
|
282 21.5
|
|
283 21.7
|
|
284 22
|
|
285 22.4
|
|
286 22.8
|
|
287 23.3
|
|
288 23.8
|
|
289 24.5
|
|
290 25.3
|
|
291 26.2
|
|
292 27.3
|
|
293 28.5
|
|
294 29.9
|
|
295 31.4
|
|
296 32.9
|
|
297 34
|
|
298 34.2
|
|
299 33.6
|
|
300 32.4
|
|
301 31.1
|
|
302 29.8
|
|
303 28.8
|
|
304 27.9
|
|
305 27.2
|
|
306 26.6
|
|
307 26.2
|
|
308 25.9
|
|
309 25.7
|
|
310 25.7
|
|
311 25.9
|
|
312 26.2
|
|
313 26.8
|
|
314 27.7
|
|
315 29.1
|
|
316 31.1
|
|
317 34.2
|
|
318 39.8
|
|
319 49.2
|
|
320 38.2
|
|
321 32.7
|
|
322 29.3
|
|
323 27.1
|
|
324 25.5
|
|
325 24.4
|
|
326 23.7
|
|
327 23.5
|
|
328 23.6
|
|
329 24.2
|
|
330 25.3
|
|
331 26.9
|
|
332 28.9
|
|
333 30
|
|
334 28.6
|
|
335 25.9
|
|
336 23.5
|
|
337 21.7
|
|
338 20.5
|
|
339 19.9
|
|
340 19.8
|
|
341 20.5
|
|
342 22.2
|
|
343 25.7
|
|
344 31.2
|
|
345 25.3
|
|
346 19
|
|
347 14.7
|
|
348 11.6
|
|
349 9.1
|
|
350 7.1
|
|
351 5.4
|
|
352 4
|
|
353 2.9
|
|
354 2
|
|
355 1.2
|
|
356 0.7
|
|
357 0.3
|
|
358 0.1
|
|
359 0
|
|
VERTICAL 360
|
|
0 0
|
|
1 0.1
|
|
2 0.4
|
|
3 0.7
|
|
4 1.1
|
|
5 1.6
|
|
6 2.2
|
|
7 3
|
|
8 3.9
|
|
9 4.9
|
|
10 6
|
|
11 7.3
|
|
12 8.9
|
|
13 10.6
|
|
14 12.7
|
|
15 15.1
|
|
16 18
|
|
17 21.8
|
|
18 27.1
|
|
19 34.4
|
|
20 32.7
|
|
21 28.3
|
|
22 25.9
|
|
23 24.8
|
|
24 24.4
|
|
25 24.5
|
|
26 25.2
|
|
27 26.3
|
|
28 28
|
|
29 30.3
|
|
30 33.1
|
|
31 35.5
|
|
32 35.1
|
|
33 32.8
|
|
34 30.6
|
|
35 28.9
|
|
36 27.7
|
|
37 27
|
|
38 26.6
|
|
39 26.4
|
|
40 26.5
|
|
41 26.9
|
|
42 27.4
|
|
43 28.3
|
|
44 29.3
|
|
45 30.7
|
|
46 32.4
|
|
47 34.6
|
|
48 37.4
|
|
49 41
|
|
50 44
|
|
51 43.1
|
|
52 40.1
|
|
53 37.6
|
|
54 35.8
|
|
55 34.5
|
|
56 33.5
|
|
57 32.7
|
|
58 32.2
|
|
59 31.8
|
|
60 31.5
|
|
61 31.3
|
|
62 31.1
|
|
63 31
|
|
64 31
|
|
65 30.9
|
|
66 30.9
|
|
67 30.9
|
|
68 30.8
|
|
69 30.8
|
|
70 30.8
|
|
71 30.8
|
|
72 30.7
|
|
73 30.7
|
|
74 30.7
|
|
75 30.7
|
|
76 30.7
|
|
77 30.7
|
|
78 30.7
|
|
79 30.7
|
|
80 30.7
|
|
81 30.6
|
|
82 30.6
|
|
83 30.5
|
|
84 30.4
|
|
85 30.2
|
|
86 30.1
|
|
87 29.8
|
|
88 29.6
|
|
89 29.3
|
|
90 29
|
|
91 28.7
|
|
92 28.3
|
|
93 28
|
|
94 27.7
|
|
95 27.3
|
|
96 27
|
|
97 26.7
|
|
98 26.4
|
|
99 26.2
|
|
100 26
|
|
101 25.8
|
|
102 25.7
|
|
103 25.6
|
|
104 25.5
|
|
105 25.6
|
|
106 25.6
|
|
107 25.8
|
|
108 25.9
|
|
109 26.2
|
|
110 26.5
|
|
111 26.9
|
|
112 27.3
|
|
113 27.8
|
|
114 28.3
|
|
115 28.9
|
|
116 29.4
|
|
117 29.9
|
|
118 30.2
|
|
119 30.4
|
|
120 30.4
|
|
121 30.3
|
|
122 30
|
|
123 29.6
|
|
124 29.3
|
|
125 28.9
|
|
126 28.6
|
|
127 28.4
|
|
128 28.3
|
|
129 28.4
|
|
130 28.5
|
|
131 28.8
|
|
132 29.2
|
|
133 29.8
|
|
134 30.5
|
|
135 31.5
|
|
136 32.7
|
|
137 34.2
|
|
138 36
|
|
139 38
|
|
140 39.9
|
|
141 40.4
|
|
142 39.2
|
|
143 37.4
|
|
144 35.7
|
|
145 34.3
|
|
146 33.2
|
|
147 32.4
|
|
148 31.8
|
|
149 31.5
|
|
150 31.5
|
|
151 31.6
|
|
152 32
|
|
153 32.7
|
|
154 33.6
|
|
155 34.9
|
|
156 36.6
|
|
157 38.6
|
|
158 40.6
|
|
159 41.5
|
|
160 40.5
|
|
161 38.6
|
|
162 36.7
|
|
163 35.1
|
|
164 33.8
|
|
165 32.8
|
|
166 31.9
|
|
167 31.1
|
|
168 30.4
|
|
169 29.7
|
|
170 29
|
|
171 28.4
|
|
172 27.7
|
|
173 27.1
|
|
174 26.5
|
|
175 26.1
|
|
176 25.7
|
|
177 25.4
|
|
178 25.3
|
|
179 25.3
|
|
180 25.4
|
|
181 25.6
|
|
182 25.9
|
|
183 26.3
|
|
184 26.8
|
|
185 27.3
|
|
186 27.9
|
|
187 28.5
|
|
188 29.1
|
|
189 29.6
|
|
190 30.2
|
|
191 30.8
|
|
192 31.4
|
|
193 32.1
|
|
194 33
|
|
195 34.1
|
|
196 35.3
|
|
197 36.6
|
|
198 37.7
|
|
199 38.1
|
|
200 37.5
|
|
201 36.3
|
|
202 34.9
|
|
203 33.8
|
|
204 32.8
|
|
205 32.1
|
|
206 31.6
|
|
207 31.3
|
|
208 31.3
|
|
209 31.4
|
|
210 31.8
|
|
211 32.4
|
|
212 33.3
|
|
213 34.3
|
|
214 35.6
|
|
215 36.9
|
|
216 37.7
|
|
217 37.7
|
|
218 36.7
|
|
219 35.3
|
|
220 33.8
|
|
221 32.4
|
|
222 31.2
|
|
223 30.3
|
|
224 29.5
|
|
225 28.9
|
|
226 28.4
|
|
227 28.1
|
|
228 27.9
|
|
229 27.8
|
|
230 27.8
|
|
231 27.9
|
|
232 28.1
|
|
233 28.3
|
|
234 28.5
|
|
235 28.7
|
|
236 28.9
|
|
237 29
|
|
238 28.9
|
|
239 28.8
|
|
240 28.5
|
|
241 28.1
|
|
242 27.7
|
|
243 27.2
|
|
244 26.8
|
|
245 26.4
|
|
246 26
|
|
247 25.7
|
|
248 25.4
|
|
249 25.1
|
|
250 25
|
|
251 24.8
|
|
252 24.8
|
|
253 24.7
|
|
254 24.7
|
|
255 24.8
|
|
256 24.9
|
|
257 25.1
|
|
258 25.2
|
|
259 25.4
|
|
260 25.7
|
|
261 25.9
|
|
262 26.2
|
|
263 26.5
|
|
264 26.8
|
|
265 27.1
|
|
266 27.4
|
|
267 27.6
|
|
268 27.9
|
|
269 28.1
|
|
270 28.3
|
|
271 28.4
|
|
272 28.6
|
|
273 28.6
|
|
274 28.7
|
|
275 28.7
|
|
276 28.7
|
|
277 28.6
|
|
278 28.5
|
|
279 28.5
|
|
280 28.4
|
|
281 28.3
|
|
282 28.3
|
|
283 28.2
|
|
284 28.2
|
|
285 28.2
|
|
286 28.2
|
|
287 28.3
|
|
288 28.4
|
|
289 28.5
|
|
290 28.7
|
|
291 28.9
|
|
292 29.2
|
|
293 29.5
|
|
294 29.9
|
|
295 30.4
|
|
296 30.9
|
|
297 31.6
|
|
298 32.3
|
|
299 33
|
|
300 33.8
|
|
301 34.5
|
|
302 35
|
|
303 35
|
|
304 34.4
|
|
305 33.4
|
|
306 32
|
|
307 30.6
|
|
308 29.2
|
|
309 27.9
|
|
310 26.7
|
|
311 25.7
|
|
312 24.7
|
|
313 23.9
|
|
314 23.2
|
|
315 22.7
|
|
316 22.3
|
|
317 22
|
|
318 21.9
|
|
319 21.9
|
|
320 22.2
|
|
321 22.6
|
|
322 23.2
|
|
323 24.2
|
|
324 25.5
|
|
325 27.4
|
|
326 29.8
|
|
327 32.9
|
|
328 34.9
|
|
329 32.8
|
|
330 29.6
|
|
331 27.1
|
|
332 25.4
|
|
333 24.2
|
|
334 23.6
|
|
335 23.5
|
|
336 24.1
|
|
337 25.4
|
|
338 28.3
|
|
339 35.5
|
|
340 38.7
|
|
341 26.6
|
|
342 21.1
|
|
343 17.3
|
|
344 14.4
|
|
345 12
|
|
346 10
|
|
347 8.3
|
|
348 6.8
|
|
349 5.5
|
|
350 4.4
|
|
351 3.5
|
|
352 2.7
|
|
353 1.9
|
|
354 1.4
|
|
355 0.9
|
|
356 0.5
|
|
357 0.2
|
|
358 0.1
|
|
359 0
|