Added Diagnostic Log Console
by Nick 8 years 3 months
Added Diagnostic Log Console

* Diagnostic Log Console added to webserver (e.g.
http://192.168.4.1/diag in Config Mode)
* It is now possible to conveniently view Diagnostic Log without
connecting serial port to the device
* Diagnostic Log can be received via webserver in JSON format
* Moved http.h & http.cpp to util_comm.h & util_comm.cpp to tidy up
utility functions and classes
* Minor improvement of webcc::BufferedPrint
8533d312
Diagnostic Log improved
by Nick 8 years 4 months
Diagnostic Log improved

* Diagnostic Log now stores incoming messages and is able to provide
them on request via webserver using URL /diag (this feature requires
significant amount of RAM and cannot be ported to low-RAM devices such
as Arduino Uno or Nano)
* Added Ring Buffers (general purpose and cstring) to util.h/util.cpp;
added Ring Buffers' tests
* Minor code style improvements to module.h and webcc.h
* Tidy up tests
8379dcf1
Code documented & small internal changes
by Nick 8 years 6 months
Code documented & small internal changes

* Added doxygen documentation
* Partly documented the code
* Fixed Webconfig accessible even if Config Mode is not enabled
* Added /index path which shows the list of the software modules
4ddb8b29
Diagnostic Log redesign
by Nick 8 years 9 months
Diagnostic Log redesign

* Modified Diagnostic Log and standardised message format
* Timestamp and sequential number automatically added to messages
* Added message severity
* Added Diagnostic Log tests
* Diagnostic Log can forward incoming messages to any Print (or disable
message forwarding)
6908e892
HTTP request parser revised
by Nick 8 years 9 months
HTTP request parser revised

* Refactored parser code
* Improved handling of malformed requests
* Added parser tests
* Fixed HTTP redirect bug
d73c0a62
Refining template-based architecture
by Nick 8 years 10 months
Refining template-based architecture

Mostly internal improvements
* Components required for webserver operation moved to webcc.h/webcc.cpp
* Removed UITexts, now UI texts are stored in module files
* Refactored HTML form
* Refactored HTTP Request Parser
* Improved handling of malformed HTTP requests and internal parser
errors
* Module list redesigned
* Added tests for comonents located in http.h / http.cpp
* Added tests for HTTP request parser
* Minor bugs fixed
b6cdfae5
Template-based architecture
by Nick 8 years 12 months
Template-based architecture

New template-based architecture laid out; project partly adapted to this
new architecture.
8386112b
Fixed readme.md links
by Nick 9 years 4 weeks
Fixed readme.md links

Fixed readme.md links
285e781d
Minor webserver improvements
by Nick 9 years 4 weeks
Minor webserver improvements

* Minor webserver code improvements
* Additional stablilty checks (e.g. NULL-pointer passed as parameter,
etc...)
* Tests added for StringMap, HTTPPercentCode and URL to make sure future
enhansements and improvements will not break current functionality
e751efb3
More internal webserver improvements
by Nick 9 years 1 month
More internal webserver improvements

* Tidy up webserver code, moving common functionality to webcc.cpp.
* Replaced "Enable/Disable" parameters with checkboxes in WebConfig.
* Save Settings button in WebConfig now saves entire set of parameters
(rather than current section).
* Reverted to 4 allowed WiFi connections in Config Mode.
* Saving parameters now performed using Post/Redirect/Get technique to
prevent duplicate parameter transfer.
* Added Startup Delay parameter to prevent multiple IoT devices from
establishing connection at the same time after power loss and
overwhelming the router with request flood.
* Added WiFi connection timeout: if connection was not established for
the preset amount of time, the device restarts and tries again.
d3d5ee9f
Report a bug