Component: Network Communications (Comms: Networking)
Author | Matrix TSL |
Version | 1.0 (Release) |
Category | Comms: Networking |
Contents
Network Communications component
A component designed to simplify the process of TCP/IP communications. Compatible with most of the Flowcode supported TCP/IP and WIFI components. A useful building block for creating components such as IoT and Modbus TCP.
Examples
Here are some examples showing the Network Communications component in action.
By itself the component provides a generic TCP/IP layer to drive the simulation runtime.
Here is a simple example showing the component used by itself to request data from a remote server on the internet.
Components such as Webserver (GENERIC), MQTT and Modbus TCP can connect to and control the network comms layer.
Here is a simple example showing the component used with the Webserver (GENERIC) component.
Example Network Comms Web Server
The Network Communications component can also be connected to embedded TCP/IP and WIFI style modules allowing for the abstraction to work on hardware.
Here is the current status of the Network Communications component with the various embedded modules.
Embedded Component | Other Variants of Component | Support Status |
---|---|---|
TCP/IP (Raspberry Pi) | N/A | Fully Supported |
TCP/IP (W5500) | N/A | In Progress |
TCP/IP (NM7010A) | TCP/IP (EB023v1) | In Progress |
TCP/IP (W5100) | TCP/IP (EB023v2) | In Progress |
WLAN (ESP8266) | WLAN (ESP-12S), WIFI (BL0136) | In Progress |
We are working through and adding support as and when we get chance so if you have a module that isn't listed or would like to try and prioritise a specific module then you can let us know via the user forums.
Downloadable macro reference
Connect
Connects to an IP address as a client on the specified port.
Some TCP/IP modules (RPI and ESP8266) will accept a URL instead of an IP address.
Returns: 0=Fail, 1=OK
Parameters
- <- STRING Address
- IP address as a string e.g. "192.168.1.1" or URL on some TCP/IP modules
- This parameter may be returned back to the caller
- UINT Port
Return value
- BOOL : Returns true if the operation is a success, else false
Receive
Attempts to receive up to a specified number of bytes from the active connection.
Returns the number of bytes received.
Parameters
- <- STRING Data
- This parameter may be returned back to the caller
- UINT Count
- Maximum number of bytes to read
Return value
Send
Sends the specified number of bytes via the active connection.
Returns the number of bytes sent, 0=Fail.
Parameters
- <- STRING Data
- Array containing the data to send
- This parameter may be returned back to the caller
- UINT Count
- Number of bytes to send from the data array
Return value
Listen
Bind the socket to a port on the local host and set to listen mode.
Returns: 0=Fail, 1=OK
Parameters
- UINT Port
Return value
- BOOL : Returns true if the operation is a success, else false
SocketOpen
Attempts to create a socket on the local device.
This must be succesful to allow TCP/IP communications with a remote destination.
Returns: 0=Fail / 1=OK
Parameters
- This macro has no parameters
Return value
- BOOL : Returns true if the operation is a success, else false
SocketClose
Closes the current socket connection
Parameters
- This macro has no parameters
Return value
- This call does not return a value
Simulation macro reference
This component does not contain any simulation macros
Property reference
TCP/IP Component
This property is of type Panel object and can be referenced with the variable name Component.
Property to point to the TCP/IP or WIFI component you want to use.
If unconnected then default to simulated TCP/IP network communications using the PC network adapter.
Status
This property is of type Line of text and can be referenced with the variable name Status.
No additional information