anarro / mycontroller

The Open Source Controller

Home Page:http://www.MyController.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

MyController.org

Join%20Chat  btn donateCC LG

Master: Build Status

Development: Build Status

Project website: http://www.mycontroller.org
Want to try now? Demo server Authentication: demo/demo

About

MyController.org is automation controller for home, office or any place. Primarly this project started to support MySensors. But later it expands support to other network also. Considered system resources in mind on development, as a outcome even we can run it on Raspberry PI (256 MB) very first model.

Localization

MyController.org supports multiple languages. If you have interest to add/translate your native language for MyController.org send a request on Transifex MyController.org locale project

System Requirement

MyController.org is a very lightweight server, It required very less resource, believe me ;)

  • Disk : ~30 MB (may require more space, when we store metrics data for long time)

  • Memory(RAM) : 40 MB

  • Java : 1.8 or later

    NOTE: Test done up to 5 nodes and 30 sensors with the above configuration.
Supported Platforms (tested)

MyController.org is java based application server. We can run it in any platform where Java support is available.

  • Linux

  • Windows

  • Raspberry PI (Oracle Java recommend)

Available Features

Features available in 0.0.3-alpha1 version,

  • Supported networks

  • Auto discover and update nodes

  • Timer - Help you to schedule time based operations. You can control till the seconds. Types,

    • Simple (with repeat count and repeat interval)

    • Normal (daily, weekly, monthly)

    • Cron expression

    • Before/After Sun Rises and Sun Sets

  • Alarm - based on information received from sensor, Node status or Gateway status

    • An alarm can support multiple notifications

  • Notifications - is a predefined action to be performed when a alarm triggered.

    • Send Payload to another sensor

    • Send SMS. Supports Plivo and Twilio

    • Send Email

  • Graphical reports

    • you can keep your sensors metrics data as long as you want.

  • Forward payload from one sensor to another sensor

    • supports across gateways also

  • Resources logs

  • Node actions

    • Reboot, Erase configuration, Update Firmware for any nodes which is support

    • can tag particular firmware for a node

    • Display battery level of node with graphical support

  • Intractive dashboard.

    • can create any number of dashboards

    • widgets

      • Server time

      • Sunrise and sunset time

      • Sensors bullet graph

      • a sensor graph

      • group of sensors graph

      • mixed sensors graph

      • monitor and control sensor

  • Backup and restore via GUI

  • version to version auto migration support. available from 0.0.3-alpha1

  • Role based authentication

    • can map resources for particular user

  • Inbuilt MQTT broker

  • Supports multiple gateways

  • and many more

Installation

Configuration

Extract downloaded bundle where exactly do you want to run. Configuration files located in mycontroller/conf

File: mycontroller.properties

Temporary file

mcc.tmp.location=tmp/

You can change default location and file name. This file used as server temporery location. Used for the operation such as backup, restore, etc.,

Database Configuration

mcc.h2db.location=../conf/mycontroller

You can change default location and file name. File will be stored with the file extension .h2.db. Do not add file extenstion.

Web server configuration

enable.https=true
http.port=8443
ssl.keystore.file=../conf/keystore.jks
ssl.keystore.password=password
ssl.keystore.type=JKS
  • enable.https : Enable/disable https. Only one protocol supported at a time.

  • http.port : Port number you want to access MyController.org server

  • ssl.keystore.file, ssl.keystore.password, ssl.keystore.type : If https is enabled these fields are mandatory.

Default username/password: admin/admin

Important
Change default ssl.keystore.file and ssl.keystore.password and https protocol is recommended

Logger configuration

Configuration File Name: logback.xml

Default log file location: logs/mycontroller.log

Start/Stop Server

Executable scripts are located in mycontroller/bin/

  • Linux

    • Start : ./start.sh

    • Stop : ./stop.sh

  • Windows

    • Start : Double click on start.bat

    • Stop : Ctrl+C

  • Other Platforms

java -Xms8m -Xmx40m -Dlogback.configurationFile=../conf/logback.xml -Dmc.conf.file=../conf/mycontroller.properties -jar ../lib/mycontroller-standalone-0.0.1-single.jar

About

The Open Source Controller

http://www.MyController.org

License:Apache License 2.0


Languages

Language:Java 59.7%Language:JavaScript 21.7%Language:HTML 17.4%Language:CSS 1.0%Language:Shell 0.2%Language:Batchfile 0.0%