Difference between revisions of "Software: Overview"

From HiveTool
Jump to: navigation, search
Line 1: Line 1:
This project uses free open source software (FOSS). The operating system is Linux although everything should run under Windows. The Perl module [http://search.cpan.org/dist/GDGraph/Graph.pm GD::Graph] is used to plot the data.  The graphs and data are displayed with a web server, usually Apache.  More detailed installation instructions are on the [http://hivetool.net/forum/1 Forums].  The code will be available at [https://github.com/hivetools GitHub].
+
This project uses free open source software (FOSS). The operating system is Linux although everything should run under Windows. The [http://search.cpan.org/dist/GDGraph/Graph.pm Perl module] [http://gdgraph.com/  GD::Graph] is used to plot the data.  The graphs and data are displayed with a web server, usually Apache.  More detailed installation instructions are on the [http://hivetool.net/forum/1 Forums].  The code will be available at [https://github.com/hivetools GitHub].
  
 
== Linux Distributions ==
 
== Linux Distributions ==

Revision as of 02:19, 21 December 2013

This project uses free open source software (FOSS). The operating system is Linux although everything should run under Windows. The Perl module GD::Graph is used to plot the data. The graphs and data are displayed with a web server, usually Apache. More detailed installation instructions are on the Forums. The code will be available at GitHub.

Linux Distributions

Linux distros that have been tested are:

  1. Debian Wheezy
  2. Lubuntu (lightweight Ubuntu)
  3. Slackware 13.0

Reading the Sensors

Scale

Talking to the scale is straight forward. Usually send a short character string to the scale and listen for a reply. For the Adam Equipment: echo "G\r\n" > /dev/ttyS0 read -t 1 SCALE < /dev/ttyS0

To use the Cisco Linksys WRT160NL wireless router to talk to the My Weigh HD300 scale, first detach a process that sleeps for a second and sends a carriage return. Then read the data. The detached bit sleeps for a second, allowing the read to get latched onto the serial port, and then sends the command, which promptly returns data. 'sleep 1;echo -e "\r" > /dev/ttyUSB0' & read -t 3 SCALE /dev/ttyUSB0.

Temperature Sensors

Logging the Data

Every 5 minutes cron kicks off a bash script that reads the sensors. The data is appended to a flat text log file (/home/hivetool/hive.log) and written to a temporary file in xml format (/tmp/hive.xml). cURL is used to send the xml file to a hosted web server where a row is inserted into a database.

Graphing the Data

GD::Graph

Displaying the Data

Apache Web Server

IceCast

ffserver