SmartHomeBuddy

SmartHomeBuddy is a desktop application that allows you to identify smart home devices in your home network. It is extensible with custom Machine Learning models for classification and provides countermeasures to secure your home. It aims to be a simple and intuitive application, while also offering an infrastructure for interested contributors to enhance its functionality to identify, analyze and protect home networks.

Get Started

GUI

Select the correct binary for your system from GitHub and install it. You should then be able to start the application.

CLI

The command line interface shbdeviceidentifier requires Python 3.8 or higher. You can start by installing the application by running the following command from the main directory of the repository:

cd device-identifier
pip install -r requirements.txt

And for example:

shbdeviceidentifier start

The result should look something like this:

device-identifier-start

A list of available commands can be found by running the following command:

shbdeviceidentifier --help

Documentation

User’s guide

Introduction

Release notes

What’s new in SmartHomeBuddy 0.1.0

Jul 13, 2022

General changes

We are pleased to announce the release of SmartHomeBuddy 0.1.0, which marks the first release of the SmartHomeBuddy project. This release is just a simple proof of concept.

shbdeviceidentifier

The shbdeviceidentifier package is a Python module that can be used to identify smart home devices from a packet capture. In it’s current form, it only implements basic functionality such as reading data, converting capture files to pandas DataFrames, and a rudimentary Identification of devices.

electron-app

The electron-app is a stand-alone Electron application for Windows and Linux (MacOS is planned for future full releases).

device-identifier

smarthomebuddy package

Submodules

smarthomebuddy.main module

smarthomebuddy.main.main()[source]

Module contents

Discussion and support

You can report bugs on the GitHub issue tracker.

SmartHomeBuddy is available under the GNU General Public License v3.0.

This website and all documentation is licensed under Creative Commons 3.0.