towerops/priv/antennas/ubiquiti-nbm3-hpol.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 H-pol
MAKE Ubiquiti
FREQUENCY 3500
H_WIDTH 13
V_WIDTH 12
FRONT_TO_BACK 27
GAIN 22 dBi
TILT 0
POLARIZATION HORIZONTAL
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.5
7 4.7
8 6.1
9 7.7
10 9.6
11 11.9
12 14.8
13 18.6
14 24.1
15 33.3
16 30.2
17 24.8
18 22.1
19 20.7
20 20.1
21 20
22 20.3
23 20.9
24 21.8
25 23.1
26 24.6
27 26.5
28 28.7
29 31.4
30 34.7
31 39
32 45.3
33 59.1
34 53.6
35 47.7
36 45.4
37 44.4
38 43.9
39 43.7
40 43.4
41 43.1
42 42.8
43 42.7
44 42.9
45 43.4
46 44.4
47 46.2
48 49.1
49 54.9
50 66
51 52.4
52 46.7
53 43.2
54 40.7
55 38.8
56 37.3
57 36.1
58 35.2
59 34.4
60 33.8
61 33.2
62 32.8
63 32.4
64 32.1
65 31.8
66 31.6
67 31.4
68 31.3
69 31.1
70 31.1
71 31
72 31
73 31
74 31.1
75 31.3
76 31.5
77 31.7
78 32
79 32.4
80 32.9
81 33.4
82 34.1
83 34.8
84 35.7
85 36.8
86 38
87 39.5
88 41.3
89 43.6
90 46.7
91 50.6
92 52.5
93 49.1
94 45.5
95 42.7
96 40.6
97 38.9
98 37.5
99 36.4
100 35.4
101 34.5
102 33.8
103 33.2
104 32.6
105 32.1
106 31.7
107 31.4
108 31
109 30.8
110 30.5
111 30.3
112 30.2
113 30
114 29.9
115 29.8
116 29.8
117 29.7
118 29.7
119 29.8
120 29.8
121 29.9
122 30
123 30.2
124 30.4
125 30.6
126 30.8
127 31.1
128 31.4
129 31.7
130 32
131 32.4
132 32.7
133 33
134 33.3
135 33.6
136 33.9
137 34.1
138 34.3
139 34.5
140 34.6
141 34.7
142 34.7
143 34.8
144 34.8
145 34.9
146 34.9
147 35
148 35.1
149 35.2
150 35.3
151 35.4
152 35.5
153 35.5
154 35.5
155 35.3
156 35.1
157 34.8
158 34.5
159 34.2
160 33.8
161 33.5
162 33.2
163 33
164 32.9
165 32.7
166 32.6
167 32.4
168 32.1
169 31.8
170 31.3
171 30.7
172 30
173 29.3
174 28.7
175 28.1
176 27.6
177 27.2
178 26.9
179 26.8
180 26.8
181 26.9
182 27.1
183 27.4
184 27.8
185 28.2
186 28.8
187 29.3
188 29.8
189 30.2
190 30.6
191 31
192 31.3
193 31.5
194 31.7
195 31.9
196 32.1
197 32.3
198 32.6
199 32.8
200 33
201 33.2
202 33.4
203 33.5
204 33.6
205 33.6
206 33.5
207 33.5
208 33.4
209 33.3
210 33.3
211 33.2
212 33.2
213 33.2
214 33.2
215 33.3
216 33.3
217 33.4
218 33.5
219 33.6
220 33.7
221 33.8
222 33.9
223 33.9
224 33.9
225 33.9
226 33.9
227 33.9
228 33.9
229 33.9
230 33.9
231 33.9
232 33.9
233 34
234 34
235 34
236 34.1
237 34.2
238 34.2
239 34.3
240 34.3
241 34.3
242 34.3
243 34.3
244 34.2
245 34.2
246 34.1
247 34.1
248 34
249 33.9
250 33.9
251 33.8
252 33.8
253 33.7
254 33.7
255 33.7
256 33.7
257 33.8
258 33.8
259 33.9
260 34
261 34.2
262 34.4
263 34.6
264 34.8
265 35
266 35.3
267 35.5
268 35.7
269 35.9
270 36.1
271 36.2
272 36.2
273 36.1
274 36
275 35.8
276 35.5
277 35.2
278 34.9
279 34.6
280 34.3
281 34.1
282 33.8
283 33.6
284 33.5
285 33.4
286 33.3
287 33.4
288 33.4
289 33.5
290 33.7
291 33.8
292 34.1
293 34.4
294 34.7
295 35.1
296 35.5
297 35.9
298 36.5
299 37.1
300 37.7
301 38.5
302 39.3
303 40.2
304 41.3
305 42.4
306 43.6
307 44.8
308 45.8
309 46.5
310 46.7
311 46.2
312 45.1
313 43.6
314 41.9
315 40.1
316 38.4
317 36.8
318 35.3
319 34
320 32.8
321 31.8
322 30.9
323 30.3
324 29.8
325 29.4
326 29.1
327 28.9
328 28.6
329 28.1
330 27.3
331 26.2
332 25
333 23.7
334 22.6
335 21.7
336 21.1
337 20.7
338 20.7
339 21.1
340 22.1
341 23.7
342 25.1
343 24.1
344 20.5
345 16.9
346 13.8
347 11.3
348 9.2
349 7.4
350 5.8
351 4.5
352 3.4
353 2.4
354 1.7
355 1.1
356 0.6
357 0.3
358 0.1
359 0
VERTICAL 360
0 0.1
1 0.4
2 0.9
3 1.6
4 2.4
5 3.5
6 4.9
7 6.5
8 8.5
9 10.9
10 13.6
11 16.3
12 18.2
13 18.7
14 18.4
15 18.2
16 18.5
17 19.4
18 20.9
19 23.3
20 26.5
21 30.3
22 32.5
23 31.1
24 29.4
25 28.7
26 28.8
27 29.6
28 30.4
29 30.8
30 30.1
31 29
32 28.1
33 27.5
34 27.4
35 27.7
36 28.4
37 29.2
38 30
39 30.4
40 30.3
41 29.9
42 29.4
43 29.2
44 29.3
45 29.6
46 30.1
47 30.9
48 31.7
49 32.3
50 32.9
51 33.2
52 33.5
53 34
54 34.6
55 35.6
56 37.1
57 39
58 41.4
59 43.8
60 45
61 44
62 42.5
63 41.3
64 40.6
65 40.3
66 40.3
67 40.4
68 40.4
69 40.1
70 39.5
71 38.6
72 37.7
73 36.9
74 36.3
75 35.9
76 35.7
77 35.7
78 36
79 36.4
80 37
81 37.9
82 38.9
83 40.1
84 41.2
85 42.1
86 42.2
87 41.5
88 40.4
89 39.1
90 38
91 36.9
92 36
93 35.2
94 34.6
95 34
96 33.6
97 33.3
98 33
99 32.8
100 32.7
101 32.7
102 32.8
103 32.9
104 33
105 33.3
106 33.6
107 34
108 34.4
109 34.9
110 35.5
111 36
112 36.7
113 37.3
114 38
115 38.6
116 39.1
117 39.5
118 39.7
119 39.6
120 39.2
121 38.7
122 38
123 37.4
124 36.7
125 36.1
126 35.5
127 34.9
128 34.4
129 33.9
130 33.4
131 32.9
132 32.5
133 32.1
134 31.8
135 31.6
136 31.4
137 31.2
138 31.1
139 30.9
140 30.8
141 30.8
142 30.7
143 30.7
144 30.8
145 30.9
146 31
147 31.1
148 31.2
149 31.2
150 31.1
151 30.9
152 30.6
153 30.4
154 30.2
155 30.1
156 30.1
157 30.3
158 30.5
159 30.8
160 31.3
161 31.9
162 32.5
163 32.9
164 33.1
165 33
166 32.6
167 32
168 31.6
169 31.3
170 31.4
171 32
172 33
173 34.4
174 35.7
175 35.3
176 33.1
177 30.6
178 28.4
179 26.8
180 25.6
181 24.8
182 24.5
183 24.5
184 24.9
185 25.7
186 27
187 28.8
188 31.5
189 35.4
190 41.7
191 50.3
192 42.5
193 38.4
194 36.6
195 35.9
196 35.9
197 36.5
198 37.4
199 38.7
200 40
201 40.8
202 40.1
203 38.1
204 35.9
205 34.1
206 32.6
207 31.7
208 31.3
209 31.4
210 32.1
211 33.3
212 35.1
213 36.7
214 36.6
215 34.9
216 33.1
217 31.8
218 31.1
219 31
220 31.4
221 32.1
222 32.7
223 32.5
224 31.3
225 29.6
226 28
227 26.7
228 25.7
229 25
230 24.6
231 24.3
232 24.1
233 24
234 23.8
235 23.7
236 23.6
237 23.5
238 23.4
239 23.5
240 23.8
241 24.1
242 24.7
243 25.4
244 26.2
245 27.1
246 27.9
247 28.7
248 29.1
249 29.3
250 29.3
251 29.2
252 29.1
253 29.1
254 29.1
255 29.3
256 29.5
257 29.7
258 30
259 30.2
260 30.4
261 30.4
262 30.3
263 30.2
264 30
265 29.7
266 29.5
267 29.3
268 29.1
269 28.9
270 28.7
271 28.6
272 28.5
273 28.3
274 28.2
275 28
276 27.8
277 27.6
278 27.3
279 27
280 26.7
281 26.4
282 26.1
283 25.8
284 25.4
285 25.1
286 24.8
287 24.5
288 24.2
289 23.9
290 23.6
291 23.3
292 23.1
293 22.9
294 22.7
295 22.5
296 22.4
297 22.3
298 22.3
299 22.3
300 22.4
301 22.5
302 22.7
303 22.9
304 23.3
305 23.7
306 24.2
307 24.9
308 25.7
309 26.7
310 27.8
311 29
312 30
313 30.4
314 29.9
315 28.7
316 27.2
317 25.8
318 24.5
319 23.4
320 22.5
321 21.8
322 21.3
323 20.9
324 20.7
325 20.7
326 20.8
327 21.1
328 21.5
329 22
330 22.5
331 22.9
332 23
333 23
334 22.6
335 22.2
336 21.9
337 21.7
338 22
339 22.7
340 24.3
341 27.3
342 32.1
343 29
344 22.5
345 18
346 14.6
347 11.9
348 9.6
349 7.7
350 6.1
351 4.7
352 3.6
353 2.6
354 1.7
355 1.1
356 0.6
357 0.2
358 0
359 0