Long Sessions

Fleet nodes whose communication sessions run abnormally long relative to their own norm, with per-node IQR thresholds, a severity score and incident-based root-cause analysis.

The Long Sessions report analyses telemetry communication sessions across the entire fleet of metering nodes and identifies devices, locations, days and corrector types where communications work unstably or take excessive time to transmit data.

Report header with seven KPIs

The report header carries seven KPIs: company, fleet coverage, data readiness, number of nodes with anomalies, number of anomalous sessions, maximum session duration, total number of hourly incidents and the analysis period. The headline number is the count of nodes with anomalies out of the fleet total; incidents are hourly clusters where five or more nodes have long sessions simultaneously.

The report answers practical operational questions:

  • which nodes have communication sessions that are too long;
  • which sessions are considered anomalous for this specific node;
  • where the problem is local: antenna, SIM card, power supply, modem, installation site;
  • where the problem looks like a base station or mobile network operator incident;
  • whether there are mass hourly incidents across the fleet;
  • which days were the most problematic;
  • which corrector types more often fall into long sessions;
  • how much energy was approximately spent on retransmissions or extended transmissions;
  • which nodes require a field visit with an external antenna, repeater or SIM check;
  • where the mobile network operator or the quality of coverage at a specific location should be checked.

Where the report fits

The report belongs to the operational diagnostics of telemetry. It must not mix two different situations:

  1. No communication at all. The node does not connect, there are no data.
  2. Communication exists, but sessions are too long. The node transmits data but does it slowly, unstably or with retries.

This report analyses the second situation. Where there is no communication, archive or data at all, use the Top Problem Nodes report; where you need to check whether a single node’s data are suitable for metering, use Consumption Analytics.

Who the report is for

RoleWhat they get from the report
Operations manageroverall picture of the fleet, number of nodes with anomalies, mass incidents
Communications engineerlist of nodes with bad RSSI, long sessions and local problems
Dispatcherprioritised list of tickets and problem days
Field crewtop nodes for antenna, SIM, power and installation-site checks
Integration engineerdata-readiness diagnostics, API coverage and cases of missing session data
Procurement specialistcomparative breakdown by corrector type
Fleet analystroot-cause hypotheses: base station, carrier, firmware, local node

What the report does not do

The report must not:

  • prove a specific modem is faulty without a field visit;
  • treat a long session as direct proof of a bad device;
  • automatically blame the server or the mobile network operator;
  • mix “no data” with “no anomalies”;
  • compare the session duration of all nodes by a single common threshold;
  • treat a short period with few sessions as statistically reliable;
  • draw conclusions about a device model’s quality without accounting for the number of devices in the sample;
  • replace a radio-technical survey of the installation site;
  • treat the battery-loss estimate as a precise measurement;
  • use the AI commentary as a source of diagnostics.

Key terms

TermMeaning
Communication sessionone episode of the device connecting to the data transmission system
Session durationtime from session start to completion
Normal sessiona session whose duration falls within the node’s individual norm
Long sessiona session whose duration exceeds the node’s individual IQR threshold
IQRinterquartile range: Q3 − Q1
Q1first quartile of session durations
Q3third quartile of session durations
UpperFenceupper bound of the norm: Q3 + 1.5 × IQR
RSSIradio signal level, dBm
CSQGSM signal quality index, can be converted to dBm
Btmbattery voltage or device power-supply indicator
Long shareshare of long sessions among all of a node’s sessions
Severity scorefinal assessment of a node’s problem level by long sessions
Incidenthourly cluster where long sessions appeared simultaneously at several nodes
RCAprobable cause analysis: base station, network, server, firmware, local node
Battery lossapproximate estimate of the energy spent on excess transmission duration

General report logic

The report is built as a fleet-wide communication-session analysis.

