Papers
Topics
Authors
Recent
Search
2000 character limit reached

CD-LoRa: Advanced Collision Decoding in LoRa

Updated 9 July 2026
  • CD-LoRa is a family of LoRa physical-layer techniques that decodes colliding same-power transmissions by exploiting chirp structure and timing information.
  • It uses short-time FFT and precise timing algorithms to separate desynchronized signals, achieving high decoding success in two-collider scenarios.
  • Chirp-layered superposition coding in CD-LoRa overlays a high-spreading-factor layer onto legacy LoRa, boosting throughput by up to 14%.

CD-LoRa denotes a family of LoRa physical-layer techniques that exploit chirp structure, symbol timing, and receiver-side signal processing to recover or multiplex concurrent transmissions that conventional LoRa receivers would treat as collisions. In the literature, the term most directly refers to collision or concurrent decoding of superposed same-channel, same-spreading-factor LoRa frames with similar receive power by using timing information to match symbols to transmitters (Rachkidy et al., 2018). Related work broadens the idea toward chirp-division techniques, including chirp-layered superposition coding, in which a high-spreading-factor chirp segment is linearly superposed on a low-spreading-factor LoRa symbol while keeping the legacy dechirp-and-DFT demodulator largely intact (Huang et al., 7 Apr 2026).

1. Terminology and scope

In LoRa networking, collisions arise because frames are sent in an ALOHA-like fashion in LoRaWAN. When multiple end devices transmit simultaneously on the same channel with the same spreading factor and comparable power, conventional receivers fail to decode any frame unless a capture effect applies. CD-LoRa addresses this regime directly: its target is equal-power or similar-power superposition rather than near-far dominance.

The term is not entirely uniform across the literature. One line of work uses it for collision decoding or concurrent decoding of superposed chirps, emphasizing timing-informed recovery of colliding frames (Rachkidy et al., 2018). A later line uses chirp-division language more broadly, treating superposition coding itself as a CD-LoRa instance, because one stream remains decodable by the legacy LoRa chain while another is embedded in a carefully designed chirp component (Huang et al., 7 Apr 2026). A separate paper on “coded LoRa” analyzes BER and FER under AWGN and CFO, including channel coding, interleaving, and Gray mapping, which is adjacent to CD-LoRa insofar as it supplies baseline PHY reliability models rather than collision-resolution algorithms (Afisiadis et al., 2019).

A further ambiguity is purely lexical. In LLM research, “CD-LoRA” denotes context distillation via LoRA in Doc-to-LoRA, where a hypernetwork maps a context to LoRA adapter weights. That usage is unrelated to chirp spread spectrum, LoRaWAN, or LoRa collision handling (Charakorn et al., 13 Feb 2026).

Several distinctions are fundamental. CD-LoRa is not equivalent to the capture effect, because capture exploits strong power imbalance and typically decodes only the strongest frame. It is not equivalent to successive interference cancellation in its usual power-diversity form, because the original collision-decoding proposal explicitly targets equal or similar power. It is also distinct from approaches that rely on SF orthogonality or multi-SF scheduling, because the decoding objective is same-SF, same-channel reception. Conceptually, it is closer to ZigZag-style use of timing offsets, but the chirp-based formulation operates at the chirp and symbol level and, in the desynchronized case, uses one collision instance rather than multiple distinct collision patterns. This suggests that CD-LoRa is best understood as a chirp-aware concurrent-reception framework rather than a single standardized protocol.

2. Chirp-spread-spectrum basis and collision model

LoRa uses chirp spread spectrum. For spreading factor SF\mathrm{SF} and bandwidth BW\mathrm{BW}, the symbol duration is

Ts=2SFBW.T_s = \frac{2^{\mathrm{SF}}}{\mathrm{BW}}.

A baseband up-chirp over [0,Ts][0,T_s] can be written as

