Skip to content

Latest commit

 

History

History
82 lines (61 loc) · 2.61 KB

README.rst

File metadata and controls

82 lines (61 loc) · 2.61 KB

Plugable PS-BTAPS1 Library and CLI

Description

This project is a library and command-line interface for communicating with and programming a Plugable PS-BTAPS1 Bluetooth Home Automation Switch.

libbtaps.py
Serves as a Python implementation of the BTAPS protocol, either to be used directly in your programs, or to be used as a reference in developing your own implementation in a different language.
btaps.py
A simple command-line UI that implements all the features exposed by libbtaps.py.
USAGE:   python btaps.py [Bluetooth address]
EXAMPLE: python btaps.py 00:00:FF:FF:00:00

Implemented Functionality

The following functions of the Plugable PS-BTAPS1 are currently present in the library:
  • Setting Switch On/Off
  • Reading current status of switch (name, on/off state, timer settings)
  • Creating, modifying and deleting timers
  • Changing the device's name
  • Updating the device's date and time to your PC's current date and time

TO DO

The following features and items are still to come:
  • NFControl (Device proximity on/off functionality)
  • Security PIN
  • Better error handling
  • Better documentation
  • Mac OS X support

OS Support

Due to PyBluez limitations, this library will currently only work on Linux and Windows systems.

Dependencies

Installation

First, install PyBluez using the appropriate link or command for your OS:

Windows
Download and install PyBluez for Python 2.7

Ubuntu/Debian:

sudo apt-get install python-bluez

Fedora:

sudo yum install pybluez

Arch:

sudo pacman -S python2-pybluez

Then, simply pip install our module::

pip install plugable-btaps

libbtaps Docs and Examples

Find some usage examples and documentation for libbtaps in our GitHub Wiki

Troubleshooting

When I try to pip install plugable-btaps I get a compilation error:
This means that you have not installed PyBluez and pip is trying to compile PyBluez from source, but you don't have the necessary compilation dependencies installed on your system. Install PyBluez as outlined above.