text
List of fleet nodes
→ retrieve communication sessions
→ check data readiness
→ individual session norm for each node
→ search for long sessions via IQR
→ compute score for each node
→ group long sessions into hourly incidents
→ determine probable RCA cause
→ distribute hypotheses across nodes
→ top problem nodes
→ breakdown by corrector type
→ breakdown by days and months
→ recommendations for operations

The main principle:

text
a long session is defined relative to the norm of a specific node,
not relative to a common fixed threshold across the entire fleet.

This matters because different devices, regions, mobile network operators and polling modes can have different normal session durations.

Run parameters

ParameterMeaning
From date / To dateanalysis window boundaries
Analysis window, daysfallback window used when dates are empty (default 30)
Nodes per corrector typesample size per type; 0 means all fleet nodes
Minimum sessions per node for IQRthe minimum number of sessions a node needs to qualify (default 30)
Number of problem nodes in the reportsize of the top-N table (default 50)
LLM analysisoptional AI narrative explaining the results
Utility companyrestricts the analysis to one supplier’s fleet

Input data

Main data

DataWhat it is needed for
List of nodesdetermine the analysis fleet
Corrector typebuild the breakdown by model
Equipment IDretrieve sessions of a specific device
Communication sessionscore of the report
Session start timegrouping by days, months and hours
Session durationthe main analysed indicator
RSSI / CSQradio signal quality estimate
Btm / batterypower-supply influence estimate
Organization / locationincident attribution: local customer, base station, fleet

Minimum required set

For correct analysis of a node, the following are needed:

  • device identifier;
  • at least the minimum number of sessions;
  • duration of each session;
  • timestamp of each session.

If session duration is missing, that session does not participate in the IQR analysis.

Data readiness: the data gate

Data readiness diagnostics

Before computing anomalies, the report checks whether analysis can be performed at all. The data-readiness block shows the fleet size, the size after the company filter, how many nodes returned session data, and how many of those passed the minimum sessions for IQR. This is a critically important diagnostic — without it, “no anomalies” is easily confused with “no data for analysis”.

Main readiness indicators

IndicatorFormula / value
Nodes in the fleetN_park
Nodes in the sampleN_sampled
Nodes with session dataN_with_data
Nodes that passed the session minimumN_qualified
Total sessionsN_sessions
API callsN_calls
API errorsN_errors
API error rateN_errors / N_calls × 100%
Data coverageN_with_data / N_sampled × 100%
IQR sample coverageN_qualified / N_sampled × 100%

API error rate

APIErrorRate=NerrorsNcalls×100%APIErrorRate = \frac{N_{errors}}{N_{calls}} \times 100\%

Data coverage

Coveragewith_data=Nwith_dataNsampled×100%Coverage_{with\_data} = \frac{N_{with\_data}}{N_{sampled}} \times 100\%

Coverage by nodes suitable for IQR

Coveragequalified=NqualifiedNsampled×100%Coverage_{qualified} = \frac{N_{qualified}}{N_{sampled}} \times 100\%

Readiness statuses

StatusConditionWhat it means
OKsufficient sample for IQR existsthe report can be read as a working one
DEGRADEDsample is small but analysis is possibleconclusions are cautious
INCONCLUSIVEmany errors or critically low coverageanomaly conclusions are unreliable
NO_DATAno session dataanalysis is impossible
NO_FLEETno nodes after filteringnothing to analyse

Critical conditions

Analysis is considered impossible if:

APIErrorRate50%APIErrorRate \ge 50\%

or:

Coveragewith_data<5%Coverage_{with\_data} < 5\%

or:

Nqualified=0N_{qualified} = 0

Minimum sessions per node

For a reliable IQR analysis, each node must have a sufficient number of sessions.

Minimum threshold

By default:

Nsessions,station30N_{sessions,station} \ge 30

If a node has fewer sessions, the individual norm is considered statistically unreliable and the node does not pass the IQR filter.

Why a minimum is needed

IQR uses quartile estimates. With a small number of observations, the quartile becomes unstable:

  • one random long session can overstate the threshold;
  • one short communication period can understate the threshold;
  • it becomes impossible to distinguish the node’s norm from randomness.

