/logger

logg temp etc from serial to sqlite db and generate graphs with gnuplot

Primary LanguagePython

This application requirer that the arduino is programmed with
this or compatible software:
http://github.com/Norberg/sensors
easily cloneable with:
git clone git://github.com/Norberg/sensors.git

This application prefers if it can find the arduino device at 
/dev/arduino its possible to change port in readSensor.py to
point to elsewhere but not recommended since it will differ
depending on other device connected, instead write a udev rule
that takes care of it.

Create a new file in /etc/udev/rules.d called local.rules and put:
SUBSYSTEMS=="usb",ATTRS{interface}=="FT232R USB UART",KERNEL=="ttyUSB*",SYMLINK+="arduino"

Where ATTRS{interface} is the same as found with:
sudo udevadm info -a -p /sys/class/tty/ttyUSB0 | grep interface

Then replug the device and /dev/arduino should appear.

Create database
sqlite sensors.db
sqlite>CREATE TABLE sensors (date date, time time, value float, sensor vchar(10), name vchar(10));
sqlite>CREATE INDEX idx1 ON sensors(date);



HUGE Database:
Over time the database will grow resulting in slower and slower sql queries
therefore its good to sometime clean out old results, eg. only leaving one
value per hour for values more than one month old eg with:
select * from sensors where date < '2010-04-01' and time not like '__:00';

then followed by:
vacuum;
to clean up unused space