Skip to content
EGT Thermostat Demo Application
C++ M4 Makefile Other
Branch: master
Clone or download
joshua-henderson update to latest version of EGT API
Signed-off-by: Joshua Henderson <>
Latest commit 9334303 Jan 17, 2020
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs README: add new screenshots Nov 5, 2019
external add sqlite3 support and more settings Oct 23, 2019
m4 properly detect and add pthread CFLAGS Oct 1, 2019
src update to latest version of EGT API Jan 17, 2020
COPYING rename binary to egt-thermostat and install all resources Oct 29, 2019 README: add new screenshots Nov 5, 2019 support conditional compilation of sensors and add fake sensor Oct 23, 2019
egt-thermostat.png add demo launcher xml and icon file Oct 29, 2019
thermostat.sql modify default db creation SQL to not create tables if they already e… Oct 29, 2019

EGT Thermostat Demo Application

Thermostat demonstration using the Ensemble Graphics Toolkit (EGT).


  • Basic Automatic/Cooling/Heating/Off modes.
  • Fan setting.
  • Live camera feed on the main screen.
  • Minimal weekly scheduling.
  • Support for temp sensors through libsensors, like the Thermo 5 Click Board.
  • Settings, HVAC status, and sensors saved to an sqlite3 database.
  • Idle/sleep screen and state, with screen brightness settings.
  • Get outside temp/weather icon based on zip code.
  • Configurable background on main screen.






Install necessary egt dependencies by referring to the egt project

Also, install some thermostat dependencies.

sudo apt install sqlite3

Compile and install libegt to a directory. We'll assume it's installed to /opt/egt. Then, configure and build this project.

git clone --recursive
cd egt-thermostat
CXXFLAGS="-I/opt/egt/include/" \
LDFLAGS="-L/opt/egt/lib/" \
PKG_CONFIG_PATH=/opt/egt/lib/pkgconfig \

Create a default database.

sqlite3 thermostat.db < thermostat.sql

Then, run.



Released under the terms of the Apache 2 license. See the COPYING file for more information.

You can’t perform that action at this time.