Closed jrcichra closed 3 months ago
Here's what I'm seeing stepping through with VSCode debugging:
I'm betting it's because the mentioned library does not start with echoing...
Hey @jrcichra!
I have never used an emulator before, but I have been wanting to add an emulator in the testing suite. So thanks for bring that to my attention.
Yes, the problem you are encountering has to do with the library expecting the device to echo back all commands that you send to it.
The library does two things when it is initialized:
Resetting a device will cause the device to use the default factory settings, one of which is enabling echoing. This is the default behavior of a real ELM327-device according to the data sheet.
The goal of this library was to make it easy to use, hence the resetting, automatic protocol discovery, echo verification etc. However, lately I have been thinking about changing how the library works, so that only the user of the library decides which commands are sent to the device, and not the library. This (your problem) is another reason why changing how the library works is a good idea.
What I will do is change how the library works, and then I'm sure you will be able to use the emulator. After that we can look at how we could integrate the emulator in the test suite.
I'm thinking now, if the data sheet for ELM327 should have echoing on by default, it makes more sense to fix the emulator, not this codebase.
I like the ease of use this library presents. Maybe we can add checks for non-standard ELM327 behaviors and account for them.
Description
I'm trying to test this library against https://github.com/Ircama/ELM327-emulator. I got this error after doing the following: