Pages: 1 ... 12 13 [14] 15 16 ... 29
Author Topic: Haldex Controllers Thinking.....  (Read 276777 times)
aef
Hero Member
*****

Karma: +70/-46
Offline Offline

Posts: 1601


« Reply #195 on: December 17, 2015, 06:10:31 AM »

i love the winter months...  Grin
Logged
john9357
Full Member
***

Karma: +10/-1
Offline Offline

Posts: 54


« Reply #196 on: December 17, 2015, 06:40:39 AM »

Jfis
Logged
aef
Hero Member
*****

Karma: +70/-46
Offline Offline

Posts: 1601


« Reply #197 on: December 17, 2015, 06:48:39 AM »

Would recommend to create a own topic for jfis. Looks nice Smiley

Back to topic: which tool to read haldex via kline?
Logged
DT
Full Member
***

Karma: +20/-1
Offline Offline

Posts: 184


« Reply #198 on: December 18, 2015, 05:14:41 PM »

less than 30min to fully disassemble in IDA.  Smiley
Logged

john9357
Full Member
***

Karma: +10/-1
Offline Offline

Posts: 54


« Reply #199 on: December 18, 2015, 06:00:43 PM »

So simple!!
Logged
aef
Hero Member
*****

Karma: +70/-46
Offline Offline

Posts: 1601


« Reply #200 on: December 19, 2015, 04:02:40 AM »

So as i said before i like the winter months were all the nerds sit infront of their computers.
Thumbs up to all the new users for the informations on the last pages of this thread. Shocked

Just a little summary:
@ccyberwing is able to read the flash via kline and will hopefully share how he did this
@john9357 was able to read and write the eeprom with the login of 5207 ans his command line tools
@DT and john already disassembled the whole flash in IDA

Looks like john has a spare "race" haldex and once he was able to read it one can compare the stock and race flash?
Hopefully there is a way to write to the flash too.

Logged
vwaudiguy
Hero Member
*****

Karma: +53/-37
Offline Offline

Posts: 2024



« Reply #201 on: December 19, 2015, 08:54:59 AM »

Great work, guys. I haven't seen much progress on this thread for some time, kind of lost hope. I have an orange controller we could read (mounted in the car). Let me know how I can do it, and I'll post it up. If the controller needs to be removed to read it, I won't be able to do this for a couple of weeks. I could do a read over the next couple of days though if I can read it in the car.
Logged

"If you have a chinese turbo, that you are worried is going to blow up when you floor it, then LOL."
sonique
Sr. Member
****

Karma: +24/-12
Offline Offline

Posts: 283


« Reply #202 on: December 28, 2015, 07:13:42 PM »

Nice Thread, you are very close to read this Controller.
If you want i can write a little guide how to read this controllers (in christmas holidays).

About flash sizes: there exist both variants, 29F100 and F200.

In the meantime a small christmas present as attachment. full readout,flash & eeprom.  Wink

best regards
Tom

yes plz write  little guide Wink
thanks
Logged
dream3R
Hero Member
*****

Karma: +18/-8
Offline Offline

Posts: 1194


« Reply #203 on: December 30, 2015, 07:48:14 PM »

Good progress guys.   It will be possible to write via kline I'm sure.   At least the calibration blocks...

Logged



How to work out values from an A2L Smiley

http://nefariousmotorsports.com/forum/index.php?topic=5525.msg52371#msg52371


Starting Rev's http://nefariousmotorsports.com/forum/index.php?topic=5397.msg51169#msg51169

noobs read this before asking http://nefariousmotorsports.com/forum/index.php?topic=9014.0title=


ORGORIGINAL 05 5120 creator for Volvo
ORIGINAL Datalogger (Freeware) Author
ORGINAL finder of the 'extra' torque' limits
I don't have ME7.01 A2L I just use ID
dream3R
Hero Member
*****

Karma: +18/-8
Offline Offline

Posts: 1194


« Reply #204 on: December 30, 2015, 07:53:22 PM »

less than 30min to fully disassemble in IDA.  Smiley

Slow pc lol?   Did you get all of the registers setup?

The code is weird I think compared to bosch  c167.  The SBL for Volvo is one gigantic function.   Meh.

Does it follow kwp?
Logged



How to work out values from an A2L Smiley

http://nefariousmotorsports.com/forum/index.php?topic=5525.msg52371#msg52371


Starting Rev's http://nefariousmotorsports.com/forum/index.php?topic=5397.msg51169#msg51169

noobs read this before asking http://nefariousmotorsports.com/forum/index.php?topic=9014.0title=


ORGORIGINAL 05 5120 creator for Volvo
ORIGINAL Datalogger (Freeware) Author
ORGINAL finder of the 'extra' torque' limits
I don't have ME7.01 A2L I just use ID
DT
Full Member
***

Karma: +20/-1
Offline Offline

