Software On ELM Street - OBD2 Software Development

Programs / Tools / Scripts
User avatar
Tazzi
Posts: 3422
Joined: Thu May 17, 2012 8:53 pm
cars: VE SS Ute
Location: WA
Contact:

Re: ELM327 Software Development

Post by Tazzi »

The elm should only respond when connected in car with ignition on, or on a test bench setup with the 12v supply to pin 16(I think from memory?).

*
I found this on the net, there seems to be a fair few with issues connecting their elm device in car although working on bench. The below instructions worked for a fair few people, apparently the drivers that come with the elm devices are very outdated (version 1.003 or somewhere there abouts) and reinstalling the new drivers fixed them. Another problem is if the cars pin 16 isnt outputting 12v then the elm may have enough power the light up the leds but not enough to successfulyl initialise communication between elm and computer.
hi, i had the same issue as you guys, i installed the driver that came with the elm 327 from ebay and it didnt work so i googled it and found this site. i went to http://www.ftdichip.com/Drivers/VCP.htm
and installed the 2.04.06 drivers and it seems to be working fine now.
this is what i did:
1. uninstall the drivers that came on the cd with the "ebay elm327"
- the instructions on how to do this should be on the cd (mine were"
2. download the drivers from the link provided and unzip them in a folder that you can remember.
3. connect the elm to the usb port, it should say something like new device detected and the driver installation should pop up, instead of trying to load drivers from the "elm cd" select install from a specified location and select the folder with the newly downloaded drivers.
i then unplugged the elm and restarted the computer , then i connected it to the computer and launched the free scantool software, and it worked !!! you might not be as lucky but so far so good for me, i've used it on two cars today and it seems to be communicationg just fine. good luck
ALso to check that its not actually my software being a pain, use a free OBD2 softare such as OBDwiz to or easyobd11 to check if your elm devices actually connect. If they dont, then its an issue with the elm, if they do, then we will need to log what the software is doing and compare to mine although I suspect that it may be a driver issue?
Your Local Aussie Reverse Engineer
Contact for Software/Hardware development and Reverse Engineering
Site:https://www.envyouscustoms.com
Mob:+61406 140 726
Image
VX L67 Getrag
Posts: 2877
Joined: Sun Aug 02, 2009 9:16 pm
Location: Bayside, Melbourne, Victoria
Contact:

Re: ELM327 Software Development

Post by VX L67 Getrag »

Did a bit of testing tonight when I had 10 re-allocated minutes!
It looks like as I thought I tried monitoring the scan tool connected to a double ended dongle (LMAO) & didn't see anything happening, but also the scan tool couldn't connect to the PCM (E55) with my normal bench programming harness!

I tried every protocol as when I set it to auto it say's un-identified protocol & all 4 of the can protocols crashed when I tried searching for vin, but think it just said couldn't do on VPW?

Hopefully that may shed some light, I also tested connecting to it with all different rates & as I suspected it wouldn't find device on anything other than 38400!
Attachments
logging prog error.txt
(17.69 KiB) Downloaded 204 times
logging prog error 2.txt
(4.63 KiB) Downloaded 202 times
logging prog tried monitoring & different speeds.txt
(10.78 KiB) Downloaded 211 times
User avatar
Tazzi
Posts: 3422
Joined: Thu May 17, 2012 8:53 pm
cars: VE SS Ute
Location: WA
Contact:

Re: ELM327 Software Development

Post by Tazzi »

VX L67 Getrag wrote:Did a bit of testing tonight when I had 10 re-allocated minutes!
It looks like as I thought I tried monitoring the scan tool connected to a double ended dongle (LMAO) & didn't see anything happening, but also the scan tool couldn't connect to the PCM (E55) with my normal bench programming harness!

I tried every protocol as when I set it to auto it say's un-identified protocol & all 4 of the can protocols crashed when I tried searching for vin, but think it just said couldn't do on VPW?

Hopefully that may shed some light, I also tested connecting to it with all different rates & as I suspected it wouldn't find device on anything other than 38400!
Thank VX!!! Cant progress without testing! haha.

Looks like the elm datasheet lied to me!!!!! They said if you set the protocol to "auto" (ATSP0), that you can then "request" the protocol (ATDP) and it will tell you the protocol... But thats not what happens!!!

Code: Select all

41 55 54 4F 0D 0D 3E                              AUTO..>         

Request: 9/10/2013 4:13:35 PM.48264 (+0.0936 seconds)

 41 54 44 50 4E 0D                                 ATDPN.          

Answer: 9/10/2013 4:13:35 PM.49764 (+0.0156 seconds)

 41 30 0D 0D 3E                                    A0..>
What the above is saying.. that when I set the protocol to "Auto Search", when I the cars protocol is requested (ATDP), it actual responds back saying "AUTO". STUPID! Meant to answer back with cars current protocol!!! lol. I swear theres an elm developer just sitting there laughing his ass off.

So.. since I didnt expect the elm to respond back with "auto", this causes my program to thing it is an unknown protocol!. I will have to remove the "auto" and the protocol will need to be manually selected. Eventually when we know which vehicles use what.. Ill add a combobox with a selection of cars to make it easier.
Your Local Aussie Reverse Engineer
Contact for Software/Hardware development and Reverse Engineering
Site:https://www.envyouscustoms.com
Mob:+61406 140 726
Image
VX L67 Getrag
Posts: 2877
Joined: Sun Aug 02, 2009 9:16 pm
Location: Bayside, Melbourne, Victoria
Contact:

Re: ELM327 Software Development

Post by VX L67 Getrag »

Glad I could be of assistance, sorry I've been a bit time poor lately to help out anymore than I have!
User avatar
Tazzi
Posts: 3422
Joined: Thu May 17, 2012 8:53 pm
cars: VE SS Ute
Location: WA
Contact:

Re: ELM327 Software Development

Post by Tazzi »

Thats fine mate! I expect this development to take time to work correctly since Im flying blind without cable or car to test with haha.

Code: Select all

Request: 9/10/2013 4:13:50 PM.45864 (+0.0312 seconds)

 41 54 52 56 0D                                    ATRV.           

Answer: 9/10/2013 4:13:50 PM.47364 (+0.0156 seconds)

 31 35 2E 36 56 0D 0D 3E                           15.6V..>        

Request: 9/10/2013 4:14:14 PM.85664 (+24.3828 seconds)

 30 39 20 30 32 0D                                 09 02.          

Answer: 9/10/2013 4:14:15 PM.90164 (+1.0452 seconds)

 4E 4F 20 44 41 54 41 0D 0D 3E                     NO DATA..>      

Port closed
SO this is the response to the VPW protocol.. VX... man your input voltage is up there!

So the VIN request... its sending back "NO DATA" so the elm didnt find a response even with the timeout set to max. So.. might need to request the vin differently.. since there seems to be two different methods to request the vin.

Now looking at the can response..

Code: Select all

Request: 9/10/2013 4:14:37 PM.86664 (+2.9484 seconds)

 30 39 20 30 32 0D                                 09 02.          

Answer: 9/10/2013 4:14:37 PM.88264 (+0.0156 seconds)

 43 41 4E 20 45 52 52 4F 52 0D 0D 3E               CAN ERROR..>    

Port closed
The ELM actually sends back CAN ERROR!... Sooo.. Not too sure on that one. Might not like the header thats set? Since I guess it should be set directly to the PCM.

And finally... using the 29bit CAN..

Code: Select all

 41 54 53 48 31 38 44 41 31 30 46 31 0D            ATSH18DA10F1.   

Answer: 9/10/2013 4:14:47 PM.97764 (+0.0000 seconds)

 3F 0D 0D 3E                                       ?..>   
It didnt like the 4byte header.. even though the data sheet says it accepts that... *Sigh*, will have to set the CAN Priority byte separately.. but thats alright.

Annnnd, Ill have another go at the VIN for the CAN and VPW, see if I cant do an alternative. Something about functional and physical requests seem to be able to request the same information but differently.
Your Local Aussie Reverse Engineer
Contact for Software/Hardware development and Reverse Engineering
Site:https://www.envyouscustoms.com
Mob:+61406 140 726
Image
User avatar
Tazzi
Posts: 3422
Joined: Thu May 17, 2012 8:53 pm
cars: VE SS Ute
Location: WA
Contact:

Re: ELM327 Software Development

Post by Tazzi »

Updated app with above findings.
-Removed the Auto protocol for now
-Added CAN support for VIN and redid the VPW vin receive. Still uses 0902 as request. (Should work if pcm responds!!)
-Changed 11bit headers to 7E0 (Was 7E8 before, which is the response we were looking for..Oops!)
-Tweaked 29bit header. Might accept it this time round? Sets the standard XXYYZZ header, leaves the CAN priority.
-Changed VPW header to 6C10F1. Better priority and direct communication with pcm.. hopefully help with reads.


Whats next to add?
-Add support for 11bit and 29bit CAN engine data reads.
-Add more VPW data if it finally works in car.
-Add a continuous read function and hook up the Dials!
-Display the current "Hz" while reading (Frames/sec.. I think)
Last edited by Tazzi on Tue Jul 21, 2015 9:39 am, edited 1 time in total.
Your Local Aussie Reverse Engineer
Contact for Software/Hardware development and Reverse Engineering
Site:https://www.envyouscustoms.com
Mob:+61406 140 726
Image
VX L67 Getrag
Posts: 2877
Joined: Sun Aug 02, 2009 9:16 pm
Location: Bayside, Melbourne, Victoria
Contact:

Re: ELM327 Software Development

Post by VX L67 Getrag »

OK did further testing this morning & did most of it using the VPW as it didn't crash when tried to read vin, but it didn't work either.
Each of the CAN I tested with VIN first & they crashed each time so I didn't worry about further testing on them.

I again tried monitoring the scan tool connected to the same obd splitter, but didn't show anything I think there will have to be a different method for this?

I dialled the voltage back started at 11.9-12v & then bumped it to 12.9! I had it higher incase when doing more extensive work on the pcm's on bench flashing so it wouldn't dip too low!

I just put all 4 logs in rar saving me uploading each separately!
Attachments
OBD Log Tests.rar
(3.29 KiB) Downloaded 232 times
User avatar
Tazzi
Posts: 3422
Joined: Thu May 17, 2012 8:53 pm
cars: VE SS Ute
Location: WA
Contact:

Re: ELM327 Software Development

Post by Tazzi »

Well... I found out why the VIN section doesnt work from the VPW protocol...


Of Course GM doesnt support the normal 0902 VIN request.. Instead they do it different.
This is how to request vin for VPW protocol for GM (3C XX):
Send: $6C,$10,$F1,$3C,$01
Recv: $6C,$F1,$10,$7C,$01,[VIN segment 1 data]
Send: $6C,$10,$F1,$3C,$02
Recv: $6C,$F1,$10,$7C,$02,[VIN segment 2 data]
Send: $6C,$10,$F1,$3C,$03
Recv: $6C,$F1,$10,$7C,$03,[VIN segment 3 data]

Im not sure what the VIN request is for CAN, Id assume its similar maybe? Ill check out those logs you chucked up.. Im guessing the elm is still throwing errors on CAN
Your Local Aussie Reverse Engineer
Contact for Software/Hardware development and Reverse Engineering
Site:https://www.envyouscustoms.com
Mob:+61406 140 726
Image
User avatar
Tazzi
Posts: 3422
Joined: Thu May 17, 2012 8:53 pm
cars: VE SS Ute
Location: WA
Contact:

Re: ELM327 Software Development

Post by Tazzi »

Yep, CAN is still sending an "ERROR" for the VIN request. Actually.. It is for any request!, I saw that you clicked the "engine data read", and the elm sent back CAN ERROR.

So I did a bit of googling.. and the ELM needs to be modified to use CAN correctly!!! Apparently the R04 resistor needs to be removed to fix this. (So far from what I can tell!)
http://forum.multiecuscan.net/viewtopic ... 3&start=70

Might have to try not setting any headers, just the CAN protocol and see if it can request any data. Just let the ELM do the standard headers and go from there. Im sure Iv read people being able to use the CAN protocol happily.
And on the VPW protocol, the engine data request was also tried, but got a "NO DATA" back for the engine request.. But that might be because the pcm is speaking over CAN?

Ill update this afternoon!
Your Local Aussie Reverse Engineer
Contact for Software/Hardware development and Reverse Engineering
Site:https://www.envyouscustoms.com
Mob:+61406 140 726
Image
User avatar
antus
Site Admin
Posts: 8237
Joined: Sat Feb 28, 2009 8:34 pm
cars: TX Gemini 2L Twincam
TX Gemini SR20 18psi
Datsun 1200 Ute
Subaru Blitzen '06 EZ30 4th gen, 3.0R Spec B
Contact:

Re: ELM327 Software Development

Post by antus »

yeah regarding vpw thats right, its GMs api to gather all the pcm data by block number. vin is split accross those 3 blocks. its the same API to gather osid, serial etc etc too. its also worth stripping non-ascii before you try to display it.
Have you read the FAQ? For lots of information and links to significant threads see here: http://pcmhacking.net/forums/viewtopic.php?f=7&t=1396
Post Reply