Title: Exploring Visualization Techniques for Wi-Fi Networks in Smart Homes
Author: Jan Pfeifer
Submission Date: 21.09.2023
Abstract:
The increasing adoption of smart home devices, fueled by the Internet of Things (IoT), has
transformed home technology. While this offers benefits such as improved convenience, it also
reveals complexities, especially in the field of network visualization. Current visualization
tools are often either too intricate or too expensive for most users, highlighting the need for
simpler, user-focused solutions. This research introduces a straightforward Wi-Fi network
visualization approach for smart homes. Within the Home Assistant platform, the system
showcases a force-directed graph that represents both the hardware-based and software-
defined network structures of the smart home. Accompanying this visualization is a table
detailing key device attributes, such as name, MAC, and IP address. Updated at user-
defined intervals, this visualization provides real-time insights, with an emphasis on user
customization and ease of use. Implementing this visualization within a Software-Defined
Network (SDN) allows not just for visualizing the network flow but also limited network
control, letting users manage their devices through interactive visuals. An evaluation reviewed
the visualization tool considering user-friendliness, efficiency, and adaptability. This tool
offers the possibility to easily identify critical security indicators, such as hidden devices or
potential security breaches, enabling users to fortify their smart home defenses. Emphasizing
user-friendliness and customizability, it appeals to a broad user base. In essence, this research
presents a transformative approach to SDN visualization and control in smart homes.
Key aspects of the directory:
view.js: Houses main visualization processes via d3.js.
card.ts: Defines the Home Assistant card layout.
index.ts: Manages parameter communication with Home Assistant.
network.ts & python/server.py: Manage client-side and server-side API interactions, respectively.
editor.ts: Details customization functionalities.
css.ts: Holds design specifics.
demo: Contains sample network data.
backup: Contains configurations for Home Assistant and network components.
For a more detailed explanation, including the code's structure and functionalities, please refer to the corresponding sections of the thesis.