diff options
author | Mike Beattie <mike@ethernal.org> | 2012-03-20 23:25:34 +1300 |
---|---|---|
committer | Mike Beattie <mike@ethernal.org> | 2012-03-20 23:25:34 +1300 |
commit | 25a6bca31c63840261141d764bbd70331a268f19 (patch) | |
tree | 98d195184d0d033aab6905585a5a23ba26e456f2 /Webduino/readme.md | |
parent | cb7bd533cb2b505441ca9a35c9897db358a30b47 (diff) |
Add Webduino library
Signed-off-by: Mike Beattie <mike@ethernal.org>
Diffstat (limited to 'Webduino/readme.md')
-rw-r--r-- | Webduino/readme.md | 103 |
1 files changed, 103 insertions, 0 deletions
diff --git a/Webduino/readme.md b/Webduino/readme.md new file mode 100644 index 0000000..2ef7e78 --- /dev/null +++ b/Webduino/readme.md @@ -0,0 +1,103 @@ +# Webduino + +This is an Arduino-based Web Server library, originally developed for a class at NYC Resistor. It's called Webduino, and it's an extensible web server library for the Arduino using the Wiznet-based Ethernet shields. It's released under the MIT license allowing all sorts of reuse. + +## Features + +- URL parameter parsing +- Handle the following HTTP Methods: GET, HEAD, POST, PUT, DELETE, PATCH +- Web Forms +- Images +- JSON/RESTful interface +- HTTP Basic Authentication + +## Installation Notes + +With Arduino 1.0, add the Webduino folder to the "libraries" folder of your sketchbook directory. + +You can put the examples in your own sketchbook directory, or in hardware/libraries/webduino/examples, as you prefer. + +If you get an error message when building the examples similar to "WebServer.h not found", it's a problem with where you put the Webduino folder. The server won't work if the header is directly in the libraries folder. + +## Presentation + +[Wedbuino Presentation on Google Docs](http://docs.google.com/present/view?id=dd8gqxt8_5c8w9qfg3) + +## Compatible Ethernet Shields + +These have all been tested with the library successfully: + +- [Freetronics Etherten](http://www.freetronics.com/products/etherten) +- [Freetronics Ethernet Shield](http://www.freetronics.com/products/ethernet-shield-with-poe) +- [Arduino Ethernet](http://arduino.cc/en/Main/ArduinoBoardEthernet) +- [Arduino Ethernet Shield, both original and updated microSD version](http://arduino.cc/en/Main/ArduinoEthernetShield) +- [Adafruit Ethernet Shield w/ Wiznet 811MJ module](http://www.ladyada.net/make/eshield/) +- [NKC Electronics Ethernet Shield DIY Kit](http://store.nkcelectronics.com/nkc-ethernet-shield-diy-kit-without-wiz812mj-mod812.html) + +Shields using the Microchip ENC28J60 chip won't work with the library as that requires more software support for implementating +the TCP/IP stack. + +## Version history + +### 1.7 released in Jan 2012 + +- fixed Google Code issue [4](http://code.google.com/p/webduino/issues/detail?id=4) where expect fails with high-ASCII characters due to sign issues +- fixed Google Code issue [8](http://code.google.com/p/webduino/issues/detail?id=8) by adding WEBDUINO_NO_IMPLEMENTATION macro that allows including the class definition without the implementation code +- fixed Google Code issue [9](http://code.google.com/p/webduino/issues/detail?id=9): allowing prog_char* strings for printP +- added httpServerError() method to output 500 Internal Server Error message +- added support for HTTP PUT, DELETE, and PATCH methods (see Google Code issue [11](http://code.google.com/p/webduino/issues/detail?id=11) +- fixed Google Code issue [12](http://code.google.com/p/webduino/issues/detail?id=12): off-by-one error in name/value parser (readPOSTparam) where the buffer wouldn't ever be completely filled +- updated copyright string for 2012 and major authors +- GitHub fork now the official version; all open issues on Google Code site fixed or closed and moved to GitHub + +### 1.6 released in Jan 2012 + +- added [checkCredentials](http://ten-fingers-and-a-brain.com/arduino-projects/webduino/checkcredentials/) and [httpUnauthorized](http://ten-fingers-and-a-brain.com/arduino-projects/webduino/httpunauthorized/) methods as well as readHeader method for HTTP Basic Authentication; currently users will have to do the Base64 encoding outside of Webduino and I'm uncertain whether I ever want this inside the library or not... +- fixed the request parser: previously the command dispatcher would always pass true for tail_complete, even if the tail was incomplete +- fixed the command dispatcher: previously the default command could not have a tail, but the EPIC FAIL was returned + +### 1.5 released in Dec 2011 + +- added a default favicon.ico based on the led.png from the Image example to save resources on Firefox trying to load this file on every request if it can't be loaded +- added keywords.txt for syntax highlighting in Arduino IDE +- bumped the version number up in response headers and compiler variables +- added version history to readme +- fixed default value for prefix +- fixed /index.html in Hello World example + +### releases between Jul 2011 and Dec 2011 + +- project forked on GitHub by Chris Lee +- JSON/RESTful interface +- header Access-Control-Allow-Origin added +- code split in .h and .cpp files +- Arduino 1.0 changes by Dave Falkenburg and others +- adding CRLF after extraHeaders + +### 1.4.1 released in Nov 2009 + +- fix examples to use readPOSTparam method + +### 1.4 released in Sep 2009 + +- bug fix for multple connections + +### 1.3.1 released in Aug 2009 + +- major bug fix for 1.3 for posts where Content-Length is last header sent + +### 1.3 released in Aug 2009 + +- mostly robustness fixes (beta) + +### 1.2.1 released in Aug 2009 + +- fixed HelloWorld example + +### 1.2 released in Jul 2009 + +- now with GET parameter handling + +### 1.1 released in Apr 2009 + +### 1.0 released in Mar 2009 |