Math Bridge: BLE Duty Cycle and Runtime

← Back to BLE Field Debugging
Math BridgeBluetooth and BLEStruggle-friendly runway

How can one missing shutdown cut 117 days to 1.17?

Turn one current pulse and the time between pulses into an average-current, runtime, energy, and voltage-sag ledger.

Radio Remi, the guideRadio Remi guides
The one targetTurn a radio pulse trace into a runtime estimate.
The chapter case500 µs at 15 mA every 100 ms, then 5 µA sleep.
What it buys youMake hidden “sleep” current visible before field failure.

A technician must decide whether average current is safe before changing transmit duration on the real device. The result is unresolved until the rule and units are checked. Predict the direction first.

See the relationship before changing it

The figure reads from left to right. The blue card is transmit duration. The middle card applies this page's rule. The green card is average current. Walk the arrows once: set the input, apply the rule, then read the result with its unit.

The retained audit below checks several chapter fixtures. This model keeps those stated values fixed and changes only transmit duration, so the numeric fixture does not switch without explanation.

Transmit duration changes average current An input card leads through the rule average = 0.005 mA + (15 - 0.005) mA x duration / 100,000 us to the average current result. INPUT PAGE INPUT APPLY THE RULE predict calculate check units OUTPUT RESULT
Walk the arrows. Longer radio bursts raise average current inside the fixed interval.

Derive the baseline in four named moves

  1. 1

    Name the input. The chapter baseline is 500 us.

  2. 2

    Name the relationship. average = 0.005 mA + (15 - 0.005) mA x duration / 100,000 us

  3. 3

    Substitute with units. 0.005 + 14.995 x 500 / 100,000 = 0.0800 mA

  4. 4

    Read the result. Keep the unit beside the value. Use it only inside the technical boundary on this page.

Predict, then change transmit duration

Try Predict the direction of average = 0.005 mA + (15 - 0.005) mA x duration / 100,000 us. Test another transmit duration, then compare average current.

500 us
Chapter baseline
Average current

Observe Longer radio bursts raise average current inside the fixed interval. Reset transmit duration to 500 and compare average current.

Explain Longer radio bursts raise average current inside the fixed interval.

Check yourself

What should you do before trusting a moved-control result?
Answer: Predict its direction, apply the shown relationship, keep the units, and reset to the worked baseline.
What does this small model leave out?
Answer: Only transmit duration moves here. Field effects named in the technical boundary stay fixed.

1. Average the current over one interval

The radio is at 15 mA for only part of each 100 ms interval. Its duty fraction is 500 µs/100 ms=0.005. Weight active and sleep currents by their fractions before dividing the 225 mAh charge budget.

Radio Remi: Convert microseconds and milliseconds to the same unit before dividing.

2. Name every move

1

Find the duty fractionD=ttx/Tinterval.

2

Weight both statesIavg=ItxD+Isleep(1−D).

3

Divide charge and test sagtrun=Q/Iavg; Vloaded=Voc−ItxRint.

3. Charge, energy, and voltage answer different questions

EWh=(QmAh/1000)V; ΔV=ItxRint

mAh predicts runtime from average current. Multiplying by voltage gives energy. Internal resistance predicts whether a short pulse can brown out the radio even while charge remains.

4. Try one controlled change

Iavg=Itx(ttx/T)+(Isleep)(1−ttx/T)

TryLengthen only the transmit duration. The 100 ms interval, 15 mA transmit current, 5 µA sleep, cell, and resistance stay fixed.

Duty cycle
Average current
Runtime
Runtime
Nameplate energy
Pulse sag
Loaded voltage
8 mA bug runtime

ObserveAt 500 µs, duty is 0.500%, average current is 0.0800 mA, runtime is about 2,814 h or 117 days, and a fresh 10 Ω cell sags 0.150 V.

ExplainLonger pulses raise the weighted active-current term. The 8 mA shutdown bug dominates the average even when the pulse duration remains short, collapsing runtime to about 1.17 days.

Technical boundaries.

The calculation is a first-order charge and resistance model.

Radio timing
Real startup, receive, processing, retries, and regulator losses add load
Cell model
Capacity and resistance change with temperature, age, and pulse history
Runtime result
Assumes the full nameplate charge remains usable to device cutoff

Use a current trace and loaded-voltage trace from the actual hardware for release evidence.

5. Reproduce the chapter defaults

D=0.000500/0.100=0.005. Iavg=15(0.005)+0.005(0.995)=0.079975 mA. Runtime=225/0.079975=2,813 h=117 days. Replacing 0.005 mA sleep with 8 mA gives 8.035 mA and about 1.17 days. The 3.0 V nameplate energy is 0.225×3.0=0.675 Wh.

6. Carry the evidence forward

Capture the current waveform, interval distribution, startup and receive windows, sleep floor, regulator efficiency, loaded cell voltage, internal resistance, temperature, cutoff, firmware build, and the exact shutdown path.

7. Check yourself

Why is 500 µs divided by 100 ms equal to 0.005?
Answer: 500 µs is 0.5 ms, and 0.5/100=0.005.
Why can the battery brown out before its mAh is exhausted?
Answer: Pulse current through internal resistance can pull terminal voltage below the device cutoff.
Why does an 8 mA sleep bug dominate a 15 mA pulse?
Answer: Sleep occupies about 99.5% of every interval, so its weighted contribution is large.
Honesty boundary.

The page reproduces the chapter’s ideal estimator and exposes its assumptions.

117 days
Ideal nameplate-charge result at the stated defaults
1.17 days
Same model with the measured 8 mA leak substituted
0.150 V sag
Fresh-cell illustration using a fixed 10 Ω resistance

These are diagnostic bounds, not a warranty for a cell or deployment.