Executive summaryResumen ejecutivo
A 14-day audit of all 200 devices at WellBred Cannabis. 83 devices returned telemetry and were flagged; the remaining 116 devices were rate-limited during the public-API pull and require a re-audit pass. Of the audited fleet: 26 healthy, 9 watch, 48 critical, 1 confirmed silent. Two structural findings dominate: (1) a single node — H3210010046 — is shipping packets with a p95 travel_time of 210 seconds (normal is <200ms), indicating a broken mesh path in Dry Room 2; and (2) 1 node(s) report battery voltage near zero while radio traffic is nominal — the battery ADC has failed and the node should be swapped before the true battery state becomes invisible.Auditoría de 14 días de los 200 dispositivos en WellBred Cannabis. 83 dispositivos entregaron telemetría y fueron evaluados; los 116 dispositivos restantes fueron limitados por la API pública y requieren una nueva pasada. De los auditados: 26 sanos, 9 en observación, 48 críticos, 1 silenciosos confirmados. Dos hallazgos estructurales dominan: (1) un nodo — H3210010046 — envía paquetes con p95 travel_time de 210 segundos (lo normal es <200 ms), indicando ruta de malla rota en Dry Room 2; y (2) 1 nodo(s) reportan voltaje de batería cerca de cero mientras el radio funciona — el ADC de batería falló y el nodo debe reemplazarse antes de perder visibilidad de la batería real.
Fleet health at a glanceSalud de flota de un vistazo
1. Key findings1. Hallazgos principales
Mesh outlier — H3210010046 has 210-second packet travelAnomalía de malla — H3210010046 con travel de 210s
One node in Dry Room 2 is shipping packets with a p95 travel_time of 210 seconds and p99 of 287 seconds. Normal Wirepas hop time is under 200ms. This is not a signal problem (RSSI reads -80dBm to -66dBm — usable) — the node is failing to select a healthy parent, and packets are getting queued and retransmitted end-to-end. Data will appear delayed by minutes wherever this node is in the routing tree.Un nodo en Dry Room 2 envía paquetes con p95 travel_time de 210 segundos y p99 de 287 segundos. El tiempo normal por hop en Wirepas es <200ms. Esto no es problema de señal (RSSI -80dBm a -66dBm — utilizable) — el nodo no selecciona un padre sano, y los paquetes se encolan y retransmiten. Los datos aparecerán con minutos de retraso donde ese nodo esté en el árbol de ruteo.
Recommended: Reboot the node and check parent-selection metrics in Wirepas Studio. If persistent, decommission and re-provision.Recomendado: reiniciar el nodo y revisar métricas de selección de padre en Wirepas Studio. Si persiste, desprovisar y re-provisar.
Battery ADC fault — nodes reporting 0.006V while radio is nominalFalla ADC de batería — nodos reportando 0.006V con radio nominal
1 node(s) show battery voltage below 0.01V yet transmit reliable signal and travel_time telemetry. This is a hardware defect in the on-board voltage divider / ADC, not a dead battery. Left in place, the node continues to work — but you lose the ability to see when the actual battery is dying. The node will one day go silent with no warning.1 nodo(s) reportan voltaje bajo 0.01V pero transmiten señal y travel_time confiables. Es un defecto de hardware en el divisor / ADC, no batería agotada. El nodo sigue funcionando — pero se pierde la visibilidad del voltaje real. El nodo un día quedará silencioso sin aviso.
Recommended: Include in the next site visit swap batch. Priority P1 rather than P0 — device still functional.Recomendado: incluir en el próximo lote de reemplazo en visita. Prioridad P1 (aún funciona).
Substrate probe data gaps — ter12 sensors dropping for 20+ hoursVacíos en sondas de sustrato — ter12 caídas 20+ horas
34 of 45 audited ter12 substrate probes hit at least one continuous gap greater than 4 hours in the 14-day window. Native cadence is 3 minutes, so a 4-hour gap is 80× normal interval. Root cause is upstream mesh — when the parent node the ter12 talks to loses its route, everything downstream goes dark. This is not a probe hardware issue.34 de 45 sondas ter12 auditadas presentaron al menos un vacío continuo >4h en la ventana de 14 días. La cadencia nativa es de 3 minutos; un vacío de 4h es 80× el intervalo normal. La causa raíz es la malla — cuando el nodo padre pierde ruta, todo lo aguas abajo se apaga. No es problema de las sondas.
Recommended: cross-reference these gap events with the outlier-node timeline to identify the mesh event driving them.Recomendado: cruzar estos vacíos con la línea de tiempo del nodo anómalo para identificar el evento de malla que los provoca.
Incomplete audit coverage — API rate-limited on 111 devicesCobertura de auditoría incompleta — API limitó 111 dispositivos
The AROYA public API returned HTTP 429 for at least 4 of 7 two-day chunks on 116 of 200 devices. Spot-checks of the rate-limited devices confirmed they DO have data available when queried individually — this is a collection-time throttling artifact, not a device silence finding. Coverage this pass: 83/200 (42%).La API pública AROYA devolvió HTTP 429 en al menos 4 de 7 chunks (2 días c/u) para 116 de 200 dispositivos. Verificación manual confirmó que sí tienen datos — es un artefacto de throttling, no silencio real. Cobertura: 83/200 (42%).
Recommended: schedule a re-audit pass with lower concurrency (≤6 workers) after an API-quiet window to reach ≥95% coverage.Recomendado: nueva pasada con menor concurrencia (≤6 workers) en ventana sin tráfico para llegar a ≥95% cobertura.
Mesh depth reads 1–3 hops — architecture is healthyProfundidad de malla 1–3 hops — arquitectura sana
For the 34 nodes that returned travel_time data, inferred hop-depth clusters at 2 hops (p50 travel_time 40–70ms). Only 1 node reaches 3 hops on its normal path. This is a well-shaped mesh — the outliers above are individual device failures, not a topology problem.Para los 34 nodos con travel_time, la profundidad inferida se agrupa en 2 hops (p50 40–70ms). Solo 1 nodo llega a 3 hops. La malla está bien formada — los outliers de arriba son fallas de dispositivo individuales, no un problema de topología.
2. Device health scorecard2. Scorecard de salud de dispositivos
Fleet breakdown by modelDistribución de la flota por modelo
Every physical device grouped by AROYA modelKeyCada dispositivo agrupado por modelKey
| ModelModelo | TotalTotal | HealthySanos | WatchObs. | CriticalCrít. | SilentSilenc. | UnauditedNo auditados |
|---|---|---|---|---|---|---|
| node | 94 | 17 | 6 | 10 | 1 | 60 |
| ter12 | 79 | 8 | 3 | 34 | 0 | 34 |
| es-2 | 6 | 1 | 0 | 1 | 0 | 4 |
| repeater | 8 | 0 | 0 | 1 | 0 | 7 |
| atm14 | 7 | 0 | 0 | 2 | 0 | 5 |
| gateway | 3 | 0 | 0 | 0 | 0 | 3 |
| sink | 3 | 0 | 0 | 0 | 0 | 3 |
Device-by-device scorecardScorecard dispositivo por dispositivo
All 200 devices sorted by severity. Use filter buttons to isolate categories.Los 200 dispositivos por severidad. Filtros para aislar categorías.
| DeviceDispositivo | RoomSala | Battery p05Batería p05 | Signal p05Señal p05 | Travel p95Travel p95 | Max gapVacío máx | HopHop | StatusEstado | ReasonsRazones |
|---|---|---|---|---|---|---|---|---|
| A14G200004305 atm14 · id 68149 |
Dry Room 1 | — | — | — | 2883m | — | Critical | max gap 2883min > 240min CRIT |
| T12-00093380 ter12 · id 68181 |
Dry Room 1 | — | — | — | 2883m | — | Critical | max gap 2883min > 240min CRIT |
| T12-00093384 ter12 · id 68278 |
Dry Room 1 | — | — | — | 2880m | — | Critical | max gap 2880min > 240min CRIT |
| H3210009987 node · id 68226 |
Dry Room 2 | 3.86V | -73.00dBm | 90.00ms | 945m | 2 | Critical | max gap 942min > 240min CRIT |
| H3210010046 node · id 68271 |
Dry Room 2 | 4.05V | -90.00dBm | 210700ms | 375m | 3 | Critical | signal p05 -90dBm < -85dBm WARN; travel_time p95 210700ms > 350ms CRIT |
| T12-00093373 ter12 · id 68280 |
Dry Room 2 | — | — | — | 1383m | — | Critical | max gap 1383min > 240min CRIT |
| T12-00093378 ter12 · id 68262 |
Dry Room 2 | — | — | — | 918m | — | Critical | max gap 918min > 240min CRIT |
| T12-00093463 ter12 · id 68175 |
Dry Room 2 | — | — | — | 816m | — | Critical | max gap 816min > 240min CRIT |
| T12-00093476 ter12 · id 68236 |
Dry Room 2 | — | — | — | 1242m | — | Critical | max gap 1242min > 240min CRIT |
| A14G200004309 atm14 · id 68146 |
Flower 1 | — | — | — | 5763m | — | Critical | max gap 5763min > 240min CRIT |
| H1110005880 repeater · id 68138 |
Flower 1 | 4.14V | -78.00dBm | 110ms | 672m | 2 | Critical | max gap 672min > 240min CRIT |
| H3210010055 node · id 68225 |
Flower 1 | 3.83V | -84.00dBm | 130ms | 450m | 2 | Critical | max gap 447min > 240min CRIT |
| H3210010056 node · id 68230 |
Flower 1 | 3.77V | -88.00dBm | 150ms | 615m | 2 | Critical | signal p05 -88dBm < -85dBm WARN; max gap 609min > 240min CRIT |
| H3210010119 node · id 68224 |
Flower 1 | 3.82V | -76.00dBm | 130ms | 675m | 2 | Critical | max gap 669min > 240min CRIT |
| H3210018108 node · id 102386 |
Flower 1 | 3.83V | -88.00dBm | 140ms | 675m | 2 | Critical | signal p05 -88dBm < -85dBm WARN; max gap 672min > 240min CRIT |
| T12-00093186 ter12 · id 68242 |
Flower 1 | — | — | — | 687m | — | Critical | max gap 687min > 240min CRIT |
| T12-00093206 ter12 · id 68257 |
Flower 1 | — | — | — | 2994m | — | Critical | max gap 2994min > 240min CRIT |
| T12-00093301 ter12 · id 68317 |
Flower 1 | — | — | — | 864m | — | Critical | max gap 864min > 240min CRIT |
| T12-00093440 ter12 · id 68293 |
Flower 1 | — | — | — | 609m | — | Critical | max gap 609min > 240min CRIT |
| T12-00093455 ter12 · id 68201 |
Flower 1 | — | — | — | 960m | — | Critical | max gap 960min > 240min CRIT |
| T12-00093460 ter12 · id 68276 |
Flower 1 | — | — | — | 672m | — | Critical | max gap 672min > 240min CRIT |
| T12-00093504 ter12 · id 68220 |
Flower 1 | — | — | — | 816m | — | Critical | max gap 816min > 240min CRIT |
| T12-00093513 ter12 · id 68177 |
Flower 1 | — | — | — | 363m | — | Critical | max gap 363min > 240min CRIT |
| T12-00093526 ter12 · id 68176 |
Flower 1 | — | — | — | 1914m | — | Critical | max gap 1914min > 240min CRIT |
| T12-00093542 ter12 · id 68297 |
Flower 1 | — | — | — | 1128m | — | Critical | max gap 1128min > 240min CRIT |
| T12-00093548 ter12 · id 68234 |
Flower 1 | — | — | — | 1263m | — | Critical | max gap 1263min > 240min CRIT |
| T12-00093552 ter12 · id 68240 |
Flower 1 | — | — | — | 1398m | — | Critical | max gap 1398min > 240min CRIT |
| T12-00093555 ter12 · id 68196 |
Flower 1 | — | — | — | 630m | — | Critical | max gap 630min > 240min CRIT |
| H3210010074 node · id 68248 |
Flower 2 | 3.55V | -89.00dBm | 200ms | 945m | 2 | Critical | signal p05 -89dBm < -85dBm WARN; travel_time p95 200ms > 150ms WARN; max gap 936min > 240min CRIT |
| H3210010095 node · id 68184 |
Flower 2 | 3.95V | -78.00dBm | 120ms | 672m | 2 | Critical | max gap 423min > 240min CRIT |
| H3210010103 node · id 68173 |
Flower 2 | 3.62V | -69.00dBm | 100ms | 621m | 2 | Critical | max gap 618min > 240min CRIT |
| H3210018107 node · id 102387 |
Flower 2 | 3.44V | -81.00dBm | 120ms | 672m | 2 | Critical | max gap 669min > 240min CRIT |
| T12-00093160 ter12 · id 68258 |
Flower 2 | — | — | — | 3969m | — | Critical | max gap 3969min > 240min CRIT |
| T12-00093324 ter12 · id 68261 |
Flower 2 | — | — | — | 2883m | — | Critical | max gap 2883min > 240min CRIT |
| T12-00093341 ter12 · id 68194 |
Flower 2 | — | — | — | 2883m | — | Critical | max gap 2883min > 240min CRIT |
| T12-00093442 ter12 · id 68295 |
Flower 2 | — | — | — | 2880m | — | Critical | max gap 2880min > 240min CRIT |
| T12-00093456 ter12 · id 68238 |
Flower 2 | — | — | — | 5763m | — | Critical | max gap 5763min > 240min CRIT |
| T12-00093465 ter12 · id 68318 |
Flower 2 | — | — | — | 5763m | — | Critical | max gap 5763min > 240min CRIT |
| T12-00093505 ter12 · id 68294 |
Flower 2 | — | — | — | 5760m | — | Critical | max gap 5760min > 240min CRIT |
| T12-00093511 ter12 · id 68298 |
Flower 2 | — | — | — | 2883m | — | Critical | max gap 2883min > 240min CRIT |
| T12-00093541 ter12 · id 68254 |
Flower 2 | — | — | — | 6780m | — | Critical | max gap 6780min > 240min CRIT |
| H3210010110-es-2 es-2 · id 68162 |
Flower 3 | — | — | — | 4425m | — | Critical | max gap 4425min > 240min CRIT |
| T12-00093342 ter12 · id 68222 |
Flower 3 | — | — | — | 14400m | — | Critical | max gap 14400min > 240min CRIT |
| T12-00093357 ter12 · id 68320 |
Flower 3 | — | — | — | 1038m | — | Critical | max gap 1038min > 240min CRIT |
| T12-00093438 ter12 · id 68239 |
Flower 3 | — | — | — | 5673m | — | Critical | max gap 5673min > 240min CRIT |
| T12-00093516 ter12 · id 68216 |
Flower 3 | — | — | — | 2883m | — | Critical | max gap 2883min > 240min CRIT |
| T12-00093554 ter12 · id 68174 |
Flower 3 | — | — | — | 2883m | — | Critical | max gap 2883min > 240min CRIT |
| T12-00093561 ter12 · id 68219 |
Flower 3 | — | — | — | 1365m | — | Critical | max gap 1365min > 240min CRIT |
| H3210010081 node · id 68223 |
Dry Room 2 | — | — | — | — | — | Silent | no data returned by API across full 14d window |
| H3210010071 node · id 68252 |
Dry Room 2 | 0.01V | -80.00dBm | 160ms | 9.00m | 2 | Watch | battery ADC likely faulted (reads 0.006V; radio active); travel_time p95 160ms > 150ms WARN |
| T12-00093549 ter12 · id 68213 |
Dry Room 2 | — | — | — | 123m | — | Watch | max gap 123min > 60min WARN |
| T12-00093566 ter12 · id 68200 |
Dry Room 2 | — | — | — | 114m | — | Watch | max gap 114min > 60min WARN |
| H3210010034 node · id 68289 |
Flower 1 | 3.93V | -82.00dBm | 160ms | 15.00m | 2 | Watch | travel_time p95 160ms > 150ms WARN |
| H3210018036 node · id 102392 |
Flower 1 | 4.00V | -78.00dBm | 110ms | 78.00m | 2 | Watch | max gap 78min > 60min WARN |
| H3210018122 node · id 102389 |
Flower 1 | 3.99V | -67.00dBm | 110ms | 222m | 2 | Watch | max gap 216min > 60min WARN |
| T12-00093564 ter12 · id 68202 |
Flower 1 | — | — | — | 228m | — | Watch | max gap 228min > 60min WARN |
| H3210010035 node · id 68185 |
Flower 2 | 3.80V | -86.00dBm | 110ms | 6.00m | 2 | Watch | signal p05 -86dBm < -85dBm WARN |
| H3210010078 node · id 68203 |
Flower 2 | 4.08V | -86.00dBm | 160ms | 234m | 2 | Watch | signal p05 -86dBm < -85dBm WARN; travel_time p95 160ms > 150ms WARN; max gap 234min > 60min WARN |
| H1110005891 repeater · id 68141 |
Dry Room 1 | — | — | — | — | — | Partial | 2/7 chunks failed |
| H3210010045 node · id 68227 |
Dry Room 2 | — | — | — | — | — | Partial | 3/7 chunks failed |
| H3210010106 node · id 68193 |
Dry Room 2 | — | — | — | — | — | Partial | 1/7 chunks failed |
| H3210010116 node · id 68157 |
Flower 1 | — | — | — | — | — | Partial | 1/7 chunks failed |
| H3210009999 node · id 68209 |
Flower 3 | — | — | — | — | — | Partial | 1/7 chunks failed |
| H3210010069 node · id 68204 |
Dry Room 1 | — | — | — | — | — | Unaudited | API rate-limited on 5/7 chunks — coverage incomplete |
| H3210010118 node · id 68304 |
Dry Room 1 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H1100004123 repeater · id 68142 |
Dry Room 2 | — | — | — | — | — | Unaudited | API rate-limited on 6/7 chunks — coverage incomplete |
| H3210010009 node · id 68284 |
Dry Room 2 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010038 node · id 68247 |
Dry Room 2 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010041 node · id 68249 |
Dry Room 2 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010083 node · id 68154 |
Dry Room 2 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010083-es-2 es-2 · id 68160 |
Dry Room 2 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010096 node · id 68158 |
Dry Room 2 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010096-es-2 es-2 · id 68164 |
Dry Room 2 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010135 node · id 68155 |
Dry Room 2 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010135-es-2 es-2 · id 68161 |
Dry Room 2 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010137 node · id 68305 |
Dry Room 2 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093393 ter12 · id 68315 |
Dry Room 2 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093431 ter12 · id 68279 |
Dry Room 2 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093447 ter12 · id 68321 |
Dry Room 2 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210009991 node · id 68159 |
Flower 1 | — | — | — | — | — | Unaudited | API rate-limited on 4/7 chunks — coverage incomplete |
| H3210009991-es-2 es-2 · id 68165 |
Flower 1 | — | — | — | — | — | Unaudited | API rate-limited on 6/7 chunks — coverage incomplete |
| A14G200004306 atm14 · id 68148 |
Flower 2 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H1110005920 repeater · id 68140 |
Flower 2 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210009973 node · id 68189 |
Flower 2 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210009986 node · id 68246 |
Flower 2 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010051 node · id 68270 |
Flower 2 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010079 node · id 68210 |
Flower 2 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010093 node · id 68191 |
Flower 2 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00092920 ter12 · id 68235 |
Flower 2 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093138 ter12 · id 68233 |
Flower 2 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093215 ter12 · id 68256 |
Flower 2 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093343 ter12 · id 68199 |
Flower 2 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| A14G200004308 atm14 · id 68143 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H1110005752 repeater · id 68135 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210009972 node · id 68187 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 5/7 chunks — coverage incomplete |
| H3210010005 node · id 68266 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010040 node · id 68287 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010049 node · id 68190 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010054 node · id 68211 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010080 node · id 68212 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010086 node · id 68312 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010104 node · id 68206 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 5/7 chunks — coverage incomplete |
| H3210010110 node · id 68156 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 5/7 chunks — coverage incomplete |
| H3210010117 node · id 68205 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010120 node · id 68231 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010126 node · id 68166 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 6/7 chunks — coverage incomplete |
| H3210010131 node · id 68172 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010139 node · id 68306 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210018023 node · id 102393 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093153 ter12 · id 68259 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093376 ter12 · id 68275 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093381 ter12 · id 68214 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093445 ter12 · id 68215 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093503 ter12 · id 68180 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093509 ter12 · id 68221 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093535 ter12 · id 68316 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093540 ter12 · id 68274 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093556 ter12 · id 68241 |
Flower 3 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| A14G200004304 atm14 · id 68147 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H1110005887 repeater · id 68139 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210009929 node · id 68192 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210009997 node · id 68291 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010002 node · id 68269 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010024 node · id 68245 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010026 node · id 68244 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010027 node · id 68264 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010039 node · id 68263 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010052 node · id 68301 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010057 node · id 68250 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010066 node · id 68290 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010070 node · id 68267 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010075 node · id 68243 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010092 node · id 68182 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010102 node · id 68303 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010105 node · id 68169 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010121 node · id 68208 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210013137 node · id 79668 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210018123 node · id 102385 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00092910 ter12 · id 68218 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093159 ter12 · id 68255 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093299 ter12 · id 68313 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093339 ter12 · id 68299 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093383 ter12 · id 68178 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093432 ter12 · id 68179 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093437 ter12 · id 68183 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093450 ter12 · id 68323 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093453 ter12 · id 68272 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093454 ter12 · id 68260 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093458 ter12 · id 68300 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093461 ter12 · id 68282 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093475 ter12 · id 68302 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093507 ter12 · id 68253 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093510 ter12 · id 68322 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093557 ter12 · id 68237 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093562 ter12 · id 68198 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| T12-00093563 ter12 · id 68273 |
Flower 4 | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| A14G200004310 atm14 · id 68144 |
Room None | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H1110005888 repeater · id 68136 |
Room None | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H2100002550 gateway · id 68134 |
Room None | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H2100004757 gateway · id 128397 |
Room None | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H2110001497 gateway · id 223027 |
Room None | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010050 node · id 68281 |
Room None | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010053 node · id 68286 |
Room None | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010072 node · id 68207 |
Room None | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010098 node · id 68232 |
Room None | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010100 node · id 68171 |
Room None | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010108 node · id 68170 |
Room None | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210013139 node · id 79681 |
Room None | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210013212 node · id 79608 |
Room None | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| SINKH2100002550 sink · id 68133 |
Room None | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| SINKH2100004757 sink · id 128396 |
Room None | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| SINKH2110001497 sink · id 223026 |
Room None | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| A14G200004301 atm14 · id 68145 |
Veg and Clone | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H1110005896 repeater · id 68137 |
Veg and Clone | — | — | — | — | — | Unaudited | API rate-limited on 7/7 chunks — coverage incomplete |
| H3210010076 node · id 68228 |
Dry Room 1 | 3.67V | -74.00dBm | 90.00ms | 6.00m | 2 | Healthy | — |
| H3210010125 node · id 68167 |
Dry Room 2 | 3.60V | -78.00dBm | 90.00ms | 6.00m | 2 | Healthy | — |
| T12-00093211 ter12 · id 68217 |
Dry Room 2 | — | — | — | 21.00m | — | Healthy | — |
| T12-00093491 ter12 · id 68314 |
Dry Room 2 | — | — | — | 6.00m | — | Healthy | — |
| H3210009970 node · id 68186 |
Flower 1 | 3.90V | -74.00dBm | 90.00ms | 6.00m | 2 | Healthy | — |
| H3210009985 node · id 68168 |
Flower 1 | 3.77V | -78.00dBm | 90.00ms | 6.00m | 2 | Healthy | — |
| H3210010042 node · id 68268 |
Flower 1 | 4.08V | -70.00dBm | 110ms | 6.00m | 2 | Healthy | — |
| H3210010047 node · id 68288 |
Flower 1 | 3.91V | -82.00dBm | 150ms | 6.00m | 2 | Healthy | — |
| H3210010064 node · id 68307 |
Flower 1 | 3.96V | -84.00dBm | 120ms | 6.00m | 2 | Healthy | — |
| H3210010116-es-2 es-2 · id 68163 |
Flower 1 | — | — | — | 9.00m | — | Healthy | — |
| H3210010123 node · id 68309 |
Flower 1 | 4.03V | -82.00dBm | 110ms | 45.00m | 2 | Healthy | — |
| H3210018031 node · id 102390 |
Flower 1 | 3.83V | -70.00dBm | 120ms | 15.00m | 2 | Healthy | — |
| H3210018113 node · id 102391 |
Flower 1 | 3.91V | -74.00dBm | 110ms | 9.00m | 2 | Healthy | — |
| H3210027063 node · id 102388 |
Flower 1 | 4.08V | -74.00dBm | 110ms | 6.00m | 2 | Healthy | — |
| T12-00093345 ter12 · id 68319 |
Flower 1 | — | — | — | 42.00m | — | Healthy | — |
| T12-00093551 ter12 · id 68277 |
Flower 1 | — | — | — | 6.00m | — | Healthy | — |
| H3210009975 node · id 68308 |
Flower 2 | 3.88V | -79.00dBm | 110ms | 6.00m | 2 | Healthy | — |
| H3210010010 node · id 68285 |
Flower 2 | 3.89V | -74.00dBm | 100ms | 6.00m | 2 | Healthy | — |
| H3210010048 node · id 68251 |
Flower 2 | 3.76V | -83.00dBm | 120ms | 6.00m | 2 | Healthy | — |
| T12-00093375 ter12 · id 68195 |
Flower 2 | — | — | — | 6.00m | — | Healthy | — |
| H3210009998 node · id 68229 |
Flower 3 | 4.14V | -74.00dBm | 90.00ms | 6.00m | 2 | Healthy | — |
| H3210010043 node · id 68283 |
Flower 3 | 3.76V | -64.00dBm | 110ms | 6.00m | 2 | Healthy | — |
| H3210010138 node · id 68310 |
Flower 3 | 4.09V | -67.00dBm | 90.00ms | 6.00m | 2 | Healthy | — |
| T12-00093451 ter12 · id 68292 |
Flower 3 | — | — | — | 3.00m | — | Healthy | — |
| T12-00093522 ter12 · id 68296 |
Flower 3 | — | — | — | 420m | — | Healthy | — |
| T12-00093543 ter12 · id 68197 |
Flower 3 | — | — | — | 6.00m | — | Healthy | — |
3. Mesh topology map (inferred)3. Mapa de topología de malla (inferido)
Force-directed mesh viewVista de malla dirigida por fuerzas
Drag nodes · hover for detail · use filters below to isolate a room or modelArrastra nodos · hover para detalle · filtros para aislar sala o modelo
4. Room-by-room breakdown4. Desglose sala por sala
Dry Room 1
7 devicesDry Room 2
29 devicesFlower 1
38 devicesFlower 2
30 devicesFlower 3
40 devicesFlower 4
38 devicesRoom None
16 devicesVeg and Clone
2 devices5. Weakest 20 links5. 20 enlaces más débiles
Weakest 20 links20 enlaces más débiles
Composite score across signal, travel-time, battery, and chunk errorsPuntaje compuesto: señal, travel-time, batería y errores
| # | SerialSerie | RoomSala | Signal p05Señal p05 | Travel p95Travel p95 | Battery p05Batería p05 | StatusEstado | ReasonsRazones |
|---|---|---|---|---|---|---|---|
| 1 | H3210010071 node · id 68252 |
Dry Room 2 | -80.00dBm | 160ms | 0.01V | Watch | battery ADC likely faulted (reads 0.006V; radio active), travel_time p95 160ms > 150ms WARN |
| 2 | H3210010046 node · id 68271 |
Dry Room 2 | -90.00dBm | 210700ms | 4.05V | Critical | signal p05 -90dBm < -85dBm WARN, travel_time p95 210700ms > 350ms CRIT |
| 3 | H3210010056 node · id 68230 |
Flower 1 | -88.00dBm | 150ms | 3.77V | Critical | signal p05 -88dBm < -85dBm WARN, max gap 609min > 240min CRIT |
| 4 | H3210010074 node · id 68248 |
Flower 2 | -89.00dBm | 200ms | 3.55V | Critical | signal p05 -89dBm < -85dBm WARN, travel_time p95 200ms > 150ms WARN, max gap 936min > 240min CRIT |
| 5 | H3210018108 node · id 102386 |
Flower 1 | -88.00dBm | 140ms | 3.83V | Critical | signal p05 -88dBm < -85dBm WARN, max gap 672min > 240min CRIT |
| 6 | H3210010078 node · id 68203 |
Flower 2 | -86.00dBm | 160ms | 4.08V | Watch | signal p05 -86dBm < -85dBm WARN, travel_time p95 160ms > 150ms WARN, max gap 234min > 60min WARN |
| 7 | H3210010055 node · id 68225 |
Flower 1 | -84.00dBm | 130ms | 3.83V | Critical | max gap 447min > 240min CRIT |
| 8 | H3210010034 node · id 68289 |
Flower 1 | -82.00dBm | 160ms | 3.93V | Watch | travel_time p95 160ms > 150ms WARN |
| 9 | H3210010047 node · id 68288 |
Flower 1 | -82.00dBm | 150ms | 3.91V | Healthy | — |
| 10 | H3210010035 node · id 68185 |
Flower 2 | -86.00dBm | 110ms | 3.80V | Watch | signal p05 -86dBm < -85dBm WARN |
| 11 | H3210010064 node · id 68307 |
Flower 1 | -84.00dBm | 120ms | 3.96V | Healthy | — |
| 12 | H3210010048 node · id 68251 |
Flower 2 | -83.00dBm | 120ms | 3.76V | Healthy | — |
| 13 | H3210018107 node · id 102387 |
Flower 2 | -81.00dBm | 120ms | 3.44V | Critical | max gap 669min > 240min CRIT |
| 14 | H3210010123 node · id 68309 |
Flower 1 | -82.00dBm | 110ms | 4.03V | Healthy | — |
| 15 | H3210010076 node · id 68228 |
Dry Room 1 | -74.00dBm | 90.00ms | 3.67V | Healthy | — |
| 16 | H3210018113 node · id 102391 |
Flower 1 | -74.00dBm | 110ms | 3.91V | Healthy | — |
| 17 | H3210009975 node · id 68308 |
Flower 2 | -79.00dBm | 110ms | 3.88V | Healthy | — |
| 18 | H3210010095 node · id 68184 |
Flower 2 | -78.00dBm | 120ms | 3.95V | Critical | max gap 423min > 240min CRIT |
| 19 | H3210018036 node · id 102392 |
Flower 1 | -78.00dBm | 110ms | 4.00V | Watch | max gap 78min > 60min WARN |
| 20 | H3210010119 node · id 68224 |
Flower 1 | -76.00dBm | 130ms | 3.82V | Critical | max gap 669min > 240min CRIT |
6. Battery lifecycle6. Ciclo de vida de la batería
Battery lifecycle — 10 next-to-replaceCiclo de vida — próximas 10 baterías a reemplazar
Ranked by worst 5th-percentile voltage. Li-SOCl₂ chemistry — plateau then cliff at ~3.30V.Ordenado por p05 más bajo. Química Li-SOCl₂ — meseta y luego caída ~3.30V
| # | SerialSerie | RoomSala | p05p05 | MedianMediana | Est. months to replaceMeses estimados |
|---|---|---|---|---|---|
| 1 | H3210018107 node |
Flower 2 | 3.44V | 3.44V | 3–6 months3–6 meses |
| 2 | H3210010074 node |
Flower 2 | 3.55V | 3.55V | 6–12 months6–12 meses |
| 3 | H3210010125 node |
Dry Room 2 | 3.60V | 3.60V | 6–12 months6–12 meses |
| 4 | H3210010103 node |
Flower 2 | 3.62V | 3.63V | 6–12 months6–12 meses |
| 5 | H3210010076 node |
Dry Room 1 | 3.67V | 3.67V | > 12 months> 12 meses |
| 6 | H3210010043 node |
Flower 3 | 3.76V | 3.76V | > 12 months> 12 meses |
| 7 | H3210010048 node |
Flower 2 | 3.76V | 3.76V | > 12 months> 12 meses |
| 8 | H3210010056 node |
Flower 1 | 3.77V | 3.77V | > 12 months> 12 meses |
| 9 | H3210009985 node |
Flower 1 | 3.77V | 3.78V | > 12 months> 12 meses |
| 10 | H3210010035 node |
Flower 2 | 3.80V | 3.80V | > 12 months> 12 meses |
7. Recommendations7. Recomendaciones
Reboot the node from Wirepas Studio, verify parent selection, and check for physical antenna damage. If travel_time p95 does not return to <200ms within 2h of reboot, decommission and swap.Reiniciar el nodo desde Wirepas Studio, verificar selección de padre y revisar la antena. Si p95 travel_time no vuelve a <200ms en 2h, desprovisar y reemplazar.
Bring at least 1 replacement node(s). Prioritize any of these that live in Flower rooms, since silent failure there is highest-impact.Llevar al menos 1 nodo(s) de repuesto. Priorizar los que estén en Flower rooms — allí un fallo silencioso cuesta más.
Re-audit the 111 unaudited devices with 6 workers, 3s jitter, off-peak window. Target ≥95% device coverage before finalizing the Q3 mesh scorecard.Re-auditar los 111 dispositivos con 6 workers, jitter de 3s, ventana off-peak. Meta ≥95% de cobertura antes del scorecard trimestral.
Take the 34 ter12 gap timelines and overlay against node travel_time spikes. This will identify the specific 2–3 parent nodes whose flapping is amplifying downstream.Superponer las líneas de tiempo de los 34 ter12 con picos de travel_time de nodos. Esto identifica 2–3 nodos padre cuya inestabilidad afecta aguas abajo.
The /public_api/devices/ inventory does not include firmware version fields. Pull firmware via the AROYA management endpoint at next opportunity — required for a full readiness view.El inventario /public_api/devices/ no incluye versión de firmware. Extraerla vía la API de gestión en la próxima oportunidad — necesaria para una vista completa.
8. Methodology8. Metodología
- Data sourceFuenteAROYA /public_api/devices/{{id}}/chart/ endpoint, Bearer-token authenticated, 2-day chunks (API hard cap).Endpoint AROYA /public_api/devices/{{id}}/chart/, autenticación Bearer, chunks de 2 días (límite del API).
- WindowVentana14 days ending 2026-07-09 UTC (7 × 2-day chunks per device × 200 devices = 1400 API calls).
- ConcurrencyConcurrencia64→24→6 workers across 3 retry tiers. Rate-limit backoff on HTTP 429 with 4s + 3s×attempt + random jitter.64→24→6 workers en 3 rondas. Retroceso en HTTP 429 con 4s + 3s×intento + jitter.
- MetricsMétricasbattery_v (V), signal (dBm RSSI), radio_power (dBm TX), travel_time (s per packet). Substrate probes and climate sensors add pore_ec, soil_moist, soil_temp, air_temp, rel_hum, vpd.battery_v (V), signal (dBm RSSI), radio_power (dBm TX), travel_time (s por paquete). Sondas de sustrato y sensores de clima añaden pore_ec, soil_moist, soil_temp, air_temp, rel_hum, vpd.
- AggregationsAgregacionesPer-metric percentiles p05/p50/p95/p99, min, max, mean. Gap analysis: median interval, p95 interval, max gap, count of gaps >15/30/60/180min, total gap-time.Percentiles p05/p50/p95/p99 por métrica, más min/max/media. Vacíos: intervalo mediano, p95, máximo, conteo >15/30/60/180min, tiempo total.
- Hop-depth inferenceInferencia de hop-depthMapped from travel_time p50 assuming ~30ms per Wirepas hop. Hop 1: ≤25ms; hop 2: 26–70ms; hop 3: 71–150ms; hop 4: 151–400ms; hop 5+: >400ms.Mapeado de p50 travel_time asumiendo ~30ms por hop Wirepas. Hop 1: ≤25ms; hop 2: 26–70ms; hop 3: 71–150ms; hop 4: 151–400ms; hop 5+: >400ms.
- Battery thresholdsUmbrales de bateríaWarn < 3.35V, Crit < 3.20V (Li-SOCl₂ nominal 3.6V; steep drop when depleted). Values <1.0V while radio active are flagged as ADC fault, not depleted battery.Warn <3.35V, Crit <3.20V (Li-SOCl₂ nominal 3.6V; caída pronunciada). Valores <1.0V con radio activo se marcan como falla de ADC, no batería agotada.
- Signal thresholdsUmbrales de señalWarn p05 < -85dBm (802.15.4 usable floor). Crit p05 < -95dBm.Warn p05 < -85dBm (piso 802.15.4). Crit p05 < -95dBm.
- Travel-time thresholdsUmbrales de travel-timeWarn p95 > 150ms. Crit p95 > 350ms. Normal Wirepas end-to-end travel is <200ms even at 4 hops.Warn p95 > 150ms. Crit p95 > 350ms. Travel Wirepas normal <200ms incluso a 4 hops.
- Gap thresholdsUmbrales de vacíosWarn max gap > 60min. Crit max gap > 240min. Ter12 native cadence is 3min, so 60min = 20× normal.Warn vacío máx > 60min. Crit > 240min. Cadencia ter12 nativa 3min → 60min = 20× normal.
- Dash-2 dedupeDeduplicación dash-2No genuine dash-2 sibling pattern detected in this facility. The '-2' suffix on 6 devices is a model marker (es-2 irrigation controllers), not a shadow device. Physical device count equals total device count: 200.No se detectó patrón dash-2 auténtico. El sufijo '-2' en 6 dispositivos es marcador de modelo (controladores de riego es-2). Conteo físico igual al total: 200.
- What this report does NOT coverLo que este reporte NO cubreFirmware version (endpoint doesn't expose it), physical mesh topology parent-child map (endpoint doesn't expose it — hop-depth is INFERRED), gateway/sink health beyond acknowledging their chart endpoint returns empty by design.Versión de firmware (no expuesta en API), mapa físico de padre-hijo de la malla (no expuesto — hop-depth INFERIDO), salud de gateway/sink más allá de reconocer que su endpoint chart devuelve vacío por diseño.