s(t)=exp ⁣(j2π(f0t+k2t2)),s(t) = \exp\!\left(j\,2\pi\left(f_0 t + \frac{k}{2} t^2\right)\right),

with sweep rate

k=BWTs=BW22SF.k = \frac{\mathrm{BW}}{T_s} = \frac{\mathrm{BW}^2}{2^{\mathrm{SF}}}.

For down-chirps, the sign of kk is inverted. A LoRa symbol is encoded by a cyclic frequency shift, equivalently a time shift of the chirp edge, and practical demodulation multiplies the received signal by a reference chirp to de-chirp the sweep, then performs an NN-point FFT with N=2SFN = 2^{\mathrm{SF}}. The detected symbol is the FFT bin with the largest magnitude.

The collision model for superposed transmissions is

y(t)=i=1Maisi(tτi)+n(t),y(t) = \sum_{i=1}^{M} a_i\, s_i(t - \tau_i) + n(t),

where BW\mathrm{BW}0 is the number of transmitters, BW\mathrm{BW}1 are complex channel gains or amplitudes, BW\mathrm{BW}2 are start-time offsets, and BW\mathrm{BW}3 is additive noise. The core CD-LoRa regime assumes the same SF and the same channel, with receive powers that are equal or within a few dB, so that no single signal dominates through capture (Rachkidy et al., 2018).

Two timing regimes matter. In the slightly desynchronized regime, start times differ by at least BW\mathrm{BW}4 but not more than BW\mathrm{BW}5, all within one symbol span; a typical choice is BW\mathrm{BW}6. In the synchronized regime, symbol boundaries coincide. Receiver assumptions are correspondingly specific. When overlapping down-chirps are observed, the receiver is assumed able to resolve all distinct instantaneous frequencies within a short window of duration BW\mathrm{BW}7. When an up-chirp overlaps a down-chirp, neither frequency is decodable in that window. The receiver learns symbol boundaries from the preamble, sync word, and the preamble-to-data inversion from up-chirp to down-chirp. With slightly desynchronized preambles, two distinct sharp edges per preamble symbol reveal transmitter-specific symbol frontiers.

A structural limitation follows from the observation model: the receiver observes the set of distinct frequencies present at a given time, but not multiplicity. It sees sets rather than multisets. This multiplicity ambiguity becomes increasingly important when three or more transmitters collide.

3. Receiver algorithms for superposed frames

Regime Assumptions Recovery mechanism
Slightly desynchronized transmitters Start-time offsets within one symbol and at least BW\mathrm{BW}8 Timing-informed separation of changing and unchanged frequency bins
Synchronized transmitters Symbol boundaries aligned Record unordered symbol pairs, then use one retransmission to resolve both frames

For slightly desynchronized collisions, the central observation is that around each symbol frontier the set of instantaneous frequencies either changes by exactly one element, because one transmitter starts a new symbol, or remains unchanged, because that transmitter repeats its symbol. Since transmitter frontiers alternate according to their offsets, the receiver can attribute the changing element to the transmitter whose frontier occurs at that time and infer the other transmitter’s ongoing symbol from the unchanged element (Rachkidy et al., 2018).

The processing pipeline has five stages. First, preamble detection and frontier estimation are performed per transmitter, typically using correlation with an up-chirp reference together with short-time FFT, so that individual boundary times BW\mathrm{BW}9 and Ts=2SFBW.T_s = \frac{2^{\mathrm{SF}}}{\mathrm{BW}}.0 can be derived. Second, for each frontier time Ts=2SFBW.T_s = \frac{2^{\mathrm{SF}}}{\mathrm{BW}}.1, the receiver takes a short window Ts=2SFBW.T_s = \frac{2^{\mathrm{SF}}}{\mathrm{BW}}.2, de-chirps for down-chirps, computes an FFT of size Ts=2SFBW.T_s = \frac{2^{\mathrm{SF}}}{\mathrm{BW}}.3, and extracts the set of peak bins Ts=2SFBW.T_s = \frac{2^{\mathrm{SF}}}{\mathrm{BW}}.4 corresponding to distinct instantaneous frequencies. Third, it predicts the bins that should be present if no symbol changes had occurred:

Ts=2SFBW.T_s = \frac{2^{\mathrm{SF}}}{\mathrm{BW}}.5

with

Ts=2SFBW.T_s = \frac{2^{\mathrm{SF}}}{\mathrm{BW}}.6

where the sign depends on chirp direction. Fourth, it compares Ts=2SFBW.T_s = \frac{2^{\mathrm{SF}}}{\mathrm{BW}}.7 and Ts=2SFBW.T_s = \frac{2^{\mathrm{SF}}}{\mathrm{BW}}.8. If the symmetric difference has size Ts=2SFBW.T_s = \frac{2^{\mathrm{SF}}}{\mathrm{BW}}.9, one bin exited and one bin entered; the entering bin is the new symbol for the transmitter whose frontier is at [0,Ts][0,T_s]0, the exiting bin is its previous symbol, and the unchanged element corresponds to the other transmitter’s current symbol. If the difference has size [0,Ts][0,T_s]1, the current transmitter repeats its previous symbol; at the beginning of a frame this can force a temporary wildcard “*”. Fifth, per-transmitter symbol sequences are reconstructed, leading wildcards are replaced by the first known symbol value once a change occurs, and the frame-length field is used to truncate to the correct number of symbols.

The algorithm explicitly skips the earliest data frontier if it overlaps the other transmitter’s trailing preamble, because up-chirp/down-chirp overlap is not reliably decodable. It also assumes that all colliding frames have the same preamble length, that the frame length is included at the beginning of the frame, and that each frame contains at least one symbol change.

For fully synchronized collisions, timing no longer matches each symbol to its source. In that case, the receiver records at each symbol boundary the unordered pair or set of detected values. One retransmission by either colliding node then resolves the ambiguity for all symbols: once the retransmitted frame is decoded normally, the other frame is obtained by elimination, symbol by symbol. The paper’s formulation is deliberately receiver-centric: the desynchronized algorithm is passive, while the synchronized algorithm requires feedback so that one retransmission can be requested.

4. Complexity, operating assumptions, and measured gains

The slightly desynchronized algorithm processes a short-time FFT of size [0,Ts][0,T_s]2 at each frontier. If the total number of symbol frontiers is [0,Ts][0,T_s]3, the total cost is [0,Ts][0,T_s]4, while symbol assignment and set updates are [0,Ts][0,T_s]5 per frontier. Space is [0,Ts][0,T_s]6 per transmitter, because only the last known symbol and small sets of bins must be stored. In the synchronized case, the first collision requires [0,Ts][0,T_s]7 for [0,Ts][0,T_s]8 symbols and [0,Ts][0,T_s]9 storage for the recorded sets, followed by ordinary single-frame demodulation for the retransmission and an s(t)=exp ⁣(j2π(f0t+k2t2)),s(t) = \exp\!\left(j\,2\pi\left(f_0 t + \frac{k}{2} t^2\right)\right),0 elimination pass (Rachkidy et al., 2018).

