added driver detection