Ducati.ms - The Ultimate Ducati Forum banner
  • Hey Everyone! Enter your bike HERE to be a part of this months Bike of the Month Challenge!

21 - 40 of 40 Posts

·
Registered
Joined
·
88 Posts
Discussion Starter · #21 ·
Hi,

I suggest that hooking a CAN Analyzer to a Duc would be very helpful in deciphering the CAN_TX and CAN_RX tables in the code.
in case anybody is motivated to sniff the CANBus, I'm using a Arduino and a sketch written by Beard, the author of the GuzziDiag/IAWDdiag software, for the purpose.

A Arduino is dirt cheap, the software easy to understand. Drop me a note if anybody wants to try it.

Cheers
Meinolf
 

·
Registered
Joined
·
152 Posts
Hi Meinolf, very well done??
About the co trimmer, can you detail how it works in this .bin?
How many rpm it start to taper? How match it taper along with rpm increase?

Edit

The ignition engine temperature trim is actually active?

Thanks

Davide
 

·
Registered
Joined
·
88 Posts
Discussion Starter · #23 · (Edited)
Hi Davide,

Hi Meinolf, very well done??
About the co trimmer, can you detail how it works in this .bin?
How many rpm it start to taper? How match it taper along with rpm increase?
the program flow is as follows.

After finishing the warm-up mode fuel calc the LambdaFlag1_4BC05 determines if CO trim is used or not. If the flag is set, the next conditional branch is "if curr_rpm_word_C74C <= CO_trim_rpm_limit_4EBF6".

If current rpm is below than the current CO trim is added to the current fuel value. If current rpm is higher than the threshold rpm the co_trim_taper_sub_1AB7C kicks in.

The sub uses the division of curr_rpm/rpm_limit to taper out the CO trim offset.

Cheers
Meinolf
 

Attachments

·
Registered
Joined
·
88 Posts
Discussion Starter · #24 · (Edited)
Hi Davide,

Hi Meinolf, very well done??
The ignition engine temperature trim is actually active?
yes, the engine temp trim is active.

Depending on the TPS state, closed or not closed, either the IgnitionEngineTempCorr_IdleTable_495B4 or IgnitionEngineTempCorrTable_49854 values are added/subtracted to ignition value.

Cheers
Meinolf
 

Attachments

·
Registered
Joined
·
88 Posts
Discussion Starter · #25 ·
Hi,

Beard is kindly hosting a corrected and updated XDF for the 1198SP: https://www.von-der-salierburg.de/download/GuzziDiag/xdf/5AM_1198SP_96520411B_2.2.zip

Changes vs. previous are:

March-15th-2019
V2.2
- corrected Hardware 1
- corrected Fan 1 On Temp
- added Fan 1 Off Temp
- corrected Fan 2 On Temp
- added Fan 2 Off Temp
- corrected Speedo Correction
- corrected Fuel - Main
- corrected Fuel - Timing to Fuel Phase Table and corrected conversion
- corrected Legend - Startup
- corrected Legend - Throttle Position
- added Ignition - max Idle Ignition Advance
- corrected Ignition - Closed Throttle II
- corrected Ignition - Closed Throttle I
- added Ignition - Main II
- corrected Fuel - Coolant Temperature Multiplier
- corrected Fuel - Air Temperature/Pressure Multiplier
- deleted Ignition - DQS Cut Time (not verified)
- added Fuel - Vertical Offset
- added Legend - Idle Motor Steps
- added Legend - Idle RPM
- added Fuel - Idle
- added Fuel - Idle Delta
- deleted Fuel - Acceleration Enrichment
- added CO rpm trim limit
- corrected Fuel Rev Shutoff
- added Fuel Rev Return
- corrected Rev Limit - Input Gear
- deleted Correction Throttle - Negative Movement
- deleted Correction Throttle - Positive Movement
- added Legend - y-axis Traction control pattern
- added Legend - x-axis Traction control pattern
- deleted Torque - Maximum Calculated
- changed Torque - Engine Calculated to CANBus Data
- deleted Torque - Ignition

Cheers
Meinolf
 

·
Registered
Joined
·
152 Posts
Thanks Meinolf, now i understand how it works.
I would like to see some numerical example, can you post a .bin file that match with with the description?

About ignition correction: on my ecu the idle advance is 6° @1200 and the correction is 15° @ actual eng temp.
Scanm5x always log 6°.
In your opinion is the correction disabled or is scanm5x that log the uncorrected advance

Thanks
Davide
 

·
Registered
Joined
·
88 Posts
Discussion Starter · #27 ·
Hi Davide,

