towerops/priv/antennas/ubiquiti-nbm3-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.8 KiB
Text

NAME NBM3 V-pol
MAKE Ubiquiti
FREQUENCY 3500
H_WIDTH 13
V_WIDTH 12
FRONT_TO_BACK 22
GAIN 22 dBi
TILT 0
POLARIZATION VERTICAL
COMMENT NanoBridge M
HORIZONTAL 360
0 0.1
1 0.3
2 0.6
3 1.1
4 1.8
5 2.6
6 3.6
7 4.8
8 6.3
9 8.1
10 10.2
11 12.8
12 16.1
13 20.4
14 25.3
15 25.8
16 22.7
17 20.5
18 19.2
19 18.7
20 18.8
21 19.3
22 20.2
23 21.7
24 23.7
25 26.5
26 30.6
27 36.3
28 36.9
29 32.2
30 29
31 27.1
32 25.9
33 25.2
34 24.9
35 24.8
36 25
37 25.3
38 25.9
39 26.6
40 27.5
41 28.6
42 29.8
43 31.4
44 33.4
45 35.9
46 39.5
47 45.2
48 49.2
49 42.7
50 38.3
51 35.4
52 33.3
53 31.9
54 30.8
55 30
56 29.4
57 29.1
58 28.9
59 29
60 29.2
61 29.7
62 30.3
63 31.1
64 32.2
65 33.6
66 35.3
67 37.5
68 40.2
69 43.3
70 45.2
71 43.5
72 40.7
73 38.3
74 36.3
75 34.8
76 33.6
77 32.5
78 31.6
79 30.9
80 30.2
81 29.6
82 29
83 28.5
84 28
85 27.6
86 27.2
87 26.8
88 26.5
89 26.1
90 25.8
91 25.6
92 25.3
93 25
94 24.8
95 24.6
96 24.4
97 24.3
98 24.1
99 24
100 23.9
101 23.8
102 23.8
103 23.8
104 23.8
105 23.8
106 23.8
107 23.8
108 23.9
109 23.9
110 24
111 24.1
112 24.1
113 24.2
114 24.3
115 24.3
116 24.4
117 24.5
118 24.5
119 24.6
120 24.7
121 24.7
122 24.8
123 24.9
124 25
125 25.2
126 25.4
127 25.6
128 25.8
129 26
130 26.3
131 26.6
132 26.9
133 27.3
134 27.6
135 27.9
136 28.3
137 28.6
138 28.9
139 29.3
140 29.7
141 30.1
142 30.5
143 31
144 31.6
145 32.2
146 32.9
147 33.7
148 34.4
149 35.2
150 35.8
151 36.2
152 36.4
153 36.4
154 36.4
155 36.3
156 36.4
157 36.6
158 36.9
159 37.3
160 37.8
161 38
162 37.7
163 36.7
164 35.2
165 33.5
166 31.9
167 30.3
168 29
169 27.8
170 26.7
171 25.8
172 25
173 24.3
174 23.7
175 23.3
176 23
177 22.7
178 22.6
179 22.6
180 22.6
181 22.8
182 23.1
183 23.5
184 23.9
185 24.5
186 25.1
187 25.8
188 26.6
189 27.4
190 28.2
191 29
192 29.7
193 30.3
194 30.9
195 31.3
196 31.7
197 31.9
198 32
199 32
200 31.9
201 31.7
202 31.5
203 31.2
204 30.8
205 30.5
206 30.2
207 29.9
208 29.6
209 29.3
210 29.1
211 28.9
212 28.7
213 28.6
214 28.5
215 28.5
216 28.4
217 28.4
218 28.5
219 28.5
220 28.5
221 28.5
222 28.5
223 28.5
224 28.5
225 28.4
226 28.4
227 28.3
228 28.2
229 28.1
230 27.9
231 27.8
232 27.7
233 27.5
234 27.4
235 27.3
236 27.1
237 27
238 26.8
239 26.7
240 26.6
241 26.4
242 26.3
243 26.1
244 26
245 25.9
246 25.7
247 25.6
248 25.5
249 25.5
250 25.4
251 25.4
252 25.4
253 25.4
254 25.4
255 25.5
256 25.6
257 25.7
258 25.8
259 26
260 26.2
261 26.5
262 26.8
263 27.1
264 27.5
265 27.9
266 28.3
267 28.8
268 29.3
269 29.9
270 30.5
271 31.2
272 31.9
273 32.7
274 33.5
275 34.4
276 35.2
277 35.9
278 36.4
279 36.7
280 36.6
281 36.2
282 35.6
283 34.9
284 34.1
285 33.4
286 32.7
287 32
288 31.4
289 31
290 30.6
291 30.3
292 30.1
293 30.1
294 30.1
295 30.4
296 30.8
297 31.4
298 32.2
299 33.3
300 34.7
301 36.4
302 38.4
303 40.3
304 41
305 39.8
306 38
307 36.3
308 34.9
309 33.8
310 32.9
311 32.2
312 31.7
313 31.2
314 30.8
315 30.4
316 29.9
317 29.5
318 29.1
319 28.7
320 28.3
321 28
322 27.9
323 27.9
324 28.1
325 28.5
326 29.3
327 30.6
328 32.3
329 34.5
330 35.1
331 32.7
332 29.4
333 26.6
334 24.4
335 22.7
336 21.5
337 20.6
338 20.3
339 20.3
340 21
341 22.3
342 24.3
343 25.8
344 23.3
345 19.1
346 15.5
347 12.5
348 10.1
349 8.1
350 6.4
351 4.9
352 3.7
353 2.7
354 1.9
355 1.2
356 0.7
357 0.3
358 0.1
359 0
VERTICAL 360
0 0
1 0.2
2 0.5
3 1
4 1.8
5 2.7
6 3.9
7 5.3
8 7.1
9 9
10 11.3
11 13.5
12 15.5
13 16.7
14 17.1
15 17.3
16 17.7
17 18.4
18 19.6
19 21.3
20 23.6
21 26.6
22 30.2
23 33.9
24 35.8
25 35.9
26 35.9
27 36.3
28 36.4
29 35.6
30 34.2
31 33
32 32.3
33 32.2
34 32.7
35 33.8
36 35.8
37 38.6
38 42
39 43.5
40 41.6
41 39.4
42 37.9
43 37.2
44 37.1
45 37.3
46 37.7
47 38.2
48 38.5
49 38.6
50 38.7
51 38.7
52 38.7
53 38.8
54 39
55 39.2
56 39.3
57 39.3
58 39.2
59 39.3
60 39.4
61 39.8
62 40.4
63 41.4
64 42.5
65 43.6
66 44
67 43.1
68 41.6
69 39.9
70 38.5
71 37.3
72 36.3
73 35.6
74 35
75 34.7
76 34.4
77 34.3
78 34.2
79 34.2
80 34.3
81 34.4
82 34.5
83 34.7
84 34.9
85 35.1
86 35.4
87 35.7
88 36.1
89 36.5
90 37
91 37.5
92 38.1
93 38.9
94 39.7
95 40.6
96 41.7
97 42.8
98 44
99 44.9
100 45.3
101 44.8
102 43.7
103 42.3
104 40.8
105 39.4
106 38.2
107 37.1
108 36.1
109 35.2
110 34.5
111 33.8
112 33.2
113 32.7
114 32.3
115 31.9
116 31.6
117 31.3
118 31
119 30.7
120 30.5
121 30.3
122 30.1
123 29.9
124 29.6
125 29.4
126 29.2
127 29
128 28.7
129 28.5
130 28.3
131 28
132 27.8
133 27.7
134 27.6
135 27.5
136 27.5
137 27.6
138 27.7
139 27.9
140 28
141 28.2
142 28.3
143 28.3
144 28.2
145 28
146 27.8
147 27.5
148 27.3
149 27.1
150 27.1
151 27.1
152 27.4
153 27.7
154 28.2
155 28.8
156 29.4
157 29.8
158 30
159 29.9
160 29.6
161 29.3
162 29.1
163 28.9
164 29
165 29.2
166 29.6
167 30.2
168 31.1
169 32.4
170 34.4
171 37.4
172 40.5
173 37.8
174 33
175 29.4
176 26.8
177 24.9
178 23.5
179 22.6
180 22.1
181 22
182 22.4
183 23.2
184 24.6
185 26.6
186 29.5
187 33.6
188 37
189 35.1
190 32.3
191 30.7
192 30.1
193 30.4
194 31.5
195 33.1
196 34.6
197 34.9
198 33.8
199 32.5
200 31.7
201 31.7
202 32.2
203 33.4
204 34.9
205 35.6
206 35
207 33.6
208 32.4
209 31.9
210 31.9
211 32.5
212 33.6
213 34.7
214 34.8
215 33.7
216 32.1
217 30.9
218 30.2
219 30.1
220 30.7
221 32
222 34.5
223 38.9
224 47.7
225 42.4
226 36.1
227 32.6
228 30.6
229 29.3
230 28.5
231 28.1
232 28
233 27.9
234 27.9
235 27.7
236 27.4
237 27
238 26.5
239 26
240 25.7
241 25.5
242 25.4
243 25.5
244 25.8
245 26.1
246 26.5
247 26.9
248 27.3
249 27.6
250 27.8
251 27.9
252 27.9
253 27.9
254 27.8
255 27.8
256 27.9
257 28
258 28.2
259 28.4
260 28.6
261 28.8
262 29
263 29.1
264 29.1
265 29.1
266 29
267 28.9
268 28.8
269 28.6
270 28.5
271 28.3
272 28.2
273 28.1
274 27.9
275 27.8
276 27.7
277 27.6
278 27.4
279 27.3
280 27.1
281 27
282 26.8
283 26.7
284 26.5
285 26.4
286 26.3
287 26.2
288 26.1
289 26
290 26
291 26
292 26
293 26
294 26.1
295 26.2
296 26.4
297 26.5
298 26.7
299 27
300 27.3
301 27.6
302 28
303 28.5
304 29.1
305 29.7
306 30.4
307 31.2
308 32.1
309 33
310 34
311 35
312 35.9
313 36.6
314 37
315 37.2
316 36.9
317 36.4
318 35.6
319 34.6
320 33.6
321 32.7
322 31.7
323 30.9
324 30.2
325 29.5
326 29
327 28.5
328 28
329 27.5
330 26.7
331 25.8
332 24.8
333 23.7
334 22.6
335 21.6
336 20.7
337 20.1
338 19.7
339 19.5
340 19.8
341 20.6
342 21.9
343 23.9
344 25.5
345 23.3
346 19.2
347 15.6
348 12.6
349 10.2
350 8.1
351 6.4
352 4.9
353 3.6
354 2.6
355 1.7
356 1
357 0.5
358 0.2
359 0