Creating a Custom Driver
You can create a custom driver for the SmartServer to provide support for additional protocols not built into the standard SmartServer software. To develop a custom driver you implement your driver-specific code in C or C++ using the GNU C++ compiler (g++) and link your driver with the IAP Driver Library (IDL) that is included with the SmartServer. See the following sections for a description of the IDL API that you will use to create your custom driver:
This section contains working code samples that provide an overview of the basic software architecture of an IDL driver and include example implementations of several of the common driver functions. Additional documentation and a complete set of source files for the example driver are in the following GitHub repository:
Comments in the source code illustrate areas where you can add protocol-specific code, and the example outputs information to the console when the callback functions are triggered to document the parameters passed between the IAP Driver Library (IDL) and the custom driver.
This section consists of the following:
- Implementation Steps
- Custom Driver Example Overview
- Custom Driver File Locations
- main.cpp
- example.cpp
- Additional Files
- Compiling a Custom Driver
- Running a Custom Driver
- Debugging a Custom Driver
- SmartServer IoT Ethernet, RS-485 Ports, and USB Ports