Moxa Technologies Moxa Smartio C168H User`s manual

Smartio C168H/HS User’s Manual
Universal 8 Port Serial Board
May 1999 (6th Edition)
The content of this manual is also available in CD-ROM and at Moxa Web Site.
Moxa Technologies Co., Ltd.
Tel:
+866-2-8665-6373
Fax:
+886-2-8665-6372
www.moxa.com
support@moxa.com.tw
Smartio C168H/HS User’s Manual
The software described in this manual is furnished under a license agreement and may be used only in
accordance with the terms of the agreements.
Copyright Notice
Copyright  1999 Moxa Technologies Co., Ltd.
All rights reserved.
Reproduction in any form without permission is prohibited.
Trademarks
MOXA is a registered trademark of Moxa Technologies Co., Ltd.
All other trademarks or registered marks in this manual belong to their respective manufacturers.
Disclaimer
Information in this document is subject to change without notice and does not represent a commitment on
the part of Moxa.
Moxa provides this document “as is”, without warranty of any kind, either expressed or implied,
including, but not limited to, the particular purpose. Moxa may make improvements and/or changes in
this manual or in the product(s) and/or the program(s) described in this manual at any time.
Information provided in this manual is intended to be accurate and reliable. However, Moxa
Technologies assumes no responsibility for its use, or for any infringements of rights of the fourth parties
which may result from its use.
This product could include technical or typographical errors. Changes are periodically made to the
information herein; these changes may be incorporated in new editions of the publication.
MOXA Internet Services
Customer’s satisfaction is always our number one concern. To ensure that customers get the full benefit
of our services, Moxa Internet Services have been built for technical support, product inquiry, new driver
update, user’s manual update, etc.
The followings are the services we provide.
E-mail for technical support
address:
support@moxa.com.tw
FTP site for free driver update
address:
ftp.moxa.com
or
ftp.moxa.com.tw
user ID:
ftp
password: your_email_address
World Wide Web (WWW) Site for product info
address:
www.moxa.com
or
www.moxa.com.tw
About This Manual
This manual is composed of six Chapters and one Appendix. This manual is written for installer, system
administrator and software programmer.
If you are a first-time installer and system administrator, we recommend you to go through the whole
manual except Chapter 4.
If you are a software programmer, you may refer to Chapter 4 “Serial Programming Tools”.
If you need cable wiring information, please see Chapter “Connection Option (Opt8x) and Cable
Wiring”.
If you encounter any problem during installation, please refer to Chapter “Troubleshooting”.
+ In this manual, C168 Series refers to C168H and C168HS.
Chapter 1 Introduction
Overview and features of the Smartio C168 Series boards, list of items and overall installation guide.
Chapter 2 Hardware Installation
Hardware installation for the Smartio C168 Series boards and connection option (Opt8x) is detailed.
Chapter 3 Software Installation
This Chapter details the software installation, configuration, driver loading/unloading, driver
upgrade and removal for various operating systems: Windows NT, Windows 95/98 , UNIX, DOS.
Chapter 4 Serial Programming Tools
This Chapter roughly describes the programming tools for various O.S. platforms, including PComm
under Windows NT, Windows 95/98, API-232 under DOS and standard UNIX system calls. Also
RS-485 programming issue is covered (for Opt8J).
Chapter 5 Connection Option (Opt8x) and Cable Wiring
This Chapter describes the RS-232/422/485 cable wiring for each connection option (Opt8x).
Chapter 6 Troubleshooting
This Chapter describes the problems and possible answers for Smartio C168 Series boards.
Appendix Technical Reference
Specification details, UART, I/O port address map, and DB62 pinouts are described.
Table of Contents
Introduction ..................................................................... 1-1
Overview................................................................................................................ 1-1
Features................................................................................................................. 1-4
Check List .............................................................................................................. 1-5
Installation Guide................................................................................................... 1-8
Hardware Installation ...................................................... 2-1
Default Settings ..................................................................................................... 2-1
Quick Hardware Installation ................................................................................... 2-2
How to Do Quick Hardware Installation................................ ................................ .......... 2-2
Hardware Installation with IO-IRQ Utility................................................................ 2-3
IO-IRQ Utility and Hardware Configuration................................ ................................ .... 2-4
Software Installation ....................................................... 3-1
Windows NT .......................................................................................................... 3-1
Installing Driver ................................ ................................ ................................ ............. 3-2
Configuring Board and Port ................................ ................................ ........................... 3-7
Updating Driver ................................ ................................ ................................ ............. 3-9
Removing Driver ................................ ................................ ................................ ........... 3-9
Windows 95/98 ...................................................................................................... 3-9
Installing Driver ................................ ................................ ................................ ........... 3-10
Configuring Board and Port ................................ ................................ ......................... 3-14
Updating Driver ................................ ................................ ................................ ........... 3-15
Removing Driver ................................ ................................ ................................ ......... 3-16
DOS ..................................................................................................................... 3-17
Installing Driver ................................ ................................ ................................ ........... 3-17
Driver Setup ................................ ................................ ................................ ................ 3-18
Loading Driver................................ ................................ ................................ ............. 3-22
Unloading Driver................................ ................................ ................................ .......... 3-23
UNIX .................................................................................................................... 3-23
Installing Driver ................................ ................................ ................................ ........... 3-24
MOXA TTY Device Naming Convention ................................ ................................ ...... 3-27
Baud Rate Settings................................ ................................ ................................ ...... 3-28
Administration Utility – moxaadm ................................ ................................ ................ 3-28
Setting MOXA Ports to Terminal................................ ................................ .................. 3-35
Serial Programming Tools ................................................ 4-1
Windows NT and Windows 95/98 .......................................................................... 4-1
Installation................................ ................................ ................................ ..................... 4-1
PComm Programming Library ................................ ................................ .......................... 4-2
Utilities ................................ ................................ ................................ .......................... 4-2
UNIX ...................................................................................................................... 4-6
Programming the MOXA Ports ................................ ................................ ...................... 4-6
Extended UNIX Ioctl() Commands ................................ ................................ ................. 4-6
Utilities ................................ ................................ ................................ ........................ 4-13
DOS ..................................................................................................................... 4-15
Installation................................ ................................ ................................ ................... 4-15
DOS API-232 Library................................ ................................ ................................ ... 4-15
Utilities ................................ ................................ ................................ ........................ 4-16
RS-485 Programming for Opt8J .......................................................................... 4-17
Connection Option (Opt8x) and Cable Wiring ........................ 5-1
RS-232 Cable Wiring for Opt8A/B/C/D/S ............................................................... 5-1
RS-422 Cable Wiring for Opt8J/F/Z....................................................................... 5-7
RS-485 Cable Wiring for Opt8J ........................................................................... 5-10
RS-422/485 Impedance Matching........................................................................ 5-11
Troubleshooting ............................................................... 6-1
General Troubleshooting ....................................................................................... 6-1
Windows NT .......................................................................................................... 6-4
Windows 95/98 ...................................................................................................... 6-5
DOS ....................................................................................................................... 6-6
UNIX ...................................................................................................................... 6-6
Technical Reference ........................................................ A-1
Specifications.........................................................................................................A-1
UART 16C550C .....................................................................................................A-2
PC I/O Port Address Map.......................................................................................A-3
DB62 Connector Pinouts .......................................................................................A-4
1
1
Introduction
Overview
Smartio - The Smart Multiport Async Solutions
The term Smartio stands for smart multiport serial I/O solution. The Smartio C168
Series multiport boards offer 8 serial ports for connecting terminals, modems,
printers, data acquisition equipment and any other serial devices to the PC/AT and
its compatible systems. With the well-designed and fine-tuned device driver, the
Smartio boards make full use of the 32 byte Tx/Rx FIFO and on-chip H/W flow
control, so that they can transfer data without data loss even at high speed such as
921.6 Kbps, which offers a reliable and high performance solution for serial
multiport communications.
The Smartio C168 Series is equipped with custom-designed ASIC chip which
replaces lots of conventional ICs and reduces the board to half-size. The whole
family supports 16 bit architecture. Full range of I/O addresses and IRQs are
available. In addition, with on-board EEPROM for storing the configuration data,
the family is designed without jumper or switch. These features make each port on
the board truly independent to any other port and thus compatible with most existing
multiport boards.
The Smartio C168 Series is also available in PCI bus. Please contact MOXA
dealer/distributor or MOXA Web site for more details.
Smartio C168H/HS User’s Manual
1-1
Hardware Configuration Method
JP1
Switch
ON
1 2 3 4
Jumper
.........
.........
Smartio Family
New : set I/O address
and IRQ via software
Utility.
Traditional
Multipoort Board
Traditional : set switch and
and jumper manually for
I/O address and IRQ.
Instead of using traditional jumper or switch for IRQ and I/O address settings,
hardware configuration of each port is easily set by DOS utility, Io-irq.exe, which
read and write the on-board EEPROM for configuration information through the
CAP (Configuration Access Port) address. The CAP address is the only channel
via which the configuration utility Io-irq.exe can access the board, which is identical
to the first port's base I/O address.
The only jumper, JP1, is designed in case that users forget the CAP address.
Normally JP1 is left open. When JP1 is short, the CAP address is forced to a fixed
I/O address, 0xA700. However, to adopt quick installation (described later), it is a
must to keep JP1 always short.
Quick Installation
To ease the hardware configuration, users who install only one Smartio C168
Series board under Windows NT/95/98 are recommended to adopt quick
installation described in Chapter 2.
Because the family is so flexible in hardware configuration that they are compatible
virtually with all kinds of other manufacturer's multiport boards using 16450 or
16550 UART.
1-2 Smartio C168H/HS User’s Manual
Introduction
Surge Protection
To prevent the boards from damage caused by lighting or high potential voltage,
surge protection technology is introduced in some model to protect the board.
Operating System Support
The family is operational under most popular operating systems such as Windows
NT, Windows 95/98, SCO UNIX/XENIX/OpenServer, DOS, Linux, QNX,
FreeBSD, UNIX SVR4.2, However, MOXA device drivers for Windows NT,
Windows 95/98, Linux, SCO UNIX/OpenServer, UNIX SVR4.2 and DOS are
provided for easier installation, configuration and better performance. In this
manual, chapters for MOXA Windows NT, Windows 95/98, UNIX and DOS
device drivers are included. For other compatible systems not mentioned, please
refer to the respective operating system’s manual for how to install and configure
the standard driver.
MOXA Serial Comm Tools
For easy application development, MOXA provides an easy-use serial
communication library under Windows NT/95/98 (PComm) and DOS (API-232).
Users can use this library to develop your own applications using Microsoft C,
Turbo C, Assembly, QuickBASIC, Turbo Pascal, Clipper, Visual Basic, Visual C++,
Borland Delphi, etc. Utilities, such as diagnostic and monitor, are included for
diagnosing the board/port or monitoring the communication status.
Wide Applications
The Smartio C168 Series are suitable for many applications. Here are a few:
l Internet/Intranet Connection
l Remote Access Application
l Multi-user Application
l Industrial Automation
l Office Automation
l Telecommunication
l PC-based (vending) Machine or Kiosk System
l Point-of-Sale (POS) System
Smartio C168H/HS User’s Manual
1-3
Features
The Smartio C168 Series consist of members as follows,
C168H
C168HS
v
v
v
v
v
v
v
v
v
v
8 port RS-232 or RS-422, high speed 16550C or compatible UART
8 port RS-232 or RS-422, surge protection, 16550C or compatible
UART
Custom-designed ASIC, compact board size (half-size)
No switch no jumper, easily configured by software
Independent I/O address, IRQ setting for each of 8 serial ports
16 bit AT bus architecture, more IRQs supported
Surge protection for RS-232 (C168HS)
Isolation protection for RS-422 (optional connection box Opt8F)
High speed 16550C Communication Controller with on-chip hardware flow
control, no data loss
PComm serial communication tool
Support popular OS¡Ð
Windows NT, Windows 95/98, SCO UNIX/OpenServer,
UNIX SVR4.2, DOS, Linux
Compatible with many other OS¡Ð
QNX, SCO XENIX, Free BSD
C168H/HS
Windows NT
Windows 95/98
DOS
SCO UNIX/OpenServer
UNIX SVR4.2
Linux
QNX
SCO XENIX
FreeBSD
3
3
3
3
3
R
C
C
C
3: Driver supported by Moxa and shipped with product
R : Driver supported by Moxa but sent by request
C : Driver supported by OS
Note: MOXA FTP site is available for driver download
1-4 Smartio C168H/HS User’s Manual
Introduction
Check List
Upon unpacking the Smartio C168 Series package, you should find the following
items in the package,
v
Smartio C168 Series 8-port high performance async board
Device driver diskettes:
l
Windows NT and Windows 95/98¡Ñ
1
l
DOS¡Ñ
1
l
UNIX¡Ñ
1
C168H/HS User's Manual (This Manual)
v
PComm Lite diskette¡Ñ
1
v
v
You need also one of the following connection options:
Opt8A/Opt8B/Opt8S
v
v
RS-232 connection box with 8 DB25 female/male/female ports, respectively
(surge protection for Opt8S).
1.5 meter DB62 to DB62 cable.
Smartio
C168 Series
Rx
Tx
1
2
3
4
5
6
7
8
Opt8A/Opt8B/Opt8S
Smartio C168H/HS User’s Manual
1-5
Opt8C/Opt8D
v
RS-232 octopus cable with 8 port male connectors, DB25 for Opt8C and DB9
for Opt8D (1 meter long).
P1P2 P3 P4
Smartio C168 Series
P5 P6 P7 P8
Opt8C/Opt8D
Opt8F/Opt8Z
v
v
v
RS-422 connection box with 8 port female DB25 connectors (isolation
protection for Opt8F).
1.5 meter DB62 to DB62 cable.
110V or 220V adapter.
Smartio C168 Series
Rx Tx
1
2
3
4
5
6
7
8
Opt8F/Opt8Z
1-6 Smartio C168H/HS User’s Manual
Introduction
Opt8J
v
v
v
RS-422/485 connection box with 8 port female DB25 connectors.
1.5 meter DB62 to DB62 cable.
110V or 220V adapter.
Smartio C168 Series
Rx
Tx
1
2
3
4
5
6
7
8
Opt8J
Opt8J is the RS-422/485 connection box with 8 port female DB25 connectors for
MOXA 8 port boards, including the Smartio C168 Series. There are 8-DIP switches
on the side of the Opt8J. Each switch controls the communication mode (RS-422 or
RS-485) of each port, respectively.
1 2 34 5 6 78
DIP
ON
RS-422/485 Port Switch of Opt8J
1
DIP
2 3
4
5 6
7 8
ON
RS-422 Mode
Set the respective switch to OFF position to use RS-422 interface. This means the
port is always ready to transmit and receive data simultaneously (full-duplex).
Smartio C168H/HS User’s Manual
1-7
RS-485 Mode
The Opt8J supports only 2-wire RS-485 communication. Set the respective switch to
ON position to use RS-485 interface. This means the port can transmit data only
when RTS is asserted, and receive data only when RTS is not asserted (half-duplex).
Refer to Chapter “Connection Option (Opt8x) and Cable Wiring” for RS-422/RS485 cable wiring. And also to Chapter “Serial Programming Tools” for Opt8J RS485 programming details.
Installation Guide
This section gives a brief summary of how to install the Smartio C168 Series under
each supported operating system. The installation is simple and involves the
following stages:
Configure Smartio C168 Series with
io-irq.exe.
Install the Smartio C168 Series board
See Chapter “Hardware
Installation”
Install the software from the diskette
Configure the driver for the board and ports
See Chapter “Software
Installation” for respective OS
Connect the devices with the cable
See Chapter “Connection
Cable and Cable Wiring”
Restart the system
Check the driver initialization status
If the system restart successfully, you may
develop your applications or
execute the desired applications
See Chapter “Software
Installation”
1-8 Smartio C168H/HS User’s Manual
See Chapter “Serial
Programming Tools”
2
2
Hardware Installation
The installation of the Smartio C168 Series consists of hardware and software
installation. The hardware installation is detailed in this chapter. The next chapter
deals with the software installation for various operating systems.
JP1
Smartio C168 Series
Default Settings
The Smartio C168 Series has the following default (factory) settings:
I/O address:
0x180 (Port 1), 0x188 (Port 2), 0x190 (Port 3), 0x198 (Port 4)
0x1A0 (Port 5), 0x1A8 (Port 6), 0x1B0 (Port 7), 0x1B8 (Port 8)
IRQ:
10
INT Vector:
0x1C0
CAP Jumper JP1: Open
Note ! If the default settings above are what you desire and good for the
system without conflicts, you may simply install the board in the
system and go directly to the next chapter, “Software Installation”.
Otherwise, follow the instructions below.
Smartio C168H/HS User’s Manual
2-1
Now you should do either the normal hardware installation (detailed in the later
section, “Hardware Installation with IO-IRQ Utility”) or the quick hardware
installation (detailed right in the next section, “Quick Hardware Installation”). The
latter is provided to facilitate the hardware installation, only under the
circumstances that:
u
u
u
Only one Smartio C168 Series board is allowed to install in a system.
Windows NT and 95/98 are the only operating systems supported.
I/O address 0xA700 must be free
Quick Hardware Installation
To fully utilize the superior feature of flexible hardware configuration design of the
Smartio C168 Series, a quick and easy method of installation is designed for users,
which absolutely free the users from hardware configuration effort, i.e., installation
without running configuration program: Io-irq.exe. Simply always short the
jumper JP1. The software and hardware configuration will be completed at the same
time while doing the software configuration.
Besides, the speed range will be set to from 50 to 921.6K bps by default, which is
called High Speed Spectrum and detailed in the section, “Hardware Installation
with IO-IRQ Utility”.
How to Do Quick Hardware Installation
Users who install only one Smartio C168 Series board under Windows NT/95/98
are strongly recommended to do the quick installation as follows:
1. Short the jumper JP1 on the upper-left corner of the board.
2. Plug the board in PC with the desired system installed, which is powered off in
advance.
3. Process software installation, detailed in the next chapter.
This is to specify the desired I/O address, IRQ and INT Vector in the software
configuration panel, no matter what hardware settings are on the board. The
2-2 Smartio C168H/HS User’s Manual
Hardware Installation
software configuration program will automatically update the hardware settings.
After this, users already complete the whole installation.
4. Shutdown System (Windows NT/95/98).
5. DO power OFF and then ON (or Reset) the PC. (Please cold start.)
6. Restart System (Windows NT/95/98).
It is very important to keep the JP1 always short in this case. Without running the
hardware configuration program, Io-irq.exe under DOS prompt, the software
configuration program will automatically update the hardware settings of the board
while updating the software settings. This saves the trouble doing hardware
configuration. However, remember to cold start the system every time the
configuration changed.
Hardware Installation with IO-IRQ Utility
This section is for those who can not use quick hardware installation:
u
u
u
Install two or more Smartio C168 Series boards in a system.
Fail to install, due to the I/O address 0xA700 is not available or has conflict in
the system.
Use operating systems other than Windows NT and 95/98.
Before proceeding the software installation, detailed in the next chapter, “Software
Installation”, do hardware configuration to setup the I/O address and IRQ with
“Io-irq.exe”, detailed in the next section.
Remember to keep the hardware settings in mind for the software installation.
The Smartio C168 Series has the following default (factory) settings:
I/O address : 0x180 (Port 1), 0x188 (Port 2), 0x190 (Port 3), 0x198 (Port 4)
0x1A0 (Port 5), 0x1A8 (Port 6), 0x1B0 (Port 7), 0x1B8 (Port 8)
IRQ :
10
INT Vector : 0x1C0
Smartio C168H/HS User’s Manual
2-3
Because the ASIC-designed Smartio C168 Series has no switch and no jumper for
configuring manually the I/O address, IRQ, INT vector, etc. of the boards, you must
run the software utility, Io-irq.exe, in the driver diskette under DOS system to
change the hardware configuration.
1. Choose a PC that has DOS system inside.
2. Power off the PC.
3. Make sure no hardware conflict and plug the board in a free 16-bit slot of the PC,
one board at a time with JP1 open.
+
If you are installing multiple boards, insert one board at a time and
configure it using the Io-irq program before inserting the next board.
This is to prevent conflict between two boards with same default
hardware settings.
The Smartio C168 Series has the following default (factory) settings,
I/O address: 0x180 (Port 1), 0x188 (Port 2), 0x190 (Port 3), 0x198 (Port4)
0x1A0 (Port 5), 0x1A8 (Port 6), 0x1B0 (Port 7), 0x1B8 (Port 8)
IRQ:
10
INT Vector: 0x1C0
Configuration Access Port (CAP): 0x180
4. Power on the PC and enter into DOS system.
5. Run the utility “Io-irq.exe” contained in the driver diskette to set up I/O address,
IRQ and INT vector of the board. Please refer to the next section, “IO-IRQ
Utility and Hardware Configuration” for more details. Or follow the on-line help
to configure the Smartio C168 Series board.
After completing the hardware configuration, the board is ready for use under
operating systems, such as Windows NT and 95/98, DOS, UNIX etc.
IO-IRQ Utility and Hardware Configuration
Note that the CAP address, e.g. 0x180, is identical to the first port's I/O address
except in one case that the JP1 jumper is installed before powering on the PC. In
this case, the CAP address will be forced to 0xA700. The CAP address must be
2-4 Smartio C168H/HS User’s Manual
Hardware Installation
typed correctly. With the correct CAP address, the utility can find the configuration
stored in the on-board EEPROM and display it on the configuration panel. The
CAP address is the only channel via which the configuration utility Io-irq.exe can
access the board.
1. Run the utility “Io-irq.exe” contained in the driver diskette to set up I/O address,
IRQ and INT vector of the board.
2. Select “Smartio/Industio ISA Family” and press ENTER key.
Smartio C168H/HS User’s Manual
2-5
3. Enter the CAP address of the Smartio C168 Series board to be configured.
4. Configure the following parameters as necessary.
Port Index
Indicate the port index for each port.
I/O address
Enter the base I/O address for each port, either sequentially or
not. Avoid to conflicting with any other devices.
IRQ
Enter the IRQ, 2, 3, 4, 5, 7, 10, 11, 12 or 15, for each port,
independently or not.
Speed
This field specifies the use of normal or high speed capability.
Normal speed ranges from 50 bps to 115.2 Kbps. High speed
ranges from 50 bps to 921.6 Kbps. Smartio C168 Series
support both normal and high speed spectra.
2-6 Smartio C168H/HS User’s Manual
Hardware Installation
Note that, currently, port that uses MOXA Windows NT and
95/98 driver will run at the displayed speed. To be clear, when
Smartio C168 Series board is configured as High Speed
Spectrum, any port driven by the Moxa-provided Windows
NT and 95/98 driver will display the exact working speed. For
example, the displayed speed 38.4 Kbps is equal to the working
speed 38.4 Kbps.
However, if the port is driven by NON Moxa-provided driver,
such as standard serial driver, or Moxa drivers other than
Windows NT and 95/98, such as DOS, the real working speed
is equal to 8 times of the displayed speed. For example, a port,
if set to Normal Speed Spectrum with 38.4 Kbps, will work at
38.4 Kbps for sure; while a port, if set to High Speed Spectrum
with displayed speed 38.4 Kbps, will actually work at 307.2
Kbps (38.4 Kbps¡Ñ
8).
The following is the 8 times speed mapping list for quick
reference purpose, particularly for DOS driver.
Smartio C168H/HS User’s Manual
2-7
Normal Speed Spectrum
50 (bps)
75
110
134.5
150
300
600
1200
1800
2400
4800
7200
9600
19.2K
38.4K
57.6K
115.2K
INT Vector
High Speed Spectrum
400 (bps)
600
880
1076
1200
2400
4800
9600
14.4K
19.2K
38.4K
57.6K
76.8K
153.6K
307.2K
460.8K
921.6K
Enter the interrupt vector I/O address for all ports. I/O address
for interrupt vector is from 00000H to 0FFFFH. Interrupt
vector is one byte of I/O address, in which each bit is used to
indicate the occurrence of interrupt for corresponding port. To
use interrupt vector, type in the hardware Interrupt vector I/O
address. If not using interrupt vector, type 0 or leave blank as
the interrupt vector.
There are two modes for the Smartio C168 Series driver. One
is using interrupt vector, the other is not using interrupt vector.
Driver employing interrupt vector scheme is supposed to have
better performance than employing polling scheme.
5. Press F10 to save the configuration and exit the utility.
2-8 Smartio C168H/HS User’s Manual
3
3
Software Installation
In this chapter, the software driver installation, configuration and driver
update/removal procedures are described for various operating systems, including
Windows NT, Windows 95/98, UNIX and DOS Before proceeding with the software
installation, complete the hardware installation, detailed in previous chapter,
“Hardware Installation”.
If it is necessary for you to develop your own applications, please also refer to the
next chapter, “Serial Programming Tools”, for programming issues.
Windows NT
Windows NT supports up to 256 serial ports, from COM1 to COM256. To fully
integrate the advanced features of Windows NT, multi-process and multi-thread,
pure 32-bit Windows NT device drivers are developed for the Smartio C168 Series
multiport boards. The driver conforms to Win32 COMM API standard.
l
To install the driver for the first time, please go directly to the next section,
“Installing Driver”.
l
If you already have installed the driver and want to re-configure the board and
port, add more boards or delete boards, please refer to the section, “Configuring
Board and Port”.
l
To update or remove the driver, please go to the section, “Updating Driver” or
“Removing Driver”.
Smartio C168H/HS User’s Manual
3-1
Installing Driver
Following is the procedure for installing the Smartio C168 Series driver for the
first time under Windows NT 4.0.
Note !
Make sure the board(s) has(have) already been plugged in the system
slot(s) if you are doing quick installation.
1. Please log in NT as Administrator.
2. Open the [Control Panel], click on the [Network] icon and select the
[Adapters] tab.
3. Click on the [Add] button, then the [Have Disk...] button in “Select Network
Adapter”.
4. Specify the exact path of the driver diskette, A:\WINDOWS.NT. Then click
[OK].
3-2 Smartio C168H/HS User’s Manual
Software Installation
5. Select “MOXA Smartio/Industio Family multiport board” in the “Select
OEM Option” dialog box, and then click [OK] to enter the “Moxa
Smartio/Industio Configuration Panel” dialog box to start the installation.
6. In the “Moxa Smartio/Industio Configuration Panel” dialog box, click [Add]
to enter “Property” dialog box to add the Smartio C168 Series board. Select the
“C168 Series” in the “Board Type” field. If necessary, type the desired interrupt
vector address, in the “INT Vector” field. Select the desired interrupt number in
the “Interrupt No.” field. Type the desired base I/O address, in the “Base I/O
Port Address” field. All the settings should match settings that are physically set
on the board and conflict with no other devices.
Smartio C168H/HS User’s Manual
3-3
Note ! You may go directly to the step 8 if you need not change any setting.
7. In the “Property” dialog box, select the desired port in the port list and click
[Port Setting] to enter the individual “Port #” setting dialog box to change the
port COM number mappings or FIFO settings.
3-4 Smartio C168H/HS User’s Manual
Software Installation
l
Port Number
You have to set up all the ports of the board with the desired “COM
number”, which should not conflict with other COM number in use. In
this “Individual Port Setting” dialog box, you may have two ways to map
the physical ports to COM numbers depending on the check box “Auto
Enumerating COM number”.
If “Auto Enumerating COM Number” is checked and specify the COM
number of the first port, subsequent ports are mapped to continuous
COM numbers. For instance, if first port is mapped to COM3, then
second port is mapped to COM4 sequentially.
If “Auto Enumerating COM Number” is not checked, specify the COM
number for individual port. For instance, the second port can be out of
sequence, say COM10, while the first port is mapped to COM3.
l
Rx FIFO Trigger
Rx FIFO trigger levels, at 1, 4, 8 or 14 bytes, are available, and the
default value is 14 bytes.
l
Tx FIFO Size
Tx FIFO sizes from 1 to 16 bytes are available, and the default value is
16 bytes.
8. Click [OK] in the “Port #” and the “Property” dialog boxes to go back to the
“Moxa Smartio/Industio Configuration Panel” dialog box.
Note !
If you need to install more than one board, click [Add] and repeat
steps 6 to 8 to configure another board. Up to four Smartio C168
Series boards can be installed in a system.
Click [OK] to finish the configuration.
Smartio C168H/HS User’s Manual
3-5
9. When configuration is done, click on [OK] button in the “Network Settings”
dialog box.
10. Restart Windows NT system. The latest configuration will not take effect unless
the system restarts.
Note !
The latest configuration will not take effect unless the system
restarts.
11. Once the system restarts, you may check the event log issued by the MOXA
driver to see if the ports of the board are initialized successfully.
l
Enter the [Administrative] group, click on the [Event Viewer] icon and
select [System Event Log] to check a message similar to “MOXA
Smartio C168 Series, with first serial port COM3, has been enabled”
for each configured board.
l
If an error message similar to “Cannot find any configured MOXA
Smartio C168 Series board!” appears, refer to the “Troubleshooting”
chapter for solutions.
3-6 Smartio C168H/HS User’s Manual
Software Installation
Note !
Once the board and the driver are installed and the driver restarts
successfully, you can start to develop applications with the PComm
library (See “Serial Programming Tools” chapter) or the Microsoft
Win32 API. You can also execute any ready-made applications, such
as PComm utility Terminal emulator (See “Serial Programming Tools”
chapter) or HyperTerminal to transmit/receive data, as well as Remote
Access Service to provide dial-up networking capabilities.
Configuring Board and Port
If you already have installed the driver and want to re-configure the ports, please
follow this procedure.
1. In the [Control Panel], click on the [Network] icon and select the [Adapters] tab.
2. Select “MOXA Smartio/Industio Family Adapter” in “Network Adapters”.
Smartio C168H/HS User’s Manual
3-7
3. Click on the [Property] button to open the “Moxa Smartio/Industio
Configuration Panel” dialog box. Please see steps 6-10 in the previous section,
“Installing Driver”, for more details.
In this configuration panel, you may:
l
Click [Property] to enter “Property” dialog box to configure the selected
board with the correct “COM Number”, “INT Vector”, “Interrupt no” and
“Base I/O Port Address”. Please see steps 6 to 8 in the previous section,
“Installing Driver”, for more details, except that the “Board Type” field is
not supposed to be changed.
l
Click [Add] to add one more board that is not yet configured in the system.
Please see steps 6 to 8 in the previous section, “Installing Driver”, for more
details.
l
Click [Remove] to remove the board currently selected from the configured
board list.
l
Click [OK] to confirm the configuration changes you made.
l
Click [Cancel] to leave the dialog with the configuration unchanged.
3-8 Smartio C168H/HS User’s Manual
Software Installation
Updating Driver
To update the driver for the Smartio C168 Series boards, simply remove the driver,
as described in the next section, and reinstall it as detailed in section, “Installing
Driver”.
Removing Driver
To remove the driver for the Smartio C168 Series boards,
1. Open the [Control Panel], click on the [Network] icon, and select the
[Adapters] tab.
2. Select “MOXA Smartio/Industio Family Adapter” in the adapter list, then
click on the [Remove] button and the [OK] button to remove the driver.
3. Restart the system to activate the new configuration.
Windows 95/98
Windows 95/98 supports up to 128 serial ports, from COM1 to COM128. To fully
integrate the advanced features of Windows 95/98, multi-process and multi-thread,
pure 32-bit Windows 95/98 virtual device port drivers (VxD) compliant with
communication drivers (VCOMM) are developed for the Smartio C168 Series and
other MOXA multiport boards. The drivers conform to the Win32 COMM API
standard.
l
To install the driver for the first time driver, please go directly to the section,
“Installing Driver”.
l
If you already have installed the driver and want to re-configure the board and
port, add more boards or delete boards, please refer to the section, “Configuring
Board and Port”.
l
To update or remove driver, please go to the sections, “Updating Driver” and
“Removing Driver”.
Smartio C168H/HS User’s Manual
3-9
Installing Driver
Up to four Smartio C168 Series boards can be installed together as long as the I/O
addresses and IRQ number resources are sufficient and available in a system.
The following is the procedure for installing Smartio C168 Series for the first time
under Windows 95/98:
1. Run Setup95.exe in the driver diskette.
2. Click on [Next>] button in the “Welcome ...” message dialog box. And then
click on [Next>] button in the “Ready ...” message dialog.
3. Click on [Finish] button in the “Complete ...” message dialog to enter the
configuration panel.
4. The “Moxa Smartio/Industio Configuration Panel” dialog will pop up for you
to configure the boards and ports.
5. In the “Moxa Smartio/Industio Configuration Panel” dialog box, click [Add]
to enter “Property” dialog box to add the Smartio C168 Series board. Select the
“C168 Series” in the “Board Type” field. If necessary, type the desired interrupt
vector address, in the “INT Vector” field. Select the desired interrupt number in
the “Interrupt No.” field. Type the desired base I/O address, in the “Base I/O
Port Address” field. All the settings should match settings that are physically set
on the board and conflict with no other devices.
3-10 Smartio C168H/HS User’s Manual
Software Installation
Note !
6.
Go directly to the step 7 if you need not change any setting.
In the “Property” dialog box, select the desired port in the port list and
click [Port Setting] to enter the individual “Port #” setting dialog box to
change the port COM number mappings or FIFO settings.
Smartio C168H/HS User’s Manual
3-11
l
Port Number
You have to set up all the ports of the board with the desired “COM
number”, which should not conflict with other COM number in use. In
this “Individual Port Setting” dialog box, you may have two ways to map
the physical ports to COM numbers depending on the check box “Auto
Enumerating COM number”.
If “Auto Enumerating COM Number” is checked and specify the COM
number of the first port, subsequent ports are mapped to continuous
COM numbers. For instance, if first port is mapped to COM3, then
second port is mapped to COM4 sequentially.
If “Auto Enumerating COM Number” is not checked, specify the COM
number for individual port. For instance, the second port can be out of
sequence, say COM10, while the first port is mapped to COM3.
l
Rx FIFO Trigger
Rx FIFO trigger levels, at 1, 4, 8 or 14 bytes, are available, and the
default value is 14 bytes.
l
Tx FIFO Size
Tx FIFO sizes from 1 to 16 bytes are available, and the default value is
16 bytes.
7. Click [OK] in the “Port #” and the “Property” dialog boxes to go back to the
“Moxa Smartio/Industio Configuration Panel” dialog box.
Note !
If you need to install more than one board, click [Add] and repeat
steps 5 to 7 to configure another board. Up to four Smartio C168
Series boards can be installed in a system.
Click [OK] to finish the configuration.
3-12 Smartio C168H/HS User’s Manual
Software Installation
8. Restart Windows 95/98 system.
Note !
The latest configuration will not take effect unless the system
restarts.
9. When system restarts, all the error conditions of the board will be popped up
onto the screen if any. Otherwise, everything should be fine.
If error message like “Smartio C168 Series (CAP=0x0180, port 1=COM3):
Board is not found” appears, refer to chapter, “Troubleshooting”, for solutions.
Note !
Once the board and the driver are installed and the driver restarts
successfully, you can start to develop applications with the PComm
library (See “Serial Programming Tools” chapter) or the Microsoft
Win32 API. You can also execute any ready-made applications,
such as PComm utility Terminal emulator (See “Serial
Programming
Tools”
chapter)
or
HyperTerminal
to
transmit/receive data, as well as Remote Access Service to provide
dial-up networking capabilities.
Smartio C168H/HS User’s Manual
3-13
Configuring Board and Port
If you already have installed the driver and want to re-configure the Smartio C168
Series board and ports, add more boards or delete boards under Windows 95/98, the
following is the procedure for you.
1. Click on the Taskbar [Start] button, then select [Programs] menu, then
[MOXA Utilities] menu and then [Moxa Smartio/Industio Configuration
Panel] icon.
2. The Smartio/Industio configuration panel will be popped up. Please see steps 57 in the previous Section “Installing Driver” for more details.
In this configuration panel, you may:
l
l
l
l
l
Click [Property] to enter “Property” dialog box to configure the selected
board with the correct “COM Number”, “INT Vector”, “Interrupt no” and
“Base I/O Port Address”. Please see steps 5 to 7 in the previous section,
“Installing Driver”, for more details, except that the “Board Type” field is
not supposed to be changed.
Click [Add] to add one more board that is not yet configured in the system.
Please see steps 5 to 7 in the previous section, “Installing Driver”, for more
details.
Click [Remove] to remove the board currently selected from the configured
board list.
Click [OK] to confirm the configuration changes you made.
Click [Cancel] to leave the dialog with the configuration unchanged.
3-14 Smartio C168H/HS User’s Manual
Software Installation
Updating Driver
Open [Control Panel] icon, and then [System] icon, and then select [Device
Manager] tab. Then select and open the “MOXA Smartio/Industio Multiport
Board” option and then select the “C168 Series”. Click on [Properties] button and
then select [Driver] tab and then click on [Update Driver] button.
Smartio C168H/HS User’s Manual
3-15
Removing Driver
Open [Control Panel] icon, and then [Add/Remove Programs] icon, and then
select [Install/Uninstall] tab. Then select and open the “MOXA Smartio/Industio
Driver” option and then enter [OK] to remove the driver.
3-16 Smartio C168H/HS User’s Manual
Software Installation
DOS
MOXA DOS API-232 is a software package that assists users to develop and/or
debug programs for serial communications. This section will show you how to
install the package, how to setup up the driver, and how to load or unload driver.
For details of the serial programming (API-232 Library) and utilities, please refer to
the next chapter, “Serial Programming Tools”.
Installing Driver
Run the installation program, DOSINST.EXE, in the DOS driver diskette. Specify
the target API-232 directory (e.g. C:\MOXA) where software driver will be copied.
Press F2 to start the installation.
Smartio C168H/HS User’s Manual
3-17
After installation is complete, you will be prompted to proceed running setup
program. It is strongly recommended to do so.
Driver Setup
The following are steps for setting up the Smartio C168 Series driver. Note that it is
not intended to illustrate all the convenient functions of the setup programs when
configuring the boards. Please refer to the F1 on-line help instructions as running
setup program.
1. Run the setup program, BIN\SETUP.EXE, in the API-232 directory. Select
“Smartio/Industio ISA Family” in the “Driver Selection” dialog box.
3-18 Smartio C168H/HS User’s Manual
Software Installation
2. Press Enter to pop up the SETUP dialog box. In the SETUP dialog box, Press
F8 to specify the CAP Address and press ENTER and then type Y (YES) to
load the configuration of the board to be setup.
Smartio C168H/HS User’s Manual
3-19
3. Now the configuration of the desired Smartio C168 Series board will be shown
along with other default settings, such as port number, buffer size, etc.
Note !
Up to now you have completed the setup for Smartio C168 Series
board. You may skip this step and go directly to the next step 5 if
you need not change any setting or configure any board.
3-20 Smartio C168H/HS User’s Manual
Software Installation
You may now enter/modify each port’s configuration. These displayed values
are the port initial values as driver is loaded.
Legend:
Port number:
Some noticeable fields and functions are explained below.
This is actually the port ID of each port. The application
software will refer to the port by its port number (ID).
Duplicated port number is not allowed. That is, each
MOXA serial port is referred to as port number in terms
of serial programming.
You may map the port number range to the one you prefer
between 0 and 255 as long as no port number overlapping
condition or port number undefined condition occurs.
Generally, you should take the convenience of
programming into consideration when specifying the port
numbers for the board.
TxD buf size:
The transmission (output) buffer allocated in the system
for each port.
RxD buf size:
The receiving (input) buffer allocated in the system for
each port.
F5: Group Edit: This is a convenient function that helps you edit the
configuration of several ports at one time as a group.
Smartio C168H/HS User’s Manual
3-21
F6: INT vector:
This is to set interrupt vector for each port. You can set
this feature to “Yes” (default) and gain best performance
for the board.
4. Press F10 to save the latest configuration and exit the SETUP program.
Loading Driver
Having completed the setup, you can load the driver, “BIN\SER-DRV.EXE”, at
the DOS prompt. The driver will detect the Smartio C168 Series board
automatically. If the board(s) is(are) detected, a message similar to below will show:
API-232 Version 3.5
Universal 2/4/8 serial ports Communication Driver
Setup driver …
Device driver setup O.K.
It means the Smartio C168 Series driver is installed properly. At this point, you are
ready to execute application that supports API-232 functions, or start developing
applications using API-232 library.
3-22 Smartio C168H/HS User’s Manual
Software Installation
If something went wrong, for instance, the board does not match the configuration
or the board is missing, the screen will show a message like:
API-232 Version 3.5
Universal 2/4/8 serial ports Communication Driver
Setup driver …
None serial port found!!
It means the Smartio C168 Series driver is not installed properly. Please refer to
chapter, “Troubleshooting”, for possible reasons and solutions.
Unloading Driver
To unload (release) the Smartio C168 Series driver from memory, type “SERDRV/Q” at the DOS prompt
UNIX
There are various UNIX operating systems, such as SCO UNIX, UNIX SVR4.2,
XENIX and Solaris, etc. Different types of UNIX drivers are required for different
UNIX. Moxa supports device drivers currently for SCO UNIX/OpenServer and
UNIX SVR4.2 .
In this section, driver installation procedure is described. Administration utility,
moxaadm, is explained, which is for configuration, monitor and terminal emulation.
Related issues such as device naming, baud rate settings and terminal enable are
stated.
If you are interested in UNIX serial programming, extended Ioctl() commands are
provided in Chapter “Serial Programming Tools” for advanced programming.
UNIX-specific troubleshooting is included in Chapter “Troubleshooting”.
Smartio C168H/HS User’s Manual
3-23
Installing Driver
The following description is for Smartio C168 Series under SCO UNIX/OpenServer
and UNIX SVR4.2.
Step 1.
Login the UNIX system as a super user (root).
Step 2.
Change to root directory.
# cd
Step 3.
/
Insert the UNIX driver diskette into the floppy drive A: (or B:).
If driver files are obtained from MOXA FTP service, put them under
/tmp/moxa directory and skip the following 'tar' command.
Step 4.
Extract the files by,
# tar xvf /dev/fd0135ds18
Step 5.
/tmp/moxa/mxinstall (if A: floppy drive)
Start the installation program,
# /tmp/moxa/mxinstall
Now follow the prompted instructions to finish the driver installation.
Choose the listed and desired operation system when asked. Currently,
MOXA supports SCO UNIX (and SCO OpenServer, SCO Open Desktop)
and UNIX SVR4.2 (and UnixWare). Ask your dealer for newly supported
device drivers. If your system is none of the listed, choose the closest one
to try.
Copyright (C) 199x Moxa Technologies Co., Ltd. All Rights Reserved.
MOXA UNIX Device Driver Installation
3-24 Smartio C168H/HS User’s Manual
Ver. x.x
Software Installation
Please select one of the following OSs:
1. SCO UNIX
2. UNIX SVR4.2
Select :
Please select one of the devices where the driver diskette/files put:
1. /dev/fd0135ds18
(A: 1.44MB )
2. /dev/fd096ds15
(A: 1.2 MB )
3. /dev/fd1135ds18
(B: 1.44MB )
4. /dev/fd196ds15
(B: 1.2 MB )
5. Hard Disk
/tmp/moxa
Select :
Then the MOXA Multiport Board Installation Utility will show for
board installation.
Choose C168 Series driver and follow the instructions to install.
Step 6.
Configure the board by,
# moxaadm
The moxaadm utility is used to tell the UNIX driver how many Smatio
C168 Series boards are installed, what their basic setting (I/O or IRQ), etc.
It is also used to remove the Smartio C168 Series UNIX driver from the
system. Whenever the setting is changed, run this utility again and tell the
UNIX driver what is changed. Refer to section “Administration Utilitymoxaadm” for more information.
This utility is not intended to change the Smartio C168 Series
“hardware” I/O address nor IRQ setting. If you need to change the
Smartio C168 Series hardware IRQ, for example, you need to execute
IO-IRQ utility under DOS environment. The IO-IRQ utility is contained
in the Dos/Windows3.x driver diskette.
Only up to two Smartio C168 Series boards are allowed to be installed
under UNIX systems when MOXA UNIX driver is used.
Smartio C168H/HS User’s Manual
3-25
Step 7.
Now you may shutdown the system and reboot. If you have trouble in
booting the new UNIX kernel, use the backup kernel (/unix.moxa or
/stand/unix.moxa) to boot your system and the system will work as before.
Refer to Chapter “Troubleshooting” for more information.
After the system starts up again, the following successful messages will
show:
For SCO UNIX/OpenServer,
“C168
0x0180-0x01BF 11
Ver = x.x type=C168H (high speed)”
For UNIX SVR4.2,
“C168H board, base address 0x180, irq 5, Ver. x.x (high speed)”
where high speed indicates the port is in high speed status; otherwise, in
normal speed status.
If the following error message appears:
For SCO UNIX/OpenServer,
“WARNING! C168 board IRQ at 11 mismatch (base address at 0x180)!”
For UNIX SVR4.2,
“WARNING! C168 board IRQ at 11 mismatch (base address at 0x180)!”
indicates the IRQ of the port is different between hardware and software
configurations. However, only this port is disabled. Other ports should
still work.
If the following common error message appears:
“WARNING! C168 board base address at 0x180 not found!” or
“WARNING! C168 board interrupt vector disabled (Board base =
0x180 )!”, indicates the base address of the board is not found or interrupt
vector of the board is disabled. In these cases, all ports will not work.
Please see Chapter “Troubleshooting” for solutions.
3-26 Smartio C168H/HS User’s Manual
Software Installation
MOXA TTY Device Naming Convention
If the Smartio C168 Series is successfully configured, there will be two tty devices
created for each port at /dev directory: one is non-MODEM tty (e.g. ttye11), and
the other is MODEM tty (e.g. ttyE11). The two devices are actually accessing the
same physical port except that the MODEM tty has to check the ON status of DCD
signal to be able to open device, and closing device automatically as DCD signal is
OFF.
The convention of the MOXA tty device name is /dev/tty{e-f}{1}{1-8}, where:
"tty" + "A" + "B" + "C"
Port ordinal number, 1-8
Always 1
Board ordinal number
"e" or "E": 1st MOXA board
"f" or "F": 2nd MOXA board
Capitals indicate a MODEM port
Standard tty device prefix
For example:
R
x
T
x
/dev/ttye11
/dev/ttye12
/dev/ttye13
/dev/ttye14
/dev/ttye15
/dev/ttye16
/dev/ttye17
/dev/ttye18
Opt8A
Smartio C168H/HS User’s Manual
3-27
Baud Rate Settings
For Smartio C168 Series set to High Speed Spectrum, the real working speed,
is exactly eight times of the speed displayed by “stty” command. A port, if set to
Normal Speed Spectrum with 38.4 Kbps, will work at 38.4 Kbps for sure; while
a port, if set to High Speed Spectrum with displayed speed 38.4 Kbps, will
actually work at 307.2 Kbps (38.4 Kbps¡Ñ
8).
Note also that the 50 baud rate, B50, will no longer stand for 50 bps, instead, it
means 57600 bps, and 75 baud rate, B75, for 115.2 Kbps. Furthermore, if the C168
Family H Series board is set to High Speed Spectrum, the real working speed is 8
times of the displayed speed. Hence, B50, 57.6 Kbps, is for 460.8 Kbps and B75,
115.2 Kbps, is for 921.6 Kbps.
Administration Utility – moxaadm
Users can use the administration utility, moxaadm, to change the Smartio C168
basic and advanced configuration, to monitor the ports' activity, to use terminal
emulation and to remove the installed MOXA driver from the system.
3-28 Smartio C168H/HS User’s Manual
Software Installation
Basic Configuration
In the [Basic configuration] dialog, users can set base I/O address and interrupt,
which should be the same as the hardware configuration of the boards. Kernel
rebuilding is required if any setting is changed.
In [getty Setting] sub-dialog, there is one noticeable field:
Non-Modem and Modem Baud Rate
This field stands for the initial baud rate symbol and hunt sequence for Non-Modem
/Modem tty. It is simply for setting parameters of getty entries in system file
/etc/inittab which could also be manually modified by system administrator. Its
value comes from the UNIX system “getty default” file, i.e., “/etc/gettydefs”. Modify
this field to suit your need.
In some cases, you may need to modify the “getty default” file as well. For example,
in some UNIX systems, the “9600” symbol indicated 8-data-bit no-parity while in
Smartio C168H/HS User’s Manual
3-29
others it may stand for 7-data-bit, even-parity. So, please examine the “getty
default” file carefully, and make sure the terminal settings is the same. Otherwise,
garbled data will be inevitable.
Advanced Configuration
In the [Advanced configuration] dialog, users can set baud rate mapping, Rx FIFO
trigger level, Tx FIFO trigger level and RTS/CTS hardware flow control.
Baud Rate Mapping
There are two different baud rate tables can be selected: High Band and Low Band.
The highest baud rate for High Band is 921.6K bps, while 38.4K bps for Low Band.
Because of the limit of UNIX termio/termios definition, the highest baud rate label
is B38400 (mapped to 38.4K bps). If users wish to use the baudrate higher than
38.4K bps for MOXA boards, this baud rate will be re-mapped to the lower as
defined in the below baudrate-mapping table:
3-30 Smartio C168H/HS User’s Manual
Software Installation
Label
High/Normal Speed
B50
B75
B110
B134
B150
B200
B300
B600
B1200
B1800
B2400
B4800
B9600
B19200
B38400
Low Band
50
75
110
134
150
200
300
600
1200
1800
2400
4800
9600
19200
38400
Normal Speed
High Speed
High Band
57600
115200
110
134
150
200
300
600
1200
1800
2400
4800
9600
19200
38400
High Band
57600
115200
230400
460800
921600
200
300
600
1200
1800
2400
4800
9600
19200
38400
Note: You can press F1 on-line help to get more baud rate mapping
information.
In [Port Feature Settings] sub-dialog, there are three noticeable fields:
Rx FIFO Trigger
Rx FIFO trigger levels, at 1, 4, 8 or 14 bytes, are available, and the default value is
14 bytes.
Smartio C168H/HS User’s Manual
3-31
Tx FIFO Trigger
Tx FIFO sizes from 1 to 16 bytes are available, and the default value is 16 bytes.
RTS/CTS Hardware Flow Control
This feature is for more flexible driver behavior. If set to “Disable” (default), CTS
signal is not needed for tty port to transfer data and RTS/CTS hardware flow control
function in driver is disabled. On the contrary, if set to “Enable”, CTS signal is
needed for tty port to transfer data and RTS/CTS hardware flow control function in
driver is enabled.
Port Monitoring
This utility gives you a quick view about all the MOXA ports' activities. You can
easily learn each port's total received/transmitted (Rx/Tx) character count since the
time when the monitoring is started. Rx/Tx throughputs per second are also reported
in interval basis (e.g. the last 5 seconds) and in average basis (since the time the
monitoring is started). You can reset all ports' count by <HOME> key. <+> <->
(plus/minus) keys to change the displaying time interval.
Press Enter on the port, that cursor stay, to view the port's communication
parameters, signal status, and input/output queue.
3-32 Smartio C168H/HS User’s Manual
Software Installation
Terminal Emulation
This utility provides data sending and receiving ability of all tty ports, especially for
MOXA ports. It is quite useful for testing simple application, for example, sending AT
command to a modem connected to the port or used as a terminal for login purpose.
Note that this is only a dumb terminal emulation without handling full screen operation.
Besides, data scope function with pattern/file transfer is provided.
1. Select and Press Enter on item “Communication Setup” to setup up all the
communication parameters for connection.
Smartio C168H/HS User’s Manual
3-33
2
Select and enter “Dumb Terminal” to enter terminal emulation. Or select and
enter “Advance Transfer Modes” to perform pattern or file transfer with
protocols such as ZModem.
Driver Removal
If you want to remove the Smartio C168 Series device driver and return to your
previous system configuration, simply press Enter in this function entry and answer
“Y” to confirm. Then the system will be rebuild. This may take some time. If you
answer “N”, no action will be taken.
3-34 Smartio C168H/HS User’s Manual
Software Installation
Setting MOXA Ports to Terminal
Following procedure is how to set the MOXA port to the “Terminal” for login
purpose, taking ttya11 as an example,
SCO UNIX/OpenServer
# enable /dev/ttye11
UNIX SVR4.2
1. Edit (e.g. use vi editor) the file /etc/inittab.
2. Modify the tty entry from "ma11:23:off:/etc/getty ttye11 9600" to
"ma11:23:respawn:/etc/getty ttye11 9600".
3. # init q
Or refer to your UNIX system manuals for how to activate a tty port.
Smartio C168H/HS User’s Manual
3-35
3-36 Smartio C168H/HS User’s Manual
4
4
Serial Programming Tools
Moxa supports easy but powerful serial programming library and communication
troubleshooting utilities under Windows NT, Windows 95/98, UNIX and DOS. You
will save greatly the developing time, using MOXA Serial Programming Tools.
The following sections will details the installation, the library and the utilities for
various platforms.
Windows NT and Windows 95/98
PComm, the professional serial comm tool for PC, is a software package under
Windows NT and Windows 95/98, which consists of powerful serial
communication library for easy programming in most popular languages, useful
utilities such as diagnostic, monitor and terminal emulator, illustrative example
programs and comprehensive on-line documents.
The serial communication library is useful for developing a system for data
communication, remote access, data acquisition or industrial control in the
Windows NT and Windows 95/98 environment, which offers an easier solution
compared with the more complex Windows Win32 COMM API.
Installation
To install PComm, please run \Setup.exe in the diskette. Note that PComm
diagnostic and monitor utilities are for MOXA boards only. MOXA Windows NT or
Windows 95/98 device driver as well as MOXA board are required. The driver are
installed separately and detailed in Chapter “Software Installation”.
Smartio C168H/HS User’s Manual
4-1
PComm Programming Library
The serial communication library is to assist users to develop programs for serial
communications for any COM port complying with Microsoft Win32 API. It can
ease the implementation of multi-process and multi-thread serial communication
programs and hence greatly reduce the developing time.
For complete library function description and example programs for Visual C++,
Visual Basic and Delphi, please see help file and example programs in PComm
directory for more details.
Utilities
The followings are short descriptions of each utility. For details, please see on-line
help as running utilities.
4-2 Smartio C168H/HS User’s Manual
Serial Programming Tools
Diagnostic (for MOXA boards only)
A convenient diagnostic program provides internal and external testing, such as
IRQ, TxD/RxD, UART, CTS/RTS, DTR/DSR, DTR/DCD testing, etc., for the
MOXA boards and ports to verify correct operation of both the software and
hardware.
Smartio C168H/HS User’s Manual
4-3
Monitor (for MOXA boards under Windows NT Only)
A useful port status monitoring program allows you to watch the selected MOXA
COM ports' data transmitting/receiving throughput and communication line status
which are updated and displayed on the screen at every time interval. In addition,
you may click on one of the specific displayed port in order to see the current
communication parameters and status of that port.
4-4 Smartio C168H/HS User’s Manual
Serial Programming Tools
Terminal Emulator
The Terminal Emulator features multi-windows and supports terminal types of
VT100 and ANSI. You can transfer data interactively, send pattern periodically or
transfer file using ASCII, XMODEM, YMODEM, ZMODEM and KERMIT
protocols.
Smartio C168H/HS User’s Manual
4-5
UNIX
Programming the MOXA Ports
The system calls that apply to standard tty port can also be applied to MOXA port
since MOXA port conforms to UNIX tty standard. System calls are like open(),
ioctl(), read(), write(), close(), etc. Please refer to your UNIX Programmer's
Reference manual.
However, these system services only provide limited functions and thus may not
satisfy the sophisticated programmers' need. In order to meet the user's special
purpose, MOXA supports extended services through ioctl() command, which are:
1. MIBUFED
2. MOBUFED
3. MTCRTS
4. MTCDTR
5. MLOWATER
6. MSTATUS
7.MHWFLOW
(= 0x401)
(= 0x402)
(= 0x403)
(= 0x404)
(= 0x405)
(= 0x407)
(= 0x40e)
To get byte count in input buffer.
To get byte count in output buffer.
To control RTS output signal.
To control DTR output signal.
To set output buffer low water level.
To read modem line status (CTS/DSR/DCD).
To enable/disable the hardware flow control.
The next Section details all the commands.
Extended UNIX Ioctl() Commands
The following lists the syntax of MOXA extended functions for both non-SVR4.x
and SVR4.x UNIX. The variable moxa_fd is the returned file descriptor by open() a
specific MOXA port. For example,
int moxa_fd;
moxa_fd = open(“/dev/ttye11”,O_RDWR);
1. MIBUFED
This function let you know how many bytes queued in input buffer when this
function is issued.
4-6 Smartio C168H/HS User’s Manual
Serial Programming Tools
Syntax for SCO UNIX/OpenServer
#define MIBUFED 0x401
int
count; /* number of bytes queued in the buffer */
ioctl(moxa_fd, MIBUFED, &count);
Syntax for UNIX SVR4.2
#include
<sys/stropts.h>
#include
<sys/sysmacros.h>
#define MIBUFED 0x401
struct strioctl
ioc;
int
count; /* number of bytes queued in the buffer */
ioc.ic_cmd = MIBUFED;
ioc.ic_timout = 0;
ioc.ic_len = sizeof(int);
ioc.ic_dp = (char *)&count;
ioctl(moxa_fd, I_STR, &ioc);
Note:
Due to the characteristics of STREAMS driver, the returned count of bytes
buffered only reflect the data buffered on MOXA board, not including the
data buffered in STREAMS queue. In this case, the count is for reference
only. For example, returned count may always be zero, but there still are
data buffered in STREAMS queue.
2. MOBUFED
This function let you know the byte count queued in output buffer when this
function is issued.
Syntax for SCO UNIX/OpenServer
#define MOBUFED 0x402
int
count; /* number of bytes queued in the output buffer */
ioctl(moxa_fd, MOBUFED, &count);
Smartio C168H/HS User’s Manual
4-7
Syntax for UNIX SVR4.2
#include
#include
#define MOBUFED
struct strioctl
int
buffer */
<sys/stropts.h>
<sys/sysmacros.h>
0x402
ioc;
count; /* number of bytes queued in the output
ioc.ic_cmd = MOBUFED;
ioc.ic_timout = 0;
ioc.ic_len = sizeof(int);
ioc.ic_dp = (char *)&count;
ioctl(moxa_fd, I_STR, &ioc);
Note: See MIBUFED for influence of STREAMS driver.
3. MTCRTS
This function, only valid when hardware flow control is turned off (see
MHWFLOW), is used to drive RTS signal on or off.
Syntax for SCO UNIX/OpenServer
#define MTCRTS
#define TurnON
#define TurnOFF
0x403
1
0
ioctl(moxa_fd, MTCRTS, TurnON);
ioctl(moxa_fd, MTCRTS, TurnOFF);
Syntax for UNIX SVR4.2
#include
#include
#define MTCRTS
#define TurnON
#define TurnOFF
struct strioctl
int
4-8 Smartio C168H/HS User’s Manual
<sys/stropts.h>
<sys/sysmacros.h>
0x403
1
0
ioc;
setting;
Serial Programming Tools
setting = TurnON /* or TurnOFF */;
ioc.ic_cmd = MTCRTS;
ioc.ic_timout = 0;
ioc.ic_len = sizeof(int);
ioc.ic_dp = (char *)&setting;
ioctl(moxa_fd, I_STR, &ioc);
4. MTCDTR
This function, only valid when hardware flow control is turned off (see
MHWFLOW), is used to drive DTR signal on or off.
Syntax for SCO UNIX/OpenServer
#define MTCDTR
0x404
#define TurnON
1
#define TurnOFF
0
ioctl(moxa_fd, MTCDTR, TurnON);
ioctl(moxa_fd, MTCDTR, TurnOFF);
Syntax for UNIX SVR4.2
#include
#include
#define MTCDTR
#define TurnON
#define TurnOFF
struct strioctl
int
<sys/stropts.h>
<sys/sysmacros.h>
0x404
1
0
ioc;
setting;
setting = TurnON /* or TurnOFF */;
ioc.ic_cmd = MTCDTR;
ioc.ic_timout = 0;
ioc.ic_len = sizeof(int);
ioc.ic_dp = (char *)&setting;
ioctl(moxa_fd, I_STR, &ioc);
5. MLOWATER
Sometimes the application software may not be able to write any further data to the
output buffer because of the output buffer being full. The application has to wait
Smartio C168H/HS User’s Manual
4-9
until the output buffer has 'enough space' again. The criteria to tell if the output
buffer has 'enough space' is whether the output buffer reached its 'low water' level.
That is the output buffer will accept further data only when the 'low water' level is reached.
If the 'low water' value is relatively small, you may find that the output buffer
become empty before you write another block of data (this is quite possible because
UNIX is time-sharing multitasking environment). This will result in discontinuous
data transmission. In a timeout-sensitive application, e.g. facsimile (FAX)
transmission, discontinuous data may falter the operation.
The default 'low water' is 512 bytes. You can enlarge it but better not exceed one
half of the output buffer. Each port's output buffer is 32K bytes.
Syntax for SCO UNIX/OpenServer
#define MLOWATER
int
0x405
lowater; /* low water value of output buffer
(default = 512 bytes) */
ioctl(moxa_fd, MLOWATER, lowater);
Syntax for UNIX SVR4.2
#include
<sys/stropts.h>
#include
<sys/sysmacros.h>
#define MLOWATER
0x405
struct strioctl
ioc;
int lowater; /* low water value of output buffer (default = 512 bytes) */
ioc.ic_cmd = MLOWATER;
ioc.ic_timout = 0;
ioc.ic_len = sizeof(int);
ioc.ic_dp = (char *)&lowater;
ioctl(moxa_fd, I_STR, &ioc);
6. MSTATUS
This function is used to know the RS-232 line status (CTS/DSR/DCD).
4-10 Smartio C168H/HS User’s Manual
Serial Programming Tools
Syntax for SCO UNIX/OpenServer
#define MSTATUS 0x407
int
status; /* status = RS-232 line status */
/* bit0¡Ð
CTS (1:on, 0:off) */
/* bit1¡Ð
DSR (1:on, 0:off) */
/* bit2¡Ð
DCD (1:on, 0:off) */
ioctl(moxa_fd, MSTATUS, &status);
Syntax for UNIX SVR4.2
#define MSTATUS 0x407
#include
<sys/stropts.h>
#include
<sys/sysmacros.h>
struct strioctl
int
ioc;
status; /* status = RS-232 line status */
/* bit0¡Ð
CTS (1:on, 0:off) */
/* bit1¡Ð
DSR (1:on, 0:off) */
/* bit2¡Ð
DCD (1:on, 0:off) */
ioc.ic_cmd = MSTATUS;
ioc.ic_timout = 0;
ioc.ic_len = sizeof(int);
ioc.ic_dp = (char *)&status;
ioctl(moxa_fd, I_STR, &ioc);
7. MHWFLOW
This function is used to enable/disable hardware flow control. The first open()
function of a port will set the hardware flow control bits on or off depending on the
[RTS/CTS Hardware Flow Control] configuration in mxadm. However, users
might want to control the DTR or RTS signal on their will, thus the RTS flow
control bit should be turned off (HWFLowControlOff) in order to take over the
control of DTR or RTS signal via function MTCRTS or MTCDTR. MTCRTS and
MTCDTR can be effective only after the RTS flow control bit of MHWFLOW is
turned off.
Smartio C168H/HS User’s Manual
4-11
Syntax for SCO UNIX/OpenServer
#define MHWFLOW
0x40e
#define HWFlowControlOff
0x00
#define CTSFlowControlBitOn 0x01
#define RTSFlowControlBitOn 0x02
#define HWFlowControlOn
0x03
ioctl(moxa_fd, MHWFLOW, CTSFlowControlBitOn);
ioctl(moxa_fd, MHWFLOW, RTSFlowControlBitOn);
ioctl(moxa_fd,MHWFLOW, CTSFlowControlBitOn | RTSFlowControlBitOn);
Syntax for UNIX SVR4.2
#include
#include
<sys/stropts.h>
<sys/sysmacros.h>
#define MHWFLOW
0x40e
#define HWFlowControlOff
0x00
#define CTSFlowControlBitOn 0x01
#define RTSFlowControlBitOn 0x02
#define HWFlowControlOn
0x03
struct strioctl
ioc;
int
setting;
setting = CTSFlowControlbitOn;
ioc.ic_cmd = MHWFLOW;
ioc.ic_timout = 0;
ioc.ic_len = sizeof(int);
ioc.ic_dp = (char *)&setting;
ioctl(moxa_fd, I_STR, &ioc);
4-12 Smartio C168H/HS User’s Manual
Serial Programming Tools
Utilities
You can use the administration utility, moxaadm, to monitor port activity and to
do terminal emulation, which are details as follows.
Port Monitoring
This utility gives you a quick view about all the MOXA ports' activities. You can
easily learn each port's total received/transmitted (Rx/Tx) character count since the
time when the monitoring is started. Rx/Tx throughputs per second are also reported
in interval basis (e.g. the last 5 seconds) and in average basis (since the time the
monitoring is started). You can reset all ports' count by <HOME> key. <+> <->
(plus/minus) keys to change the displaying time interval.
Press Enter on the port, that cursor stay, to view the port's communication
parameters, signal status, and input/output queue.
Smartio C168H/HS User’s Manual
4-13
Terminal Emulator
This utility provides data sending and receiving ability of all tty ports, especially for
MOXA ports. It is quite useful for testing simple application, for example, sending AT
command to a modem connected to the port or used as a terminal for login purpose.
Note that this is only a dumb terminal emulation without handling full screen operation.
Besides, data scope function with pattern/file transfer is provided.
1. Select and Press Enter on item “Communication Setup” to setup up all the
communication parameters for connection.
4-14 Smartio C168H/HS User’s Manual
Serial Programming Tools
2. Select and enter “Dumb Terminal” to enter terminal emulation. Or select and
enter “Advance Transfer Modes” to perform pattern or file transfer with
protocols such as ZModem.
DOS
Installation
API-232 Library is the professional serial programming tool for DOS. It is installed
automatically along with the MOXA DOS drivers. The installation is detailed in
Chapter “Software Installation”.
DOS API-232 Library
DOS API-232 library supports languages like Microsoft C, Turbo C, Macro
Assembly, QuickBasic, Turbo Pascal, Clipper, etc. Sample programs for each
supported language are included, and placed in the sub-directory ..\EXAMPLE\%
language of the API-232 directory.
In addition, for DOS C language only, there are also Modem Control and File
Transfer library available, supporting Hayes compatible modem control as well as
ASCII, KERMIT, XMODEM, YMODEM and ZMODEM file transfer protocol
functions.
For complete API-232 function description, please see file API-232.TXT in the
API-232 directory for more details.
Smartio C168H/HS User’s Manual
4-15
Utilities
There are two utilities available for DOS: Data Scope and Diagnose, which are
detailed below.
Data Scope
The Data Scope, BIN\SCOPE.EXE, is a suite of utility programs that can help
users with system troubleshooting and serial communication debugging.
There are three major functions in Data Scope utility:
1. The Data Scope utility offers transparent monitoring of serial communication lines
and allows data to be streamed to disk storage for later analysis.
2. The TTY terminal emulation utility allows user to view the signal status and
transfer data interactively or files using ASCII, XMODEM, YMODEM,
ZMODEM and KERMIT protocols.
3. The Diagnostic test utility provides port connection test with two MOXA ports
connected via a properly wired cable.
4-16 Smartio C168H/HS User’s Manual
Serial Programming Tools
Please see on-line help as running BIN\SCOPE.EXE for more usage and capability
information.
Diagnose
The Diagnose, BIN\DIAGNOSE.EXE, is a utility that can help users to diagnose
the hardware condition of each port of the selected board. See on-line help for more
details.
Before executing it, please remove the Moxa driver in advance via executing “Mxdrv/Q” if the Moxa driver is running in the background.
RS-485 Programming for Opt8J
If you intend to do RS-485 communication with Opt8J, please follow the RS-485
programming guide below and also refer to Chapter “Connection Option (Opt8x)
and Cable Wiring” for more Opt8J RS-485 operation details.
The Opt8J supports only 2-wire half-duplex RS-485 communication. Data+/- pins
are served for both data transmitting and receiving, depending on the RTS signal.
The port switch of each port should be set to On position. The port is for
transmitting data if RTS is asserted and for receiving data if RTS is not asserted.
RTS scheme is suitable for any system, including Windows NT and Windows 95/98,
DOS, or UNIX, that permits RTS control from application programs.
Smartio C168H/HS User’s Manual
4-17
There are 2 solutions to control RS-485 2-wire transmission.
Solution 1
The following model is common in RS-485 2-wire transmission.
sio_SetWriteTimeouts(port, 0);
sio_RTS(port, 1);
sio_write(port, buff, 10);
sio_RTS(port, 0);
sio_read(port, buff, 10);
/* Set sio_write() into block mode if
for Windows NT and Windows 95/98 */
/* Turn on RTS signal. The RS-485
port is ready for transmitting data. */
/* Write 10 byte characters in "buff".
The function blocks until last
character transmitted */
/* Turn off RTS signal. The RS-485
port is ready for receiving data. */
/* Read 10 bytes */
Solution 2
There is a dedicated RS-485 function in PComm or API-232 library. It
integrates the above functions of solution 1 regarding sending data as one.
sio_putb_x(port, buff, tick ); /*
1. Turn on RTS and ready for
transmitting data.
2. Send data.
3. Wait for tick time.
4. Turn off RTS and ready for
receiving data. */
For more information on these functions, please refer to PComm library on-line Help
file for Windows NT and Windows 95/98 or API-232.txt file for DOS, respectively
.
4-18 Smartio C168H/HS User’s Manual
5
5
Connection Option (Opt8x) and Cable Wiring
In serial data communications, the term DTE is for Data Terminal Equipment like
PC COM1/2, serial printer and terminal. The term DCE is for Data Communication
Equipment like modem.
RS-232 Cable Wiring for Opt8A/B/C/D/S
RS-232 8-port connection boxes/octopus cable designed for Smatio C168 Series are:
Opt8A:
Opt8B:
Opt8C:
Opt8D:
Opt8S:
8-port RS-232 DB25 female connection box
8-port RS-232 DB25 male connection box
Octopus cable with 8 male RS-232 DB25 ports
Octopus cable with 8 male RS-232 DB9 ports
8-port RS-232 DB25 surge protected female connection box
Smartio C168H/HS User’s Manual
5-1
The followings are pin assignments for various connection options:
Opt8A/S
(DCE, DB25 Female)
2
3
4
5
6
7
8
20
RxD
TxD
CTS
RTS
DTR
GND
DCD
DSR
Opt8B/C
(DTE, DB25 Male)
2
3
4
5
6
7
8
20
TxD
RxD
RTS
CTS
DSR
GND
DCD
DTR
Opt8D
(DTE, DB9 Male)
1
2
3
4
5
6
7
8
DCD
RxD
TxD
DTR
GND
DSR
RTS
CTS
5-2 Smartio C168H/HS User’s Manual
Connection Option (Opt8x) and Cable Wiring
Type 1: To connect Smartio C168 Series to a DTE device.
Straight-through Cable
PC COM2 port, Serial Printer,
Terminal, or any DTE Device
Opt8A/S
Opt8A/S
DTE Device
DB25 Female
DB25 Male
RxD
TxD
CTS
RTS
DTR
DSR
GND
DCD
2
3
4
5
6
20
7
8
2
3
4
5
6
20
7
8
TxD
RxD
RTS
CTS
DSR
DTR
GND
DCD
Null Modem Cable
PC COM2 port, Serial Printer,
Terminal, or any DTE Device
Opt8B/C
Opt8B/C
DTE Device
DB25 Male
DB25 Male
TxD
RxD
RTS
CTS
DSR
DTR
GND
DCD
2
3
4
5
6
20
7
8
2
3
4
5
6
20
7
8
TxD
RxD
RTS
CTS
DSR
DTR
GND
DCD
Smartio C168H/HS User’s Manual
5-3
PC COM2 port, Serial Printer,
Terminal, or any DTE Device
Opt8D
Opt8D
DTE Device
DB9 Male
DB25 Male
RxD
TxD
CTS
RTS
DTR
DSR
GND
DCD
2
3
8
7
4
6
5
1
2
3
4
5
6
20
7
8
TxD
RxD
RTS
CTS
DSR
DTR
GND
DCD
Type 2: To connect Smartio C168 Series to a DCE device.
Null Modem Cable
Modem,
or any DCE Device
Opt8A/S
Opt8A/S
DCE Device
DB25 Female
DB25 Female
RxD
TxD
CTS
RTS
DTR
DSR
GND
DCD
5-4 Smartio C168H/HS User’s Manual
2
3
4
5
6
20
7
8
2
3
4
5
6
20
7
8
RxD
TxD
CTS
RTS
DTR
DSR
GND
DCD
Connection Option (Opt8x) and Cable Wiring
Straight-through Cable
Modem,
or any DCE Device
Opt8B/C
Opt8B/C
DCE Device
DB25 Male
DB25 Female
TxD
RxD
RTS
CTS
DSR
DTR
GND
DCD
2
3
4
5
6
20
7
8
2
3
4
5
6
20
7
8
RxD
TxD
CTS
RTS
DTR
DSR
GND
DCD
Modem
or any DCE Device
Opt8D
Opt8D
DCE Device
DB9 Male
DB25 Female
RxD
TxD
CTS
RTS
DTR
DSR
GND
DCD
2
3
8
7
4
6
5
1
2
3
4
5
6
20
7
8
RxD
TxD
CTS
RTS
DTR
DSR
GND
DCD
Smartio C168H/HS User’s Manual
5-5
Type 3: To connect Smartio C168 Series to a DTE with 3-pin wiring.
If the “Hardware flow control” feature is set to “ON”, you must loop
back (or short) the RTS with CTS and DSR with DTR, DCD on MOXA
site, indicated in dash-lines of the following diagrams. If the “Hardware
flow control” feature is set to “OFF”, you could just leave RTS, CTS,
DSR, DTR, DCD open, ignoring the connection indicated in dash-lines.
PC COM2 port, Serial Printer,
Terminal, or any DTE Device
Opt8A/S
Opt8A/S
DTE Device
DB25 Female
DB25 Male
RxD
TxD
GND
RTS
CTS
DTR
DST
DCD
2
3
7
5
4
20
6
8
2
3
7
4
5
6
20
8
PC COM2 port, Serial Printer,
Terminal, or any DTE Device
Opt8B/C
Opt8B/C
DB25 Male
TxD
RxD
GND
RTS
CTS
DSR
DTR
DCD
5-6 Smartio C168H/HS User’s Manual
TxD
RxD
GND
RTS
CTS
DTR
DSR
DCD
DTE Device
DB25 Male
2
3
7
4
5
6
20
8
2
3
7
4
5
6
20
8
TxD
RxD
GND
RTS
CTS
DTR
DSR
DCD
Connection Option (Opt8x) and Cable Wiring
PC COM2 port, Serial Printer,
Terminal, or any DTE Device
Opt8D
Opt8D
DB9 Male
RxD
TxD
GND
RTS
CTS
DTR
DSR
DCD
DTE Device
DB25 Male
2
3
5
7
8
4
6
1
2
3
7
4
5
6
20
8
TxD
RxD
GND
RTS
CTS
DTR
DSR
DCD
RS-422 Cable Wiring for Opt8J/F/Z
RS-422 connection boxes designed for Smartio C168 Series are:
Opt8J:
Opt8F:
Opt8Z:
Connection box with 8 female RS-422/485 DB25 ports. Set the port
switch to OFF position (RS-422) for the desired port(s).
Connection box with 8 female RS-422 DB25 ports and Max. 500V DC
isolation protection which prevents damage caused by high potential
voltage.
Connection box with 8 female RS-422 DB25 ports but without isolation
protection.
Smartio C168H/HS User’s Manual
5-7
RS-422 Pinouts for Opt8J/F/Z:
Opt8J/F/Z
2
3
14
16
7
4
5
13
19
RxD+(B)
TxD+(B)
RxD-(A)
TxD-(A)
GND
CTS+(B)
RTS+(B)
RTS-(A)
CTS-(A)
Opt8J only
The RS-422 transmission distance can reach as long as 4000ft. The connection box
needs an external power adapter to supply 5V DC power. Either 110V or 220V AC
power adapter is selectable.
5-8 Smartio C168H/HS User’s Manual
Connection Option (Opt8x) and Cable Wiring
The followings are operation modes for RS-422:
RS-422 Point-to-point
Opt8J/F/Z
3 TxD+(B)
16 TxD-(A)
2 RxD+(B)
14 RxD-(A)
7 GND
RS-422 Device
RxD+(B)
RxD-(A)
TxD+(B)
TxD-(A)
GND
RS-422 Broadcasting
Opt8J/F/Z
3 TxD+(B)
2 RxD+(B)
16 TxD-(A)
14 RxD-(A)
7 GND
RS-422 Device 1
RxD+(B)
TxD+(B)
RxD-(A)
TxD-(A)
GND
RS-422 Device N
RxD+(B)
TxD+(B)
RxD-(A)
TxD-(A)
GND
Opt8J RS-422 with Handshaking
Opt8J
3 TxD+(B)
16 TxD-(A)
2 RxD+(B)
14 RxD-(A)
7 GND
5 RTS+(B)
13 RTS-(A)
4 CTS+(B)
19 CTS-(A)
RS-422 Device
RxD+(B)
RxD-(A)
TxD+(B)
TxD-(A)
GND
CTS+(B)
CTS-(A)
RTS+(B)
RTS-(A)
Smartio C168H/HS User’s Manual
5-9
RS-485 Cable Wiring for Opt8J
One RS-485 connection box designed for Smartio C168 Series is:
Opt8J:
Connection box with 8 female RS-422/485 DB25 ports. Set the port
switch to ON position (RS-485) for the desired port(s).
The Opt8J supports only 2-wire half-duplex RS-485 communication. Data+/- pins
are served for both data transmitting and receiving, depending on the RTS signal.
RS-485 Pinouts for Opt8J:
Opt8J
3
7
16
Data+(B)
GND
Data-(A)
7 GND
Data-(A) 16
Multidrop RS-485 Half-duplex
Opt8J
Master
3 Data+(B)
16 Data-(A)
7 GND
RS-485 Device 1
Slave
Data+(B)
Data-(A)
GND
3 Data+ (B)
Point-to-Point RS-485 Half-duplex
Opt8J
3 Data+(B)
16 Data-(A)
7 GND
RS-485 Device
Data+(B)
Data-(A)
GND
RS-485 Device N
Slave
Data+(B)
Data-(A)
GND
See Section “RS-485 Programming” of Chapter “Serial Programming Tools” for
more Opt8J RS-485 programming details.
5-10 Smartio C168H/HS User’s Manual
Connection Option (Opt8x) and Cable Wiring
RS-422/485 Impedance Matching
For RS-422/485 serial communications, when an electrical signal travels through
two different resistance junctions in a transmission line, the impedance mismatch
will sometimes cause signal reflection. Signal reflection causes signal distortion,
which in turn will contribute communication errors. The solution to this problem is
to establish the same impedance at the line ends as in the line itself by terminating
them with resistors.
The value of the termination resistor should equal the characteristic impedance of
the transmission line. The resistors should be added near the receiving side.
Opt8J only
Opt8J/F/Z
RS-422/485 Device
3
16
2
14
5
13
4
19
RxD+(B)
RxD-(A)
TxD+(B)
TxD-(A)
CTS+(B)
CTS-(A)
RTS+(B)
RTS-(A)
TxD+(B)
TxD-(A)
RxD+(B)
RxD-(A)
RTS+(B)
RTS-(A)
CTS+(B)
CTS-(A)
Note:
1.
Stands for termination resistor near the receiving side
2. The suggested termination resistor for AWG #26 cable is 100 ohm.
3. The suggested termination resistor for phone cable is 600 ohm.
Smartio C168H/HS User’s Manual
5-11
5-12 Smartio C168H/HS User’s Manual
6
6
Troubleshooting
Common Smartio C168 Series problems and possible solutions are listed below. If
you still have problems, contact your dealer or Moxa for help. Or use the “Problem
Report Form” at the end of this manual to report problems to your dealer at once
for faster technical support.
General Troubleshooting
1. The MOXA driver, while installing the driver, cannot detect the MOXA
board.
Hardware causes and solutions:
a. The board is not installed or missing (absent). Please install it.
b. The board is not properly plugged in the system. If that is the case, re-install
the board and make sure that it fits well in a 16-bit slot this time. Sometimes
the slot for plugging the board is bad. In this case, try other slots until you
find a good one.
2. The MOXA board and driver are activated but cannot transfer
(transmit/receive) data.
Hardware Causes and Solutions:
a. Check for wrong cable wiring. Refer to the “Connection Cable and Cable
Wiring” chapter for precise pin outs of the connector type you are using.
b. The cable or the board is defective. You may use other ports, cables or boards
to verify. In addition, the PComm “Diagnostic” utility for Windows NT and
Windows 95/98 is good for testing MOXA boards and port conditions. If
Diagnostic reports error, replace the faulty components.
Smartio C168H/HS User’s Manual
6-1
Software Causes and Solutions:
a. Smartio C168 Series checks the line status (CTS) before it sends data out if
the RTS/CTS flow control feature is set to “Enable” in the configuration or
application program. Please refer to the “Connection Cable and Cable
Wiring” chapter for proper wiring. Check the line status of the suspected
port using the diagnostic LED indicators on the mini tester.
b. Perhaps the application controlling the board is not correctly written
according to the corresponding API of the operating system. To verify,
please run an existing and known good application or the provided utilities
by Moxa. For example, under Windows NT and Windows 95/98, Pcomm
“Terminal emulator” or “HyperTerminal” utilities are good for testing the
COM ports.
3. Why the DOS utility IQ-IRQ can not access Smartio C168 Series to
configure?
There are several reasons that may lead to this trouble:
a. The user forgets or does not know the Configuration Access Port (CAP) of
the board. See next problem 4 for how to solve this problem.
b. The CAP of the board conflicts with other add-on boards’ I/O address.
Please change other add-on boards’ I/O address to avoid the conflict.
c. The Smartio C168 Series board is not plugged in a right or good slot. Please
plug the board in a good 16-bit ISA slot.
d. The Smartio C168 Series board may malfunction. Please return for repair.
If any existing board has the same I/O address as 0x180, the default CAP
address, or the 1st port's I/O address, you must try to avoid the conflict by doing
either one the following.
a. Install a jumper (short) at position JP1 on the upper-left corner of the board.
This will force the CAP address to 0xA700.
b. Change or disable the existing board's I/O address.
4. What to do if user forgets or does not know the Configuration Access Port
(CAP) address of Smartio C168 Series?
The Smartio C168 Series multiport boards are designed without jumper or
switch, so the configuration is completed only by DOS utility Io-irq.exe.
6-2 Smartio C168H/HS User’s Manual
Troubleshooting
To configure the board, you need to know the board’s Configuration Access Port
(CAP) address. Because the CAP address is the only channel, via which the Ioirq.exe can access to the board.
The following procedure instructs user to recover once the CAP is unknown.
Step 1.
Power off the PC.
OFF
Step 2.
Install jumper onto the JP1 of the board.
Install
jumper
JP1
Step 3.
Power on the PC.
Now the CAP address of the board will
be 0xA700.
ON
Step 4.
Execute Io-irq under DOS environment.
Step 5.
A:> Io-irq
Enter CAP address 0xA700 to access the board.
Step 6.
Enter the “Configuration Access Port” in HEX: A700
The previous hardware configuration will be shown.
Step 7.
Modify them if necessary. Remember the CAP address this time.
Exit the IO-IRQ.
Smartio C168H/HS User’s Manual
6-3
Step 8.
Power off the PC.
OFF
Step 9.
Remove the jumper on position JP1.
Remove
jumper
JP1
Step 10.
Power on the PC.
ON
Windows NT
This section is specific for troubleshooting under Windows NT. For general
problems and solutions, please see the previous section, “General Troubleshooting”.
1. After the system reboots, the error message “Another driver in the system,
which did not report its resources, has already claimed the interrupt used
by xxx.” appears in the Event Log.
This indicates that the MOXA board is found, but the IRQ is conflicting with
another adapter. Please make sure there is no conflict with other adapter’s IRQ.
Check the BIOS IRQ settings first. Make sure that an IRQ is available.
2. After the system reboots, the error message “Cannot find any configured
MOXA Smartio/Industio Series board!” appears in the Event Log.
6-4 Smartio C168H/HS User’s Manual
Troubleshooting
a. Some partial decoded network board may interfere with our board. Please
avoid from using 0x300 as I/O address for those network boards.
b. Check hardware configuration of Smartio C168 Series board by IOIRQ.EXE. Then make sure the hardware configuration, including I/O
addresses for each port, Interrupt Vector, IRQ, is identical to that of the
driver.
c. The I/O addresses may conflict with other devices, please change another set
of I/O address such as I/O:0x280, Interrupt Vector:0x2C0.
d. The board(s) is not plugged properly. Please make sure the board is seated
firmly in the expansion slot.
e. The slot for plugging the board is defective.
In this case, please try other slots until you find a good one.
f. The board might be defective.
3. The COM number of the Smartio C168 Series conflicts with others.
The COM numbers of different boards happen to be the same. Try to change the
COM number mappings.
4. Windows NT system panic (blue screen).
The possible reason is an IRQ or memory conflict with other ISA Bus adapters,
like LAN and SCSI boards, or the system BIOS. Please refer to the
corresponding problem in the previous section, “General Troubleshooting”, for
solutions.
Windows 95/98
This section is specific for troubleshooting under Windows 95/98. For general
problems and solutions, please see the previous section, “General Troubleshooting”.
1. The system fails to find the Smartio C168 Series board! After system
reboots, error message “Smartio C168 Series (CAP=0x0180, port 1=COM3):
Board is not found” appears.
a. Some partial decoded network board may interfere with our board. Please
avoid from using 0x300 as I/O address for those network boards.
b. Check hardware configuration of Smartio C168 Series board by IOIRQ.EXE. Then make sure the hardware configuration, including I/O
Smartio C168H/HS User’s Manual
6-5
addresses for each port, Interrupt Vector, IRQ, is identical to that of the driver.
c. The I/O addresses may conflict with other devices, please change another set
of I/O address such as I/O:0x280, Interrupt Vector:0x2C0.
d. The board(s) is not plugged properly. Please make sure the board is seated
firmly in the expansion slot.
e. The slot for plugging the board is defective.
In this case, please try other slots until you find a good one.
f. The board might be defective.
DOS
This section is specific for troubleshooting under DOS. For general problems and
solutions, please see the previous section, “General Troubleshooting”.
1. After executing SER-DRV.EXE, error message “None serial port found!”
appears.
a. Make sure you’re using the right driver.
b. Check if the board is properly plugged into ISA/EISA bus slot.
c. Check if the I/O address and IRQ settings in SETUP program are same as
the settings on board.
UNIX
This section is specific for troubleshooting under UNIX. For general problems and
solutions, please see the previous section, “General Troubleshooting”.
1. Under UNIX, when respawning quite a few number of tty ports, the
following error messages appear: “Time out table overflow”, “File table
overflow”, “Region table overflow”.
Software Cause and Solution:
The above error messages imply that the system resources are exhausted. You
should tune the kernel parameters to a larger value and rebuild the kernel to be able
to accommodate the new configuration. Refer to UNIX system manual about how
to tune the parameters and rebuild kernel.
6-6 Smartio C168H/HS User’s Manual
Troubleshooting
“Time out table overflow”:
“File table overflow”:
“Region table overflow” :
NCALL parameter too small.
NFILE or NINODE parameter too small.
NREGION or NPROC parameter too small.
2. Under UNIXs, the newly rebuilt kernel could not boot.
Software Causes and Solutions:
The C168 driver might not be built into the new kernel correctly.
a. Please use the last good kernel backup to boot again. The kernel backup in SCO
UNIX is /unix.moxa while in UNIX SVR4.2 /stand/unix.moxa.
b. Then remove the C168 driver. Refer.
c. Re-install the C168 driver once more.
Smartio C168H/HS User’s Manual
6-7
6-8 Smartio C168H/HS User’s Manual
Appendix
A Technical Reference
Specifications
v
v
v
v
v
v
v
v
v
v
v
v
v
v
v
v
Bus interface:
Number of ports:
I/O address:
IRQ:
Data bits:
Stop bits:
Parity:
UART:
Speed (bps):
Connectors:
Data signals:
ISA (EISA compatible)
8
0x0000 ~ 0xFFFF
2, 3, 4, 5, 7, 10, 11, 12, 15
5, 6, 7, 8
1, 1.5, 2
none, even, odd, space, mark
8¡Ñ
16550C or compatible
50 ~ 921.6K
8¡Ñ
DB25 male or female
RS-232¡Ð
TxD, RxD, RTS, CTS, DTR, DSR, DCD, GND
RS-422¡Ð
TxD+(B), TxD-(A), RxD+(B), RxD-(A), GND
(Opt8J: RTS+(B), RTS-(A), CTS+(B), CTS-(A))
RS-485¡Ð
Data+(B), Data-(A), GND
Surge protection:
max. 2000V (C168HS)
Operating temp:
0 ~ 55 ¢J
Power requirement: 180mA max. (+5V), 110mA max. (+12V), 160mA, max. (-12V)
Dimensions:
157mm¡Ñ
93mm
Operating Systems: See the driver support list below.
Smartio C168H/HS User’s Manual
A-1
Smartio C168 Series
Windows NT
Windows 95/98
DOS
SCO UNIX/OpenServer
UNIX SVR4.2
Linux
SCO XENIX
QNX
FreeBSD
3
3
3
3
3
R
C
C
C
3: Driver supported by Moxa and shipped with product
C : Driver supported by OS
R : Available by request
Note: Download the newest drivers from the MOXA FTP service
UART 16C550C
The UART chip, 16C550C, is an intelligent asynchronous controller capable of
supporting one full duplex channel that simultaneously transfers data at 921.6 Kbps.
To increase the overall data throughput, special features such as on-chip FIFO and
on-chip hardware flow control are used to reduce the number of interrupts to the
onboard CPU and to prevent any loss of valuable data.
A-2 Smartio C168H/HS User’s Manual
Troubleshooting
PC I/O Port Address Map
The following is the list of the I/O port addresses commonly used, which is good for
preventing I/O address conflict when configuring Smartio C168 Series.
IO/ Address
000-01F
020-03F
040-05F
060-06F
070-07F
080-09F
0A0-0BF
0C0-0DF
0F0-0FF
100-1EF
1F0-1F8
200-207
278-27F
2F8-2FF
300-31F
360-36F
378-37F
3B0-3BF
3C0-3CF
3D0-3DF
3F0-3F7
3F8-3FF
Device
DMA controller 1
interrupt controller
Timer
Keyboard
Real-time clock
DMA page register
Interrupt controller 2
DMA controller
Math coprocessor
not usable
Fixed disk
Game I/O
Parallel printer port 2 ( LP2: )
Serial Port 2 ( COM2: )
Prototype card
Reserved
Parallel printer port 1 ( LP1: )
Monochrome display
Reserved
Color graphics display
Diskette controller
Serial port 1 ( COM 1: )
Smartio C168H/HS User’s Manual
A-3
DB62 Connector Pinouts
The following lists the pin assignments of the DB62 connector on the bracket.
Pin no.
Signal
Pin no.
Signal
Pin no.
Signal
1
2
TxD1
DTR1
3
4
5
6
7
RxD2
DSR2
DCD2
TxD3
DTR3
22
23
24
25
26
RxD1
DSR1
DCD1
TxD2
DTR2
43
44
45
46
47
CTS1
RTS1
GND
CTS2
RTS2
8
9
10
11
12
13
14
15
RxD4
DSR4
DCD4
RxD5
DSR5
DCD5
TxD6
DTR6
27
28
29
30
31
32
33
34
RxD3
DSR3
DCD3
TxD4
DTR4
GND
TxD5
DTR5
48
49
50
51
52
CTS3
RTS3
GND
CTS4
RTS4
16
17
18
19
20
21
RxD7
DSR7
DCD7
RxD8
DSR8
DCD8
35
36
37
38
39
40
41
42
RxD6
DSR6
DCD6
TxD7
DTR7
GND
TxD8
DTR8
53
54
55
56
57
58
59
60
CTS5
RTS5
GND
CTS6
RTS6
GND
CTS7
RTS7
61
62
CTS8
RTS8
A-4 Smartio C168H/HS User’s Manual
Problem Report Form
Smartio C168 Series
Customer name:
Company:
Tel:
Email:
Fax:
Date:
1. Moxa Product: Smartio C168 Series Model : oC168H oC168HS Serial Number: ___________
2. Moxa Driver Version: ________________
3. Moxa hardware settings:
3.1 Please check the hardware configuration by IO-IRQ.EXE from DOS or Windows 95/98 DOS
Prompt.
PORT
I/O
IRQ
1
2
3
4
5
6
7
8
Interrupt Vector: ________
Speed: ________________(High/Normal)
3.2 Jumper JP1 on the board: o open o short
4. Operating System: o Windows 95
o Windows 98
o Windows NT 3.51
o Windows NT 4.0
o DOS
o UNIX
o Others
5. PC Host: Make _________ Model _________
6. CPU:
Speed _____MHz Make ______ Model ______
7. BIOS:
Make __________________ Version _______
8. Problem Description: Please describes the problem as clearly as possible, including the error message
you see. We may have to follow your description to reproduce the problem.
o
Board not found.
o
Board found, but can’t transfer data.
o
Can transfer data, but lose data. o
Can transfer data, but with garbled data.
o
Others. Detailed error message description is recommended:
Return Procedure
For product repair, exchange or refund, you must:
v
Provide evidence of original purchase
v
Fill out the Problem Report Form (PRF) as detailed as possible for shorter product repair time.
v
Obtain a Return Merchandise Authorization (RMA) number from the sales representative or dealer
v
Carefully pack the product in anti-static package, and send it, pre-paid, to the dealer. The RMA
number should show on the outside of the package, and include a description of the problem along
with the return address and telephone number of a technical contact.