Giter VIP home page Giter VIP logo

sensorserver's Introduction

Installing SensorServer

The server is organized as a web site, SensorServer, with the Arduino code in an identially named subdirectory of this site. On a mac, this can be downloaded as follows:

  • Open the Terminal program

  • cd Sites

  • git clone clone address from GitHub

  • Enable Web Sharing in the Control Panel

Test that this site is accessible by fetching some pages from your brower:

  • http://localhost/~your-login/ -- should include SensorServer

  • http://localhost/~your-login/SensorServer/about.html

Installing the Arduino

The SensorServer runs on a USB arduino with the Ethernet shield.

You will want to use the Arduino development environment to program the device.

  • Install Arduino IDE from www.arduino.cc

  • Install the OneWire library in /hardware/library

  • Use File>Open to open SensorServer/SensorServer/SensorServer.pde

  • Edit the mac address to be unique on your network

  • Edit the ip address to be unique your network (e.g. 10.0.0.201 in this example)

  • Download the compiled program into your Arduino

Test your work so far by fetching the tsv and json pages:

If you are behind a firewall, open a port to your arduino. Test that you can access the json page through your router.

Installing the Sampling script

You will want to run the sampling script on an always-on server.

  • Edit the sample.pl script to fetch from your Arduino

  • Create a results directory in the same directory as the script

Test the sample.pl script by running it from the command line. It will create subdirectories in results for devices discovered by your Arduino.

  • Edit your crontab (crontab -e) to run your script every 5 minutes.

Embellishing the Website

For each device in the results directory add the following files:

  • name.txt -- One word name for the sensor.

  • info.html -- Paragraph describing the location and purpose of the sensor.

  • location.jpg -- Photograph of the sensor in its current location.

The script, mkthumb.sh, will make low resolution thumbnails of location pictures. Run it whenever adding new images.

Test that the website is configured properly and collecting data by viewing the main page, index.cgi.

Consider editing about.html to refer to your Arduino for live data.

We like to hear about successful installations. Send us mail. Let us know if we can add your site to the list of SensorServers. Consider contributing to the codebase by forking the project and requesting pulls.

Best regards, Ward Cunningham

sensorserver's People

Contributors

wardcunningham avatar

Stargazers

Ralf Barkow avatar Michael Corrado avatar  avatar R.J. (Steinert) Corwin avatar Duke Leto avatar  avatar Greg Borenstein avatar

Watchers

 avatar James Cloos avatar  avatar

Forkers

ralfbarkow

sensorserver's Issues

Consider jqPlot and Tablechart

jqPlot greatly improves on Flot. Tablechart bring jqPlot in line with jQuery idioms and allows table data to be used for charting, which improves accessibility and allows for copy-n-paste export -- want the data? show the tables and paste into excel/libreoffice/google docs.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.