Component: WIFI (BL0136) (E-blocks 2): Difference between revisions
No edit summary |
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder"" |
||
| (14 intermediate revisions by 2 users not shown) | |||
| Line 17: | Line 17: | ||
==Component Source Code== | ==Component Source Code== | ||
Please click here | Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_EBlocks2_WLAN_ESP12S_BL0136.fcfx FC_Comp_Source_EBlocks2_WLAN_ESP12S_BL0136.fcfx] | ||
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_EBlocks2_WLAN_ESP12S_BL0136.fcfx FC_Comp_Source_EBlocks2_WLAN_ESP12S_BL0136.fcfx] | |||
==Detailed description== | ==Detailed description== | ||
| Line 26: | Line 36: | ||
==Examples== | ==Examples== | ||
| Line 99: | Line 117: | ||
{{Fcfile|NetworkComms-ESP8266-Server.fcfx|NetworkComms ESP8266 Webserver}} | {{Fcfile|NetworkComms-ESP8266-Server.fcfx|NetworkComms ESP8266 Webserver}} | ||
==Macro reference== | ==Macro reference== | ||
{| class="wikitable | ===CheckForPageRequests=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''CheckForPageRequests''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | To be called periodically. Returns non-zero if a request has been processed | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | |||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
{| class="wikitable | ===CheckTCPServerIP=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''CheckTCPServerIP''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Collects the local IP address of the active TCP server. | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
{| class="wikitable | ===ClientConnect=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ClientConnect''' | ||
|- | |- | ||
| colspan="2" | Creates a TCP or UDP connection to a remote server. Returns the state of the connection. 0=Connection failed 1=Connection active | | colspan="2" | Creates a TCP or UDP connection to a remote server. Returns the state of the connection. 0=Connection failed 1=Connection active | ||
| Line 166: | Line 189: | ||
{| class="wikitable | ===ClientSendArray=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ClientSendArray''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Sends out an array of data bytes with the required AT+CIPSEND=Length$(Request) initialiser. | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | Data | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | ||
| width="90%" | | | width="90%" | NumBytes | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
{| class="wikitable" | ===ClientSendRequest=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''ClientSendRequest''' | |||
|- | |||
| colspan="2" | Sends out a string with the required AT+CIPSEND=Length$(Request) initialiser. | |||
|- | |- | ||
|- | |- | ||
| | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | ||
| width="90%" | Request | |||
|- | |- | ||
| colspan="2" | e.g. "GET / HTTP/1.0\r\n\r\n" | |||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
{| class="wikitable | ===ConnectToSSID=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ConnectToSSID''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Attempts to connect to the given SSID and Key values. Returns 1 if the SSID has been connected. | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | ||
| width="90% | | width="90%" | SSID | ||
|- | |- | ||
| | | colspan="2" | | ||
|- | |- | ||
| | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | ||
| width="90%" | Key | |||
|- | |- | ||
| colspan="2" | | |||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9- | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | Timeout | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Number of seconds to wait for the connection, default 20 | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
{| class="wikitable | ===ControlTCPServer=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ControlTCPServer''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Allows a TCP web page server to be switched on and off on the selected port. Returns 1 if the command was completed correctly. | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | Enable | ||
|- | |||
| colspan="2" | 0 = Stop Server, 1 = Start Server | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | |||
| width="90%" | Port | |||
|- | |- | ||
| colspan="2" | | | colspan="2" | Server port to listen for incoming TCP/IP data requests | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
{| class="wikitable | ===CreateAccessPoint=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''CreateAccessPoint''' | ||
|- | |- | ||
| colspan="2" | Sets up the wireless LAN module into AP mode to host a wireless network. Other WIFI enabled devices can then connect to the module. Returns 1 for success. | | colspan="2" | Sets up the wireless LAN module into AP mode to host a wireless network. Other WIFI enabled devices can then connect to the module. Returns 1 for success. | ||
| Line 284: | Line 319: | ||
{| class="wikitable | ===DisconnectFromSSID=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''DisconnectFromSSID''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Disconnects from the current SSID. Returns 1 if the command was accepted and returned an "OK" | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |||
===EndServerConnection=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" class="mtx-class-macrohead" | '''EndServerConnection''' | |||
|- | |- | ||
| | | colspan="2" | Disconnects from the current active TCP/IP pipe. | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
{| class="wikitable | ===GetByteWithTimeout=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''GetByteWithTimeout''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Attempts to receive a byte from the circular buffer. If nothing is available then waits up to 200 ms for data to become available. | ||
|- | |- | ||
|- | |- | ||
| Line 320: | Line 361: | ||
{| class="wikitable | ===GetFirmwareVersion=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''GetFirmwareVersion''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Collects the firmware version from the ESP8266 module and returns it as a string. | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
{| class="wikitable | ===GetInValue=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''GetInValue''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Returns the string value of a Request parameter | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | index | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Index of the request paramter, starting at zero Range 0-2 | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
{| class="wikitable | ===GetRxArray=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''GetRxArray''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Attempts to receive a number of bytes from the remote connection If nothing is available then waits up to 200 ms for data to become available. Returns the number of bytes received,. | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90% | | width="90%" | Data | ||
|- | |- | ||
| | | colspan="2" | Byte array to store the incoming data | ||
|- | |- | ||
| | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | ||
| width="90%" | MaxBytes | |||
|- | |- | ||
| colspan="2" | Maximum number of bytes to try and receive | |||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u16-icon.png]] - UINT | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
{| class="wikitable | ===Initialise=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Initialise''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Initialise the device with the property data. Returns 1 if "ready" message successfully received Returns 0 if no reply from module | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
{| class="wikitable | ===ReadEncryptionModeFromScan=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ReadEncryptionModeFromScan''' | ||
|- | |- | ||
| colspan="2" | Collects one of the encryption modes from the last SSID Scan. The ScanForSSID macro must be called first. 0=Open, 1=WEP, 2=WPA_PSK, 3=WPA2_PSK, 4=WPA_WPA2_PSK | | colspan="2" | Collects one of the encryption modes from the last SSID Scan. The ScanForSSID macro must be called first. 0=Open, 1=WEP, 2=WPA_PSK, 3=WPA2_PSK, 4=WPA_WPA2_PSK | ||
| Line 408: | Line 451: | ||
{| class="wikitable | ===ReadSSIDFromScan=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ReadSSIDFromScan''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Collects one of the SSID name strings from the last SSID Scan. The ScanForSSID macro must be called first. | ||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="90%" | Index | |||
|- | |- | ||
| colspan="2" | SSID Index | |||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
{| class="wikitable | ===ReadSignalStrengthFromScan=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ReadSignalStrengthFromScan''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Collects the signal strength from the last SSID Scan. The ScanForSSID macro must be called first. Value returned is in negative dB, smaller value = better signal | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | Index | ||
|- | |- | ||
| colspan="2" | Index | | colspan="2" | SSID Index | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
{| class="wikitable | ===ScanForSSID=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ScanForSSID''' | ||
|- | |- | ||
| colspan="2" | Checks for wireless networks in the local area which are broadcasting their SSID. Must not be connected to a network to allow this to function. Returns the number of wireless networks found, max 8. | |||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| Line 467: | Line 503: | ||
{| class="wikitable | ===SendString=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''SendString''' | ||
|- | |- | ||
| colspan="2" | Sends | | colspan="2" | Sends the given Text with no preappendment. Useful for sending preformatted command strings. Appends a CR to the end of the string if SendCR is greater than 0. | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9- | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | ||
| width="90%" | | | width="90%" | Text | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9- | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | SendCR | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
| Line 490: | Line 527: | ||
{| class="wikitable | ===Send_Embedded_HTML_Page1=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Send_Embedded_HTML_Page1''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| width="90%" | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |||
===Send_Embedded_HTML_Page2=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" class="mtx-class-macrohead" | '''Send_Embedded_HTML_Page2''' | |||
|- | |- | ||
| | | colspan="2" | | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
{| class="wikitable | ===Send_Embedded_HTML_Page3=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Send_Embedded_HTML_Page3''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
{| class="wikitable | ===Send_Embedded_HTML_Page4=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Send_Embedded_HTML_Page4''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
{| class="wikitable" | ===SetOutValue=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''SetOutValue''' | |||
|- | |||
| colspan="2" | Set the value of an outbound substitution string | |||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="90%" | index | |||
|- | |- | ||
| | | colspan="2" | Range 0-4 | ||
|- | |- | ||
| | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | ||
| width="90%" | value | |||
|- | |- | ||
| colspan="2" | | |||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
==Property reference== | ==Property reference== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Properties''' | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | WIFI Properties | ||
|- | |- | ||
|- | |- | ||
| Line 586: | Line 639: | ||
| colspan="2" | Older versions of the firmware require \r to terminate a AT command string. Newer versions of the firmware have changed to use \r\n termination. | | colspan="2" | Older versions of the firmware require \r to terminate a AT command string. Newer versions of the firmware have changed to use \r\n termination. | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Connections | ||
|- | |- | ||
|- | |- | ||
| Line 609: | Line 662: | ||
|- | |- | ||
| colspan="2" | Pin to be used for Transmit data | | colspan="2" | Pin to be used for Transmit data | ||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |||
| width="90%" | TX Remap Pin | |||
|- | |||
| colspan="2" | Allows the hardware transmit pin to be configured from a list of available pins based on your target device, | |||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | | width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | ||
| Line 614: | Line 672: | ||
|- | |- | ||
| colspan="2" | Pin to be used for Receive data | | colspan="2" | Pin to be used for Receive data | ||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |||
| width="90%" | RX Remap Pin | |||
|- | |||
| colspan="2" | Allows the hardware receive pin to be configured from a list of available pins based on your target device, | |||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | | width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | ||
| Line 625: | Line 688: | ||
| colspan="2" | Flow Control (Handshake) enable or disable. On: Two I/O pins are used to control the flow of data in and out of the device. Off: Flow control is disabled. | | colspan="2" | Flow Control (Handshake) enable or disable. On: Two I/O pins are used to control the flow of data in and out of the device. Off: Flow control is disabled. | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | HTML Source | ||
|- | |- | ||
|- | |- | ||
| Line 684: | Line 747: | ||
| colspan="2" | HTML content for webpage 4 | | colspan="2" | HTML content for webpage 4 | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Substitutions | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Outgoing | ||
|- | |- | ||
|- | |- | ||
| Line 702: | Line 765: | ||
| colspan="2" | Number of bytes to reserve for data string. | | colspan="2" | Number of bytes to reserve for data string. | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Incoming | ||
|- | |- | ||
|- | |- | ||
| Line 716: | Line 779: | ||
| colspan="2" | Number of bytes to reserve for data string. | | colspan="2" | Number of bytes to reserve for data string. | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Simulation | ||
|- | |- | ||
|- | |- | ||
Latest revision as of 14:37, 13 July 2026
| Author | Matrix Ltd. |
| Version | 2.1 |
| Category | E-blocks 2 |
WIFI component
Wireless LAN component designed to work with the ESP-12S module. Provides a very simple interface to allow webpages to be hosted from hardware or simulation. Also available in the form of the BL0136 WIFI E-block.
Component Source Code
Please click here to download the component source project: FC_Comp_Source_EBlocks2_WLAN_ESP12S_BL0136.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_EBlocks2_WLAN_ESP12S_BL0136.fcfx
Detailed description
No detailed description exists yet for this component
Examples
The examples below are all done using a EB091 board as the host
The EB069 ESP8266 Wifi E-block is connected to PORTD 0-7 with the patch setting set to B.
The EB005 LCD E-block is connected to PORTB 0-7 with the patch setting set to Default.
Other host boards are compatible with the examples, simply change the target chip and component connection properties.
Firmware Test
This example collects the firmware version from the ESP8266 module and displays it on an LCD. Tested working with firmware version 00150900.
Wireless Scanner
This example scans for wireless networks in range and prints the network IDs to the LCD along with the signal strength and security type.
Creating An Access Point
This example creates an access point you can connect your phone or laptop to named Flowcode_ESP8266. The password to connect to the access point is flowcode6.
Note this example simply creates an access point, no data is transferred.
Joining An Access Point
This example joins an existing access point. The network ID and Password must be altered to match your local WIFI network settings.
Note this example simply joins an access point, no data is transferred.
TCP Client
This example joins an existing access point. The network ID and Password must be altered to match your local WIFI network settings.
Once joined to the network the example connects to the MatrixTSL website and requests a file which is printed out on the LCD.
TCP Server
This example creates an access point you can connect your phone or laptop to named Flowcode_ESP8266. The password to connect to the access point is flowcode6.
Once the access point is created the example shows the server IP address on the LCD. Connecting to the wireless network on your phone or laptop and visiting the IP address shown on the LCD using a web browser allows you to switch LED outputs on and off.
Network Comms
Here are some examples using the Network Communication component linked to the ESP8266 component.
NetworkComms ESP8266 Webserver
Macro reference
CheckForPageRequests
| CheckForPageRequests | |
| To be called periodically. Returns non-zero if a request has been processed | |
| Return | |
CheckTCPServerIP
| CheckTCPServerIP | |
| Collects the local IP address of the active TCP server. | |
| Return | |
ClientConnect
ClientSendArray
| ClientSendArray | |
| Sends out an array of data bytes with the required AT+CIPSEND=Length$(Request) initialiser. | |
| Data | |
| NumBytes | |
| Return | |
ClientSendRequest
| ClientSendRequest | |
| Sends out a string with the required AT+CIPSEND=Length$(Request) initialiser. | |
| Request | |
| e.g. "GET / HTTP/1.0\r\n\r\n" | |
| Return | |
ConnectToSSID
ControlTCPServer
CreateAccessPoint
DisconnectFromSSID
| DisconnectFromSSID | |
| Disconnects from the current SSID. Returns 1 if the command was accepted and returned an "OK" | |
| Return | |
EndServerConnection
| EndServerConnection | |
| Disconnects from the current active TCP/IP pipe. | |
| Return | |
GetByteWithTimeout
| GetByteWithTimeout | |
| Attempts to receive a byte from the circular buffer. If nothing is available then waits up to 200 ms for data to become available. | |
| Return | |
GetFirmwareVersion
| GetFirmwareVersion | |
| Collects the firmware version from the ESP8266 module and returns it as a string. | |
| Return | |
GetInValue
| GetInValue | |
| Returns the string value of a Request parameter | |
| index | |
| Index of the request paramter, starting at zero Range 0-2 | |
| Return | |
GetRxArray
Initialise
| Initialise | |
| Initialise the device with the property data. Returns 1 if "ready" message successfully received Returns 0 if no reply from module | |
| Return | |
ReadEncryptionModeFromScan
ReadSSIDFromScan
| ReadSSIDFromScan | |
| Collects one of the SSID name strings from the last SSID Scan. The ScanForSSID macro must be called first. | |
| Index | |
| SSID Index | |
| Return | |
ReadSignalStrengthFromScan
ScanForSSID
SendString
Send_Embedded_HTML_Page1
| Send_Embedded_HTML_Page1 | |
| Return | |
Send_Embedded_HTML_Page2
| Send_Embedded_HTML_Page2 | |
| Return | |
Send_Embedded_HTML_Page3
| Send_Embedded_HTML_Page3 | |
| Return | |
Send_Embedded_HTML_Page4
| Send_Embedded_HTML_Page4 | |
| Return | |
SetOutValue
| SetOutValue | |
| Set the value of an outbound substitution string | |
| index | |
| Range 0-4 | |
| value | |
| Return | |