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

NAME NBM9 H-pol
MAKE Ubiquiti
FREQUENCY 915
H_WIDTH 45
V_WIDTH 39
FRONT_TO_BACK 17
GAIN 11 dBi
TILT 0
POLARIZATION HORIZONTAL
COMMENT NanoBridge M
HORIZONTAL 360
0 0
1 0
2 0.1
3 0.1
4 0.2
5 0.2
6 0.3
7 0.4
8 0.5
9 0.6
10 0.8
11 0.9
12 1.1
13 1.2
14 1.4
15 1.6
16 1.8
17 2
18 2.2
19 2.5
20 2.7
21 3
22 3.2
23 3.5
24 3.8
25 4.1
26 4.4
27 4.8
28 5.1
29 5.4
30 5.8
31 6.1
32 6.5
33 6.9
34 7.3
35 7.7
36 8.1
37 8.5
38 8.9
39 9.3
40 9.7
41 10.1
42 10.5
43 10.9
44 11.3
45 11.7
46 12.1
47 12.4
48 12.8
49 13.2
50 13.5
51 13.8
52 14.1
53 14.4
54 14.7
55 15
56 15.2
57 15.4
58 15.6
59 15.8
60 16
61 16.2
62 16.4
63 16.5
64 16.7
65 16.8
66 16.9
67 17
68 17.2
69 17.3
70 17.4
71 17.4
72 17.5
73 17.6
74 17.7
75 17.7
76 17.8
77 17.8
78 17.9
79 17.9
80 18
81 18
82 18
83 18
84 18
85 18
86 18
87 18
88 17.9
89 17.9
90 17.9
91 17.8
92 17.8
93 17.8
94 17.7
95 17.6
96 17.6
97 17.5
98 17.5
99 17.4
100 17.3
101 17.3
102 17.2
103 17.1
104 17
105 17
106 16.9
107 16.8
108 16.7
109 16.7
110 16.6
111 16.5
112 16.4
113 16.4
114 16.3
115 16.2
116 16.1
117 16.1
118 16
119 15.9
120 15.9
121 15.8
122 15.7
123 15.7
124 15.6
125 15.5
126 15.5
127 15.4
128 15.4
129 15.3
130 15.3
131 15.2
132 15.2
133 15.1
134 15.1
135 15.1
136 15.1
137 15
138 15
139 15
140 15
141 15
142 15
143 15.1
144 15.1
145 15.1
146 15.2
147 15.2
148 15.3
149 15.3
150 15.4
151 15.5
152 15.6
153 15.7
154 15.8
155 15.9
156 16
157 16.1
158 16.2
159 16.3
160 16.4
161 16.5
162 16.6
163 16.7
164 16.9
165 17
166 17.1
167 17.2
168 17.3
169 17.4
170 17.4
171 17.5
172 17.6
173 17.7
174 17.7
175 17.8
176 17.9
177 17.9
178 17.9
179 18
180 18
181 18
182 18
183 18
184 18
185 18
186 18
187 17.9
188 17.8
189 17.8
190 17.7
191 17.6
192 17.5
193 17.4
194 17.3
195 17.1
196 17
197 16.9
198 16.8
199 16.6
200 16.5
201 16.3
202 16.2
203 16.1
204 16
205 15.8
206 15.7
207 15.6
208 15.5
209 15.4
210 15.3
211 15.3
212 15.2
213 15.1
214 15.1
215 15
216 15
217 14.9
218 14.9
219 14.9
220 14.8
221 14.8
222 14.8
223 14.8
224 14.8
225 14.8
226 14.8
227 14.9
228 14.9
229 14.9
230 14.9
231 15
232 15
233 15.1
234 15.1
235 15.2
236 15.2
237 15.3
238 15.3
239 15.4
240 15.5
241 15.5
242 15.6
243 15.7
244 15.8
245 15.8
246 15.9
247 16
248 16
249 16.1
250 16.2
251 16.3
252 16.3
253 16.4
254 16.5
255 16.6
256 16.6
257 16.7
258 16.7
259 16.8
260 16.9
261 16.9
262 17
263 17
264 17
265 17.1
266 17.1
267 17.1
268 17.1
269 17.2
270 17.2
271 17.2
272 17.2
273 17.2
274 17.2
275 17.1
276 17.1
277 17.1
278 17.1
279 17
280 17
281 16.9
282 16.9
283 16.8
284 16.8
285 16.7
286 16.7
287 16.6
288 16.5
289 16.5
290 16.4
291 16.3
292 16.2
293 16.2
294 16.1
295 16
296 15.9
297 15.7
298 15.6
299 15.5
300 15.3
301 15.2
302 15
303 14.8
304 14.5
305 14.3
306 14
307 13.7
308 13.4
309 13.1
310 12.8
311 12.4
312 12
313 11.7
314 11.3
315 10.9
316 10.5
317 10.1
318 9.6
319 9.2
320 8.8
321 8.4
322 8
323 7.6
324 7.2
325 6.8
326 6.4
327 6.1
328 5.7
329 5.4
330 5
331 4.7
332 4.4
333 4
334 3.7
335 3.4
336 3.2
337 2.9
338 2.6
339 2.4
340 2.2
341 1.9
342 1.7
343 1.5
344 1.3
345 1.2
346 1
347 0.9
348 0.7
349 0.6
350 0.5
351 0.4
352 0.3
353 0.2
354 0.1
355 0.1
356 0
357 0
358 0
359 0
VERTICAL 360
0 0.1
1 0
2 0
3 0
4 0
5 0
6 0.1
7 0.1
8 0.2
9 0.3
10 0.4
11 0.6
12 0.7
13 0.9
14 1.1
15 1.3
16 1.6
17 1.8
18 2.1
19 2.4
20 2.8
21 3.1
22 3.5
23 3.9
24 4.4
25 4.9
26 5.4
27 5.9
28 6.4
29 7
30 7.7
31 8.3
32 9
33 9.7
34 10.4
35 11.2
36 12
37 12.8
38 13.6
39 14.4
40 15.2
41 15.9
42 16.5
43 17.1
44 17.6
45 17.9
46 18.2
47 18.3
48 18.4
49 18.4
50 18.4
51 18.4
52 18.3
53 18.2
54 18.2
55 18.1
56 18
57 18
58 17.9
59 17.9
60 17.8
61 17.8
62 17.7
63 17.6
64 17.5
65 17.4
66 17.2
67 17.1
68 16.9
69 16.7
70 16.5
71 16.3
72 16.1
73 15.9
74 15.7
75 15.5
76 15.3
77 15.1
78 14.9
79 14.7
80 14.5
81 14.3
82 14.1
83 14
84 13.8
85 13.7
86 13.5
87 13.4
88 13.3
89 13.2
90 13.1
91 13
92 12.9
93 12.8
94 12.7
95 12.7
96 12.6
97 12.5
98 12.5
99 12.4
100 12.4
101 12.4
102 12.3
103 12.3
104 12.3
105 12.3
106 12.3
107 12.3
108 12.3
109 12.3
110 12.3
111 12.3
112 12.3
113 12.3
114 12.4
115 12.4
116 12.4
117 12.5
118 12.5
119 12.5
120 12.6
121 12.6
122 12.7
123 12.8
124 12.8
125 12.9
126 13
127 13
128 13.1
129 13.2
130 13.3
131 13.4
132 13.5
133 13.6
134 13.7
135 13.7
136 13.8
137 13.9
138 14
139 14.1
140 14.2
141 14.3
142 14.4
143 14.5
144 14.6
145 14.7
146 14.8
147 14.9
148 15
149 15.1
150 15.2
151 15.3
152 15.4
153 15.5
154 15.6
155 15.7
156 15.9
157 16
158 16.1
159 16.3
160 16.4
161 16.6
162 16.7
163 16.9
164 17.1
165 17.3
166 17.5
167 17.7
168 17.9
169 18
170 18.2
171 18.4
172 18.5
173 18.6
174 18.6
175 18.6
176 18.6
177 18.5
178 18.3
179 18.1
180 17.9
181 17.6
182 17.4
183 17.1
184 16.8
185 16.5
186 16.2
187 15.9
188 15.7
189 15.5
190 15.3
191 15.1
192 14.9
193 14.8
194 14.7
195 14.6
196 14.5
197 14.5
198 14.4
199 14.4
200 14.4
201 14.3
202 14.3
203 14.2
204 14.1
205 14
206 13.9
207 13.7
208 13.5
209 13.3
210 13.1
211 12.8
212 12.5
213 12.2
214 12
215 11.7
216 11.4
217 11.2
218 10.9
219 10.7
220 10.5
221 10.3
222 10.1
223 10
224 9.9
225 9.8
226 9.8
227 9.7
228 9.7
229 9.7
230 9.8
231 9.9
232 10
233 10.1
234 10.2
235 10.4
236 10.6
237 10.9
238 11.1
239 11.4
240 11.7
241 12.1
242 12.5
243 12.9
244 13.3
245 13.8
246 14.2
247 14.8
248 15.3
249 15.9
250 16.4
251 17
252 17.6
253 18.1
254 18.6
255 19
256 19.3
257 19.5
258 19.6
259 19.6
260 19.4
261 19.2
262 18.8
263 18.4
264 18
265 17.6
266 17.1
267 16.7
268 16.3
269 15.9
270 15.5
271 15.1
272 14.8
273 14.4
274 14.1
275 13.8
276 13.5
277 13.2
278 12.9
279 12.7
280 12.4
281 12.2
282 11.9
283 11.7
284 11.5
285 11.3
286 11.1
287 10.9
288 10.7
289 10.5
290 10.3
291 10.2
292 10
293 9.8
294 9.7
295 9.5
296 9.3
297 9.2
298 9
299 8.9
300 8.7
301 8.6
302 8.4
303 8.3
304 8.2
305 8.1
306 7.9
307 7.8
308 7.7
309 7.6
310 7.5
311 7.4
312 7.3
313 7.2
314 7.1
315 7
316 6.9
317 6.8
318 6.7
319 6.6
320 6.5
321 6.4
322 6.3
323 6.2
324 6.1
325 6
326 5.9
327 5.7
328 5.6
329 5.5
330 5.3
331 5.2
332 5
333 4.9
334 4.7
335 4.5
336 4.3
337 4.1
338 3.9
339 3.7
340 3.5
341 3.2
342 3
343 2.8
344 2.6
345 2.3
346 2.1
347 1.9
348 1.7
349 1.5
350 1.3
351 1.2
352 1
353 0.8
354 0.7
355 0.5
356 0.4
357 0.3
358 0.2
359 0.2