/ecolight

Primary LanguageCSSGNU Affero General Public License v3.0AGPL-3.0

ecolight

The objective of ecolight is to reduce energy consumption of buildings by creating an engaging contest-like setup that encourages individuals to maintain room temperatures within a specified range. Beside this, it is possible to use the sensors in a home-automation system to visualize the temperatures in your building

usage

We provide information for the end user how to set up such a system and how to operate it in our wiki

system architecture

Ecolight consists of 3 software lavers which interact with another.

  1. The Dashboard which is responsible to vizualize multiple aggregator values for a quick overview
  2. the Aggregator which is responsible to collect data from and supply setpoints for the sensors and
  3. the Hardware, which is built with an ttgo lora32 v1 and esp.home,
graph BT;

    subgraph Example setup
        direction BT
        s1("[Hardware]<br>Sensor 1") --> a1("[Aggregator]<br>Block A");

        s2("[Hardware]<br>Sensor 2") --> a2("[Aggregator]<br>Division B");
        s3("[Hardware]<br>Sensor 3") --> a2;
        s4("[Hardware]<br>Sensor 4") --> a2;
        s5("[Hardware]<br>Sensor 5") --> a2;

        s6("[Hardware]<br>Sensor 6") --> an("[Aggregator]<br>Building C");
        s7("[Hardware]<br>Sensor 7") --> an;
        sx("[Hardware]<br>Sensor ...") --> an;

        a1 --> b1("[Dashboard]<br>Company X");
        a2 --> b1;
        an --> b1;
    end

    subgraph Design
        direction BT
        room("[Hardware]<br>Room level") -- http --> department
        department("[Aggregator]<br>Department level") -- http --> organisation("[Dashboard]<br>Organisation level")
    end
Loading

Every layer 'lives' in its own (docker) container and exchanges data with the other layers via HTTP Requests. The communication is always from bottom to top - which minimizes network issues. Beside this the hardware can also be integrated in the Home Assistant home automation system.

license

This software is dual licensed:

AGPLv3 for private use:

  • You may use, copy, modify, and distribute this software under the terms of the Affero General Public License Version 3 (AGPLv3). The AGPLv3 requires that modified code, when provided over a network, be released under the AGPLv3 as well. For more information, see the AGPLv3 license file.

Proprietary license for commercial use:

  • A separate proprietary license is available for commercial use of this software. The proprietary license grants you additional rights and restrictions beyond the provisions of the AGPLv3. Please contact us for information on commercial licensing.

If you use, copy, modify, or distribute this software, you must comply with the respective license terms. Please refer to the specific license files for more information.