Individual session-duration norm

Why the norm is individual

You cannot use a single common threshold for the entire fleet, e.g. “all sessions longer than 10 minutes are bad”. Different nodes have different communication conditions:

  • different corrector types;
  • different mobile network operators;
  • different RSSI;
  • different archive volumes;
  • different polling schedules;
  • different installation sites;
  • different antennas.

Therefore, each node has its own statistical norm calculated.

Selection of valid durations

For each node, only positive durations are taken:

D={didi>0}D = \{d_i \mid d_i > 0\}

where:

  • d_i — duration of the i-th session in seconds.

Quartiles

Durations are sorted in ascending order.

Dsorted=sort(D)D_{sorted} = sort(D)

First quartile:

Q1=percentile(D,25%)Q1 = percentile(D, 25\%)

Median:

Q2=median(D)Q2 = median(D)

Third quartile:

Q3=percentile(D,75%)Q3 = percentile(D, 75\%)

Interquartile range

IQR=Q3Q1IQR = Q3 - Q1

Tukey-fence upper bound of the norm

For each node, an individual upper bound of the norm is computed:

UpperFence=Q3+1.5×IQRUpperFence = Q3 + 1.5 \times IQR

This is the classical Tukey-fences rule for outlier detection.

Long session

A session is considered abnormally long if:

di>UpperFenced_i > UpperFence

where:

  • d_i — session duration;
  • UpperFence — the individual threshold of this node.

Basic node indicators

For each node, the following indicators are calculated.

Total number of sessions

Ntotal=count(D)N_{total} = count(D)

Number of long sessions

Nlong=count(di>UpperFence)N_{long} = count(d_i > UpperFence)

Share of long sessions

Pctlong=NlongNtotal×100%Pct_{long} = \frac{N_{long}}{N_{total}} \times 100\%

Average duration of all sessions

AvgDuration=diNtotalAvgDuration = \frac{\sum d_i}{N_{total}}

Average duration of long sessions

AvgLongDuration=di>UpperFencediNlongAvgLongDuration = \frac{\sum_{d_i > UpperFence} d_i}{N_{long}}

Maximum duration

MaxLongDuration=max(didi>UpperFence)MaxLongDuration = max(d_i \mid d_i > UpperFence)

Average RSSI

RSSIavg=RSSIiNRSSIRSSI_{avg} = \frac{\sum RSSI_i}{N_{RSSI}}

where N_RSSI is the number of sessions with an available RSSI value.

Node problem score

Meaning of the score

The score shows how problematic a node is in terms of long sessions. It takes into account three dimensions:

  1. share of long sessions;
  2. how much long sessions exceed the norm;
  3. absolute number of long sessions.

This approach avoids overestimating a one-off outlier and avoids underestimating a node with a large number of moderately long sessions.

Component A — share of long sessions

A=min(100,  4×Pctlong)A = min(100,\;4 \times Pct_{long})

Interpretation:

Share of longA
5%20
10%40
25%100
>25%100

Component B — relative duration

B=min(100,  8×AvgLongDurationmax(1,MedianDuration))B = min \left( 100,\; 8 \times \frac{AvgLongDuration}{max(1, MedianDuration)} \right)

where MedianDuration is the median session duration of the node.

Interpretation:

AvgLong / MedianB
16
40
10×80
12.5×100

Component C — number of long sessions

C=min(100,  Nlong)C = min(100,\;N_{long})

That is, 100 or more long sessions give the maximum contribution from this component.

Final score

Score=0.5×A+0.3×B+0.2×CScore = 0.5 \times A + 0.3 \times B + 0.2 \times C

where:

  • A — share of long sessions;
  • B — relative duration of long sessions;
  • C — absolute number of long sessions.

The final score is bounded by the range:

0Score1000 \le Score \le 100

Score interpretation

