diff options
-rw-r--r-- | libraries/OBD2UART/OBD2UART.cpp | 5 | ||||
-rw-r--r-- | libraries/OBD2UART/OBD2UART.h | 2 |
2 files changed, 2 insertions, 5 deletions
diff --git a/libraries/OBD2UART/OBD2UART.cpp b/libraries/OBD2UART/OBD2UART.cpp index 5f1dbd7..f5a1b58 100644 --- a/libraries/OBD2UART/OBD2UART.cpp +++ b/libraries/OBD2UART/OBD2UART.cpp @@ -319,8 +319,6 @@ bool COBD::getVIN(char* buffer, byte bufsize) bool COBD::isValidPID(byte pid) { - if (pid >= 0x7f) - return true; pid--; byte i = pid >> 3; byte b = 0x80 >> (pid & 0x7); @@ -442,10 +440,9 @@ bool COBD::init(OBD_PROTOCOLS protocol) stage = 3; // load pid map memset(pidmap, 0xff, sizeof(pidmap)); - for (byte i = 0; i < 4; i++) { + for (byte i = 0; i < 8; i++) { byte pid = i * 0x20; sprintf(buffer, "%02X%02X\r", dataMode, pid); - delay(10); write(buffer); delay(10); if (!receive(buffer, sizeof(buffer), OBD_TIMEOUT_LONG) || checkErrorMessage(buffer)) break; diff --git a/libraries/OBD2UART/OBD2UART.h b/libraries/OBD2UART/OBD2UART.h index 38688fa..4bf02fe 100644 --- a/libraries/OBD2UART/OBD2UART.h +++ b/libraries/OBD2UART/OBD2UART.h @@ -156,7 +156,7 @@ public: // occurrence of errors byte errors = 0; // bit map of supported PIDs - byte pidmap[4 * 4] = {0}; + byte pidmap[4 * 8] = {0}; protected: virtual char* getResponse(byte& pid, char* buffer, byte bufsize); virtual int receive(char* buffer, int bufsize, unsigned int timeout = OBD_TIMEOUT_SHORT); |