manufacturer of I/O-rich SBCs, operator interfaces, handheld instruments, and development tools for embedded control low cost single board computers, embedded controllers, and operator interfaces for scientific instruments & industrial control development tools for embedded control order our low cost I/O-rich embedded control products embedded controller manufacturer profile single board computers & embedded controllers development tools & starter kits for your embedded design operator interfaces with touchscreens and graphical user interface plug-in expansion modules for digital & analog I/O C language & Forth language integrated development tools, IDE single board and embedded computer accessories embedded controller enclosures, bezels, environmental gaskets

The EtherSmart Wildcard User Guide

Table of Contents


Internet Protocol Support

Summary of EtherSmart Capabilities


Connecting To the Wildcard Bus

Selecting the Wildcard Address

Terminology Overview

Browser Notes

The EtherSmart Software Driver Routines

EtherSmart Driver Data Structures

The Demo Program

EtherSmart Initialization, Configuration and Diagnostics

Initialization Functions

Configuring the XPort Device

Assigning an IP Address

Reporting Routines

Using "Ping" for Diagnostics

Initializing Multiple EtherSmart Wildcards

Code Downloads and Interactive Communications via Ethernet

Serial Tunneling

A Serial Tunneling Example

Serial Tunneling Buffer Management Functions

Serial Tunneling Data Transmission and Reception Functions

Serial Tunneling Connection Functions

Serial Tunneling Inter-Task Service Management Functions

Sending Email

Introduction to the Dynamic Webserver

Using the Dynamic Webserver

HTTP Buffer Management

HTTP Header Generation

HTTP Data Transfer Functions

Web Form Processing

An Example of a Dynamic Web Page with a Remote Image Reference

Serving Out a Stand-Alone Image

Implementing a "Remote Front Panel" Using the Webserver

Appendix A: Installing the Software

Generating the EtherSmart Kernel Extension Library

Creating Web Page and Image Resources with the Image Converter

Loading the Software onto the Controller

Using the EtherSmart Driver with C

Using the Driver Code with Forth

Appendix B: C Demo Program

Appendix C: C Remote Front Panel Demo Program

Appendix D: Forth Demo Program

Appendix E: Forth Remote Front Panel Demo Program

Appendix F: Browser Configuration

Using Opera Is Highly Recommended

Reconfiguring the Internet Explorer Browser

Firefox and Mozilla

Appendix G: Hardware Schematic (pdf)

The EtherSmart Wildcard User Guide

The EtherSmart Wildcard™ implements a hardware/software Ethernet interface that enables communications between your instrument and other computers or peripherals via a Local Area Network (LAN) using the standard packet-based Ethernet signaling protocol.  Simply plug an Ethernet cable into the Wildcard via the standard RJ-45 Ethernet connection.  Built-in software lets you send emails from the instrument, serve out static and dynamic web pages to your PC-based browser, and implement serial data exchanges with peripheral devices (this is known as "Serial Tunneling"). This tiny 2" by 2.5" board is a member of the Wildcard™ series that connects to Mosaic controllers.

This document describes the capabilities of the EtherSmart Wildcard, tells how to configure the hardware, presents a description of the driver software, describes a demonstration program, and includes hardware schematics.  A separate EtherSmart Glossary provides a detailed description of each device driver function


The EtherSmart Wildcard lets you put your instrument "online". Simply plug an Ethernet cable into the standard RJ-45 jack on the Wildcard and your instrument can communicate with other computers on a Local Area Network (LAN). Your application program can send emails to alert other computers on the network when significant events occur.  You can "browse into" your instrument using a web browser running on an online PC to monitor the status of your instrument.  The instrument can implement "Serial Tunneling" by initiating or accepting TCP/IP Ethernet connections and exchanging binary and/or ASCII text data with other Ethernet-enabled devices on the local network.

The EtherSmart Wildcard is based on the Lantronix XPort™ that combines a processor, flash and RAM memory, Ethernet network interface controller, and RJ45 jack into a single component.  The XPort can support one Ethernet connection at a time. A UART (Universal Asynchronous Receiver/Transmitter) chip on the EtherSmart board provides the interface between the parallel Wildcard bus and the XPort’s serial data lines.  Loss-less data integrity is ensured by the combination of built-in 64-byte data buffers in the UART plus hardware handshaking between the UART and the XPort.

