Skip to content

dmlyons2/PIBBQMonitor

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PIBBQMonitor

Raspberry PI with 3 meat thermometers
Thanks to Tomas Holderness and adafruit for the code I started with for this project
https://learn.adafruit.com/reading-a-analog-in-and-controlling-audio-volume-with-the-raspberry-pi/script
https://github.com/talltom/PiThermServer

Description

Raspberry PI project leveraging the MCP3008 ADC and Thermoworks TX-1001X-OP thermistor temperature probes to create a 3 sensor wireless BBQ Temperature monitor.

logger.py - python script that reads ADC, calculates temp and logs to SQLite database
alert.py - python script that monitors temperature against user defines thresholds and sends email alerts
dbcleanup.sh - shell script to clear entries older than 24 hours
build_db.sh - script to build sqlite databse
/web/thermserv - node web server
/web/index.html - web interface

Dependencies

NodeJS
SQLite3
node-sqlite3
node-static
Twitter Bootstrap 3.2.0 (included in repository)
Highcharts (included in repository)
JQuery (included in repository)
python-dev
python-setuptools
alsa-utils
mpg321

Setup

  1. Install node sudo wget http://node-arm.herokuapp.com/node_latest_armhf.deb sudo dpkg -i node_latest_armhf.deb Make sure node install was good by checking "sudo node-v". Should return node version.
  2. Install python and other packages:
    sudo apt-get upgrade sudo apt-get update sudo apt-get install python-dev
    sudo apt-get install python-setuptools
    sudo easy_install rpi.gpio
    sudo apt-get install alsa-utils
    sudo apt-get install mpg321
    sudo apt-get install sqlite3
    sudo apt-get install libsqlite3-dev
    sudo apt-get install npm
  3. Install node dependencies with NPM npm install -g node-gyp npm install node-static npm install node-sqlite3
  4. Clone git repository to /home/pi. i.e. logger.py should be in /home/pi directory git clone git://github.com/tilimil/PIBBQMonitor.git cp -R ~pi/PIBBQMonitor/* ~pi/
  5. Run command to create DB. Build_db.sh is not working currently sudo sqlite3 /home/pi/templog.db SQLite version 3.7.13 2012-06-11 02:05:22 Enter ".help" for instructions Enter SQL statements terminated with a ";" sqlite> drop table temps; Error: no such table: temps sqlite> CREATE TABLE temps(timestamp timestamp default (strftime('%s', 'now')), sensnum numeric, temp numeric); sqlite> .quit
  6. Disable any webserver that may already be running on port 80. sudo update-rc.d apache2 disable
  7. Setup the thermserv node app as a service sudo cp /home/pi/thermserv_initfile /etc/init.d/thermserv sudo chmod 755 /etc/init.d/thermserv update-rc.d thermserv defaults
  8. Execute "sudo crontab -e" and paste the following lines into your crontab. Logger will log the temp to the DB every minute. The dbcleanup.sh will limit the DB to 24 hours worth of data:
    */1 * * * * /home/pi/logger.py
    0 * * * * /home/pi/dbcleanup.sh
    */1 * * * * /home/pi/alert.py

About

Raspberry PI with 3 BBQ meat thermometers

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 67.8%
  • Python 29.7%
  • Shell 2.5%