These asymptotics conceal demanding signal-processing assumptions. Peaks must be detectable within short windows of length s(t)=exp ⁣(j2π(f0t+k2t2)),s(t) = \exp\!\left(j\,2\pi\left(f_0 t + \frac{k}{2} t^2\right)\right),1, so low SNR directly degrades frequency-set estimation. The method assumes similar receive powers or sufficient dynamic range to detect multiple peaks; severe near-far conditions can suppress weaker peaks. Accurate frontier timing is required because timing errors perturb the predicted shift s(t)=exp ⁣(j2π(f0t+k2t2)),s(t) = \exp\!\left(j\,2\pi\left(f_0 t + \frac{k}{2} t^2\right)\right),2 and can generate false set differences. CFO shifts tone bins after de-chirping, so the paper recommends estimating CFO during the preamble for each transmitter and compensating before the FFT; clock drift across a frame is treated as typically small but worth tracking. Sampling rate must be at least s(t)=exp ⁣(j2π(f0t+k2t2)),s(t) = \exp\!\left(j\,2\pi\left(f_0 t + \frac{k}{2} t^2\right)\right),3, the FFT size is s(t)=exp ⁣(j2π(f0t+k2t2)),s(t) = \exp\!\left(j\,2\pi\left(f_0 t + \frac{k}{2} t^2\right)\right),4, and the receiver must resolve multiple FFT peaks within s(t)=exp ⁣(j2π(f0t+k2t2)),s(t) = \exp\!\left(j\,2\pi\left(f_0 t + \frac{k}{2} t^2\right)\right),5 windows.

The measured gains in the original evaluation are substantial but regime-dependent. The simulation setup used 100 end devices, a single gateway and channel, the same SF, similar receive powers, duty-cycle s(t)=exp ⁣(j2π(f0t+k2t2)),s(t) = \exp\!\left(j\,2\pi\left(f_0 t + \frac{k}{2} t^2\right)\right),6, frame length s(t)=exp ⁣(j2π(f0t+k2t2)),s(t) = \exp\!\left(j\,2\pi\left(f_0 t + \frac{k}{2} t^2\right)\right),7 bytes, and 10,000 averaged samples, with both SF7 and SF12 tested. In the slightly desynchronized case, two colliding frames were always decoded, yielding s(t)=exp ⁣(j2π(f0t+k2t2)),s(t) = \exp\!\left(j\,2\pi\left(f_0 t + \frac{k}{2} t^2\right)\right),8 success. For three colliding frames, success depended on SF and lengths; at SF7 and s(t)=exp ⁣(j2π(f0t+k2t2)),s(t) = \exp\!\left(j\,2\pi\left(f_0 t + \frac{k}{2} t^2\right)\right),9, approximately k=BWTs=BW22SF.k = \frac{\mathrm{BW}}{T_s} = \frac{\mathrm{BW}^2}{2^{\mathrm{SF}}}.0 of frames were decoded, with success declining as more nodes collided. Throughput gains relative to conventional LoRa reached up to k=BWTs=BW22SF.k = \frac{\mathrm{BW}}{T_s} = \frac{\mathrm{BW}^2}{2^{\mathrm{SF}}}.1 at k=BWTs=BW22SF.k = \frac{\mathrm{BW}}{T_s} = \frac{\mathrm{BW}^2}{2^{\mathrm{SF}}}.2 duty cycle in the 100-end-device network. In the synchronized case, two colliding frames yielded one decoded frame per collision given one retransmission, with effective throughput gain up to k=BWTs=BW22SF.k = \frac{\mathrm{BW}}{T_s} = \frac{\mathrm{BW}^2}{2^{\mathrm{SF}}}.3 relative to conventional LoRa under the tested traffic. The paper also notes that synchronized throughput is lower than in the desynchronized case because one retransmission is required.

The limitations are correspondingly explicit. Fully synchronized identical symbols remain ambiguous without retransmission. Three-way and higher-order collisions suffer from multiplicity ambiguity, because the number of distinct frequencies may be less than the number of transmitters. Practical improvements are therefore strongest for two colliders and, in some cases, three.

5. Chirp-layered superposition coding

A broader CD-LoRa interpretation appears in chirp-layered superposition coding. Here, an additional waveform is linearly superposed on a standard LoRa transmission with minimal impact on the standard dechirp-and-DFT demodulation process. The specific design analyzed overlays a high-SF chirp segment on a low-SF LoRa symbol and uses controlled power allocation so that the low-SF layer remains decodable while the high-SF segment carries an additional coherent BPSK stream (Huang et al., 7 Apr 2026).

