uCon HomePage

uCon: The Embedded System Console

uCon is a tool designed primarily for (but not limited to) embedded system firmware development. It provides typical terminal emulator capabilities; plus a terminal server, and most of the servers applicable to embedded systems development. The original motivation behind development of uCon was to provide multi-user remote access to a PC's serial port, and not eliminate the ability for the local user of the machine running uCon to also have access to that port. As a result, the intended configuration for uCon is to be running on a networked PC whose COM port is tied to the CLI (command line interface) port of some target system.

On the network side of the PC, uCon looks like a telnet server running on port 8200. At locations not local to the PC running uCon, users can access the target system's serial port by connecting a telnet client to the PC's IP address using port 8200. After the connection is established, each telnet client (up to 8) is virtually connected to the serial port command line interface of the target. Characters typed by each client are sent to the target's CLI. Similarly, characters generated by the target system are sent to all currently connected telnet clients. Note that these connections are in addition to the local terminal emulator connection on the PC running uCon; hence, both the user at the terminal emulator and the remote telnet clients have simultaneous access to the target.


At the local PC running this tool, uCon looks like a simple terminal emulation program. At a very minimum, uCon can be used this way. As such, it provides the user with the ability to run user and target interactive scripts, log interaction to a file, insert per-line timestamps and transfer data to and from the target using XMODEM and raw file transfer. Keeping in mind that uCon's origin was for working with embedded systems, it also has a SYSLOG server, DHCP/BOOTP server, TFTP client/server and FTP server for use by the target system (or by whatever else may need a server).


uCon [-d{filename} -D{VAR=VAL] [config_file_name]


-d {filename}

Enable debug mode (useful for uCon development), with specified log file for trace output.

-D {Varname=Value}

Define a shell variable to be established immediately at the startup of the uCon session.


uCon can be started up with one of three different back-ends, serial (PC's COM port), telnet (TCP/IP) or PuTTY Link (plink). Using one of the four radio-buttons (note that only one can be active at any given time), the user simply selects the type of backend, or uses a pre-existent configuration file.

The status bar on the main uCon window will display the status of the connection; whether comport, telnet, plink or just disconnected.

startup window

If the config_file_name argument is specified, and if it is a directory name, then the bottom portion of the opening dialog will list all configuration files that are located in that directory. This makes it convenient to startup one of several different configurations through the dialog.

Click here for a discussion on how to setup your desktop with convenient shortcuts that can include these options and/or arguments.