Papers
Topics
Authors
Recent
Search
2000 character limit reached

BU-LoRaWAN: Uplink Scheduling for DtS IoT

Updated 23 June 2026
  • BU-LoRaWAN is a MAC-layer scheduling scheme that repurposes Class B beacons to create slotted uplink windows for direct-to-satellite IoT systems.
  • It enhances network performance by reducing collision probability by 20–30% and nearly doubling packet delivery in congested LEO satellite environments.
  • Simulation results using OMNeT++ and FLoRaSat validate the protocol’s efficiency in managing timing, slot allocation, and queue scheduling without modifying the PHY layer.

Beacon-based Uplink LoRaWAN (BU-LoRaWAN) is a MAC-layer scheduling scheme designed to enhance uplink efficiency and collision avoidance for direct-to-satellite (DtS) Internet of Things systems utilizing LoRaWAN over Low Earth Orbit (LEO) constellations. The protocol repurposes the existing LoRaWAN Class B beacon synchronization mechanism to orchestrate ground device transmission windows, enabling scalable and efficient slotted uplink access without modifications to the PHY layer or significant changes to the LoRaWAN standard. The approach is evaluated in simulation using OMNeT++ and the FLoRaSat framework, with results demonstrating substantial improvements in traffic delivery and collision reduction compared to baseline LoRaWAN (Mojamed, 2024).

1. System Topology and Frame Structure

Overall Network Architecture

BU-LoRaWAN is designed for a system comprising:

  • End Devices: Terrestrial, Class B-capable LoRaWAN sensors (Spreading Factor 12, 125 kHz bandwidth, Code Rate 4/8, Ptx14P_{tx}\approx 14 dBm) equipped with MAC-layer uplink queues.
  • LEO Satellite Gateways: A constellation of 16 satellites organized in four planes, each at 600 km altitude and 98° inclination, serving as LoRaWAN gateways with inter-satellite links (ISL) to the ground network server.
  • Network Server: A terrestrial aggregator for uplink traffic, responsible for disseminating beacons to synchronize uplink access.

Beacon Window Repurposing

Standard LoRaWAN Class B periodically broadcasts a 64-bit time-reference beacon every Tb=128T_b = 128 s, defining the following interval structure:

  • Beacon period (Tf=TbT_f = T_b): 128 s
  • Beacon guard (TgT_g): 3 s
  • Reserved beacon duration (TrT_r): 2.12 s
  • Beacon window (Tw=Tf(2Tg+Tr)122.88T_w = T_f - (2T_g + T_r) \approx 122.88 s)

BU-LoRaWAN inverts the typical Class B behavior: the TwT_w window, offset by a pseudo-random pingOffset, becomes an uplink transmission window, subdivided into random slots for collision avoidance. All synchronization occurs via MAC-layer scheduling, avoiding additional downlink traffic.

Timing Parameters

Key parameters in the BU-LoRaWAN frame are:

Parameter Symbol Typical Value
Beacon period TbT_b 128 s
Guard time TgT_g 3 s
Beacon window TwT_w Tb=128T_b = 1280122.88 s
TX-slot length Tb=128T_b = 1281 Time-on-air (e.g., 1 s)
pingOffset Tb=128T_b = 1282

The effective uplink window is Tb=128T_b = 1283.

The available slot count is Tb=128T_b = 1284. When Tb=128T_b = 1285, this is commonly approximated as Tb=128T_b = 1286.

Random Slot Selection and Collision Analysis

Upon beacon reception at time Tb=128T_b = 1287, each device independently:

  • Computes transmission time Tb=128T_b = 1288, where Tb=128T_b = 1289 is a uniform random variable.
  • Alternatively, selects a slot Tf=TbT_f = T_b0 and schedules transmission at Tf=TbT_f = T_b1.

The probability that no collisions occur among Tf=TbT_f = T_b2 devices in one beacon window is:

Tf=TbT_f = T_b3

Thus, the collision probability is:

Tf=TbT_f = T_b4

For Tf=TbT_f = T_b5, this simplifies to Tf=TbT_f = T_b6.

3. MAC-Layer Queue Management and Slot Scheduling

Workflow and State

Each device maintains a FIFO queue Tf=TbT_f = T_b7 for uplink packets. Incoming packets are enqueued immediately. Dequeue and transmission occur only when the device’s internal TX-timer fires after beacon synchronization.

Pseudocode Outline

TgT_g2

Slot Optimization

BU-LoRaWAN instantiates a “framed slotted ALOHA” per Tf=TbT_f = T_b8, balancing slot length Tf=TbT_f = T_b9 (aligned with LoRaWAN time-on-air) and collision probability. Excessively small TgT_g0 wastes bandwidth, while excessively large TgT_g1 increases TgT_g2.