Let k=BWTs=BW22SF.k = \frac{\mathrm{BW}}{T_s} = \frac{\mathrm{BW}^2}{2^{\mathrm{SF}}}.4, with

k=BWTs=BW22SF.k = \frac{\mathrm{BW}}{T_s} = \frac{\mathrm{BW}^2}{2^{\mathrm{SF}}}.5

and

k=BWTs=BW22SF.k = \frac{\mathrm{BW}}{T_s} = \frac{\mathrm{BW}^2}{2^{\mathrm{SF}}}.6

Over one low-SF symbol interval, the transmitted discrete-time signal is

k=BWTs=BW22SF.k = \frac{\mathrm{BW}}{T_s} = \frac{\mathrm{BW}^2}{2^{\mathrm{SF}}}.7

where k=BWTs=BW22SF.k = \frac{\mathrm{BW}}{T_s} = \frac{\mathrm{BW}^2}{2^{\mathrm{SF}}}.8 is the low-SF LoRa symbol and k=BWTs=BW22SF.k = \frac{\mathrm{BW}}{T_s} = \frac{\mathrm{BW}^2}{2^{\mathrm{SF}}}.9 is an kk0-sample contiguous segment extracted from a high-SF waveform. After low-SF dechirping and DFT, the cross-term induced by the high-SF layer is

kk1

with

kk2

The paper proves that any nonzero superposed signal perturbs the output of the standard demodulator, so perfect transparency is impossible. The design criterion is therefore minimization of worst-case per-bin interference. Under a fixed interference energy budget, uniform spreading across bins minimizes the maximum per-bin degradation. Stationary-phase analysis then shows that a high-SF segment appears nearly flat across the low-SF DFT bins when kk3, which is why a high-SF up-chirp overlaid on a low-SF symbol can be made minimally disruptive.

The physical interpretation is that the high-SF chirp evolves slowly over one low-SF symbol. Its instantaneous frequency changes by

kk4

which is a small fraction of kk5 when the SF gap is large. After low-SF dechirping, the segment behaves as a quasi-narrowband carrier over kk6. This permits coherent BPSK overlay. With power allocation kk7 and kk8,

kk9

where NN0 and NN1. The receiver first performs ordinary low-SF detection, reconstructs and subtracts the low-SF symbol, and then correlates the residual with the high-SF segment template.

The resulting effective SNRs are particularly simple:

NN2

with NN3 and NN4, and

NN5

for oversampling factor NN6. The low-SF layer is modeled as seeing the superposed high-SF layer as an additional white-noise floor, while the high-SF BPSK layer has

NN7

The spectral-efficiency increment is one bit per low-SF symbol, so the raw low-SF rate is

NN8

the overlay rate is

NN9

and the relative improvement is N=2SFN = 2^{\mathrm{SF}}0. For the numerical example N=2SFN = 2^{\mathrm{SF}}1, N=2SFN = 2^{\mathrm{SF}}2, and N=2SFN = 2^{\mathrm{SF}}3 kHz, the baseline raw rate is approximately N=2SFN = 2^{\mathrm{SF}}4 bps, the BPSK layer adds approximately N=2SFN = 2^{\mathrm{SF}}5 bps, and the total reaches approximately N=2SFN = 2^{\mathrm{SF}}6 bps, or about a N=2SFN = 2^{\mathrm{SF}}7 increase. Complexity remains close to legacy LoRa for the low-SF stream, with one additional correlator for the overlaid stream.

6. Reliability analysis and operational boundaries

