StreamDevice is a generic EPICS device support for devices with a "byte stream" based communication interface. That means devices that can be controlled by sending and receiving strings (in the broadest sense, including non-printable characters and even null-bytes). Examples for this type of communication interface are serial line (RS-232, RS-485, ...), IEEE-488 (also known as GPIB or HP-IB), and TCP/IP. StreamDevice comes with an interface to asynDriver, which implements the low-level support for those communication interfaces. But it can be extended to support other bus drivers.
StreamDevice supports all standard records of EPICS base which can have device support. It is also possible to write support for new record types.
The driver has originally been developped at DELTA in 1999. Version 2 has been completely rewritten for EPICS 3.14. But with some tweaks, it also runs on 3.13.7 or higher. It supports many new features and its new API structure makes it easier to add new formats, bus interfaces, etc.
StreamDevice 2 has been tested on:
Thanks to all testers. Please tell me experiences or problems with other operating systems. Also send me a mail if compilation generates any errors or warnings.
Read the full documentation. (The Programmer's Guide is not yet complete but growing.) Or download it as a PDF
The StreamDevice software is now in git.