GithubHelp home page GithubHelp logo

cohero / t-home Goto Github PK

View Code? Open in Web Editor NEW

This project forked from td22057/t-home

1.0 2.0 0.0 112 KB

Home automation integration

License: BSD 2-Clause "Simplified" License

Shell 1.48% Python 98.52%

t-home's Introduction

T-Home Automation Software

A collection of scripts and utilities for various home automation projects.

  • bin/ Command line tools
  • conf/ Sample config files
  • init.d/ Init.d style Linux start up scripts
  • python/ Main scripting library
  • systemd/ Systemd (latest Raspian) start up scripts
  • upstart/ Upstart (Ubuntu 14.04) style start up scripts

Currently most of the scripts read data from various sources and translate the data into JSON'ed dictionaries which get published to a MQTT message broker.

Acurite Weather Station

python/tHome/acurite contains code for decoding Acurite internet Bridge traffic. This assumes the Acurite Bridge is connected to a network USB dongle on a Raspberry Pi. It uses iptables and ebtables to redirect the bridge traffic (which normally posts data to Acurite's web servers) to the script bin/tHome-acurite.py. That script simulates the response from Acurite's servers, decodes the data, and translates them into MQTT messages. This can also be used with tcpflow to decode data as it's being sent to Acurite instead of redirecting it.

Radio Thermostat

http://www.radiothermostat.com/

python/tHome/thermostat contains code for polling a radio thermostat WIFI module and reading the temperature and furnace/AC state. The results are published as MQTT messages.

Rainforest Eagle Energy Monitor

http://rainforestautomation.com/rfa-z109-eagle/

python/tHome/eagle contains code for reading data directly from an Eagle energy monitor. Use bin/tHome-eagle.py to start a small web server and set the address as the "cloud provider" in the Eagle. The Eagle will publish energy data to the server which will converts it into a message and publishes that as a MQTT messages.

SMA Solar Inverter

python/tHome/sma contains code for reading data from an SMA WebConnect module attached to a SunnyBoy solar inverter. The Link class is used for communication but most needs can be satisfied by using the report module which has several report styles (brief to full).

bin/tHome-sma.py is a process which will poll the inverter at regular interval while the sun is up, and publish the results as MQTT messages.

The communication protocol is based on the C code in the https://sbfspot.codeplex.com/ project.

Weather Underground

python/tHome/weatherUnderground contains code that subscribes to messages produced by the Acurite Bridge module and uploads that information to Weather Underground. It will upload data at a user specified interval and uses a sliding window average of the sensor data over that upload interval to smooth the sensors before uploading them (including correctly averaging wind direction data).

Use bin/tHome-wug.py to start this process.

t-home's People

Contributors

td22057 avatar evanrich avatar jhagberg avatar

Stargazers

Cohero avatar

Watchers

James Cloos avatar Cohero avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.