Difference between revisions of "Component: WLAN (ESP8266) (Comms: Networking)"
(2 intermediate revisions by the same user not shown) | |||
Line 14: | Line 14: | ||
==WLAN component== | ==WLAN component== | ||
Wireless LAN component designed to work with the ESP8266 module. Provides a very simple interface to allow webpages to be hosted from hardware or simulation. Also available in the form of the EB069 E-block. | Wireless LAN component designed to work with the ESP8266 module. Provides a very simple interface to allow webpages to be hosted from hardware or simulation. Also available in the form of the EB069 E-block. | ||
+ | |||
+ | ==Component Pack== | ||
+ | |||
+ | COMMSB | ||
==Detailed description== | ==Detailed description== | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
Line 26: | Line 36: | ||
==Examples== | ==Examples== | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
Line 350: | Line 366: | ||
| colspan="2" | SSID Index | | colspan="2" | SSID Index | ||
|- | |- | ||
− | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] - | + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT |
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
Line 564: | Line 580: | ||
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]] | ||
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties''' | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties''' | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | ||
+ | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | WIFI Properties | ||
|- | |- | ||
|- | |- | ||
Line 585: | Line 605: | ||
|- | |- | ||
| 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" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | ||
+ | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Connections | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | ||
+ | | width="90%" | Channel | ||
+ | |- | ||
+ | | colspan="2" | UART Channel selector Software channels are bit banged using generic I/O pins but are not as reliable as hardware channels. Hardware channels use the selected peripheral on-board the target microcontroller. | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | ||
+ | | width="90%" | Baud Options | ||
+ | |- | ||
+ | | colspan="2" | Baud rate option selector | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-14-icon.png]] | ||
+ | | width="90%" | Baud Rate | ||
+ | |- | ||
+ | | colspan="2" | | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | ||
+ | | width="90%" | TX | ||
+ | |- | ||
+ | | colspan="2" | Pin to be used for Transmit data | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | ||
+ | | width="90%" | RX | ||
+ | |- | ||
+ | | colspan="2" | Pin to be used for Receive data | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | ||
+ | | width="90%" | Reset | ||
+ | |- | ||
+ | | colspan="2" | WLAN module reset pin connection | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | ||
+ | | width="90%" | Use Flow Control | ||
+ | |- | ||
+ | | 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" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | ||
+ | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | HTML Source | ||
+ | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | ||
Line 640: | Line 703: | ||
|- | |- | ||
| colspan="2" | HTML content for webpage 4 | | colspan="2" | HTML content for webpage 4 | ||
+ | |- | ||
+ | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | ||
+ | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Substitutions | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | ||
+ | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Outgoing | ||
+ | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | ||
Line 650: | Line 721: | ||
|- | |- | ||
| colspan="2" | Number of bytes to reserve for data string. | | colspan="2" | Number of bytes to reserve for data string. | ||
+ | |- | ||
+ | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | ||
+ | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Incoming | ||
+ | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | ||
Line 661: | Line 736: | ||
| colspan="2" | Number of bytes to reserve for data string. | | colspan="2" | Number of bytes to reserve for data string. | ||
|- | |- | ||
− | + | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | |
− | + | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Simulation | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | | width="10%" align="center" style="background-color:# | ||
− | | width="90%" style="background-color:# | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
|- | |- |
Latest revision as of 17:24, 9 November 2022
Author | Matrix Ltd. |
Version | 2.1 |
Category | Comms: Networking |
Contents
WLAN component
Wireless LAN component designed to work with the ESP8266 module. Provides a very simple interface to allow webpages to be hosted from hardware or simulation. Also available in the form of the EB069 E-block.
Component Pack
COMMSB
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
Downloadable macro reference
![]() |
DisconnectFromSSID |
Disconnects from the current SSID. Returns 1 if the command was accepted and returned an "OK" | |
![]() |
Return |
![]() |
GetFirmwareVersion |
Collects the firmware version from the ESP8266 module and returns it as a string. | |
![]() |
Return |
![]() |
CheckForPageRequests |
To be called periodically. Returns non-zero if a request has been processed | |
![]() |
Return |
![]() |
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 |
![]() |
ReadSSIDFromScan |
Collects one of the SSID name strings from the last SSID Scan. The ScanForSSID macro must be called first. | |
![]() |
Index |
SSID Index | |
![]() |
Return |
![]() |
SetOutValue |
Set the value of an outbound substitution string | |
![]() |
index |
Range 0-4 | |
![]() |
value |
![]() |
Return |
![]() |
EndServerConnection |
Disconnects from the current active TCP/IP pipe. | |
![]() |
Return |
![]() |
Send_Embedded_HTML_Page4 |
![]() |
Return |
![]() |
Send_Embedded_HTML_Page3 |
![]() |
Return |
![]() |
Send_Embedded_HTML_Page2 |
![]() |
Return |
![]() |
Send_Embedded_HTML_Page1 |
![]() |
Return |
![]() |
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 |
![]() |
GetInValue |
Returns the string value of a Request parameter | |
![]() |
index |
Index of the request paramter, starting at zero Range 0-2 | |
![]() |
Return |
![]() |
ClientSendArray |
Sends out an array of data bytes with the required AT+CIPSEND=Length$(Request) initialiser. | |
![]() |
Data |
![]() |
NumBytes |
![]() |
Return |
![]() |
Initialise |
Initialise the device with the property data. Returns 1 if "ready" message successfully received Returns 0 if no reply from module | |
![]() |
Return |
![]() |
CheckTCPServerIP |
Collects the local IP address of the active TCP server. | |
![]() |
Return |