ScoreLevel
≥ 80critical communication node
60–80high priority
40–60medium priority
20–40observation / scheduled check
< 20weak signal

Battery-loss estimate on long sessions

Meaning

A long session increases transmission time and may additionally consume battery. The report gives an approximate estimate of the excess energy expenditure. This is not a precise battery measurement but an operational estimate.

Excess transmission time

For each long session, the excess over the node’s median norm is calculated:

ExtraTimei=max(0,  diMedianDuration)ExtraTime_i = max(0,\;d_i - MedianDuration)

Total excess time:

ExtraTimetotal=iLongSessionsExtraTimeiExtraTime_{total} = \sum_{i \in LongSessions} ExtraTime_i

Transmission current

A base transmission current is used for the approximate estimate:

ITX=340  mAI_{TX} = 340 \; mA

Battery loss

BatteryLossmAh=ITX×ExtraTimetotal3600BatteryLoss_{mAh} = \frac{I_{TX} \times ExtraTime_{total}}{3600}

where:

  • ExtraTime_total — in seconds;
  • I_TX — current in milliamperes;
  • result — in mAh.

For display in Ah:

BatteryLossAh=BatteryLossmAh1000BatteryLoss_{Ah} = \frac{BatteryLoss_{mAh}}{1000}

Limitation

This estimate does not take into account:

  • the actual current profile of the specific model;
  • sleep mode;
  • retries at the modem level;
  • transmitter power;
  • temperature;
  • battery age;
  • battery capacity;
  • network quality at the moment of transmission.

It should therefore be read as an order-of-magnitude estimate, not a laboratory measurement.

RSSI and CSQ

RSSI

RSSI shows the radio signal level in dBm. The closer the value is to zero, the stronger the signal.

Approximate interpretation:

RSSIRating
≥ −65 dBmgood signal
−65…−75 dBmacceptable
−75…−85 dBmweak
< −85 dBmvery weak

CSQ

Some devices transmit not RSSI in dBm but CSQ — the GSM signal quality index. If the value looks like CSQ, it can be converted:

RSSIdBm=113+2×CSQRSSI_{dBm} = -113 + 2 \times CSQ

Example:

CSQ=29CSQ = 29 RSSI=113+2×29=55  dBmRSSI = -113 + 2 \times 29 = -55 \; dBm

Locally weak signal

If:

RSSIavg<85  dBmRSSI_{avg} < -85 \; dBm

and the node’s anomalies do not coincide with mass fleet incidents, the cause can be classified as:

text
weak signal at the installation site

Grouping long sessions into incidents

Incidents registry

Anomalies are grouped into hourly windows. If several nodes received long sessions in the same hour, this is not a local node problem but a network, server or operator incident. The hypothesis is determined automatically by the breadth of coverage — the number of nodes, models and customers in the window.

Why grouping is needed

If long sessions appeared at many nodes in the same hour, it is most likely not a local problem of one device. It could be:

  • a base station problem;
  • local carrier overload;
  • a mass network incident;
  • a scheduled server operation;
  • a peculiarity of a specific model’s firmware.

Hourly bucket

Each long session is placed into an hourly bucket:

Bucket(t)=floor(t1h)×1hBucket(t) = floor\left( \frac{t}{1h} \right) \times 1h

That is, all events within one hour fall into one bucket.

Incident

An hourly bucket is considered an incident if at least:

Nstations,bucket5N_{stations,bucket} \ge 5

nodes are affected.

Incident indicators

For each incident, the following are calculated:

IndicatorFormula
number of nodescount(unique station_id)
number of modelscount(unique equipment_type)
number of customers / locationscount(unique customer_id)
number of sessionscount(long sessions in bucket)
average RSSIaverage(RSSI)
top modelstop equipment types by count

RCA: incident-cause attribution

Root-cause investigation summary

The fleet summary identifies the main culprit — cell tower, server, network, firmware or local node — provides a blame attribution across the nodes with anomalies and forms an action plan. An optional AI narrative at the bottom explains the numbers in plain language but does not change them.