Posts: 184


« Reply #205 on: January 05, 2016, 08:58:28 PM »

ROMEN=0 in syscon (1204h) indicate that internal ROM i disabled
BUSCON0 #48eh
BTYP=10 16bit demultiplexed

P0H.4-3 (SALSEL) is probably 11 at startup/reset , hence 256Kb (default without pull-downs)

From what I can see from absolute addressing the flash file is located at 0x0 to 0x20000
flash gets hidden by cpu at following locations. A feature of c16x.
0x0e000 - 0x0e7ff
and
0x0ef00 - 0x0ffff
but in the file these only contain ff.

I might miss something but there are some things I cannot understand.
My problem is that there are also absolute addressing to a handful addresses that does not contain code but rather data or ascii and since DPP doesn't affect absolute addressing I am stuck.

example: (perfectly ok code, and not data that could be interpreted as code)

ROM:8000 ; =============== S U B R O U T I N E =======================================
ROM:8000
ROM:8000
ROM:8000 sub_8000:                               ; CODE XREF: ROM:8048P
ROM:8000                                         ; ROM:8148P ...
ROM:8000                 movb    byte_E152, ZEROS
ROM:8004                 movb    rl4, #8
ROM:8006                 movb    byte_E153, rl4
ROM:800A                 mov     word_E154, ZEROS
ROM:800E                 mov     word_E156, ZEROS   F6 8E 56 E1
ROM:8012                 mov     word_E158, ZEROS   F6 8E 58 E1
ROM:8016                 mov     word_E15A, ZEROS   F6 8E 5A E1
ROM:801A                 mov     word_E15C, ZEROS   F6 8E 5C E1
ROM:801E                 mov     r12, #6054h      E6 FC 54 60
ROM:8022                 calls   0, loc_6E8C      DA 00 8C 6E
ROM:8026                 calls   0, unk_6D94      DA 00 94 6D
ROM:802A                calls   0, unk_6FAE      DA 00 AE 6F
ROM:802E                 rets            DB 00
ROM:802E ; End of function sub_8000

I've not had time to look for specific functions like communication yet.
Logged

dream3R
Hero Member
*****

Karma: +18/-8
Offline Offline

Posts: 1194


« Reply #206 on: January 05, 2016, 11:13:05 PM »

ROMEN=0 in syscon (1204h) indicate that internal ROM i disabled
BUSCON0 #48eh
BTYP=10 16bit demultiplexed

P0H.4-3 (SALSEL) is probably 11 at startup/reset , hence 256Kb (default without pull-downs)

From what I can see from absolute addressing the flash file is located at 0x0 to 0x20000
flash gets hidden by cpu at following locations. A feature of c16x.
0x0e000 - 0x0e7ff
and
0x0ef00 - 0x0ffff
but in the file these only contain ff.

I might miss something but there are some things I cannot understand.
My problem is that there are also absolute addressing to a handful addresses that does not contain code but rather data or ascii and since DPP doesn't affect absolute addressing I am stuck.

example: (perfectly ok code, and not data that could be interpreted as code)

ROM:8000 ; =============== S U B R O U T I N E =======================================
ROM:8000
ROM:8000
ROM:8000 sub_8000:                               ; CODE XREF: ROM:8048P
ROM:8000                                         ; ROM:8148P ...
ROM:8000                 movb    byte_E152, ZEROS
ROM:8004                 movb    rl4, #8
ROM:8006                 movb    byte_E153, rl4
ROM:800A                 mov     word_E154, ZEROS
ROM:800E                 mov     word_E156, ZEROS   F6 8E 56 E1
ROM:8012                 mov     word_E158, ZEROS   F6 8E 58 E1
ROM:8016                 mov     word_E15A, ZEROS   F6 8E 5A E1
ROM:801A                 mov     word_E15C, ZEROS   F6 8E 5C E1
ROM:801E                 mov     r12, #6054h      E6 FC 54 60
ROM:8022                 calls   0, loc_6E8C      DA 00 8C 6E
ROM:8026                 calls   0, unk_6D94      DA 00 94 6D
ROM:802A                calls   0, unk_6FAE      DA 00 AE 6F
ROM:802E                 rets            DB 00
ROM:802E ; End of function sub_8000

I've not had time to look for specific functions like communication yet.

That's interesting.  Did you find the Dpp settings?  To me it looks like the segment DPP is wrong.
Logged



How to work out values from an A2L Smiley

http://nefariousmotorsports.com/forum/index.php?topic=5525.msg52371#msg52371


Starting Rev's http://nefariousmotorsports.com/forum/index.php?topic=5397.msg51169#msg51169

noobs read this before asking http://nefariousmotorsports.com/forum/index.php?topic=9014.0title=


