diff --git a/WEB-SERVER.md b/WEB-SERVER.md
index d19ba7e..723ec8a 100644
--- a/WEB-SERVER.md
+++ b/WEB-SERVER.md
@@ -1,6 +1,13 @@
ESP-LINK web-server tutorial
============================
+Installing el-client Arduino library
+--------------------
+
+Download and install ELClient library.
+
+https://github.com/jeelabs/el-client
+
LED flashing sample
--------------------
@@ -13,17 +20,14 @@ Circuit:
Installation steps:
- - 1: install the latest Arduino on the PC
- - 2: install EspLink library from arduino/libraries path
- - 3: open EspLinkWebSimpleLedControl sample from Arduino
- - 4: upload the code onto an Arduino Nano/Uno
- - 5: install esp-link
- - 6: jump to the Web Server page on esp-link UI
- - 7: upload SimpleLED.html ( arduino/libraries/EspLink/examples/EspLinkWebSimpleLedControl/SimpleLED.html )
- - 8: jump to SimpleLED page on esp-link UI
- - 9: turn on/off the LED
-
-Complex application sample
+ - 1: open webserver_led ELClient sample file in Arduino
+ - 2: upload the code onto an Arduino Nano/Uno
+ - 3: open the Web Server page on esp-link UI
+ - 4: upload LED.html from webserver_led ( ELCient/examples/webserver_led/LED.html )
+ - 5: choose LED page on esp-link UI
+ - 6: turn on/off the LED
+
+HTML controls sample
--------------------------
Circuit:
@@ -31,14 +35,26 @@ Circuit:
- 1: connect a Nodemcu (ESP8266) board and an Arduino Nano / UNO:
(RX - levelshifter - TX, TX - levelshifter - RX)
- 2: optionally connect RESET-s with a level shifter
- - 3: add a trimmer to A0 for Voltage measurement
+ - 3: add a trimmer to A0 for voltage measurement
Installation steps:
- - 1: open EspLinkWebApp sample from Arduino
+ - 1: open webserver_controls ELClient sample file in Arduino
- 2: upload the code onto an Arduino Nano/Uno
- - 3: jump to the Web Server page on esp-link UI
- - 4: upload the 3 HTML files in the samples ( multiple select from arduino/libraries/EspLink/examples/EspLinkWebApp/ )
+ - 3: open the Web Server page on esp-link UI
+ - 4: upload the 3 HTML files from webserver_controls ( select multiple htmls from ELCient/examples/webserver_controls/ )
- 5: jump to LED/User/Voltage pages
- 6: try out different settings
-
\ No newline at end of file
+
+Supported HTML controls
+--------------------
+
+HTML control | Value Type | Description | Form Submission |
+ ------------------------ | ----- | ------------ | ------- |
+<p id="id"/>
<div id="id"/>
<tr id="id"/>
<th id="id"/>
<td id="id"/>
<textarea id="id"/> | String (HTML) | MCU can replace the inner HTML part of the control at LOAD/REFRESH queries. The string (sent by MCU) is handled as HTML, so <img...> will be displayed as an image on the page | NO |
+<button id="id"/> | String | When button is pressed, a message is transmitted to MCU containing the id (BUTTON_PRESS) | NO |
+<input name="id"/> | String
Integer
Float
Boolean | MCU can replace the value or checked properties of the HTML control in the form (LOAD/REFRESH). At form submission, the content of value will be transmitted to MCU (SET_FIELD). | YES |
+<select name="id"/> | String | MCU can choose a value from the drop down (LOAD/REFRESH). At form submission the currently selected value will be transmitted to MCU (SET_FIELD) | YES |
+<ul id="id"/>
<ol id="id"/> | JSON list
["1","2","3"] | MCU can send a JSON list which is transformed to an HTML list ( <li/> ) (LOAD/REFRESH) | NO |
+<table id="id"/> | JSON table
[["1","2"],
["3","4"]] | MCU sends a JSON table which is transformed to an HTML table (LOAD/REFRESH) | NO |
+