Download Software-Defined Low-Complex Visible Light Communication PDF

TitleSoftware-Defined Low-Complex Visible Light Communication
File Size12.6 MB
Total Pages252
Table of Contents
List of Figures
List of Tables
1 Introduction
	1.1 Motivation
	1.2 Contributions and Thesis Structure
2 Related Work
	2.1 The IEEE 802.15.7 Standard
	2.2 Core Communication Systems
		2.2.1 Hardware-Based Systems
		2.2.2 Software-Based Systems
	2.3 Application Specific Systems
		2.3.1 Indoor Localization
		2.3.2 Light Sensing for Mobile Devices
		2.3.3 Interaction and Sensing
3 LED-to-LED Networks
	3.1 System Design
	3.2 Hardware Building Blocks
		3.2.1 System Processor
		3.2.2 Transceiver Front End
	3.3 Software Building Blocks
		3.3.1 Physical Layer
		3.3.2 Medium Access Control Layer
		3.3.3 Application Layer
	3.4 System Implementation Concepts
		3.4.1 Pin Abstraction
		3.4.2 Communication Channels
		3.4.3 Timer and Interrupt Handling
		3.4.4 Physical Layer State Machines
	3.5 System Evaluation
		3.5.1 Single Link
		3.5.2 Hidden Station
		3.5.3 Network
	3.6 Discussion and Conclusion
4 Light Bulb Networks
	4.1 Light Bulb Design
		4.1.1 System Architecture
		4.1.2 System Components
		4.1.3 Linux Integration
	4.2 EnLighting Testbed
		4.2.1 Testbed Infrastructure
		4.2.2 Testbed Software
	4.3 System Evaluation
		4.3.1 Communication and Networking
		4.3.2 Indoor Localization
	4.4 Discussion and Conclusion
5 Adaptive Visible Light Communication
	5.1 Hardware Independent Platform
		5.1.1 Hardware Adaptation Architecture
		5.1.2 ARM Prototype Board
	5.2 Adaptive Illumination and Sensing
		5.2.1 Adaptive Brightness Control
		5.2.2 Physical Layer Modes
	5.3 Evaluation
		5.3.1 Forward Error Correction Processing Time Revisited
		5.3.2 LED-to-LED Communication
		5.3.3 Light Bulb-to-LED Communication
		5.3.4 Light Bulbs
	5.4 Discussion and Conclusion
6 Exploration and Applications
	6.1 From Sound to Sight
		6.1.1 Hardware Design
		6.1.2 Smartphone Software
		6.1.3 Evaluation
		6.1.4 Conclusion
	6.2 From Bars to Bits
		6.2.1 Rolling Shutter
		6.2.2 Decoder
		6.2.3 Evaluation
		6.2.4 Conclusion
	6.3 Intuitive Lighting Control with LightTouch
		6.3.1 System Description
		6.3.2 User Study
		6.3.3 Discussion and Conclusion
7 Conclusion and Future Work
	7.1 Analysis
	7.2 Future Work
A Credit and Attribution
	A.1 Student Contributions
	A.2 Attributions
Document Text Contents
Page 1

Research Collection

Doctoral Thesis

Software-Defined Low-Complex Visible Light Communication

Schmid, Stefan M.

Publication Date:

Permanent Link:

Rights / License:
In Copyright - Non-Commercial Use Permitted

This page was generated automatically upon download from the ETH Zurich Research Collection. For more
information please consult the Terms of use.

ETH Library

Page 2

Software-Defined Low-Complex
Visible Light Communication Networks
Stefan Matthias Schmid

Diss. ETH No. 23779

Page 126

4.2 enlighting testbed

protocol. On the controller’s side it is dispatched to the MAC layer
using the API provided by libvlc. When receiving data on a VLC
link, the payload is forwarded over the USART link to the Linux
driver, where it is wrapped into an sk_buff structure and com-
mitted to the network stack.

The Linux driver and the USART communication protocol in-
terconnects libvlc’s lower communication layers with the higher
layers of the Linux network, providing direct access to a well-
tested networking infrastructure with all its tools and programs.
Additionally, it distributes the computational load, keeping the
VLC controller simple and low-cost.

4.2 enlighting testbed

After designing and building a communication system, it is usu-
ally tested and evaluated. The testing and measuring process can
be simplified by building custom testbed software tools. The tools
can be employed to configure the system, run tests and measure-
ments, graphically visualize results, and to apply software up-
dates. Certain configuration steps can be automatically repeated
or applied to multiple devices all at once, saving precious time.
Each light bulb employs a SoC with Wi-Fi connectivity, provid-
ing wireless access to each device. Well-designed testbed soft-
ware reduces time spent for tedious system configurations and
helps identifying and solving problems. This section describes
the testbed infrastructure and software built for EnLighting which
is used for software and firmware deployment and protocol de-
bugging as well as to run measurement campaigns.

4.2.1 Testbed Infrastructure

Building, debugging, and running a testbed with devices con-
nected directly to the power grid is complicated and dangerous.
Wired connections from a computer to the light bulbs must be
avoided. Also taking down all light bulbs and disassembling and
reassembling them when updating software or collecting mea-
surement results is not an option. Fortunately, the available wire-


Page 127


light bulb networks

less control channel enables remote actions, such as conducting
administrative tasks, efficient debugging, software updates, and
data logging for experiments and measurement campaigns.

All light bulbs (and the underlaying OpenWrt installations) are
configured to join a dedicated wireless access point which in-
tegrates them into an IP-based network, enabling remote login
into the Linux system. Having a wireless control channel also
helps scaling testbed deployments, where individual devices are
further apart and an extensive wired installation is not possible.
While remote access to every light bulb gives great flexibility, ad-
ditional software is necessary to simplify testbed management
and to make running experiments more efficient. These software
tools are explained in the following subsection.

4.2.2 Testbed Software

The testbed consists of three different software parts: The EnLight-
ing web interface, the EnLighting server, and the EnLighting ser-
vice. Figure 4.7 illustrates the communication infrastructure used
to relay information between these program parts. The web inter-
face provides a graphical user interface. It collects and visualizes
information gathered from the testbed devices (light bulbs). Fur-
thermore it can be used to trigger actions in a single or in multi-
ple deployed devices. The actual implemented functionalities are
explained later in this section. The web interface is implemented
in JavaScript and uses websockets9 to communicate with the En-
Lighting server. The server is also implemented in JavaScript us-
ing the node.js10 environment. It can be run on the same machine
as the web interface (control machine) or on a dedicated server
within the same network. The EnLighting server is used as mes-
sage broker to communicate with the EnLighting service running
on each light bulb. The intermediate step via a server is required
since the light bulbs run only a plain node.js environment with-
out additional libraries to keep the memory and flash storage
footprint small. The server uses UDP or TCP sockets (already in-



Similer Documents