4. Analytical Model of Performance Metrics

Definitions and Expressions

  • Offered load (TgT_g3): Total requests per second from all devices.
  • Throughput (TgT_g4): TgT_g5.
  • Packet Delivery Ratio (PDR): TgT_g6.
  • Latency (TgT_g7): TgT_g8.

If each of TgT_g9 devices generates one packet every interval (TrT_r0), then:

  • Slot Poisson load (TrT_r1): TrT_r2
  • Throughput per frame: TrT_r3
  • PDR (under Poisson arrivals): TrT_r4

Approximate metrics:

TrT_r5

TrT_r6

5. Simulated Evaluation and Key Results

Experimental Setup

  • Simulator: OMNeT++ with FLoRaSat
  • LEO constellation: 16 satellites, 4 orbital planes (RAAN = 310°–370°, 98° inclination, 600 km altitude)
  • Ground devices: Uniformly within 2000 km radius
  • Device configuration: SF12, BW=125 kHz, CR=4/8, TrT_r7 dBm, TrT_r8 MHz
  • Traffic pattern: 20 B payloads, one packet every 8–12 min per device
  • Tested populations: TrT_r9, durations Tw=Tf(2Tg+Tr)122.88T_w = T_f - (2T_g + T_r) \approx 122.880–Tw=Tf(2Tg+Tr)122.88T_w = T_f - (2T_g + T_r) \approx 122.881 s, ten runs per point

Principal Findings

  • Packet Delivery Ratio vs. Network Size: For Tw=Tf(2Tg+Tr)122.88T_w = T_f - (2T_g + T_r) \approx 122.882 s, PDR falls from Tw=Tf(2Tg+Tr)122.88T_w = T_f - (2T_g + T_r) \approx 122.883 to Tw=Tf(2Tg+Tr)122.88T_w = T_f - (2T_g + T_r) \approx 122.884 (baseline), Tw=Tf(2Tg+Tr)122.88T_w = T_f - (2T_g + T_r) \approx 122.885 to Tw=Tf(2Tg+Tr)122.88T_w = T_f - (2T_g + T_r) \approx 122.886 (BU-LoRaWAN) as Tw=Tf(2Tg+Tr)122.88T_w = T_f - (2T_g + T_r) \approx 122.887 increases Tw=Tf(2Tg+Tr)122.88T_w = T_f - (2T_g + T_r) \approx 122.888.
  • PDR vs. Simulation Time (Tw=Tf(2Tg+Tr)122.88T_w = T_f - (2T_g + T_r) \approx 122.889): Baseline degrades (TwT_w0); BU-LoRaWAN remains stable (TwT_w1–TwT_w2).
  • Collision rates: Baseline grows approximately linearly with TwT_w3 (to TwT_w4 collisions at TwT_w5); BU-LoRaWAN reduces collisions by TwT_w6–TwT_w7\%.
  • Throughput: BU-LoRaWAN delivers nearly double the successfully received packets per hour compared to baseline at moderate TwT_w8.
  • Latency: Average waiting time TwT_w9 s plus negligible queueing for TbT_b0.

6. Protocol Trade-offs and Future Directions

Parameter Tuning

  • Beacon interval (TbT_b1): Larger TbT_b2 lowers beacon overhead but increases worst-case latency (TbT_b3).
  • Slot duration (TbT_b4): Lower TbT_b5 reduces TbT_b6 but risks under-utilizing bandwidth. Optimal TbT_b7 aligns with typical uplink packet time-on-air.
  • Slot count (TbT_b8): TbT_b9 ensures low collision rates.

Limitations and Possible Enhancements

  • Synchronization Assumptions: Current analysis presumes perfect clock alignment and unfailing beacon reception; redundant beacon strategies or second satellite passes could mitigate discrepancies.
  • Slot Assignment Strategies: Uniform slot selection can be enhanced with traffic-aware or distance-aware slot weighting to further suppress collisions.
  • Potential Extensions: Dynamic slot adaptation (TgT_g0) based on payload size, prioritized slotting for latency-sensitive data, integration of LR-FHSS for improved capture, and closed-form optimization of TgT_g1 for target PDRs are proposed directions.

The BU-LoRaWAN protocol, as specified, provides a practical enhancement to LoRaWAN for DtS IoT by maximizing uplink delivery and mitigating network congestion under satellite-constrained topologies (Mojamed, 2024).

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

Topic to Video (Beta)

Whiteboard

Follow Topic

Get notified by email when new papers are published related to Beacon-based Uplink LoRaWAN (BU-LoRaWAN).