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 AM-M521-60-AC V-pol
|
|
MAKE Ubiquiti
|
|
FREQUENCY 5500
|
|
H_WIDTH 28
|
|
V_WIDTH 4
|
|
FRONT_TO_BACK 29
|
|
GAIN 21 dBi
|
|
TILT 2
|
|
POLARIZATION VERTICAL
|
|
COMMENT AirMax AC Base Station
|
|
HORIZONTAL 360
|
|
0 0
|
|
1 0.1
|
|
2 0.2
|
|
3 0.3
|
|
4 0.5
|
|
5 0.7
|
|
6 0.9
|
|
7 1.2
|
|
8 1.5
|
|
9 1.8
|
|
10 2.1
|
|
11 2.4
|
|
12 2.7
|
|
13 3
|
|
14 3.3
|
|
15 3.5
|
|
16 3.8
|
|
17 4
|
|
18 4.1
|
|
19 4.2
|
|
20 4.3
|
|
21 4.4
|
|
22 4.5
|
|
23 4.6
|
|
24 4.7
|
|
25 4.8
|
|
26 4.9
|
|
27 5
|
|
28 5.2
|
|
29 5.4
|
|
30 5.6
|
|
31 5.8
|
|
32 6.1
|
|
33 6.5
|
|
34 6.8
|
|
35 7.2
|
|
36 7.6
|
|
37 8.1
|
|
38 8.6
|
|
39 9.1
|
|
40 9.7
|
|
41 10.3
|
|
42 10.9
|
|
43 11.6
|
|
44 12.3
|
|
45 13
|
|
46 13.8
|
|
47 14.5
|
|
48 15.3
|
|
49 16.1
|
|
50 17
|
|
51 17.8
|
|
52 18.7
|
|
53 19.6
|
|
54 20.5
|
|
55 21.4
|
|
56 22.3
|
|
57 23.3
|
|
58 24.2
|
|
59 25.2
|
|
60 26.1
|
|
61 27
|
|
62 27.9
|
|
63 28.8
|
|
64 29.6
|
|
65 30.4
|
|
66 31.1
|
|
67 31.8
|
|
68 32.4
|
|
69 33
|
|
70 33.5
|
|
71 34
|
|
72 34.5
|
|
73 35
|
|
74 35.4
|
|
75 35.9
|
|
76 36.3
|
|
77 36.8
|
|
78 37.3
|
|
79 37.8
|
|
80 38.3
|
|
81 38.8
|
|
82 39.3
|
|
83 39.8
|
|
84 40.3
|
|
85 40.7
|
|
86 41.1
|
|
87 41.4
|
|
88 41.6
|
|
89 41.7
|
|
90 41.7
|
|
91 41.7
|
|
92 41.6
|
|
93 41.4
|
|
94 41.2
|
|
95 41
|
|
96 40.8
|
|
97 40.5
|
|
98 40.3
|
|
99 40.1
|
|
100 39.9
|
|
101 39.8
|
|
102 39.7
|
|
103 39.6
|
|
104 39.5
|
|
105 39.4
|
|
106 39.4
|
|
107 39.4
|
|
108 39.5
|
|
109 39.5
|
|
110 39.6
|
|
111 39.6
|
|
112 39.7
|
|
113 39.8
|
|
114 39.8
|
|
115 39.8
|
|
116 39.8
|
|
117 39.7
|
|
118 39.7
|
|
119 39.6
|
|
120 39.4
|
|
121 39.3
|
|
122 39.1
|
|
123 38.9
|
|
124 38.6
|
|
125 38.3
|
|
126 37.9
|
|
127 37.6
|
|
128 37.1
|
|
129 36.7
|
|
130 36.2
|
|
131 35.8
|
|
132 35.3
|
|
133 34.9
|
|
134 34.6
|
|
135 34.2
|
|
136 34
|
|
137 33.8
|
|
138 33.6
|
|
139 33.6
|
|
140 33.6
|
|
141 33.7
|
|
142 33.8
|
|
143 33.9
|
|
144 34.1
|
|
145 34.2
|
|
146 34.2
|
|
147 34.2
|
|
148 33.9
|
|
149 33.5
|
|
150 33
|
|
151 32.4
|
|
152 31.8
|
|
153 31.2
|
|
154 30.7
|
|
155 30.2
|
|
156 29.8
|
|
157 29.6
|
|
158 29.4
|
|
159 29.3
|
|
160 29.4
|
|
161 29.6
|
|
162 29.8
|
|
163 30.2
|
|
164 30.7
|
|
165 31.3
|
|
166 31.8
|
|
167 32.3
|
|
168 32.7
|
|
169 32.8
|
|
170 32.7
|
|
171 32.3
|
|
172 31.8
|
|
173 31.2
|
|
174 30.7
|
|
175 30.2
|
|
176 29.7
|
|
177 29.4
|
|
178 29.3
|
|
179 29.2
|
|
180 29.3
|
|
181 29.4
|
|
182 29.7
|
|
183 30.2
|
|
184 30.7
|
|
185 31.2
|
|
186 31.8
|
|
187 32.3
|
|
188 32.7
|
|
189 32.8
|
|
190 32.7
|
|
191 32.3
|
|
192 31.8
|
|
193 31.3
|
|
194 30.7
|
|
195 30.2
|
|
196 29.8
|
|
197 29.6
|
|
198 29.4
|
|
199 29.3
|
|
200 29.4
|
|
201 29.6
|
|
202 29.8
|
|
203 30.2
|
|
204 30.7
|
|
205 31.2
|
|
206 31.8
|
|
207 32.4
|
|
208 33
|
|
209 33.5
|
|
210 33.9
|
|
211 34.2
|
|
212 34.2
|
|
213 34.2
|
|
214 34.1
|
|
215 33.9
|
|
216 33.8
|
|
217 33.7
|
|
218 33.6
|
|
219 33.6
|
|
220 33.6
|
|
221 33.8
|
|
222 34
|
|
223 34.2
|
|
224 34.6
|
|
225 34.9
|
|
226 35.3
|
|
227 35.8
|
|
228 36.2
|
|
229 36.7
|
|
230 37.1
|
|
231 37.6
|
|
232 37.9
|
|
233 38.3
|
|
234 38.6
|
|
235 38.9
|
|
236 39.1
|
|
237 39.3
|
|
238 39.4
|
|
239 39.6
|
|
240 39.7
|
|
241 39.7
|
|
242 39.8
|
|
243 39.8
|
|
244 39.8
|
|
245 39.8
|
|
246 39.7
|
|
247 39.6
|
|
248 39.6
|
|
249 39.5
|
|
250 39.5
|
|
251 39.4
|
|
252 39.4
|
|
253 39.4
|
|
254 39.5
|
|
255 39.6
|
|
256 39.7
|
|
257 39.8
|
|
258 39.9
|
|
259 40.1
|
|
260 40.3
|
|
261 40.5
|
|
262 40.8
|
|
263 41
|
|
264 41.2
|
|
265 41.4
|
|
266 41.6
|
|
267 41.7
|
|
268 41.7
|
|
269 41.7
|
|
270 41.6
|
|
271 41.4
|
|
272 41.1
|
|
273 40.7
|
|
274 40.3
|
|
275 39.8
|
|
276 39.3
|
|
277 38.8
|
|
278 38.3
|
|
279 37.8
|
|
280 37.3
|
|
281 36.8
|
|
282 36.3
|
|
283 35.9
|
|
284 35.4
|
|
285 35
|
|
286 34.5
|
|
287 34
|
|
288 33.5
|
|
289 33
|
|
290 32.4
|
|
291 31.8
|
|
292 31.1
|
|
293 30.4
|
|
294 29.6
|
|
295 28.8
|
|
296 27.9
|
|
297 27
|
|
298 26.1
|
|
299 25.2
|
|
300 24.2
|
|
301 23.3
|
|
302 22.3
|
|
303 21.4
|
|
304 20.5
|
|
305 19.6
|
|
306 18.7
|
|
307 17.8
|
|
308 17
|
|
309 16.1
|
|
310 15.3
|
|
311 14.5
|
|
312 13.8
|
|
313 13
|
|
314 12.3
|
|
315 11.6
|
|
316 10.9
|
|
317 10.3
|
|
318 9.7
|
|
319 9.1
|
|
320 8.6
|
|
321 8.1
|
|
322 7.6
|
|
323 7.2
|
|
324 6.8
|
|
325 6.5
|
|
326 6.1
|
|
327 5.8
|
|
328 5.6
|
|
329 5.4
|
|
330 5.2
|
|
331 5
|
|
332 4.9
|
|
333 4.8
|
|
334 4.7
|
|
335 4.6
|
|
336 4.5
|
|
337 4.4
|
|
338 4.3
|
|
339 4.2
|
|
340 4.1
|
|
341 4
|
|
342 3.8
|
|
343 3.5
|
|
344 3.3
|
|
345 3
|
|
346 2.7
|
|
347 2.4
|
|
348 2.1
|
|
349 1.8
|
|
350 1.5
|
|
351 1.2
|
|
352 0.9
|
|
353 0.7
|
|
354 0.5
|
|
355 0.3
|
|
356 0.2
|
|
357 0.1
|
|
358 0
|
|
359 0
|
|
VERTICAL 360
|
|
0 1.5
|
|
1 0.1
|
|
2 0
|
|
3 1.4
|
|
4 4.5
|
|
5 11
|
|
6 29.8
|
|
7 13.1
|
|
8 10.1
|
|
9 10.7
|
|
10 14.2
|
|
11 23.1
|
|
12 25.6
|
|
13 19.5
|
|
14 19.7
|
|
15 25.1
|
|
16 40.1
|
|
17 23.7
|
|
18 20.8
|
|
19 21.7
|
|
20 25.3
|
|
21 26.7
|
|
22 23.3
|
|
23 22.1
|
|
24 23.6
|
|
25 28.2
|
|
26 27.6
|
|
27 22.5
|
|
28 20
|
|
29 19.5
|
|
30 20.7
|
|
31 23.5
|
|
32 28.5
|
|
33 37.3
|
|
34 41.2
|
|
35 37.6
|
|
36 38.4
|
|
37 41.7
|
|
38 46.9
|
|
39 55.7
|
|
40 38.4
|
|
41 31.3
|
|
42 27.1
|
|
43 24.6
|
|
44 23.2
|
|
45 23
|
|
46 24.6
|
|
47 26
|
|
48 27.3
|
|
49 28.6
|
|
50 29.8
|
|
51 31
|
|
52 32.1
|
|
53 33.1
|
|
54 34.1
|
|
55 35.1
|
|
56 36
|
|
57 36.8
|
|
58 37.4
|
|
59 37.8
|
|
60 37.9
|
|
61 37.8
|
|
62 37.3
|
|
63 36.5
|
|
64 35.7
|
|
65 34.5
|
|
66 33.3
|
|
67 32.3
|
|
68 31.5
|
|
69 30.9
|
|
70 30.5
|
|
71 30.2
|
|
72 30
|
|
73 29.9
|
|
74 29.7
|
|
75 29.7
|
|
76 29.6
|
|
77 29.6
|
|
78 29.6
|
|
79 29.6
|
|
80 29.7
|
|
81 29.7
|
|
82 29.7
|
|
83 29.8
|
|
84 29.8
|
|
85 29.9
|
|
86 29.9
|
|
87 29.9
|
|
88 29.9
|
|
89 29.9
|
|
90 29.9
|
|
91 29.9
|
|
92 29.9
|
|
93 29.8
|
|
94 29.7
|
|
95 29.7
|
|
96 29.6
|
|
97 29.5
|
|
98 29.4
|
|
99 29.3
|
|
100 29.1
|
|
101 29
|
|
102 28.9
|
|
103 28.9
|
|
104 28.8
|
|
105 28.7
|
|
106 28.7
|
|
107 28.8
|
|
108 28.9
|
|
109 29
|
|
110 29.2
|
|
111 29.5
|
|
112 29.8
|
|
113 30.1
|
|
114 30.5
|
|
115 30.9
|
|
116 31.1
|
|
117 31.3
|
|
118 31.3
|
|
119 31
|
|
120 30.6
|
|
121 30.2
|
|
122 29.6
|
|
123 29.2
|
|
124 28.8
|
|
125 28.5
|
|
126 28.4
|
|
127 28.5
|
|
128 28.7
|
|
129 29.2
|
|
130 29.8
|
|
131 30.6
|
|
132 31.5
|
|
133 32.2
|
|
134 32.6
|
|
135 32.4
|
|
136 31.7
|
|
137 30.9
|
|
138 30.3
|
|
139 29.8
|
|
140 29.6
|
|
141 29.8
|
|
142 30.2
|
|
143 31
|
|
144 32
|
|
145 32.8
|
|
146 32.8
|
|
147 32
|
|
148 30.8
|
|
149 29.7
|
|
150 28.8
|
|
151 28.4
|
|
152 28.4
|
|
153 28.9
|
|
154 30
|
|
155 31.8
|
|
156 34.2
|
|
157 36.3
|
|
158 35.4
|
|
159 32.7
|
|
160 30.5
|
|
161 29
|
|
162 28.2
|
|
163 28.1
|
|
164 28.6
|
|
165 29.9
|
|
166 32.1
|
|
167 34.1
|
|
168 33.8
|
|
169 33.6
|
|
170 32.6
|
|
171 31.4
|
|
172 30.4
|
|
173 29.7
|
|
174 29.2
|
|
175 29.1
|
|
176 29.1
|
|
177 29.1
|
|
178 29.2
|
|
179 29.2
|
|
180 32.6
|
|
181 31.1
|
|
182 29.7
|
|
183 28.7
|
|
184 28.2
|
|
185 28
|
|
186 27.9
|
|
187 27.8
|
|
188 28.3
|
|
189 31.7
|
|
190 37.7
|
|
191 38.6
|
|
192 32.2
|
|
193 28.6
|
|
194 26.6
|
|
195 25.5
|
|
196 25.3
|
|
197 25.8
|
|
198 27
|
|
199 29.3
|
|
200 33.1
|
|
201 37.6
|
|
202 35.2
|
|
203 30.8
|
|
204 27.9
|
|
205 26.2
|
|
206 25.3
|
|
207 25
|
|
208 25.3
|
|
209 26.2
|
|
210 27.6
|
|
211 29.8
|
|
212 32.5
|
|
213 34.4
|
|
214 33.3
|
|
215 30.9
|
|
216 28.9
|
|
217 27.6
|
|
218 26.9
|
|
219 26.6
|
|
220 26.8
|
|
221 27.5
|
|
222 28.7
|
|
223 30.3
|
|
224 32.4
|
|
225 34.3
|
|
226 34.6
|
|
227 33
|
|
228 31
|
|
229 29.3
|
|
230 28
|
|
231 27.1
|
|
232 26.5
|
|
233 26.2
|
|
234 26.1
|
|
235 26.3
|
|
236 26.6
|
|
237 27
|
|
238 27.6
|
|
239 28.2
|
|
240 28.8
|
|
241 29.3
|
|
242 29.5
|
|
243 29.5
|
|
244 29.3
|
|
245 29
|
|
246 28.5
|
|
247 28.1
|
|
248 27.7
|
|
249 27.3
|
|
250 27
|
|
251 26.7
|
|
252 26.5
|
|
253 26.4
|
|
254 26.3
|
|
255 26.3
|
|
256 26.3
|
|
257 26.3
|
|
258 26.3
|
|
259 26.4
|
|
260 26.5
|
|
261 26.5
|
|
262 26.6
|
|
263 26.7
|
|
264 26.8
|
|
265 26.8
|
|
266 26.9
|
|
267 26.9
|
|
268 26.9
|
|
269 26.9
|
|
270 26.9
|
|
271 26.9
|
|
272 26.8
|
|
273 26.8
|
|
274 26.7
|
|
275 26.7
|
|
276 26.6
|
|
277 26.6
|
|
278 26.5
|
|
279 26.5
|
|
280 26.4
|
|
281 26.4
|
|
282 26.4
|
|
283 26.5
|
|
284 26.6
|
|
285 26.7
|
|
286 26.9
|
|
287 27.2
|
|
288 27.5
|
|
289 28
|
|
290 28.6
|
|
291 29.5
|
|
292 30.7
|
|
293 32.2
|
|
294 33.8
|
|
295 35.2
|
|
296 36.6
|
|
297 37.7
|
|
298 38.6
|
|
299 39.2
|
|
300 39.6
|
|
301 39.8
|
|
302 39.8
|
|
303 39.7
|
|
304 39.7
|
|
305 39.7
|
|
306 39.7
|
|
307 39.8
|
|
308 40
|
|
309 40.2
|
|
310 40.5
|
|
311 40.9
|
|
312 41.3
|
|
313 41.9
|
|
314 39.8
|
|
315 40.6
|
|
316 43.3
|
|
317 47.8
|
|
318 56.3
|
|
319 38.3
|
|
320 30.5
|
|
321 25.5
|
|
322 22.4
|
|
323 20.6
|
|
324 20.3
|
|
325 21.6
|
|
326 25.8
|
|
327 40.8
|
|
328 26.2
|
|
329 20.5
|
|
330 18.3
|
|
331 18.2
|
|
332 20
|
|
333 24.7
|
|
334 34.9
|
|
335 29.8
|
|
336 27
|
|
337 30.2
|
|
338 44.8
|
|
339 26.8
|
|
340 22.4
|
|
341 21.9
|
|
342 24.9
|
|
343 31.2
|
|
344 24.9
|
|
345 21.5
|
|
346 22.3
|
|
347 25.6
|
|
348 19.6
|
|
349 14.6
|
|
350 12.4
|
|
351 12.6
|
|
352 15.9
|
|
353 27.6
|
|
354 21.9
|
|
355 16.2
|
|
356 16.5
|
|
357 17
|
|
358 9.7
|
|
359 4.5
|