python-OBD
python-OBD copied to clipboard
How to make py-obd discard duplicate responses
I am trying to get OBD information from a Toyota ETIOS car using this OBD Bluetooth devuce
I could see three types of responses for the same command : 2 unsuccessful and 1 successful
- "No Data"
Testing command : GET_DTC
[obd.obd] Sending command: b'03': Get DTCs
[obd.elm327] write: b'03\r\n'
[obd.elm327] read: b'NO DATA\r\r>'
[]
- Failure to parse due to duplicate response
[obd.obd] Sending command: b'0115': O2: Bank 1 - Sensor 2 Voltage
[obd.elm327] write: b'01151\r\n'
[obd.elm327] read: b'7E8 04 41 15 00 FF \r7E8 04 41 15 00 FF \r\r>'
[obd.protocols.protocol_can] Dropping frame in multi-frame response not marked as FF or CF
[obd.protocols.protocol_can] Dropping frame in multi-frame response not marked as FF or CF
[obd.protocols.protocol_can] Never received frame marked FF
[obd.obd] No valid OBD Messages returned
None
- Successful response : Sometime the same command that failed in 2 succeeds:
[obd.obd] Sending command: b'0115': O2: Bank 1 - Sensor 2 Voltage
[obd.elm327] write: b'01151\r\n'
[obd.elm327] read: b'7E8 04 41 15 9C FF \r\r>'
0.78 volt
Can someone please answer my questions:
- Why am I getting "No Data" response from the bluetooth device? Is it because the ECU didn't respond in time?
- Why am I getting duplicate responses from the bluetooth device?
- I know that the above queries might not be relevant here. So at least let me know how I can configure py-obd to ignore the duplicate responses?
I would really appreciate any help on this. Or please let me know if there is somewhere else I can get answer for this
Hi @Kirangey , given that this issue deals with inconsistent response behaviors given the same issuing commands, it might have something to do with #122 . Please take a look and let me know if #122 resolves your problem. Thanks :)