ORGORIGINAL 05 5120 creator for Volvo
ORIGINAL Datalogger (Freeware) Author
ORGINAL finder of the 'extra' torque' limits
I don't have ME7.01 A2L I just use ID
dream3R
Hero Member
*****

Karma: +18/-8
Offline Offline

Posts: 1194


« Reply #207 on: January 05, 2016, 11:20:46 PM »

Dpp's lol 0, 1, 2 + 3 IDA default as well so easy.
Logged



How to work out values from an A2L Smiley

http://nefariousmotorsports.com/forum/index.php?topic=5525.msg52371#msg52371


Starting Rev's http://nefariousmotorsports.com/forum/index.php?topic=5397.msg51169#msg51169

noobs read this before asking http://nefariousmotorsports.com/forum/index.php?topic=9014.0title=


ORGORIGINAL 05 5120 creator for Volvo
ORIGINAL Datalogger (Freeware) Author
ORGINAL finder of the 'extra' torque' limits
I don't have ME7.01 A2L I just use ID
dream3R
Hero Member
*****

Karma: +18/-8
Offline Offline

Posts: 1194


« Reply #208 on: January 06, 2016, 12:30:28 AM »

byte 8000h is added to a register in the STUTRAP_handler, how odd, it's definitely code though?


Also MEM_EXT:8F98 location calls a function, look it's ASCII lol


edit I don't think 0x8000 is a function it's a struct/table.........................
« Last Edit: January 06, 2016, 12:53:10 AM by dream3R » Logged



How to work out values from an A2L Smiley

http://nefariousmotorsports.com/forum/index.php?topic=5525.msg52371#msg52371


Starting Rev's http://nefariousmotorsports.com/forum/index.php?topic=5397.msg51169#msg51169

noobs read this before asking http://nefariousmotorsports.com/forum/index.php?topic=9014.0title=


ORGORIGINAL 05 5120 creator for Volvo
ORIGINAL Datalogger (Freeware) Author
ORGINAL finder of the 'extra' torque' limits
I don't have ME7.01 A2L I just use ID
john9357
Full Member
***

Karma: +10/-1
Offline Offline

Posts: 54


« Reply #209 on: January 06, 2016, 09:34:19 AM »

i find the different id use for can :
Code:
seg009:0006                                         ; sub_12766+40P
seg009:0006                 calls   1, sub_10356
seg009:000A                 mov     r12, #6000h
seg009:000E                 calls   1, sub_14314
seg009:0012                 calls   1, sub_1442A
seg009:0016                 mov     r12, #1
seg009:0018                 mov     r13, #280h      ; id can motor1
seg009:001C                 calls   1, sub_1463C
seg009:0020                 mov     r12, #2
seg009:0022                 mov     r13, #288h      ; id can motor2
seg009:0026                 calls   1, sub_1463C
seg009:002A                 mov     r12, #3
seg009:002C                 mov     r13, #480h      ; id can motor3
seg009:0030                 calls   1, sub_1463C
seg009:0034                 mov     r12, #7
seg009:0036                 mov     r13, #320h      ; id can instrument
seg009:003A                 calls   1, sub_1463C
seg009:003E                 mov     r12, #4
seg009:0040                 mov     r13, #1A0h      ; id can abs1
seg009:0044                 calls   1, sub_1463C
seg009:0048                 mov     r12, #5
seg009:004A                 mov     r13, #4A0h      ; id can abs2
seg009:004E                 calls   1, sub_1463C
seg009:0052                 mov     r12, #6
seg009:0054                 mov     r13, #2A0h      ; id can abs3
seg009:0058                 calls   1, sub_1463C
seg009:005C                 mov     r12, #8
seg009:005E                 mov     r13, #6C0h      ; id can ?
seg009:0062                 calls   1, sub_1463C
seg009:0066                 mov     r12, #0Ah
seg009:0068                 mov     r13, #6C1h      ; id can ?
seg009:006C                 calls   1, sub_1463C
seg009:0070                 mov     r12, #0Eh
seg009:0072                 mov     r13, #2C0h      ; id can allroad
seg009:0076                 calls   1, sub_1463C
seg009:007A                 mov     r12, #0Bh
seg009:007C                 mov     r13, #6C2h      ; id can ?
seg009:0080                 calls   1, sub_1463C
seg009:0084                 mov     r12, #0Ch
seg009:0086                 mov     r13, #6C3h      ; id can ?
seg009:008A                 calls   1, sub_1463C
seg009:008E                 mov     r12, #0Dh
seg009:0090                 mov     r13, #6C4h      ; id can ?
seg009:0094                 calls   1, sub_1463C
seg009:0098                 calls   1, sub_143E8
seg009:009C                 rets
Logged
Pages: 1 ... 12 13 [14] 15 16 ... 29
  Print  
 
Jump to:  

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines Page created in 0.026 seconds with 17 queries. (Pretty URLs adds 0.001s, 0q)