Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Freematics OBD-II UART Adapter V2.1 CANNOT Initialize! #70

Open
ALEEF02 opened this issue Aug 5, 2020 · 4 comments
Open

Freematics OBD-II UART Adapter V2.1 CANNOT Initialize! #70

ALEEF02 opened this issue Aug 5, 2020 · 4 comments

Comments

@ALEEF02
Copy link

ALEEF02 commented Aug 5, 2020

Hi, I spent over a month waiting for this item to arrive at my doorstep due to constant package delays. I am now extremely frustrated because I cannot get the OBD reader to initialize. I have double-checked all the connections and am trying to debug the reader and why obd.init() keeps failing. I am using a slightly modified version of the obd_uart_test, which just replaces the Serial outputs with screen output. Everything appears fine until the commands 0100, 010C, and 0902 are sent. Those return UNABLE TO CONNECT. Mems afterwords still returns Yes. From there on, I am stuck in a loop, waiting for the reader to initialize. I'm kinda lost here, so any and all help would be welcome. Thanks!
image

  tft.println("Connecting...");
  
  for (;;) {
    delay(10000);
    byte version = obd.begin();
    tft.print("Freematics OBD-II Adapter ");
    if (version > 0) {
      tft.println("detected");
      tft.print("OBD firmware version ");
      tft.print(version / 10);
      tft.print('.');
      tft.println(version % 10);
      break;
    } else {
      tft.println("not detected");
    }
  }

  testATcommands();
  hasMEMS = obd.memsInit();
  tft.print("MEMS:");
  tft.println(hasMEMS ? "Yes" : "No");

  do {
    tft.println("Initializing...");
  } while (!obd.init());
  tft.println("OBD connected!");
@mitchschaft
Copy link

It's because the code hasn't been updated in years. I've never gotten it to work and just use Tunerview.

@ALEEF02
Copy link
Author

ALEEF02 commented Aug 5, 2020

@mitchschaft Thank you for the timely reply! Could you link me to that library?
Edit: Found out that that's an app for Android. I need a library that will work with Arduino :D

@firepower2k11
Copy link

@ALEEF02 According to the displayed messages your adapter itself works so far but it can't communicate with the car.
Which protocol does your car use?
If you're using ISO9141-2 over K-Line it will never work, as I already wrote in the other thread you mentioned me.

@ALEEF02
Copy link
Author

ALEEF02 commented Aug 31, 2020

@firepower2k11 My car uses the SAE J1850 VPW protocol, which I learned in an email thread with @stanleyhuangyc. Since then he has stopped replying to said emails. I was at first wondering if I could get a refund, at which he stopped replying. Now I am wondering if there is a hardware or software modification that can be made to the adapter so that it can use the SAE J1850 VPW protocol. I tried modifying the library by adding PROTO_SAE_VPW = 2 to the OBD_PROTOCOLS list, but that did not help. If you have any ideas for this, that would be wonderful. Thanks :D

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants