> ## Chapter 1. Introduction

> This manual is intended for embedded systems designers and support professionals who are using Z-World's DeviceMate software to web-enable an embedded device. The device must have a free asynchronous serial port.

> ### 1.1 Assumptions

> C programming experience is assumed. A working knowledge of TCP/IP is also assumed. For further information on these topics refer to:

> - The C Programming Language by Kernighan and Ritchie
> - Dynamic C User's Manual by Z-World
> - An Introduction to TCP/IP by Z-World

> ### 1.2 Definition of Terms

> DeviceMate - Any Ethernet-enabled Z-World controller board can be used as a DeviceMate unit (DMU). In the DeviceMate Development Kit this unit is the RCM2200.

> DeviceMate Feature Set - A group of programs that extend the ability to control and monitor an embedded target that is connected to the DMU.

> Peer - If the distinction does not matter, the term peer is used to mean either the DeviceMate unit or the target.

> Subsystem - Specific features in the feature set. For example, the watchdog subsystem implements the watchdog feature. As with all of the subsystems that compose the feature set, the watchdog subsystem has code running on both the DeviceMate and the target that is connected to the DeviceMate.

> Target - An embedded controller board that is connected to the DeviceMate via a serial port. In the DeviceMate Development Kit this is the RCM2300; however, the target does not have to be a Rabbit-based board.

> User - A programmer using the DeviceMate subsystems to develop application programs, as opposed to the end user of said applications.

> XTC - Extended Target Communications is a subsystem that provides other subsystems with a reliable transport service.

> ### 1.3 Documentation Road Map

> This section gives a brief description of the rest of this manual.

> #### Chapter 2. Overview

> The various components that make up the DeviceMate software environment are presented, along with a brief description of the software capabilities and instructions on using the sample programs.

> #### Chapter 3. DeviceMate Feature Set

> This chapter describes the software capabilities in detail, including the configuration information needed for applications running on the target. Sample programs for Rabbit-based targets (i.e., Dynamic C code) illustrate the subsystems and introduce their APIs. These sample programs (and others) are available in the `samples\dmtarget` directory. Sample programs for nonRabbit-based targets are not reproduced in this manual, but are available in `samples\dmtarget\Arch`. All sample programs are in source code format.

> #### Chapter 4. Applications Running on the DeviceMate Unit

> This chapter describes the requirements of applications running on the DeviceMate unit. The code for the sample program `samples\dmunit\devmate.c` is presented. This program runs several of the subsystems and an HTTP server.

> Information is given about setting up the Dynamic C file system, FS2. FS2 may be used by the file system subsystem and/or the message logging subsystem.

> Information on the use of the serial console available on the DeviceMate unit is also presented in this chapter.

> #### Chapter 5. Function Reference for Target Applications

> This chapter gives function descriptions for each subsystem API available on the target.

> #### Chapter 6. Porting Guidelines for NonRabbit-Based Targets

> This chapter is about the use of a nonRabbit-based target. Steps for porting code are summarized, and then specifics are given dealing with data handling, memory access, operating system interaction, and the use of preememptive multitasking environments.

> #### Appendix A. Guidelines for Writing Custom Subsystems

> Additional subsystems may be added to the DeviceMate software. This appendix gives detailed information on how to do it.

> #### Appendix B. Using XTC

> This appendix is additional support for those writing their own subsystem: it describes how a subsystem must interface with the eXtended Target Communications subsystem (XTC) to use its reliable transport service.

Z-World http://www.zworld.com Voice: (530) 757-3737 FAX: (530) 757-3792 sales@zworld.com