RCA is the classification of the probable cause of long sessions.

Possible hypotheses

HypothesisMeaning
Server drivermass collection driver failure
Server routineregular server operation or maintenance
Network outagemobile network operator failure
Cell towerproblem with a specific base station or location
Firmwaredevice model / firmware problem
Local signalweak signal at the installation site
Battery lowlow power / battery degradation
Isolated devicelocal malfunction of a specific node
Mixed causesmixed causes

Wide server incident

An incident is classified as a server one if many nodes, many models and many customers are affected simultaneously. Conditionally:

NstationsServerWideStationsN_{stations} \ge ServerWideStations NmodelsServerWideModelsN_{models} \ge ServerWideModels NcustomersServerWideCustomersN_{customers} \ge ServerWideCustomers

In the report, this means:

text
wide fleet incident, not similar to a local single-node problem.

Carrier network outage

If several models and several customers are affected, but the scale does not reach a server failure:

Nmodels3N_{models} \ge 3

and:

Ncustomers3N_{customers} \ge 3

then the hypothesis is:

text
mobile network failure / operator incident

Base station problem

If many nodes are affected, but they belong to one or two locations / customers:

Ncustomers2N_{customers} \le 2

and:

NstationsCellMinStationsN_{stations} \ge CellMinStations

then the hypothesis is:

text
base station problem or local coverage problem

Firmware or model problem

If one model is affected, but across different customers:

Nmodels=1N_{models} = 1

and:

Ncustomers3N_{customers} \ge 3

then the hypothesis is:

text
firmware / device model peculiarity

Mixed causes

If the conditions do not yield an unambiguous classification, the incident receives the status:

text
mixed causes

Recurring server routine

Sometimes mass server incidents happen at the same hour of the day.

Condition

If there are at least three server-wide incidents at the same hour of the day:

Nserver_incidents,same_hour3N_{server\_incidents,same\_hour} \ge 3

they can be classified as:

text
server routine

Meaning

This may indicate a regular nightly job, archive maintenance, a batch process or a mass operation that affects session duration.

Cause attribution per node

After searching for fleet incidents, the report determines what dominates at each node: external incidents or a local problem.

Share of a node’s anomalies that fall into fleet incidents

InIncidentPct=Nlong,in_incidentsNlong×100%InIncidentPct = \frac{N_{long,in\_incidents}}{N_{long}} \times 100\%

If most anomalies coincided with fleet incidents

If:

InIncidentPct70%InIncidentPct \ge 70\%

then the node’s dominant cause is taken from the fleet incident:

text
network_outage / cell_tower / firmware / server

This means:

text
the device is probably not the main culprit; it suffered together with others.

Low battery check

If the anomalies are not explained by fleet incidents, the power supply is checked. Let:

BtmfirstBtm_{first}

be the first available battery value in the long sessions, and:

BtmlastBtm_{last}

be the last available value. The drop:

BtmDrop=BtmfirstBtmlastBtmDrop = Btm_{first} - Btm_{last}

The battery_low hypothesis is possible if:

Btmfirst<3500  mVBtm_{first} < 3500 \; mV

and:

BtmDrop>200  mVBtmDrop > 200 \; mV

Locally weak signal check

If:

RSSIavg<85  dBmRSSI_{avg} < -85 \; dBm

then the hypothesis is:

text
weak signal at the installation site

Isolated node malfunction

If:

  • the anomalies do not coincide with fleet incidents;
  • the battery does not explain the picture;
  • the RSSI is not critically weak;

then the cause is classified as:

text
local malfunction of the node

Hypothesis distribution across the fleet

Hypothesis distribution

For each node, the dominant cause is selected. When most nodes suffered from fleet incidents, the node itself is not to blame; only a minority have an isolated local problem. This changes the action plan: the main effort goes to base stations and the carrier, not to a mass field visit to every node with anomalies.

The report shows how many nodes are attributed to each dominant cause.

