...Emphasis is given on serial drivers but the framework can be used with any socket.
The source also contains the implementation of a PID controller and a setpoint ramp generator.
The instrument drivers may further be incorporated in a GUI, using, e.g. PyQt or PySide. Threading is automatically taken care of. Furthermore, generic GUI (called controllers) are provided and can be extended.