Motronic 2.10.3 (SAAB)
- flaset
- Posts: 16
- Joined: Mon Jan 15, 2018 8:42 pm
- cars: SAAB 9-3 Aero -02, SAAB 900T16 Cab -89 & SAAB 900T8 -85
- Location: GOT, Sweden
Motronic 2.10.3 (SAAB)
Hi guys!
I'm working on a XDF for the SAAB Motronic 2.10.3 "0261204400_1037358528" and need some help figuring out how to calculate the axis scalars since they seem to differ a little bit from other Bosch code I've worked with...?
The bin is actually read from the ECU using tunerproRT and the Motronic kwp71 plugin found on this page, seems to works fine.
For example, we know basics that;
36 - Batt, Volt. x*0,0704
38 - ECT x*-80
3B - RPM *40
40 - Int. Load
4B - MAF?
54 - Ign.Adv x*(-0,75)+78 (Deg)
But in this 2.10.3-file you can find values like;
03
33
36
37 - ECT?
3a - RPM? (256-x)*40 ?
3f - LOAD?
5c
6d
8b
I would really appreciate some help, if someone is interested and got the time, i have the bin-file, a "starter-xdf" with all maps from pointer-map in it, and also a txt-file with copy-pasted adresses and hex-values for each map like;
cb b7 - 37 04 1f 2f 5d 41 0a 0a 0a 0a (CBBD)
cb c1 - 8b 04 0a 14 28 ba 20 0a 0f 0f (CBC7)
cb cb - 37 05 10 26 38 2b 63 0b 0b 0b 0c 0d (CBD2)
Thanks in advance
BR
Andreas J
I'm working on a XDF for the SAAB Motronic 2.10.3 "0261204400_1037358528" and need some help figuring out how to calculate the axis scalars since they seem to differ a little bit from other Bosch code I've worked with...?
The bin is actually read from the ECU using tunerproRT and the Motronic kwp71 plugin found on this page, seems to works fine.
For example, we know basics that;
36 - Batt, Volt. x*0,0704
38 - ECT x*-80
3B - RPM *40
40 - Int. Load
4B - MAF?
54 - Ign.Adv x*(-0,75)+78 (Deg)
But in this 2.10.3-file you can find values like;
03
33
36
37 - ECT?
3a - RPM? (256-x)*40 ?
3f - LOAD?
5c
6d
8b
I would really appreciate some help, if someone is interested and got the time, i have the bin-file, a "starter-xdf" with all maps from pointer-map in it, and also a txt-file with copy-pasted adresses and hex-values for each map like;
cb b7 - 37 04 1f 2f 5d 41 0a 0a 0a 0a (CBBD)
cb c1 - 8b 04 0a 14 28 ba 20 0a 0f 0f (CBC7)
cb cb - 37 05 10 26 38 2b 63 0b 0b 0b 0c 0d (CBD2)
Thanks in advance
BR
Andreas J
9³ Aero SS -03, 9³ Aero Coupé -02, 900T16 Cab -89 & 900T8 -85 on garaget.org website
Re: Motronic 2.10.3 (SAAB)
What model Saab used a Motronic M2.10.3? Was it the the 9000 built on the Tipo 4 platform?
Post up your bin and XDF if you can, I'd be interested in taking a look at it.
If the base code is similar to one of the Alfa bins of the same ECU series, I might be able to work out most of your missing ram labels pretty quickly.
Post up your bin and XDF if you can, I'd be interested in taking a look at it.
If the base code is similar to one of the Alfa bins of the same ECU series, I might be able to work out most of your missing ram labels pretty quickly.
- flaset
- Posts: 16
- Joined: Mon Jan 15, 2018 8:42 pm
- cars: SAAB 9-3 Aero -02, SAAB 900T16 Cab -89 & SAAB 900T8 -85
- Location: GOT, Sweden
Re: Motronic 2.10.3 (SAAB)
It was used in the "new generation" 900, between modelyears 96->98 N/A engines, I think.festy wrote:What model Saab used a Motronic M2.10.3? Was it the the 9000 built on the Tipo 4 platform?
I'll try to attach these files later this afternoon.
EDIT: I've been glancing at some Alfa stuff, but I think I haven't found so much similarities....?
Thanks!
//
Andreas
Last edited by flaset on Wed Jan 17, 2018 4:13 am, edited 1 time in total.
9³ Aero SS -03, 9³ Aero Coupé -02, 900T16 Cab -89 & 900T8 -85 on garaget.org website
- flaset
- Posts: 16
- Joined: Mon Jan 15, 2018 8:42 pm
- cars: SAAB 9-3 Aero -02, SAAB 900T16 Cab -89 & SAAB 900T8 -85
- Location: GOT, Sweden
Re: Motronic 2.10.3 (SAAB)
Here's the binary and the basic xdf, there are still many many mapadresses left to insert, but it may be a starter for those who's intrested in helping me out, or just for their own knowlege..
If there's some questions I'll try to answer them as good as I can.
BR
Andreas
If there's some questions I'll try to answer them as good as I can.
BR
Andreas
- Attachments
-
- motronic_2.10.3.xdf
- (96.22 KiB) Downloaded 463 times
-
- pointers_0261204400_2.txt
- (15.31 KiB) Downloaded 450 times
-
- 0261204400_1037358528.bin
- (128 KiB) Downloaded 463 times
9³ Aero SS -03, 9³ Aero Coupé -02, 900T16 Cab -89 & 900T8 -85 on garaget.org website
Re: Motronic 2.10.3 (SAAB)
Looks like a good start there
You said you used Tuner Pro to download the bin - did the ECU report its hardware and software ID correctly?
Are you able to try downloading the bin again, but this time in the Plug-in settings in Tuner Pro, uncheck the 'Read/write data only' option?
Otherwise the program section is skipped during download, which makes bin and checksum identification pretty hard
Also I see it tried to download up to 128k which would have taken a long time, if you load an XDF (even a blank one) with the bin size set to 0x10000 in the header, it will only download 64k which looks to be the correct size.
I can't identify the ram addresses because the program section isn't in the bin, but I can take a few guesses based on common values.
03h is probably a transient delta, maybe AE? It could also change, i.e. it could represent AE in one table, and something different in others.
37h is most likely CTS
3Fh is load
5Ch is probably dwell - if that's right, then I would assume it should be getting its value from the table at CA18h.
I ran your bin through my XDF tool after making a couple of assumptions about addresses, the XDF is attached. Don't assume that any of it is correct, my program makes a lot of guesses and assumptions, and often gets things wrong
You said you used Tuner Pro to download the bin - did the ECU report its hardware and software ID correctly?
Are you able to try downloading the bin again, but this time in the Plug-in settings in Tuner Pro, uncheck the 'Read/write data only' option?
Otherwise the program section is skipped during download, which makes bin and checksum identification pretty hard
Also I see it tried to download up to 128k which would have taken a long time, if you load an XDF (even a blank one) with the bin size set to 0x10000 in the header, it will only download 64k which looks to be the correct size.
I can't identify the ram addresses because the program section isn't in the bin, but I can take a few guesses based on common values.
03h is probably a transient delta, maybe AE? It could also change, i.e. it could represent AE in one table, and something different in others.
37h is most likely CTS
3Fh is load
5Ch is probably dwell - if that's right, then I would assume it should be getting its value from the table at CA18h.
I ran your bin through my XDF tool after making a couple of assumptions about addresses, the XDF is attached. Don't assume that any of it is correct, my program makes a lot of guesses and assumptions, and often gets things wrong
- Attachments
-
- 0261204400_1037358528.xdf
- added checksum details
- (223.85 KiB) Downloaded 428 times
Last edited by festy on Thu Jan 18, 2018 12:29 pm, edited 1 time in total.
- flaset
- Posts: 16
- Joined: Mon Jan 15, 2018 8:42 pm
- cars: SAAB 9-3 Aero -02, SAAB 900T16 Cab -89 & SAAB 900T8 -85
- Location: GOT, Sweden
Re: Motronic 2.10.3 (SAAB)
To be honest, I don't really know what it actually reports, at least the info is from the ID-string in the bottom of the binary, this is what I get:festy wrote: You said you used Tuner Pro to download the bin - did the ECU report its hardware and software ID correctly?
Your'e totally right, I wondered why I got blanks before 0x4000 and no SW-ID and checksum in the end of the binary, now I know, didn't realize that option there, thanks!festy wrote:Are you able to try downloading the bin again, but this time in the Plug-in settings in Tuner Pro, uncheck the 'Read/write data only' option?
Otherwise the program section is skipped during download, which makes bin and checksum identification pretty hard
I'll attach the complete binary, looks much better when all info is included.
And, maybe you will be able to help me out with some more relevant info, I've tried some XDF-making-tool I found, but it wouldn't accept my binary...
That's also correct.festy wrote:Also I see it tried to download up to 128k which would have taken a long time, if you load an XDF (even a blank one) with the bin size set to 0x10000 in the header, it will only download 64k which looks to be the correct size.
Since I read somewhere that the flash in these ECU's was 128k and I had not yet realized that you could download per XDF-size as you mentioned..
I'd appreciate if you'd gave it another try now when it's complete, is there any other info I can provide you with, I'll be glad to try to help.festy wrote: I can't identify the ram addresses because the program section isn't in the bin, but I can take a few guesses based on common values.
- Attachments
-
- 0261204400_1037358528_64kb.bin
- (64 KiB) Downloaded 419 times
9³ Aero SS -03, 9³ Aero Coupé -02, 900T16 Cab -89 & 900T8 -85 on garaget.org website
Re: Motronic 2.10.3 (SAAB)
Yes that one looks much better.
I've only had a quick look through the code, but can see a couple of generic Bosch functions I recognise.
To skip the checksum on reset, set 3CD8h bit 4.
I've added the checksum calculation and bypass flag to the XDF in my earlier post.
I've only had a quick look through the code, but can see a couple of generic Bosch functions I recognise.
To skip the checksum on reset, set 3CD8h bit 4.
I've added the checksum calculation and bypass flag to the XDF in my earlier post.
- flaset
- Posts: 16
- Joined: Mon Jan 15, 2018 8:42 pm
- cars: SAAB 9-3 Aero -02, SAAB 900T16 Cab -89 & SAAB 900T8 -85
- Location: GOT, Sweden
Re: Motronic 2.10.3 (SAAB)
Thank you very much for sharing your knowledge!festy wrote:I've added the checksum calculation and bypass flag to the XDF in my earlier post.
I will from now spend some time on trying to find the engine speed limiter/ revlimiter, it would be great to raise this a little bit.
After this, I'll maybe try to flash my first 2.10.3 ECU, we'll see if I turn it into a brick..
If I manage to carry this out, next up is hook up the gear in a car, are one able to use the datatrace-function in Tunerpro with the kkl-interface?
//
Andreas
9³ Aero SS -03, 9³ Aero Coupé -02, 900T16 Cab -89 & 900T8 -85 on garaget.org website
Re: Motronic 2.10.3 (SAAB)
If you start with one of the ADX files I posted a few years ago for the stock ML4.1 ECUs, you should only have to change the memory locations being requested so they match your bin.flaset wrote: If I manage to carry this out, next up is hook up the gear in a car, are one able to use the datatrace-function in Tunerpro with the kkl-interface?
i.e. change the 'load' to 3Fh etc.
Live data rate will be pretty low, and early Motronics dropped the KWP connection over 2000 rpm, so it was only really useful to diagnose sensors. I can't remember if they were still doing that for the M2.10.3.
When I have some free time next, I'll see if I can locate the soft and hard rev limits and the diagnostics max rpm for you.
It's been a few years since I've looked at a Motronic ECU, so I'm a little bit rusty
- flaset
- Posts: 16
- Joined: Mon Jan 15, 2018 8:42 pm
- cars: SAAB 9-3 Aero -02, SAAB 900T16 Cab -89 & SAAB 900T8 -85
- Location: GOT, Sweden
Re: Motronic 2.10.3 (SAAB)
Sounds great festy, I appretiate your help!festy wrote:When I have some free time next, I'll see if I can locate the soft and hard rev limits and the diagnostics max rpm for you.
It's been a few years since I've looked at a Motronic ECU, so I'm a little bit rusty
I managed to disassemble the binary, guess you already have, but I'll attach it here if anyone is interested.
//
Andreas
- Attachments
-
- 0261204400_1037358528_64kb.asm
- (838.58 KiB) Downloaded 432 times
9³ Aero SS -03, 9³ Aero Coupé -02, 900T16 Cab -89 & 900T8 -85 on garaget.org website