Hypothesis-share formula

Sharehypothesis=Nstations,hypothesisNstations,with_anomalies×100%Share_{hypothesis} = \frac{N_{stations,hypothesis}}{N_{stations,with\_anomalies}} \times 100\%

Cause groups

For the management summary, the hypotheses can be grouped:

GroupIncludes
network / serverserver_driver, server_routine, network_outage, cell_tower
local device problemsisolated_device, local_signal, battery_low
model / firmwarefirmware
mixedmixed

Interpretation

DominatesWhat to do
Cell towercheck coverage, the carrier, external antennas at affected customers
Local signalfield visit to the specific node, antenna, repeater, installation site
Isolated devicemodem, SIM, power, firmware diagnostics
Firmwarecheck the software version and contact the supplier
Server routinecheck regular platform processes
Network outagequery the mobile network operator by time and zone

Top problem nodes

Top problem nodes

The top problem nodes table ranks nodes by a composite score (0–100) built from the share of long sessions, their average duration and their count. Clicking a row expands the node’s longest sessions with RSSI and Btm values — used for planning a field visit.

Purpose

The table shows where to go or what to check first.

Table columns

ColumnMeaning
Nodename and ID of the node
Correctordevice type
Sessionstotal number of valid sessions
Longnumber of abnormally long sessions
Sharepercentage of long sessions
Average longaverage duration of long sessions
Maximum sessionworst session found
RSSI averageradio signal quality
Battery lossestimated excess energy
Scorecomposite problem score

How to read the top

A high score can arise for different reasons:

  • a large share of long sessions;
  • very long individual sessions;
  • a large absolute number of long sessions;
  • a combination of these factors.

For planning a field visit, read not only the score but also:

  • RSSI;
  • the RCA hypothesis;
  • battery loss;
  • maximum session;
  • whether it falls into fleet incidents;
  • corrector type.

Top problem days

Top problem days

All anomalous sessions are grouped by calendar day. The day with the largest number of anomalies is most likely where a fleet incident occurred. Each day expands into the list of nodes with their anomalies, the maximum session and links. This is useful for investigating mass events and checking recurrence.

Purpose

The breakdown by days shows the days when long sessions appeared en masse across the fleet.

Day indicators

IndicatorMeaning
Datecalendar day
Long sessionsnumber of long sessions for the day
Nodeshow many nodes are affected
Average longaverage duration of long sessions
Maximum sessionworst case of the day
Worst nodenode with the maximum session

Interpretation

PicturePossible cause
many nodes on a single daynetwork or fleet incident
one node every daylocal problem
a spike on a weekendcarrier network / maintenance work
spikes at the same timeregular task or schedule
monthly growthnetwork degradation, seasonal overload, polling-mode change

Breakdown by corrector type

Coverage by corrector type

The coverage block shows what was checked from the fleet for each corrector type: how many nodes are in the sample, how many returned data, how many passed IQR and how many show anomalies. If a type shows “norm”, data arrived but no anomalies were found. “No data” means the type does not return session duration in the API — for some models this is normal.

Detailed breakdown by corrector type

Expand a type to see all its nodes with anomalies; expand a node to see its specific long sessions with time, duration, RSSI and Btm. The session highlight colour depends on how much longer the session is than the node’s norm.

Purpose

The breakdown by corrector type shows which models more often fall into abnormally long sessions.

Indicators by type

IndicatorMeaning
In samplehow many nodes of this type are in the fleet
With datahow many nodes returned session data
Passed IQRhow many nodes have the minimum sessions
Anomaliesnumber of long sessions
Statenorm / anomalies / no data

Important limitation

You cannot directly compare corrector types by the number of anomalies alone. You must take into account:

  • how many devices of this type are in the fleet;
  • how many of them returned data;
  • how many passed the session minimum;
  • where they are installed;
  • which networks they operate in;
  • whether they have the same polling schedule;
  • whether they are concentrated at a single customer.