Thanks Meinolf, now i understand how it works.
I would like to see some numerical example, can you post a .bin file that match with with the description?
Send me your email address via PM

Thanks Meinolf, now i understand how it works.
About ignition correction: on my ecu the idle advance is 6° @1200 and the correction is 15° @ actual eng temp.
Scanm5x always log 6°.In your opinion is the correction disabled or is scanm5x that log the uncorrected advance
I know neither Scanmx5 nor which BIN you are using. My guess is that the XDF you are using is faulty.

Duc BINs and XDF are not my main focus, but all XDFs I've looked at are mostly wrong. Only the fuel/ignition main/delta tables and the legends are usually correct. I don't see any reason why any trim function would be disabled (by the OEM).

Cheers
Meinolf
 

·
Registered
Joined
·
152 Posts
I've tried with scanm5x,scanst, iawdiag and jpdiag with the same result, and so maybe not tool related.
Have also verified at various tps, rpm,engine temp,air temp that the logged advance is always the same of main (or idke) table, and so maybe eng, idle eng and air temp tables are all affected.
I will send you the xdf, if you want to look at ?

On the 5am map you send me all the ignition coerection tables are set at 0...

Thanks

Davide
 

·
Registered
Joined
·
88 Posts
Discussion Starter · #29 ·
Hi Davide,

I've tried with scanm5x,scanst, iawdiag and jpdiag with the same result, and so maybe not tool related.
I will send you the xdf, if you want to look at ?
Done, I replied via email. The XDF is total crap.

I've tried with scanm5x,scanst, iawdiag and jpdiag with the same result, and so maybe not tool related.
On the 5am map you send me all the ignition coerection tables are set at 0...
Yes, you'd be surprised how many correction parameters, both tables and scalars, are set to zero. One starts wondering how much effort is actually invested in getting the OEM BINs optimized. Not much, one might think.

Cheers
Meinolf
 

·
Registered
Joined
·
152 Posts
Hi,

I've done some test:
The ignition correction tables are active and crappy:
Engine temp correction
air temp correction
idle engine temp correction.

The obd scan tools reports the base, uncorrected value.

I found that the engine like some correction at low temp and idle, maybe 5 or 6 ° but the stock map add about 15° to the base timing of 18° @ 900rpm ?

I also raccomand to check it for low throttle opening correction.
If you reduce the overcompensated fuel engine temperature trim leaving the stock
Ignition correction you can hear it pinging at low throttle and mid rpm

Davide
 

·
Registered
Joined
·
23 Posts
Hi Meinolf.

This is absolutely fantastic work!

I myself have no programming skills, but I do have an 1198S and few ECUs.
Using your XDF for the 1198Sp, the tables now make sense compared to earlier.

# RANT #
Since I got her back in 2016 it's been a pain. Three days after I got her, conrod bolts came loose and/or conrod bearings failed first.
A year later, with 600km since I got it together, guess what? Conrod bolts and/or conrod bearings again.
Another year has passed, she's together again, but I'm not entirely pleased with how she runs.

I've managed to get 2000km so far, but now she's not starting due to either starter sprag clutch, starter motor or wiring. Will start working on that tomorrow.
#RANT OVER #


Anyways, to the point, I've purchased some equipment. LM-2 Dual setup, wires and connectors. Will start logging as soon as I get the headers with lambda on and equipment delivered. As mine is an 1198S, not the SP (only thing that should be different is the addition of quick shifter), I was wondering if there's a flag somewhere in the BIN that can be toggled to disable it? Can be disabled in the DASH though, I suppose.

I've done a diff on the BIN files from 1198S and 1198SP and it's quite bad, so I suppose there are quite alot of changes in the code?

Is it possible for me, with the Marelli libraries and IDA Pro or similar, to open up the logic like you have and update XDFs for other bikes? Or are these secrets/proprietary?

I'll happily assist with whatever I can. Sent you a PM with a link to my binary collection. Download and enjoy. Together with incorrect XDFs obviously.

Thanks again for all your work on this. Fantastic!
 

·
Registered
Joined
·
88 Posts
Discussion Starter · #32 ·
Hi Matt,

"I've done a diff on the BIN files from 1198S and 1198SP and it's quite bad, so I suppose there are quite alot of changes in the code?
as explained before, my only interest in Ducatis was and is an academic one. My bikes include Guzzis and Aprilia, and this keeps me busy enough. So I can't answer your question.


