External Device Servers
External Device Servers, or External Device Server Accounts, let Iotellect Server access hardware Device Servers that are not able to initiate a connection to the server. This feature is often used when setting up new hardware Device Servers that are not yet configured to log into Iotellect Server automatically on startup. External Device Server Accounts can also come in handy when troubleshooting hardware Device Servers that have problems connecting to the Iotellect Server.
![]() | The difference between hardware Device Servers, Device Server Accounts and External Device Server Accounts is covered here. |
External Device Server Accounts are used to store the parameters used by Iotellect Server to access hardware Device Servers by their IP or MAC address. If Iotellect Server cannot access a hardware Device Server (e.g. it is located in a remote Local Area Network, protected by firewall), there is no way to access it using the External Device Server facility. There are several ways to overcome this and make a hardware Device Server connect to Iotellect Server on startup:
Temporarily plug it into another network segment that Iotellect Server can access, and then access it as an external Device Server. Once the Device Server is configured and ready to establish a link with Iotellect Server on startup, you can plug it back into its original network and it'll initiate an outgoing connection to the Iotellect Server.
Temporarily reconfigure the firewall, router or other network equipment to allow Iotellect Server access hardware Device Servers as an External Device Servers. Once all hardware Device Servers are configured and ready to initiate a connection to the Iotellect Server, the original network configuration may be restored.
Use DS Manager software from a PC that resides in the same network segment with the hardware Device Server (or can otherwise access it). Device Server Manager software is part of the Device Server Toolkit package provided by Iotellect.
![]() | The basic concept of External Device Server Accounts is that they are used to access and configure new hardware Device Servers only. This facility should not be used for working with Device Servers which are already configured to connect to Iotellect Server. |
Administering External Device Servers
Two contexts are used to administer External Device Servers: One is the general External Device Servers context, for actions related all External Device Servers. The other is the External Device Server context, corresponding to a single External Device Server Account. | ![]() |
Device Server Discovery
Device Server Discovery is the process of locating all hardware Device Servers in the local network segment and automatically creating External Device Server Accounts for them.
![]() | A local network segment means there are only network hubs (no routers, bridges, firewalls, etc.) between the PC and all other devices on that segment. |
Hardware Device Servers which are located behind a router (i.e, you have the computer running Iotellect Server, and to actually get to the Device Server its packets need to go via a router) cannot be auto-discovered by Iotellect Server because the broadcast UDP datagrams used to find them on the network are not forwarded by the router. However, it is still sometimes possible to use the External Device Servers facility to connect such Device Servers to the Iotellect Server, if they can be accessed by their IP addresses.
Each discovered Device Server is uniquely identified by its MAC-address, which is different for every Device Server manufactured. Discovery will detect all local Device Servers even if some of them have the same IP-address or an IP-address which is invalid or unreachable. A correctly configured IP-address is not required for the Iotellect Server to be able to access Iotellect Server in the discovery mode.
During the discovery process, Iotellect Server creates a new External Device Server context (account) for every hardware Device Server detected. All External Device Server contexts that were created during previous executions of discovery are destroyed before creation of new contexts. There's no way to "manually" create an External Device Server Account, only using the discovery process.
If automatic discovery of Device Servers is disabled and it was not launched manually, External Device Servers context does not contain any Device Server accounts.
Automatic Discovery of Device Servers
Iotellect Server can discover Device Servers automatically. Automatic discovery is performed by Discover and Connect External Device Servers scheduled job. It's possible to turn off auto-discovery by disabling this job, or change discovery schedule by editing it's triggers. If Try to auto-connect Device Servers to Iotellect Server option of the job is enabled, Iotellect Server tries to auto-connect each discovered Device Server.
Connecting External Device Servers to the Iotellect Server
Connecting an External Device Server to Iotellect Server is the process of reconfiguring a hardware Device Server to make it connect to the Iotellect Server immediately after startup. There are several ways to do this:
Connecting a previously discovered Device Server using its account.
Automatically connecting all discovered Device Servers to Iotellect Server without user interaction.
Manually configuring discovered a Device Server that was not successfully connected by the above functions.
Manually connecting a Device Server that was not detected by the discovery process but may be accessed by Iotellect Server.
Connecting a Previously Discovered Device Server to Iotellect Server
This procedure is initiated by the Connect Device Server to Iotellect Server action of the External Device Server context.
The user must specify several parameters before connection process is started:
Connection Type. "Permanent (Work with Iotellect Server)" or "Dynamic DNS only (disconnect immediately after registration in DNS)". See Connection Modes for details.
Login Password. Required if a password is defined in the settings of the hardware Device Server. This password will be used by Iotellect Server to access the settings of the hardware Device Server.
Owner Name. Name of the Iotellect Server user who will own (or already owns) a Device Server Account that will be used to authenticate this hardware Device Server during its login to Iotellect Server. The "Owner name" setting of the hardware Device Server will be set to this value.
Device Server Name. Name of the above Device Server Account. Device name setting of the hardware Device Server will be set to this value.
Force connection even if Device Server is already configured for Iotellect Server or has incompatible firmware. By default, the connection procedure fails with an error message if the Device Server is already configured to connect to the Iotellect Server or has an outdated firmware version (one that doesn't fully support automated configuration for Iotellect Server). This option disables checking of the Device Server setting values and its version number. The forced connection operation will complete successfully, but Device Server may not be able to actually connect to the Iotellect Server or log in. If the Device Server does not login to the Iotellect Server within several seconds after the forced connection procedure has been completed, proceed to the manual configuration section.
The connection sequence is described here.
Automatic Connection of Discovered Device Servers to Iotellect Server
If the Try to auto-connect Device Servers to Iotellect Server option of Discover External Device Server scheduled job option is turned on, Iotellect Server automatically executes the Connect discovered Device Server to the Iotellect Server procedure for every Device Server detected during the discovery process. This option is disabled by default, for security reasons. It useful for quickly connecting multiple Device Servers that are plugged into the local network segment.
Automatic connection fails if:
The Device Server requires a password to access its settings, or
The Device Server is already configured for connection with the Iotellect Server on startup, or
The Device Server's firmware does not support auto-connection.
Connecting a Device Server THAT Was Not Discovered But Is Accessible By Iotellect Server
This procedure should be used to connect a hardware Device Server to Iotellect Server that wasn't discovered, but can still be accessed by Iotellect Server. This is suitable, for example, if the Device Server is not located in the same local network segment as the Iotellect Server, but its IP address is accessible to the server.
All connection parameters required to access the Device Server should be specified manually for this procedure. Is is initiated by the Connect Device Server to Iotellect Server action of the External Device Servers context.
To connect a non-discovered Device Server you need to specify the following options:
Connection Type. Permanent (Work with Iotellect Server) or Dynamic DNS only (disconnect immediately after registration in DNS). See Connection Modes for details.
Access method. One of Broadcast (UDP), Out-of-band (UDP), Inband (TCP) or Telnet (TCP).
MAC address. Should be specified in the case of broadcast access.
IP address. Should be specified if access method is not broadcast.
Port Number. If specified, this port will be used to contact the Device Server instead of the default port for the selected access method.
Owner Name. See description above.
Device Server Name. See description above.
Force connection even if Device Server is already configured for Iotellect Server of has incompatible firmware. See description above.
Connection sequence is described here.
Connection Modes
A hardware Iotellect Server may be configured to work with Iotellect Server in two different modes:
Normal mode
Dynamic DNS only mode
Normal mode assumes that the Device Server connects to the Iotellect Server on startup and stays connected for an unlimited period of time. All data that is sent or received from it is processed by the Device Drivers defined in the Device Server Account. In most cases Device Servers should be connected to the Iotellect Server in normal mode.
Dynamic DNS only mode forces the Device Server to disconnect from Iotellect Server immediately after connection. The only thing performed by the server when the Device Server connects is to register it in the Domain Name System (DNS). After disconnecting from Iotellect Server, the Device Server acts as a normal ethernet-to-serial bridge. It does not interact with Iotellect anymore until next power-up. See Dynamic DNS (dDNS) Service for more information on how this mode may be used.
Connection Sequence
The procedure of configuring a hardware Device Server to connect to Iotellect Server on startup involves several steps:
If neither a MAC nor IP address is not specified in connection settings, connection process fails with an error
If the access method is set to Inband (TCP) or Telnet, Iotellect Server tries to establish an outgoing TCP connection with the Device Server.
Iotellect Server tries to detect the proper value for the Destination IP setting of a hardware Device Server (i.e, where should the hardware Device Server connect to). If the Server IP Address global configuration setting of Iotellect Server is defined, the Destination IP is set to its value. Otherwise, Iotellect Server sends a special command, "Tell me my IP address", to the Device Server. The Device Server inspects the command packet and sends back the IP address from which the command was sent. This way, the server "knows" what IP address is visible for it on the Device Server side (i.e, where the Device Server "thinks" the server is at).
![]() | If hardware Device Server in moved to another network segment after "Connect to the Iotellect Server" procedure, it may be necessary to change its "Destination IP" setting to the IP address at which the Iotellect Server is available from its new network location. |
Iotellect Server tries to log in to the Device Server and access its configuration. The password defined in the parameters of "Connect to Iotellect Server" operation is used.
If Force connection even if Device Server is already configured for Iotellect Server or has incompatible firmware setting is disabled, the version of Device Server is checked to be compatible with the Iotellect Server. If it is too old, connection procedure fails.
If Force connection is disabled, Iotellect Server tries to detect if the Device Server is already configured to connect to this specific Iotellect Server on startup and stops the connection process if this check succeeds. Alternatively, if this setting is enabled, Iotellect Server will overwrite Device Server settings anyway, to make a best-effort attempt to make it connect to Iotellect Server.
At this point Iotellect Server decides which user and Device Server accounts should be used by the connected hardware Device Server If the Owner name and Device name parameters are specified, they are used as the user and Device Server account respectively. If not, Iotellect Server reads Owner name and Device name settings from the hardware Device Server and uses these values as names of user and Device Server accounts.
If the user account determined at the previous step does not exist or is inaccessible by the user initiating the connection procedure, the procedure fails with an error.
The hardware Device Server settings are now changed to make it to connect to the Iotellect Server on startup. To learn what settings are changed and their new values, see Manual Configuration for Iotellect Server.
If a Device Server Account with the name determined at step 7 exists, its settings are updated let the new hardware Device Server connect. Otherwise, a new Device Server Account is registered automatically.
The hardware Device Server is rebooted.
After the above steps Device Server should connect and log in to the Iotellect Server within several seconds. If this doesn't happen, check the Device Server status LEDs to find out what's going on with the Device Server. You can then use manual configuration (see immediately below) to troubleshoot the connection.
Manually Configuring Device Servers to Connect to the Iotellect Server
These are settings of a hardware Device Server that must be properly configured for it to connect and login to the Iotellect Server. These settings may be accessed using the Configure Device Server action of any External Device Server context.
Setting | Value |
Owner name | Name of user owning Device Server Account |
Device name | Name of Device Server Account |
MAC-address | Must be set to any valid MAC address that is unique within the local network segment. Default value is suitable in most cases. |
IP-address | Must be properly configured for the local network environment. |
Registration at dDNS Server | Disabled |
Auto-registration on Iotellect Server | Enabled |
PPPoE mode | Disabled |
Gateway IP-address | Must be properly configured for the local network environment. |
Subnet mask | Must be properly configured for the local network environment. |
Connection timeout | Disabled (0 minutes) |
Transport protocol | TCP |
Link Service login | Enabled |
Routing Mode | Client only |
Connection mode | Immediately (on powerup) |
Destination IP-address | IP address of the Iotellect Server |
Destination port | Must be equal to the value of the Port number to listen for normal Device Server connections global Iotellect Server configuration setting. |
![]() | When the hardware Device Server is configured to work in Dynamic DNS only mode, some of these settings should be configured differently: Link Service login: disabled Registration at dDNS Server: enabled dDNS Server IP-address: IP address of the Iotellect Server dDNS Server port: Must be equal to the value of Port number to listen for normal Device Server connections global configuration setting of Device Servers plugin. |
If the hardware Device Server does not connect to Iotellect Server within seconds after rebooting, see troubleshooting information here.
Other External Device Server Operations
Buzzing
The buzz feature allows you to visually match an External Device Server Account to a hardware Device Server. It causes the hardware Device Server play a fast-blinking pattern using its red and green status LEDs. This way you can easily identify which Device Server a particular account corresponds to.
Rebooting
This operation reboots the hardware Device Server. Rebooting may be required after changing Device Server settings.
Initializing
This operation resets a hardware Device Server to factory defaults. It requires confirmation, and cannot be undone.
![]() | Default values may prevent a Device Server from being discovered by Iotellect Server. Use this feature carefully. |
Icons for External Device Servers
External Device Server Accounts are represented by different icons in Iotellect Server User Interfaces (such as Iotellect Client):
![]() | Normal hardware Device Server running a fixed-function firmware. |
![]() | A Device Server that is implemented as a logical part of Agent Iotellect BASIC application running on a programmable module. |
Configuring External Device Servers
Iotellect Server provides way to change the internal settings of hardware Device Servers. This function was previously implemented in Iotellect DS Manager software. Device Server settings are accessed using the Configure Device Server action of any External Device Server context.
Here is an example of a Device Server settings dialog (in Iotellect Client):

Was this page helpful?