Skip to main content

Home automation platform

Project description

Homealone home automation platform

Overview

This project defines a platform and application framework that enables sensing and control of various devices in a home.

Any device in the home whose state can be sensed or controlled electronically can be connected to a system that can manage that device and allow remote access. Examples of devices include such things as light fixtures, sprinkler valves, temperature sensors, door sensors, etc. This project does not define specific hardware for these devices, but rather defines the software that allows any device to be interfaced to the system.

At the lowest level, a template is defined that allows a hardware interface to be abstracted to a common API. The server on which the software is running may physically connect to the device using any hardware interface such as GPIO pins, a serial port, or a network adapter. An object model is defined that is implemented with an application running on that server that further abstracts the specific functions of the device. Network protocols are defined that enable the server to advertise itself on the network and allow access to the devices that it is connected to. Other servers may implement human interfaces such as a web server.

Design goals

The design of the project targets the following goals.

  • Distributed - Functions are distributed across devices in the system.
  • Devices are autonomous - Whenever possible, devices can run independently of the system. There is no requirement for a centralized controller.
  • Devices are dynamically discoverable - Devices can be added or removed from the system without requiring changes to a system configuration.
  • Connected to the local home network - Devices are connected to the system via the local wired or wireless home network.
  • Not dependent on the internet - The system may be accessed remotely via the internet and use cloud servers for certain functions, however internet connectivity is not required for routine functions.
  • Reasonably secure - The system does not explicitly implement any security features. It relies on the security of the local network.
  • Not dependent on proprietary systems, interfaces, or devices - Proprietary interfaces and devices may be accessed, but there is no requirement for any particular manufacturer's products.
  • Open source - All code is open source.

Limitations

  • Does not provide applications - Examples are provided, however they must be tailored for specific installations.
  • Does not provide a user interface - An example web based user interface is provided that may be extended.
  • Operating system specific - Currently only runs on Raspberry Pi OS, however there is no inherent reason it could not be made OS independent.

Documentation

More detailed documentation and examples may be found in these files.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

homealone-0.0.23.tar.gz (57.2 kB view details)

Uploaded Source

Built Distribution

homealone-0.0.23-py3-none-any.whl (72.4 kB view details)

Uploaded Python 3

File details

Details for the file homealone-0.0.23.tar.gz.

File metadata

  • Download URL: homealone-0.0.23.tar.gz
  • Upload date:
  • Size: 57.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.7.1

File hashes

Hashes for homealone-0.0.23.tar.gz
Algorithm Hash digest
SHA256 df01ff175d61a9c8a1eb0333eba0a7393d71edc4fc10c810d7b8a782b0a62487
MD5 618647aba8c83ca1bed18e52e5fe92fe
BLAKE2b-256 09737bf6b63c2a3ea9a2ee3dba51973acfbf516da9d108f4cbe27c2fa9523927

See more details on using hashes here.

File details

Details for the file homealone-0.0.23-py3-none-any.whl.

File metadata

  • Download URL: homealone-0.0.23-py3-none-any.whl
  • Upload date:
  • Size: 72.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.7.1

File hashes

Hashes for homealone-0.0.23-py3-none-any.whl
Algorithm Hash digest
SHA256 b898bfc7eae00a069b34ac6e32d39e3eff89c688371cf224316f3065fae6be2b
MD5 26ce47518a19b5fde2d4970dff16bb7e
BLAKE2b-256 849481ffcc4e060bc1a3a67ce19eb2aa54261001cc1e293ff5686462a7ff2416

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page