"Is it possible for me, with the Marelli libraries and IDA Pro or similar, to open up the logic like you have and update XDFs for other bikes? Or are these secrets/proprietary?"
Everything is possible. I'm not aware of any Marelli libraries and am using IDAPro 6.6. Btw, the freeware version can't be used, it doesn't support the MCU used in the 5AM. Apart from learning the respective assembler language, familiarizing yourself with the service manual and wiring scheme of the bike being investigated, a sound understanding of electronics and combustion engine theory there's no secret. Easy cheasy.

I've done some initial work on the following BIN and XDF and already shared it with several Duc users expressing the same intention as you. They didn't even get started and abandoned the topic rapidly. Expect to invest many months of intensive work before you begin to understand. Don't ask me how I know.

The only thing I expect is that whatever is knowledge is gained and furthered be brought back to the community so everybody can participate from it. And if XDFs are corrected or created, send them to Beard so that he can add it to the DL-section of his website (https://www.von-der-salierburg.de/download/GuzziDiag/).

AND - send him a Paypal donation, without him we wouldn't have this tremendous suite of software.

Disassembled file, i64, IDAPro 6.6
https://drive.google.com/open?id=18tKuyE9OtX4EEl-WMiYOz7Dql3HiwmKP

Corresponding XDF
https://drive.google.com/open?id=1vO2RtoAUgMlN9qMBAWrEnc3u004GZ8fa

If you had asked me before I would have advised you NOT to invest in Innovate LM-2. I've used up 3 units and even more lambda probes, it's one of the most unreliable devices I've come across in my life. The support sucks, if they reply at all. An excellent example of you get what you pay for. The only useable part of the package is Logworks, in fact it's rather good software.

Use ZT2(s) instead. Less analog I/O ports and TPS input only as %, but these problems can be circumvented. Plus it logs at 4x the frequency of LM2.

Cheers
Meinolf
 

·
Registered
Joined
·
23 Posts
Everything is possible. I'm not aware of any Marelli libraries and am using IDAPro 6.6. Btw, the freeware version can't be used, it doesn't support the MCU used in the 5AM. Apart from learning the respective assembler language, familiarizing yourself with the service manual and wiring scheme of the bike being investigated, a sound understanding of electronics and combustion engine theory there's no secret. Easy cheasy.

I was just reading alot of your posts and somewhere you mentioned Marelli Libraries. As such, I thought it would help browsing the disassembled code structure. I was unable to open your already disassembled binary in IDA Free, so I'll try source IDA Pro. It said "database too old".

Looking here in the thread of your diagrams of the logic, it felt logical in some way. Even though we don't know exactly how it does what, without knowing the language, at least we see what tables and values it references in that particular function?

I've done some initial work on the following BIN and XDF and already shared it with several Duc users expressing the same intention as you. They didn't even get started and abandoned the topic rapidly. Expect to invest many months of intensive work before you begin to understand. Don't ask me how I know.

I might be way over my head, of course. I was just thinking that following the logic, using the tables referenced, corrections to XDFs should be possible. I mean, most 5AM should be similar in structure.

The only thing I expect is that whatever is knowledge is gained and furthered be brought back to the community so everybody can participate from it. And if XDFs are corrected or created, send them to Beard so that he can add it to the DL-section of his website (https://www.von-der-salierburg.de/download/GuzziDiag/).

I will definitely contribute back.


Disassembled file, i64, IDAPro 6.6

Database too old....


If you had asked me before I would have advised you NOT to invest in Innovate LM-2. I've used up 3 units and even more lambda probes, it's one of the most unreliable devices I've come across in my life. The support sucks, if they reply at all. An excellent example of you get what you pay for. The only useable part of the package is Logworks, in fact it's rather good software.

Use ZT2(s) instead. Less analog I/O ports and TPS input only as %, but these problems can be circumvented. Plus it logs at 4x the frequency of LM2.


I hit the purchase button whilst reading threads from back in 2014 by Punch and Impulsive_Duc.
I hope it still can be used, as lambda controller only. Won't log through it. The Zeitronix look like very cool stuff.


Cheers bud,
Matt


Btw, have you found any acceleration enrichment references in the 5AM Bin?
 

·
Excel Addict
2001 900SSie
Joined
·
5,345 Posts


I hit the purchase button whilst reading threads from back in 2014 by Punch and Impulsive_Duc.
I hope it still can be used, as lambda controller only. Won't log through it. The Zeitronix look like very cool stuff.


I have never commented on the LM2 - thankfully.

I have used and use the LC-1 and people that send me data have done so mostly successfully.

I have seen data from the LM-2 where AFR or Lambda just freezes and logs after that are useless.
I.e. no AFR data.

Meinolf sent me a Dif file from the ZT2 log file ages ago and I only got around to reviewing a few days ago and sent an email to Meinolf.
After "telling" my Mac that I really did want to change from Dif to csv a few times, then I could import that from the csv to Excel then play with the data in my AFR analysis workbook.

I am waiting for Meinolf's comments, so take this with a grain of salt, but I am fairly sure I am correct.

As the ZT2 logs as % below about 5 degrees TP is useless data.
Typical breakpoints are 3, 3.2, etc. up to about 5 degrees.
So until you get to bigger number (integer %) TPs then the data is useless for reaping based upon logged data.

Having written that, my preference is not to play with low TP values if the bike is running OK there.
I am more concerned about riding not idling!

I am impressed with the data acquisition rate of the ZT2 kit though.
 

·
Registered
Joined
·
23 Posts
Still working on the bike. Suppose I'm gonna have to put in another sprag, flange and starter. It looks bad :/

I was able to open the 5AM disassebly by Meinolf in an older version of IDAPro 6.5. Looks good. It wasn't as intiutive as I was led to believe (very nice diagrams to follow by Meinolf), but I think I would be able to use what Meinolf has gathered and look up/correct XDFs for the 848, 1098 and 1198 models. Same structures, just different locations I would assume.
 

·
Registered
Joined
·
88 Posts
Discussion Starter · #36 ·
Hi Richard,

As the ZT2 logs as % below about 5 degrees TP is useless data. Typical breakpoints are 3, 3.2, etc. up to about 5 degrees. So until you get to bigger number (integer %) TPs then the data is useless for reaping based upon logged data.
the TPS %-logging does pose a problem. It can partly be mitigated by logging the TPS voltage with one of the analog inputs and matching the voltage with TPS degrees during analysis. See the attached picture.

The filtered x-axis values can be either TPS percent or analog input User1. In this instance I'm using User1, the corresponding TPS degree values are just to make it easier to evaluate. So the pairs would be 3.39°/0.49V, 4.13°/0.57V, ....

Cheers
Meinolf
 

Attachments

·
Registered
Joined
·
23 Posts
Bike is coming together. I bought connectors, wires and shit to hook the LM-2 up.
Unfortunately, that shit doesn't work. Sometimes doesn't boot up and then often failing probe warmup.

Trying to get a return of that and get 2x ZT-2s instead.

Maybe we can get Christian to get serial interface for the ZT2 working with Scan5MX.
 

·
Registered
Joined
·
88 Posts
Discussion Starter · #38 ·
Hi Matt,

Trying to get a return of that and get 2x ZT-2s instead. Maybe we can get Christian to get serial interface for the ZT2 working with Scan5MX.
except for the current engine mode there's nothing worth getting from OBD. And sync'ing the very slow OBD data stream with the much faster ZT2 stream is no fun.

I won't comment on the LM2 experience....

Cheers
Meinolf
 

·
Registered
Joined
·
52 Posts
MTS1000DS
HM103 ecu

Hi all,

LC-2 - the first one that failed on me (I run a pair) I sent back to Innovate US from here in the UK a couple of weeks later a new kit arrived but with no feedback comments. Now I'm about to send the second one back....

I've just fitted Pistal pistons giving 11.5:1 up from 10.5:1 and now I'm looking at ignition timing.

I use ScanM5X and I'm getting ready to starting testing ignition advance (no load), previously I found the figures from the app's logs and the bin. table don't tie up. A quick test I've just done is to run a timing disc zeroed a TDC and strobe timing light.

The bike at idle during warm-up showed 0' advance on the disc, 0.5' on the app, with 2 in "Main advance" corresponding to it's rpm and tps and IgnitionEngineTemp correction is 7.5. Also "Fuel Phase is 120 across the board.

When I pick up the throttle and rpm the light shows it advancing on the disc in a progressive manor also the app shows advance.

Once warmed up (60+) at idle the disc and light show it retarded to 4' ATDC, the app 0.5 still and IgnitionEngineTemp correction is 0 at that temp.

I tested it once again with "Main Advance" adjusted from 2 to 10 in the rpm tps area it idles at and nothing changed, disc still 4' ATDC and app 0.5.

I did check my disc was still aligned 0' at TDC on horizontal cylinder after I ran those tests and yes. I'll keep working on this but surprised with the "Main Advance" not bring a change at idle. I'll do a similar test at 3,000rpm no load.

Cheers,
Steve.
 

·
Registered
Joined
·
10 Posts
hi meinolf, i have an raspebery pi 4, does it compatible ? It's a good job. Maybe it can be possible to make module to add DTC or DQS to an old map
 
21 - 40 of 40 Posts
Top