Skip to content
This repository has been archived by the owner on Nov 11, 2022. It is now read-only.
/ PiCH Public archive

PiCentralHeating - A combo hardware/software project for a central heating system controller, designed to run on the Raspberry Pi.

License

Notifications You must be signed in to change notification settings

davegreen/PiCH

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PiCH

PiCentralHeating - A combo hardware/software project for a low cost central heating system controller, designed to run on the Raspberry Pi.

Objectives

Our key objectives of the PiCH project are:

  • Control your heating from anywhere
  • Define which area you want to be heat at a given time.

Obviously there are other products that enable you to do this, side objectives include:

  • Low setup cost
  • Small form factor
  • Easily customisable
  • Simple enough to use without a PC
  • Scalable to lots of sensors
  • Weather compensation
  • Temperature history graphing and schedule histories.

Description

This software is written in a couple of different pieces. The first piece is written in Python and deals with core functionality, like reading and logging temperature. The second part is a web interface written in PHP and deals primarily with the user interface and management of the system.

If you have any improvements at all please go ahead and make them, then submit a pull request! If you can't do that, at least let us know what you would like to see.

Core functionality (Python)

  • Reads data from the temperature sensors.
  • Writes information about the sensors and temperature to a MySQL database.
  • Manages the heating system, turning the boiler on and off to keep to the target temperature.
  • Displays the temp (in degrees centigrade) to one decimal place on 3 7-segment LED displays (e.g. 19.8)

Web interface

  • Display current and historical temperature data in the web interface.
  • Allow management and naming of the temperature sensors plugged in.
  • Scheduling and rule creation for heating system control.
  • Easy management of other system settings and features.

PiCH temperature logging page

Hardware

PiCH temperature board PiCH temperature and breakout board

TODO

See the wiki page: https://github.com/davegreen/PiCH/wiki/TODO

Setting Up

There's a few things that need to be done for a successful setup, some of which is currently covered in the setup script.

At the moment, the web interface and the database both require manual setup. This needs a little linux knowledge to do, but isn't too difficult and will be done during the setup process at some point.

The www files need setting up on a web server locally on the Pi, with PHP5. The database schema is included in the setup folder (pich-structure.sql). This needs to be MySQL (or compatible) and is connected to by both PHP (db.php) and Python (settings.py).

Running

Once things are set up, you can run bootscrip.sh to sort things out ready for everything to go, then run watchdog.py to start monitoring. At some point, this will be put into init, so that it starts with the RPi if you want.

thermostat.sh will get run by cron at schedule start (once a schedule has been created in the web interface) and keep running till the schedule is finished. There's currently no way (short of running killtherm.sh) to stop a running schedule (yes, this is another TODO).

Thanks

About

PiCentralHeating - A combo hardware/software project for a central heating system controller, designed to run on the Raspberry Pi.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published