Bytes, Airtime, and the Duty-Cycle Tax

Bytes, Airtime, and the Duty-Cycle Tax

Ada re-derives this chapter’s own numbers step by step, at full precision

foundations
math-foundations
calculation-audit
coap
Ada ADA · CALCULATION AUDIT

Bytes, Airtime, and the Duty-Cycle Tax

A CoAP exchange of 64 bytes takes about 77 ms of LoRa airtime while the HTTP equivalent of 320 bytes takes about 384 ms, and on a 1%-duty EU868 link every uplink forces a long silence afterward. The chapter builds a 5x gap across airtime, energy, and enforced quiet from just those two byte counts. This audit traces the chain to ask whether the byte budget, not the battery, is the real duty-cycle tax.

Companion to the chapter CoAP Message Format — every number here comes from that chapter.

Try

A CoAP exchange of 64 bytes takes about 77 ms of LoRa airtime while the HTTP equivalent of 320 bytes takes about 384 ms , and on a 1% -duty EU868 link every uplink forces a long silence afterward. Calculate this case.

Observe

This audit traces the chain to ask whether the byte budget, not the battery, is the real duty-cycle tax. Check shows this.

Explain

The audit conclusion is that the 5x factor is not a slogan -- it is the same 320 / 64 ratio surfacing in three independent budgets (airtime, silence, energy), because all three scale linearly with byte count. The design meaning: on a duty-limited LoRa link the binding constraint is often not battery but the 7.68 s of enforced quiet after each CoAP uplink, and that ceiling isthe binding transmission-rate limit. Check confirms it.

See the relationship before changing it

The figure reads from left to right. The blue input is exchange size. The middle card names the page’s rule. The green output is lora airtime. The arrow matters: change the input, apply the rule once, then read the result with its unit.

Exchange Size changes lora airtime A three-part teaching diagram connects exchange size, the rule airtime = bytes x 1.2 ms/byte, and lora airtime. INPUT Exchange size APPLY THE RULE predict calculate check units OUTPUT RESULT
Walk the arrow. At a fixed radio setting, every byte adds the same airtime.

Derive the baseline in four named moves

  1. 1

    Name the input. The chapter baseline is 64 bytes.

  2. 2

    Name the relationship. airtime = bytes x 1.2 ms/byte

  3. 3

    Substitute with units. 64 x 1.2 = 76.8 ms

  4. 4

    Read the result. Keep the unit beside the value, then use the result only inside the technical boundary below.

Predict, then change exchange size

Try Predict how lora airtime responds when exchange size moves. Calculate exchange size; compare lora airtime with that prediction.

64 bytes
Chapter baseline
LoRa airtime

Observe Return to 64 bytes. Recheck lora airtime with exchange size at its chapter value.

Explain At a fixed radio setting, every byte adds the same airtime.

Check yourself

What should you do before trusting a moved-slider result?
Answer: Predict its direction, apply the displayed relationship, keep the units, and compare the reset value with the chapter’s worked baseline.
What does this small model leave out?
Answer: Only exchange size moves here. The lora airtime calculation excludes field effects listed below.

Technical boundaries

The “Bytes, Airtime, and the Duty-Cycle Tax” model leaves out link-layer headers, security framing, retransmissions, channel access, radio ramp time, or receiver energy; “Bytes, Airtime, and the Duty-Cycle Tax” therefore reports only its named fixtures.

Ada: The chapter’s headline is that a CoAP exchange (64 bytes) costs about 77 ms of LoRa airtime while the HTTP equivalent (320 bytes) costs about 384 ms. Every downstream claim – the 5x factor, the energy gap, the duty-cycle pressure – rides on those two byte counts and two physical rates, so let me trace the whole chain from the chapter’s own numbers.

  • Airtime at SF10 (1.2 ms per byte): CoAP 64 x 1.2 = 76.8 ms (the chapter’s ~77 ms); HTTP 320 x 1.2 = 384.0 ms. Ratio 384.0 / 76.8 = 5.0 exactly.
  • Duty-cycle tax: EU868 caps a device at 1% transmit time, so 76.8 ms of airtime forces 76.8 / 0.01 = 7680 ms = 7.68 s of mandatory silence afterward – the HTTP exchange forces 384 / 0.01 = 38.4 s.
  • Transmit energy at SF12 (0.5 mJ per byte): CoAP 64 x 0.5 = 32.0 mJ; HTTP 320 x 0.5 = 160.0 mJ – again 160 / 32 = 5.0x.
  • Where the byte savings begin: delta-encoding /sensors/temp costs 13 bytes versus a naive 15 (each repeated Uri-Path option drops its 1-byte number), and 27 bytes for the HTTP text request line.

The audit conclusion is that the 5x factor is not a slogan – it is the same 320 / 64 ratio surfacing in three independent budgets (airtime, silence, energy), because all three scale linearly with byte count. The design meaning: on a duty-limited LoRa link the binding constraint is often not battery but the 7.68 s of enforced quiet after each CoAP uplink, and that ceiling is set entirely by how many bytes the encoding puts on the air.

Every number above is taken from the chapter’s own material and re-derived step by step.