towerops/priv/antennas/ubiquiti-nsm3-vpol.msi
Graham McIntire 3273312f6a feat: 198 real vendor .msi antenna patterns + Leaflet auto-load
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.
2026-05-06 15:09:29 -05:00

732 lines
6.7 KiB
Text

NAME NSM3 V-pol
MAKE Ubiquiti
FREQUENCY 3500
H_WIDTH 71
V_WIDTH 21
FRONT_TO_BACK 17
GAIN 13 dBi
TILT 0
POLARIZATION VERTICAL
COMMENT NanoStation M
HORIZONTAL 360
0 0
1 0
2 0.1
3 0.1
4 0.1
5 0.2
6 0.2
7 0.3
8 0.3
9 0.4
10 0.4
11 0.5
12 0.6
13 0.6
14 0.7
15 0.8
16 0.9
17 1
18 1.1
19 1.2
20 1.3
21 1.4
22 1.6
23 1.7
24 1.8
25 1.9
26 2.1
27 2.2
28 2.4
29 2.5
30 2.7
31 2.8
32 3
33 3.2
34 3.3
35 3.5
36 3.7
37 3.9
38 4.1
39 4.2
40 4.4
41 4.6
42 4.8
43 5
44 5.2
45 5.4
46 5.6
47 5.9
48 6.1
49 6.3
50 6.5
51 6.7
52 7
53 7.2
54 7.4
55 7.6
56 7.9
57 8.1
58 8.3
59 8.6
60 8.8
61 9
62 9.3
63 9.5
64 9.8
65 10
66 10.2
67 10.5
68 10.7
69 10.9
70 11.2
71 11.4
72 11.6
73 11.9
74 12.1
75 12.3
76 12.6
77 12.8
78 13
79 13.2
80 13.4
81 13.7
82 13.9
83 14.1
84 14.3
85 14.5
86 14.7
87 14.9
88 15.1
89 15.3
90 15.5
91 15.7
92 15.9
93 16
94 16.2
95 16.4
96 16.6
97 16.7
98 16.9
99 17.1
100 17.2
101 17.4
102 17.5
103 17.7
104 17.9
105 18
106 18.2
107 18.3
108 18.5
109 18.6
110 18.7
111 18.9
112 19
113 19.1
114 19.3
115 19.4
116 19.5
117 19.7
118 19.8
119 19.9
120 20
121 20.1
122 20.2
123 20.3
124 20.4
125 20.4
126 20.5
127 20.5
128 20.6
129 20.6
130 20.6
131 20.6
132 20.5
133 20.5
134 20.4
135 20.4
136 20.3
137 20.2
138 20.1
139 20
140 19.8
141 19.7
142 19.6
143 19.4
144 19.2
145 19.1
146 18.9
147 18.8
148 18.6
149 18.5
150 18.3
151 18.1
152 18
153 17.9
154 17.7
155 17.6
156 17.5
157 17.4
158 17.3
159 17.2
160 17.1
161 17
162 17
163 16.9
164 16.9
165 16.8
166 16.8
167 16.8
168 16.8
169 16.8
170 16.8
171 16.9
172 16.9
173 17
174 17.1
175 17.2
176 17.2
177 17.4
178 17.5
179 17.6
180 17.7
181 17.9
182 18.1
183 18.2
184 18.4
185 18.6
186 18.8
187 19
188 19.2
189 19.5
190 19.7
191 19.9
192 20.1
193 20.3
194 20.6
195 20.8
196 21
197 21.1
198 21.3
199 21.5
200 21.6
201 21.7
202 21.8
203 21.8
204 21.9
205 21.9
206 21.9
207 21.8
208 21.7
209 21.7
210 21.6
211 21.4
212 21.3
213 21.2
214 21
215 20.9
216 20.7
217 20.6
218 20.4
219 20.3
220 20.2
221 20
222 19.9
223 19.7
224 19.6
225 19.5
226 19.3
227 19.2
228 19.1
229 19
230 18.9
231 18.8
232 18.7
233 18.6
234 18.4
235 18.3
236 18.2
237 18.1
238 18
239 17.9
240 17.8
241 17.7
242 17.6
243 17.5
244 17.4
245 17.3
246 17.2
247 17.1
248 16.9
249 16.8
250 16.7
251 16.6
252 16.4
253 16.3
254 16.1
255 16
256 15.8
257 15.7
258 15.5
259 15.3
260 15.2
261 15
262 14.8
263 14.6
264 14.4
265 14.2
266 14
267 13.8
268 13.6
269 13.4
270 13.2
271 13
272 12.8
273 12.6
274 12.4
275 12.2
276 12
277 11.7
278 11.5
279 11.3
280 11.1
281 10.9
282 10.6
283 10.4
284 10.2
285 10
286 9.8
287 9.5
288 9.3
289 9.1
290 8.9
291 8.7
292 8.4
293 8.2
294 8
295 7.8
296 7.6
297 7.4
298 7.2
299 7
300 6.8
301 6.6
302 6.3
303 6.1
304 5.9
305 5.8
306 5.6
307 5.4
308 5.2
309 5
310 4.8
311 4.6
312 4.4
313 4.3
314 4.1
315 3.9
316 3.7
317 3.6
318 3.4
319 3.3
320 3.1
321 2.9
322 2.8
323 2.6
324 2.5
325 2.4
326 2.2
327 2.1
328 2
329 1.8
330 1.7
331 1.6
332 1.5
333 1.4
334 1.3
335 1.1
336 1
337 1
338 0.9
339 0.8
340 0.7
341 0.6
342 0.5
343 0.5
344 0.4
345 0.3
346 0.3
347 0.2
348 0.2
349 0.2
350 0.1
351 0.1
352 0.1
353 0
354 0
355 0
356 0
357 0
358 0
359 0
VERTICAL 360
0 0
1 0
2 0.1
3 0.2
4 0.4
5 0.6
6 0.9
7 1.3
8 1.7
9 2.2
10 2.7
11 3.3
12 4
13 4.8
14 5.6
15 6.6
16 7.7
17 9
18 10.5
19 12.1
20 14
21 16.5
22 19.8
23 23.1
24 25.2
25 25.2
26 22.7
27 19.5
28 17.5
29 16.3
30 15.3
31 14.4
32 13.8
33 13.4
34 13
35 12.8
36 12.8
37 12.7
38 12.8
39 13
40 13.2
41 13.5
42 13.8
43 14.2
44 14.7
45 15.2
46 15.8
47 16.4
48 17.1
49 17.9
50 18.7
51 19.6
52 20.5
53 21.6
54 22.7
55 23.8
56 25.1
57 26.5
58 28
59 29.6
60 31.3
61 33.1
62 35
63 36.8
64 38.1
65 38.9
66 38.9
67 38.5
68 37.9
69 37.3
70 36.9
71 36.6
72 36.4
73 36.3
74 36.3
75 36.4
76 36.6
77 37
78 37.4
79 37.8
80 38.4
81 39
82 39.8
83 40.6
84 41.5
85 42.5
86 43.6
87 44.8
88 46
89 46.9
90 47.5
91 47.4
92 46.7
93 45.5
94 44.1
95 42.7
96 41.4
97 40.1
98 38.9
99 37.8
100 36.7
101 35.7
102 34.7
103 33.8
104 32.9
105 32.1
106 31.3
107 30.5
108 29.8
109 29.2
110 28.5
111 27.9
112 27.4
113 26.9
114 26.4
115 25.9
116 25.5
117 25.2
118 24.8
119 24.5
120 24.3
121 24.1
122 23.9
123 23.8
124 23.8
125 23.7
126 23.8
127 23.9
128 24
129 24.3
130 24.6
131 24.9
132 25.4
133 26
134 26.6
135 27.4
136 28.3
137 29.4
138 30.6
139 32
140 33.5
141 34.8
142 35.5
143 35.4
144 34.5
145 33.2
146 32
147 31
148 30.1
149 29.4
150 29
151 28.7
152 28.7
153 28.8
154 29
155 29.8
156 31.1
157 32.1
158 32.9
159 37.6
160 48.6
161 54.7
162 46.6
163 34.2
164 29
165 28.2
166 26.7
167 24.6
168 23.1
169 22.1
170 21.1
171 20.3
172 19.6
173 19
174 18.6
175 18.2
176 17.9
177 17.7
178 17.6
179 17.6
180 17.7
181 17.9
182 18.1
183 18.4
184 18.9
185 19.4
186 20.1
187 20.8
188 21.7
189 22.8
190 24
191 25.3
192 26.9
193 28.6
194 30.3
195 31.5
196 31.8
197 31.3
198 30.3
199 29.2
200 28.2
201 27.4
202 26.8
203 26.3
204 26.1
205 26
206 26
207 26.2
208 26.5
209 27
210 27.6
211 28.3
212 29.3
213 30.4
214 31.6
215 32.9
216 33.9
217 34.5
218 34.1
219 33.2
220 32
221 30.7
222 29.5
223 28.5
224 27.6
225 26.9
226 26.2
227 25.7
228 25.2
229 24.9
230 24.6
231 24.3
232 24.2
233 24.1
234 24
235 24
236 24
237 24.1
238 24.2
239 24.4
240 24.6
241 24.8
242 25
243 25.3
244 25.6
245 25.9
246 26.2
247 26.6
248 26.9
249 27.3
250 27.7
251 28.1
252 28.5
253 28.8
254 29.2
255 29.6
256 29.9
257 30.3
258 30.6
259 30.9
260 31.2
261 31.4
262 31.6
263 31.7
264 31.8
265 31.9
266 31.9
267 31.8
268 31.7
269 31.5
270 31.3
271 31
272 30.7
273 30.3
274 30
275 29.6
276 29.1
277 28.7
278 28.3
279 27.9
280 27.5
281 27.1
282 26.7
283 26.3
284 25.9
285 25.6
286 25.3
287 25
288 24.7
289 24.5
290 24.3
291 24.1
292 24
293 23.8
294 23.7
295 23.7
296 23.6
297 23.6
298 23.6
299 23.5
300 23.5
301 23.4
302 23.2
303 23
304 22.7
305 22.3
306 21.7
307 21.1
308 20.5
309 19.7
310 19
311 18.3
312 17.5
313 16.8
314 16.1
315 15.5
316 14.9
317 14.3
318 13.8
319 13.4
320 13
321 12.6
322 12.4
323 12.1
324 12
325 11.9
326 11.9
327 11.9
328 12.1
329 12.3
330 12.6
331 13
332 13.4
333 13.9
334 14.4
335 14.7
336 14.8
337 14.6
338 14
339 13
340 11.9
341 10.7
342 9.6
343 8.4
344 7.4
345 6.4
346 5.5
347 4.7
348 4
349 3.3
350 2.7
351 2.2
352 1.7
353 1.3
354 1
355 0.7
356 0.4
357 0.2
358 0.1
359 0