Analytical performance baselines for LoRa itself are important for CD-LoRa because collision decoding and superposition coding both operate under the same PHY constraints. “Coded LoRa Frame Error Rate Analysis” studies the coded FER of LoRa under AWGN and under CFO, explicitly incorporating channel coding, interleaving, and Gray mapping (Afisiadis et al., 2019). The LoRa PHY considered there uses Hamming-like block codes with N=2SFN = 2^{\mathrm{SF}}8 and N=2SFN = 2^{\mathrm{SF}}9, diagonal interleaving with depth y(t)=i=1Maisi(tτi)+n(t),y(t) = \sum_{i=1}^{M} a_i\, s_i(t - \tau_i) + n(t),0, and Gray mapping from y(t)=i=1Maisi(tτi)+n(t),y(t) = \sum_{i=1}^{M} a_i\, s_i(t - \tau_i) + n(t),1 bits to a symbol index.

Under AWGN, the uncoded symbol error probability is approximated by

y(t)=i=1Maisi(tτi)+n(t),y(t) = \sum_{i=1}^{M} a_i\, s_i(t - \tau_i) + n(t),2

where y(t)=i=1Maisi(tτi)+n(t),y(t) = \sum_{i=1}^{M} a_i\, s_i(t - \tau_i) + n(t),3 and y(t)=i=1Maisi(tτi)+n(t),y(t) = \sum_{i=1}^{M} a_i\, s_i(t - \tau_i) + n(t),4 are functions of the harmonic number y(t)=i=1Maisi(tτi)+n(t),y(t) = \sum_{i=1}^{M} a_i\, s_i(t - \tau_i) + n(t),5. The corresponding uncoded bit error probability is

y(t)=i=1Maisi(tτi)+n(t),y(t) = \sum_{i=1}^{M} a_i\, s_i(t - \tau_i) + n(t),6

because under AWGN-only symbol confusions are equiprobable on average. For the y(t)=i=1Maisi(tτi)+n(t),y(t) = \sum_{i=1}^{M} a_i\, s_i(t - \tau_i) + n(t),7 Hamming-like decoders used by the y(t)=i=1Maisi(tτi)+n(t),y(t) = \sum_{i=1}^{M} a_i\, s_i(t - \tau_i) + n(t),8 and y(t)=i=1Maisi(tτi)+n(t),y(t) = \sum_{i=1}^{M} a_i\, s_i(t - \tau_i) + n(t),9 codes, the codeword error probability is

BW\mathrm{BW}00

With BW\mathrm{BW}01 payload symbols, the simplest payload FER approximation is

BW\mathrm{BW}02

The paper also gives a more accurate conditional approximation based on the diagonal interleaver structure, and both approximations track Monte Carlo well down to approximately BW\mathrm{BW}03.

Under CFO, the residual frequency offset is represented by a fractional-bin term BW\mathrm{BW}04, and the dechirp-and-DFT output develops a Dirichlet-kernel leakage pattern:

BW\mathrm{BW}05

This leakage primarily affects adjacent bins, which is why Gray mapping becomes materially beneficial under CFO: adjacent-bin errors induce one-bit flips. The paper’s numerical discussion indicates that residual CFO around BW\mathrm{BW}06 already produces noticeable FER penalty, and that the penalty is similar across SF when expressed in fractional-bin units.

For CD-LoRa, these results delimit viable operating regions. Timing-informed collision decoding assumes frontier estimation and peak extraction are reliable in short windows, which becomes harder as SNR falls or CFO widens bin leakage. Chirp-layered superposition coding similarly depends on keeping the low-SF effective SNR BW\mathrm{BW}07 above the sensitivity region of the underlying LoRa layer while preserving sufficient BW\mathrm{BW}08 for the overlaid BPSK stream. A plausible implication is that CD-LoRa should be interpreted not as a replacement for LoRa PHY robustness analysis, but as an additional layer of structure that becomes useful only when the baseline LoRa demodulation primitives remain trustworthy.

Definition Search Book Streamline Icon: https://streamlinehq.com
References (4)

Topic to Video (Beta)

No one has generated a video about this topic yet.

Whiteboard

No one has generated a whiteboard explanation for this topic yet.

Follow Topic

Get notified by email when new papers are published related to CD-LoRa.