Normalised anomaly share by type

For correct comparison, you can use:

TypeAnomalyRate=Nlong,typeNsessions,type×100%TypeAnomalyRate = \frac{N_{long,type}}{N_{sessions,type}} \times 100\%

or:

TypeAffectedRate=Nstations_anomalous,typeNstations_qualified,type×100%TypeAffectedRate = \frac{N_{stations\_anomalous,type}}{N_{stations\_qualified,type}} \times 100\%

Breakdown by time: dynamics and months

Long sessions dynamics by day

The daily dynamics chart shows how many anomalous sessions occurred across the fleet on each day of the window. “Flares” are visible — days of bad communication across the entire network. A peak that coincides with the incidents registry is typically a series of base station problems at a single location.

Breakdown by months

The breakdown by calendar months helps to see seasonality or a long-term trend. A mass monthly peak corresponds to the same series of incidents seen in the daily dynamics; gradual growth over time is a candidate for communication or battery degradation.

Purpose

The breakdown by months shows seasonality or a long-term trend of long sessions.

Month indicator

Nlong,month=count(long_sessions  in  month)N_{long,month} = count(long\_sessions \; in \; month)

Month share

If you need to show a share:

Sharemonth=Nlong,monthNlong,all_months×100%Share_{month} = \frac{N_{long,month}}{\sum N_{long,all\_months}} \times 100\%

Interpretation

PicturePossible explanation
sharp monthly spikenetwork change, mass failure, seasonal load
gradual growthcommunication or battery degradation
winter spikeweather conditions, network load, power
spike after an updatefirmware, settings, polling schedule

Per-session colour highlighting

Longest sessions of a node

When a node is expanded, its individual long sessions are highlighted by the strength of overshoot of the individual threshold, and the precise RSSI and Btm values at the moment of each long session are shown. These are what the field crew needs: a low RSSI points to a radio-signal problem, while a normal battery voltage rules the battery out.

Overshoot ratio

Ratioi=diUpperFenceRatio_i = \frac{d_i}{UpperFence}

Interpretation

RatioColour / level
1–2×weak overshoot
2–5×medium overshoot
≥5×strong overshoot

This helps to quickly distinguish moderately long sessions from extreme ones.

What to do based on the report results

If the cause is a base station

Check:

  • coverage quality at the location;
  • an alternative mobile network operator;
  • an external antenna;
  • a repeater;
  • recurrence of incidents by day;
  • neighbouring nodes at the same location;
  • network overload at specific hours.

If the cause is a local node

Check:

  • antenna;
  • SIM card;
  • modem;
  • power supply;
  • battery;
  • connectors;
  • installation site;
  • interference;
  • firmware version;
  • transmission-schedule settings.

If the cause is a weak signal

Actions:

  • measure RSSI on-site;
  • try to relocate the antenna;
  • check antenna orientation;
  • check an alternative carrier;
  • install an external antenna or repeater.

If the cause is the battery

Actions:

  • check Btm on-site;
  • replace the battery if necessary;
  • check the consumption current;
  • check the retry frequency;
  • check whether the device is overloading the network with retries.

If the cause is the model / firmware

Actions:

  • group nodes by software version;
  • check the supplier’s release notes;
  • request known issues;
  • compare with other models at the same locations;
  • test the communication mode in a lab.

AI commentary

AI field-visit plan

The optional AI commentary reads the RCA and writes a short, human-readable field-visit plan for the crew. This is a language explanation, not a source of diagnostics — all numbers and causes are determined by the formulas and rules above.

What AI can do

  • briefly retell the RCA;
  • explain the main probable culprit;
  • highlight top nodes;
  • formulate a field-visit plan;
  • explain the breakdown by models.

What AI cannot do

AI cannot:

  • change the IQR threshold;
  • change the list of long sessions;
  • change the score;
  • determine the true cause without data;
  • replace a radio-technical survey;
  • replace a field visit;
  • serve as an evidentiary basis.

