Driver algorithm