OBDX Development - Developer Tools and Suggestions

Programs / Tools / Scripts
kur4o
Posts: 1044
Joined: Sun Apr 10, 2016 9:20 pm

Re: OBDX Development - Developer Tools and Suggestions

Post by kur4o »

J-tools don`t use baud rate for communication with pc. It is j-tool->pcm baud rate selection[For J1850PWM can select normal speed [41600] and high speed[83300].
Also you can use any j-tool and log any protocol it supports.
.
Tazzi, do you know which dll IDS use for seed/key algos. I found some copy of IDS in my pc but there are tens of dlls to look at. I am sure some full bin can help find it in disassembly.

At some site someone claims each pcm uses 2 algos being for unlocked one for bank1-4 and one for bank5
User avatar
Tazzi
Posts: 3550
Joined: Thu May 17, 2012 8:53 pm
cars: VE SS Ute
Location: WA
Contact:

Re: OBDX Development - Developer Tools and Suggestions

Post by Tazzi »

kur4o wrote:J-tools don`t use baud rate for communication with pc. It is j-tool->pcm baud rate selection[For J1850PWM can select normal speed [41600] and high speed[83300].
Also you can use any j-tool and log any protocol it supports.
.
Tazzi, do you know which dll IDS use for seed/key algos. I found some copy of IDS in my pc but there are tens of dlls to look at. I am sure some full bin can help find it in disassembly.

At some site someone claims each pcm uses 2 algos being for unlocked one for bank1-4 and one for bank5
Search for SecAlg.dll, this specifically labels the EECV algos internally and is where I ripped out some functios in the previous pages. :thumbup:
Biggest issue currently is working out what bytes are being fed into the function specifically. The EECV ECUs may use a different algorithm AND also have different salts passed in for the different unlock levels (bank 1-4, high speed and bank 5).
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: 3550
Joined: Thu May 17, 2012 8:53 pm
cars: VE SS Ute
Location: WA
Contact:

Re: OBDX Development - Developer Tools and Suggestions

Post by Tazzi »

In-Tech wrote:Thank you for the explanation. So, it sounds like we really need to log an IDS transaction to see if we're missing the holy grail. Shoot, that's $149 for 2 days :thumbdown: hmmmm I have a ford vcm
Don't stress about spending any money on this. We will come up with a solution.
I believe I just need a different Ford EECV ECU since mine is just not playing ball!

Can you provide any numbers/partnumbers/info on your EECV? Just so I can try look up one on Ebay and get one shipped over?
Your Local Aussie Reverse Engineer
Contact for Software/Hardware development and Reverse Engineering
Site:https://www.envyouscustoms.com
Mob:+61406 140 726
Image
In-Tech
Posts: 785
Joined: Mon Mar 09, 2020 4:35 pm
Location: California

Re: OBDX Development - Developer Tools and Suggestions

Post by In-Tech »

Tazzi wrote:
In-Tech wrote:Thank you for the explanation. So, it sounds like we really need to log an IDS transaction to see if we're missing the holy grail. Shoot, that's $149 for 2 days :thumbdown: hmmmm I have a ford vcm
Don't stress about spending any money on this. We will come up with a solution.
I believe I just need a different Ford EECV ECU since mine is just not playing ball!

Can you provide any numbers/partnumbers/info on your EECV? Just so I can try look up one on Ebay and get one shipped over?
Hiya Tazzi, let me burn through what I have before you have to buy anything. I should be able to reply with a lot of information in the next 24hrs and be better equipped.
User avatar
Tazzi
Posts: 3550
Joined: Thu May 17, 2012 8:53 pm
cars: VE SS Ute
Location: WA
Contact:

Re: OBDX Development - Developer Tools and Suggestions

Post by Tazzi »

In-Tech wrote: Hiya Tazzi, let me burn through what I have before you have to buy anything. I should be able to reply with a lot of information in the next 24hrs and be better equipped.
Keep in mind its not my $$ being used, its OBDX since its for development. If I have to buy multiple units, then thats what will happen.
If I have to buy a whole damn car, I will, this is happening one way or another :lol:

Maybe we can attack this via the Operating System decompile also if Ford IDS does not play nicely.

Looks like it should be an intel based processor: http://www.auto-diagnostics.info/pdf/ford_eectch98.pdf
Apparently they moved to powerpc (PPC) in some of the later 2000+ EECV's.
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: 3550
Joined: Thu May 17, 2012 8:53 pm
cars: VE SS Ute
Location: WA
Contact:

Re: OBDX Development - Developer Tools and Suggestions

Post by Tazzi »

I went to test out logging using Forscan with the OBDX Pro FT, and it worked flawlessly for HSCAN... but... nothing on MSCAN.

I tested MSCAN on my bench setup with Ford FG modules, which could communicate and work perfectly. But when loading Forscan, only HSCAN modules would display. Immediately I started going through several hundreds of lines of code thinking I must have missed something, but it turns out to be one tiny little error in Forscan which I will pass on to Alex shortly so he can update the software:

Code: Select all

On 02/24/2023 at 15:59:18.323, PassThruConnect O:17368 took 40 us 
    DeviceID:                                     1 
    ProtocolID:                                   ISO15765_PS
    Flags:                                        No Flags Set
    BaudRate:                                   500000     //SETS BAUD RATE TO HIGH SPEED CAN - MS CAN SHOULD BE SET HERE
    *pChannelID:                                  11 
    Return Value:                                 STATUS_NOERROR              Function call successful


On 02/24/2023 at 15:59:18.323, PassThruIoctl I:17368
On 02/24/2023 at 15:59:18.360, PassThruIoctl O:17368 took 38025 us 
    ChannelID:                                    11 
    IoctlID:                                      SET_CONFIG
    Input:                                        
      SCONFIG_LIST
        NumOfParams:                              1 
        Parameter:                                J1962_PINS                = $0000030B   //SETS PINS TO MS CAN 3/11 WHICH IS CORRECT

    *Output:                                      Not Used
    Return Value:                                 STATUS_NOERROR              Function call successful
I checked with my MDI, VCM2 and the OBDX Pro FT to ensure I was not going mad. But the error has come down to an incorrect baud rate selection as seen above where it uses 500,000 instead of the required 125,000. The pins are then set next (0x030B = pins 3 and 11) which are the MSCAN pins.

I did come across a thread thats been around for a while, so this should be a nice long await fix: https://forscan.org/forum/viewtopic.php ... 3&start=10 :thumbup:
Your Local Aussie Reverse Engineer
Contact for Software/Hardware development and Reverse Engineering
Site:https://www.envyouscustoms.com
Mob:+61406 140 726
Image
Cincinnatus
Posts: 311
Joined: Fri Jul 30, 2021 5:49 pm
cars: 97 Corvette
92 Camaro
2005 Silverado
2001 Savana 2500
1998 c3500hd
1998 tahoe

Re: OBDX Development - Developer Tools and Suggestions

Post by Cincinnatus »

I'm able to access ms-can on forscan using my gm vcx nano. Wonder why it works but a cardaq 3 won't?
In-Tech
Posts: 785
Joined: Mon Mar 09, 2020 4:35 pm
Location: California

Re: OBDX Development - Developer Tools and Suggestions

Post by In-Tech »

Nice :)
User avatar
Tazzi
Posts: 3550
Joined: Thu May 17, 2012 8:53 pm
cars: VE SS Ute
Location: WA
Contact:

Re: OBDX Development - Developer Tools and Suggestions

Post by Tazzi »

Cincinnatus wrote:I'm able to access ms-can on forscan using my gm vcx nano. Wonder why it works but a cardaq 3 won't?
VX nano forces using 125000 baud rate for CANbus when setting pins to 3/11 (MSCAN pins).

So it only works due to vxdiag have basically rigged it too. I imagine this was done intentionally after discovering the issue I came across too.
Your Local Aussie Reverse Engineer
Contact for Software/Hardware development and Reverse Engineering
Site:https://www.envyouscustoms.com
Mob:+61406 140 726
Image
kur4o
Posts: 1044
Joined: Sun Apr 10, 2016 9:20 pm

Re: OBDX Development - Developer Tools and Suggestions

Post by kur4o »

I looked at the dll, and figured which code is used for each algo. EECV have legacy and normal mode, also normal mode have 2 subtypes. I will need some valid seed/key pairs to start testing the algo.

Tazzi I think your test pcm uses the legacy algo, if it gives zero as first byte.

In-tech do you have some full bins floating around we can use for disassembly.
Post Reply