Typical interpretation errors

Error: long session = bad device

Incorrect. A long session can be caused by the network, base station, weak signal, server routine, local antenna, SIM card or battery.

Error: many anomalies for a model = the model is bad

Incorrect. You must normalise by the number of devices, number of sessions, locations and mobile network operators.

Error: no anomalies = everything is fine

Incorrect if there are no session data or coverage is too low.

Error: high RSSI rules out a communication problem

Not always. There can be operator problems, overload, firmware, server-side reception, retries or protocol errors.

Error: battery loss = exact battery consumption

Incorrect. This is an estimate built on excess transmission time and a notional current.

Error: one extremely long session makes the node the main problem one

Not always. The score takes into account not only the maximum, but also the share, average duration and number of long sessions.

Minimum criteria for a complete report

A report is considered methodologically complete if it contains:

  • analysis period;
  • fleet coverage;
  • data-gate status;
  • number of nodes in the fleet;
  • number of polled nodes;
  • number of nodes with session data;
  • number of nodes that passed the IQR threshold;
  • number of sessions in the sample;
  • number of long sessions;
  • number of nodes with anomalies;
  • maximum session duration;
  • number of hourly incidents;
  • distribution of RCA hypotheses;
  • IQR threshold formula;
  • node score formula;
  • battery-loss formula;
  • RCA classification rules;
  • top problem nodes table;
  • breakdown by days;
  • breakdown by corrector type;
  • breakdown by months;
  • disclaimer on the approximate nature of battery loss;
  • disclaimer on the role of AI;
  • recommendations for actions.

Consolidated report formula

For each node:

D={didi>0}D = \{d_i \mid d_i > 0\} IQR=Q3(D)Q1(D)IQR = Q3(D) - Q1(D) UpperFence=Q3(D)+1.5×IQRUpperFence = Q3(D) + 1.5 \times IQR LongSessions={didi>UpperFence}LongSessions = \{d_i \mid d_i > UpperFence\} Pctlong=LongSessionsD×100%Pct_{long} = \frac{|LongSessions|}{|D|} \times 100\% A=min(100,  4×Pctlong)A = min(100,\;4 \times Pct_{long}) B=min(100,  8×AvgLongDurationmax(1,MedianDuration))B = min \left( 100,\; 8 \times \frac{AvgLongDuration}{max(1, MedianDuration)} \right) C=min(100,  LongSessions)C = min(100,\;|LongSessions|) Score=0.5A+0.3B+0.2CScore = 0.5A + 0.3B + 0.2C

Excess battery-consumption estimate:

ExtraTimetotal=diLongSessionsmax(0,  diMedianDuration)ExtraTime_{total} = \sum_{d_i \in LongSessions} max(0,\;d_i - MedianDuration) BatteryLossmAh=340×ExtraTimetotal3600BatteryLoss_{mAh} = \frac{340 \times ExtraTime_{total}}{3600}

Incident grouping:

Bucket(t)=floor(t/1h)×1hBucket(t) = floor(t / 1h) \times 1h Incident=Bucket  where  Nunique_stations5Incident = Bucket \; where \; N_{unique\_stations} \ge 5
text
The report detects abnormally long communication sessions relative to each
node's individual norm. The result is used for prioritising diagnostics of
communications, antennas, SIM cards, power, carriers and base stations. The
report is not proof of a specific device's malfunction without a field visit and
does not assess the correctness of commercial gas metering.

Relation to other reports

If you need to understandUse
which nodes hold communication long and drain the batterythis report
which nodes have no communication or archiveTop Problem Nodes
whether the period can be closed for a specific nodeConsumption Analytics
whether there is suspicion of undermeteringSuspicious Nodes
why a specific node is suspiciousMetering Bypass
when to replace batteriesBattery Forecast

This separation keeps long communication sessions from being mixed with commercial, metrological and forensic conclusions.

Related topics

Last updated on

Was this page helpful?