The 3.3V supply that runs the XPort can be shut down under program control while the interface is not in use to conserve 1.25 Watts of power.

The 2"by 2.5" EtherSmart is a member of the Wildcard family that connects to Mosaic controllers. You can plug one or more EtherSmart Wildcards into any QCard, QScreen, QVGA Board, PDQ Board, PDQScreen, or Mosaic Handheld system to deliver the benefits of Ethernet connectivity to your application.

Internet Protocol Support

The EtherSmart Wildcard implements the following protocols to establish and manage communications:

  TCP/IP (Transmission Control Protocol/Internet Protocol) enables reliable data exchange between the XPort and a remote host with no lost data.  Simple data exchanges with other Ethernet-enabled devices use the basic TCP/IP protocol to establish a connection and transfer data. TCP/IP is the basis of data exchange protocols including Rlogin and Telnet which can be used to download code and interactively communicate with the operating system on Mosaic controllers via a simple Ethernet terminal such as Putty.  This capability is explained in the section titled “Code Downloads and Interactive Communications via Ethernet”.  TCP/IP is also the foundation of higher level services including HTTP and SMTP.

  HTTP (HyperText Transfer Protocol) is implemented to deliver a dynamic webserver under the control of your application program. This webserver is available at the standard TCP/IP port 80 used by web browsers.  You configure the webserver by defining and posting a "handler function" or each web address that is implemented.  When the browser requests the web address (known as a URL, or Uniform Resource Locator), the EtherSmart webserver automatically executes the handler which performs any required actions and transmits the web page to the browser.  As described in a later section, versatile functions make it easy to use HTML "forms" to request particular data or stimulate particular actions from the Mosaic controller.  An additional "configuration webserver" is built into the Lantronix XPort device for low-level configuration of the Lantronix firmware, and is available at TCP/IP port 8000.

  SMTP (Simple Mail Transfer Protocol) is implemented to enable the EtherSmart to send outgoing email to a mail server on the LAN.  The recipient, destination IP (Internet Protocol) address, subject and email contents can be dynamically controlled by the application program.  Outgoing emails can be used by your instrument to send alerts or status updates.

  ICMP (Internet Control Message Protocol) allows the EtherSmart Wildcard to send and return "ping" packets.  These can be useful for network diagnostics. This low-level protocol is implemented by the Lantronix XPort firmware.

  ARP (Address Resolution Protocol) establishes the correspondence between the 48-bit Ethernet Media Access Control (MAC) address which is visible on the XPort label, and the assignable 32-bit IP (Internet Protocol) address that identifies the parties on a network.  This low-level protocol is implemented by the Lantronix XPort firmware.

  DHCP (Dynamic Host Configuration Protocol) allows the gateway computer on a Local Area Network to automatically assign an IP address to the EtherSmart Wildcard as soon as it is plugged into the network. As described in a later section, an IP address can also be explicitly assigned using a web configuration screen, a telnet configuration session, or by calling an easy-to-use driver function from the application program. The low-level DHCP protocol is implemented by the Lantronix XPort firmware.

Summary of EtherSmart Capabilities

The following table summarizes the capabilities of the EtherSmart Wildcard.

Table 1‑1  Capabilities of the EtherSmart Wildcard.

EtherSmart Capabilities

Ethernet Port

Standard RJ45 jack hosts 10/100 Megabit Ethernet with auto-sensing speed detection


SMTP (outgoing email) , HTTP (webserver), TCP (serial tunneling), ICMP (ping), ARP, DHCP (automatic IP-address assignment)

Send Email

Delivers email with program-controlled content to specified LAN IP addresses

Exchange Data (Serial Tunneling)

Opens or accepts a TCP/IP connection to send and receive binary or ASCII data


Accepts connections from your web browser, serving out static or dynamic web pages including HTML text, data, and images as specified by your program

Pre-coded Drivers

Pre-coded software manages device configuration, opens connections, exchanges data, sends email, parses web URLs, and serves out web pages

| Next>>

Home|Site Map|Products|Manuals|Resources|Order|About Us
Copyright (c) 2006 Mosaic Industries, Inc.
Your source for single board computers, embedded controllers, and operator interfaces for instruments and automation