Diagnosing and programming all types of vehicles with high precision in detecting faults and updating software