Skip to main content

Orvibo "Homemate" to MQTT bridge

Project description

========
Overview
========



Orvibo "Homemate" to MQTT bridge

* Free software: Apache Software License 2.0

Supported Devices
=================

* Orvibo S20c

If you've managed to the bridge working with other devices, please open an issue so I can update the list!

Requirements
============

* Python 3.x, on Linux
* The python3-dev, build-essential and libssl-dev packages (for Debian-based systems, or the equivelant)
* One or more supported switches
* HomeAssistant
* An MQTT broker connected to HomeAssistant

Installation
============

* Obtain the Orvibo 'PK' key (see below) as a `keys.json` file
* Redirect all traffic for homemate.orvibo.com, TCP port 10001 to the machine running the bridge. The easiest way to do this is to override the DNS record, but how you can do this will greatly depend on how your network is set up
* `Configure HomeAssistant <https://home-assistant.io/docs/mqtt/discovery/>_` to discover MQTT devices
* Install the bridge:
::

pip install homemate-bridge

* Run the bridge:
::

homemate-bridge --keys-file <path/to/key/file> --mqtt-host ...

* After ~30 seconds you should see devices connecting to the bridge, and new switch entities in HomeAssistant

Getting the Orvibo 'PK' encryption key
======================================

As part of the initial handshake with the server, the switch sends a 'hello' packet encrypted with a static key, and expects a packet encrypted with the same key in response that sets a different key for all subsequent packets. This is the 'PK' key, and is not included with the source code until I work out if there would be legal issues with doing so. Fortunately, Orvibo hardcode this key in the source code of the 'Kepler' Android app.

* Download the `Kepler apk <http://www.orvibo.com/software/android/kepler.apk>_`
* Run the `homemate-bridge-seed-keyfile --keys-file keys.json <path/to/apk>` script to extract the key and save it. Note that the file will be overwritten if it exists.

Documentation
=============

https://homemate-bridge.readthedocs.io/

Development
===========

To run the all tests run::

tox


Changelog
=========

0.0.1 (2017-07-11)
------------------

* First release on PyPI.


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

homemate-bridge-0.1.1.tar.gz (15.1 kB view details)

Uploaded Source

Built Distribution

homemate_bridge-0.1.1-py2.py3-none-any.whl (11.6 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file homemate-bridge-0.1.1.tar.gz.

File metadata

File hashes

Hashes for homemate-bridge-0.1.1.tar.gz
Algorithm Hash digest
SHA256 7826910388fe595288642c82b970391d9ba1d6a1f75722947b5ef729718e4899
MD5 17d07bbdc4bc2d402b30ee95d7b8deb8
BLAKE2b-256 277f1f4000fd3600ebe22446e05d486c97410780411263fc28af2ace37cf6d3d

See more details on using hashes here.

File details

Details for the file homemate_bridge-0.1.1-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for homemate_bridge-0.1.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 b32e38e9792c09591c8656748ab544a1e33db344e733aa9536a8028c10eee5d9
MD5 ad7208cb6faa92572df6b6cee0de3d99
BLAKE2b-256 a04371977b9bb0bc67faf06e87545738210924369a1820e2a38e285e6097cad2

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