vlcsim

VLCsim - Visible Light Communication Network Simulator.

A discrete-event simulation framework for modeling and analyzing Visible Light Communication (VLC) networks with Time Division Multiplexing (TDM) resource allocation.

Modules:
scene: Physical environment modeling including room dimensions, LED access points,

RF fallback systems, and mobile receivers with realistic VLC channel propagation.

controller: Resource allocation and connection management system handling TDM frame

slice assignment, connection state machine, and custom allocation algorithms.

simulator: Event-driven simulation engine implementing discrete-event system (DES)

for network dynamics, traffic generation, and performance metrics collection.

Example

Basic simulation setup:

from vlcsim import Scenario, Simulator

# Create scenario with room and devices
scenario = Scenario(length=5, width=5, height=3)
scenario.add_VLed(x=2.5, y=2.5, z=3)

# Run simulation
sim = Simulator(scenario)
sim.run()
print(f"Blocking Probability: {sim.get_Blocking_Probability()}")

See also

For detailed documentation, visit the project repository or build the Sphinx docs.

Modules

controller

Controller package for VLC connection management and resource allocation.

scene

Scene Module for VLC Simulation.

simulator

Simulator Module for VLC Event-Driven Simulation.