Dev: Hardware Interfacing Guide

Introduction

Although our hardware uses USB connectivity, you don’t have to be a kernel level device driver programmer or any sort of expert in the USB framework to interface our devices.Our devices simply create a virtual COM port that can be written to via all sorts of methods.

Old-school Windows programmers may be familiar with using the Windows API to play with serial ports. While this is fun, the new school .NET programmers can throw together applications in literally minutes using serialPort objects. We would love to see a C# Moates Hardware Class with all of our hardware features implemented. Unfortunately, we haven’t gotten around to doing it.

One of the downfalls of using a virtual serial port is that customers seem to have problems remembering baud rate settings. Luckily there is a (not so simple) solution. FTDI devices can be interfaced through what is known as the D2XX API. Basically, you import functions from their unmanaged DLL and you can connect to their devices without the user ever having to select a COM port. We have begun developing a C# Class based on an example from the FTDI website, but it is far from completion.

If you have written some nice code for interfacing our hardware and feel like sharing, please post it here or email us.

The following guide (MS Excel format) details the commands and expected responses for all of our devices.  If you don’t see something you need or have questions, email us.

Download the Moates Hardware Interfacing Guide here (v19 2/11/10)