I've written many pieces of software in the past that utilize Controller Area Network (CAN) communication. Some software was written for Windows and some software was written for Linux. Plus each CANbus device requires different code and libraries to control the device and several applications required support for multiple devices. So I began using the Qt library from Trolltech (Nokia) to simplify development by creating a shared codebase for Windows and Linux. Over time I've rolled that code into a simple API so that I can easily add support for CAN communication to software. Later I added dynamically-loaded plug-ins to support new CANbus devices without modifying the software.
Today I released the software as the OpenCAN platform. OpenCAN is open source software licensed under the LGPL. So you can support GPL and proprietary CAN device drivers and use OpenCAN in free and proprietary software. You don't have to look far to find software using OpenCAN. CreateX is one piece of software that implements CAN communication using OpenCAN.
For more information and to download the code visit the OpenCAN website.
