Giter Site home page Giter Site logo

firefly's Introduction

Firefly Home

What is Firefly?

Firefly is an open-source home automation system, This system has been a passion of mine for about 5 years now and wll here it is. There is an option (really at this time the only way to make it usable) for cloud based control using Firebase. Before setting up your Firefly system you will need to go to https://my.firefly-home.io and create an account. Please note that all automation actions are done locally on the raspberryPi and the cloud support is for remote control, Alexa, Google Home, and Facebook Messenger support, it is also used for geofence reporting using OwnTracks.

There has been a full plugin framework developed for Devices, Services, and Automation and soon to come full documentation for how Firefly operates.

For setup you can just run the setup.sh scrip on your raspberryPi and it will take you though the setup process. To enable cloud support, after setting up your raspberryPi you will need to create a file '/opt/firefly_system/Firefly/dev_config/services.firebase.json' with the email and password used to create your account at mMy.Firefly-Home.io

{
    "username": "[email protected]",
    "password": "mySecurePassword"
}

After doing this run:

sudo service firefly restart

Your new firefly system will register with the server automatically and within minutes you will be able to see it on the website. After doing so you will be able to install enable services and add devices and automation (coming soon)

You can also add automation and services by editing the files in the dev_config folder mentioned above. There are samples of how to do this in the sample_config fodler of this repo.

Supported

  • Google Home
  • Amazon Echo / Alexa
  • Facebook Messenger (broken)
  • Pushover
  • OwnTracks
  • Hue
  • Lightify
  • Zwave
  • DarkSky
  • Nest
  • Foobot

Prebuilt Automation

Look under Firefly/automation in this repo. Each automation should have a README explaining what it does.

  • Routines
  • Door/Motion Lights
  • Window Fan Control
  • Nest Eco Window
  • Door Alert

pip install git+https://github.com/vaab/colour

firefly's People

Contributors

alkasm avatar macandcheeese avatar zpriddy avatar

Stargazers

 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

firefly's Issues

Change from MongoDB to mySQL

This change is to make the system more RaspberryPI friendly. As of now MongoDB is no longer supported on 32 Bit systems and 64 bit kernel is not supported on the rPi.

On restart routine scheduling is not applied.

A simple solution for this would be to add a startup function for routines that is called on boot that will reinstall the scheduling for that routine.

Another solution for this would be to reinstall routines on boot - that is not preferred.

Create 'Listen' table in database

Create a new table of listen that shows the relationship between apps/routines and devices

Device Apps Routines
zwave-node-11 ffAdvancedLighting [morning, away]
zwave-node-9 ffAdvancedLighting [home]

This should be able to improve the speed of the system

Install Script

Simple install script

  • Ask for new username. default: firefly
  • Ask for new password.
  • Install openZwave
  • Install all python dependencies
  • Install startup script
    • Check for serial port
    • Start firefly core
    • Start Web UI

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.