PowerBroker2 / ELMduino

Arduino OBD-II Bluetooth Scanner Interface Library for Car Hacking Projects
MIT License
635 stars 123 forks source link

Update for fix for #211 #214

Closed jimwhitelaw closed 9 months ago

jimwhitelaw commented 9 months ago

Because scaleFactor in processPID() and conditionResponse() is a float, the product of (response * scaleFactor) is automatically cast to float and potentially loses data. This change makes scaleFactor a double as well, keeping response a full 64 bits wide.

Not all of the return statements in conditionResponse() had the explicit cast to double implemented previously; with this change the typecast is no longer needed as it always returns a double.

I have updated the comment/description for both methods to reflect the change in return type.