Skip to content

Commit

Permalink
updated README
Browse files Browse the repository at this point in the history
  • Loading branch information
crleblanc committed Nov 11, 2012
1 parent bd07a90 commit bb7f705
Showing 1 changed file with 24 additions and 24 deletions.
48 changes: 24 additions & 24 deletions README.rst
@@ -1,27 +1,33 @@
hackPump
========

Control a heat pump over the internet using a `Raspberry Pi <http://raspberrypi.org>`_
and an `IR Toy <http://dangerousprototypes.com/docs/USB_Infrared_Toy>`_. Actually this
project could be used to control any IR device from a Google calendar, not just a heat
pump. It can handle very long IR codes, so should be able to handle most 38 KHz signals.
Control any 38 KHz infrared device using Google Calendar for scheduling. I'm using a
Raspberry pi `Raspberry Pi <http://raspberrypi.org>`_ and an
`IR Toy <http://dangerousprototypes.com/docs/USB_Infrared_Toy>`_ to manage my heat pump.

Project Goals
Highlights
-------------

- To make a simple utility that can poll a Google Calendar and get the summary for a
current event.
- Simple and small python programs to query a Google Calendar for the current event.

- Send an IR Code to a device (in this case a Mitsubishi heat pump) based on the calendar
event.
- Gets the corresponding IR code from a JSON file of IR codes. In my case this is a
list of temperatures and codes.

- Sends the IR code to the device using the IR Toy. It will only send a new signal if
it's different from the last one sent.

- Can handle very long IR codes, much longer than Lirc or the IguanaIR can handle. This
is needed for the Mitsubishi heat pump IR codes. Has been used to successfully send a
15 second IR signal. Note: this project is not compatible with Lirc, but the IR Toy
can be used with Lirc directly.

Why?
----

- My Mitsubishi heat pump is great but only has a very simple timer. You can purchase a
programmable thermostat, but it's expensive and doesn't do anything I'm after.
Being able to control this with a Google Calendar would be ideal since it is a very
powerful calendar that is available from the web, smartphones, and has a well documented
Being able to control this with a Google Calendar is ideal since it is a very
powerful calendar that is available from the web, smart phones, and has a well documented
API for communicating with it. No need to reinvent the wheel.

- I'm interested in being able to set the temperature of my house before I get home or
Expand All @@ -39,20 +45,14 @@ Why?
Project components
------------------

- A Python module for transmitting and receiving IR codes from an IR Toy. The IR Toy is
an excellent USB IR transceiver, perfect for this application. The module I wrote is
called PyIrToy. See the github project page for more info: `PyIrToy <https://github.com/crleblanc/PyIrToy>`_.
This simple module makes it easy to communicate with the IR Toy, and is worth looking into
if you're using the IR Toy and don't feel the desire to work with C. I decided to split
this into two separate projects, since PyIrToy is far more generic than this project.
- A Python module for transmitting and receiving IR codes from an IR Toy. See the github
project page for more info: `PyIrToy <https://github.com/crleblanc/PyIrToy>`_.
I split this into a different project and added it to pypi to make it easy for others to
use.

- A command line program called hack_pump.py. This polls a public Google calendar and gets
the current calendar event. It then transmits the corresponding IR code with the Ir Toy.
Keeping things simple, I intend on having a cron job on the Pi that calls this program once
every few minutes to see if it should transmit a new IR code.
- A command line program called hack_pump.py. This is the main part of this project, it
queries the Calendar and sends an IR code if required.

- Two command line utilities called record_codes.py and transmit_codes.py for recording and
transmitting IR codes. transmit_codes.py is mainly used for testing the recorded codes.
record_codes.py records the IR codes to a JSON file that can be used by hack_pump.py. Note:
The IR utilities in this project do not use or supplement LIRC. The codes from my heat pump
were too long to be used with LIRC, so I rolled my own solution.
record_codes.py records the IR codes to a JSON file that can be used by hack_pump.py.

0 comments on commit bb7f705

Please sign in to comment.