The Open Source Controller

image::extra/images/logo-mycontroller.org_full.png[, link=””] :source-language: java, angularjs

ifdef::env-github[] image:[link=“”]{nbsp} image:[link=“”] endif::[]

[link=] Master: image:[“Build Status”, link=””] [link=] Development: image:[“Build Status”, link=””]

====== Project website: ====== Forum: ====== Want to try now?[Demo server] Authentication: demo/demo

== About 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 supports multiple languages. If you have interest to add/translate your native language for send a request on[Transifex locale project]

== System Requirement 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) : 100 MB
  • Java : 1.8 or later

===== Supported Platforms (tested) is java based application server. We can run it in any platform where Java support is available.

  • Linux
  • Windows
  • Raspberry PI (Oracle Java recommend)

== MyController and MySensors Setup

image::extra/images/MyController-MySensors-RF.png[MyController and MySensors setup.]

== Installation

====== Download(executable bundle),

====== Configuration

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


Temporary file

mcc.tmp.location=tmp/ # <1>

<1> 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.db.h2db.location=../conf/mycontroller # <1>

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

Web server configuration

mcc.web.bind.address= # <1> mcc.web.enable.https=true # <2> mcc.web.http.port=8443 # <3> mcc.web.file.location=../www/ # <4> mcc.web.ssl.keystore.file=../conf/keystore.jks # <5> mcc.web.ssl.keystore.password=mycontroller # <5>

mcc.web.ssl.keystore.type=JKS # <5>

<1> bind interface address. by default it will bind with all the available interface. <2> Enable/disable https. Only one protocol supported at a time. true - https, false - http. <3> Port number of http/https to access server. <4> web files location, no need to touch this one. <5> If https is enabled these fields are mandatory.

Default URL: https://<ip>:8443 (ex: https://localhost:8443)

NOTE: Default username/password: admin/admin

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

MQTT broker configuration # <1> # <2> # <3> # <4> # <5>

<1> Enable/disable inbuilt MQTT broker. by default it will be enabled. true- enabled, false - disabled <2> bind interface address. by default it will bind with all the available interface. <3> MQTT broker port <4> websoicket port <5> internal use. no need to touch this one.

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 : ./
    • Stop : ./
  • Windows

    • Start : Double click on start.bat
    • Stop : Ctrl+C
  • Other Platforms

java -Xms8m -Xmx100m -Dlogback.configurationFile=../conf/logback.xml -Dmc.conf.file=../conf/ -cp "../lib/*" org.mycontroller.standalone.StartApp

Related Repositories



The Open Source Controller ...



MyController supported MQTT ESP8266 library ...