The Braubuddy configuration file allows target temperature, temperature units, outputs and various other parameters to be defined.


Braubuddy conforms to a subset of the XDG Base Directory Specification for configuration file locations:

  1. /etc/xdg/braubuddy - Configuratin file to be used system-wide.
  2. /home/<user>/.config/braubuddy - Configuration file for the current user. Over-rides the system configuration file if present.

If not present on startup, a default configuration file is deployed to ~/.config/braubuddy/.


Section Parameter Type Default Descrption
global environment str 'production' Cherrypy environment. 'development' or 'production'.
server.socket_host str '' Server IP Address.
server.socket_port int 8080 Server Port.
log.access_file str ’/var/log/braubuddy_access.log’ Access log location. Access logging disabled if undefined.
log.error_file str ’/var/log/braubuddy_error.log’ Error log location. Error logging disabled if undefined.
log.screen int True Log to screen.
units int 'celsius' Temperature units. 'celsius' or 'fahrenheit'.
frequency int 60 Engine cycle frequency.
retry_count int 3 Temperature poll retry count.
retry_delay int 5 Temperature poll retry delay.
dashboard_title str Braubuddy Dashboard title.
dashboard_footer bool True Show dashboard footer.
components thermometer IThermometer Auto Thermometer.
envcontroller IEnvcontroller Auto Environmental Controller.
thermostat IThermostat SimpleRanged Thermostat.
outputs * IOutput None Any number of outputs.


A temperature management framework written in Python.