Coder Social home page Coder Social logo

homegear / homegear Goto Github PK

View Code? Open in Web Editor NEW
120.0 120.0 37.0 18.82 MB

Interface your smart home devices with your home automation software or your own control scripts.

Home Page: https://homegear.eu

License: Other

C++ 69.05% Makefile 0.23% Shell 3.23% PHP 0.35% M4 0.12% JavaScript 26.75% CSS 0.02% CMake 0.14% C 0.01% HTML 0.10%

homegear's Introduction

Homegear

Homegear is a free and open source program to interface your home automation devices or services with your home automation software or scripts. Currently supported are the following device families/systems:

  • KNX
  • EnOcean
  • Beckhoff BK90x0
  • HomeMatic BidCoS
  • HomeMatic Wired
  • Insteon
  • Philips Hue
  • Sonos
  • MAX!
  • Intertechno
  • Kodi
  • IP cams
  • more to come...
  • New devices can be created with ease using XML and PHP.

Homegear features the following interfaces to control your devices - all with SSL support:

  • XML-RPC
  • Binary-RPC
  • JSON-RPC
  • MQTT
  • WebSockets with PHP session authentication
  • HTTP (GET and POST)

If needed new interfaces can easily be added to the source code. Homegear also features:

  • A built-in rich featured web server with PHP 7 and IP cam proxy support. Together with WebSockets and the script engine you can easily create web pages to bidirectionally interact with all devices known to Homegear.

  • A built-in script engine using PHP 7:

    • All devices and device functions are directly accessible.

    • All PHP modules can be used:

      • Thread support using the PHP module "pthreads".

      • Low level peripheral support:

        • Directly access serial devices, I²C devices and GPIOs.
        • You immediately get notified on new data and GPIO state changes. No polling is necessary.
        • Using threads you can implement bidirectional and event driven communication.
    • A base library to easily implement your own device families.

    • XML device description files with PHP script support to easily implement individual devices.

    • Support for customized licensing modules supporting module online activation, license verification and script encryption.

Homegear is written to make it as easy as possible to integrate new devices making them accessible through all the above interfaces.

For more information, please visit https://homegear.eu, https://doc.homegear.eu and https://ref.homegear.eu. Please post your questions in our forum on https://forum.homegear.eu.

homegear's People

Contributors

aromanro avatar bennisto avatar best0815 avatar disconnect3d avatar gowi avatar hfedcba avatar ibcsim avatar m-scheffler avatar moonliightz avatar muerlemann avatar sja avatar thomdietrich avatar youngcereal avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

homegear's Issues

More documentation of the XML files

Hello,

I am currently developing a java library to talk to the Homematic LAN configuration device. While researching the BidCos protocol I found your wiki on homegear.eu. It is a really great start to get some insight into the protocol. I get the feeling that you are able to understand the device specific payloads with the help of the XML files used by the Homematic software. Could you document this process a little bit more? I saw that there are frame elements in the XML. These seem to describe the actual positions of the bytes in the frame. But what does for example an index of 9 or 10 mean? Is this 9th or 10th byte in the payload or in the whole packet? If it is the position in the whole packet I must have understand the packet format wrong, since I thought that the payload starts at byte 10?
Also what can I do with the channel and paramset elements. If you have more information on these elements could you add some explanation?
For example is it possible to read the device specific parts of the pairing process from these elements?

Thanks in advance for your help

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.